JSFiddle - React, Tailwind, and code Playground

by joshmoto

HTML

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css">
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/[email protected]/slick/slick.css">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/[email protected]/slick/slick.min.js"></script>
<script src="https://fonts.googleapis.com/css?family=Inconsolata"></script>
<header>
  <nav class="navbar navbar-expand-md navbar-dark bg-dark">
     
      <a class="navbar-brand mr-auto" href="#">Slick in Bootstrap 4</a>
      
      <a class="nav-link d-none d-sm-inline" href="http://kenwheeler.github.io/slick/" target="_blank">Slick Github</a>
      
      <span id="breakpoint-helper" class="nav-link text-muted">Breakpoint </span>

  </nav>
</header>

<main class="pt-3 pb-3">
  <div class="container">  
    <div id="slick">

      <div class="slide">
        <div class="card">
          <img src="https://via.placeholder.com/600x400&amp;text=thumbnail" class="card-img-top" />
          <div class="card-body">
            <h5 class="card-title">Article title</h5>
            <p class="card-text">Ut sed ligula vel felis vulputate lobortis id eget mauris. Nullam sollicitudin arcu ac diam ornare, eget iaculis nisl accumsan.</p>
            <a href="#" class="btn btn-primary">Go somewhere</a>
          </div>
        </div>
      </div>

      <div class="slide">
        <div class="card">
          <img src="https://via.placeholder.com/600x400&amp;text=thumbnail" class="card-img-top" />
          <div class="card-body">
            <h5 class="card-title">Article title</h5>
            <p class="card-text">Ut sed ligula vel felis vulputate lobortis id eget mauris. Nullam sollicitudin arcu ac diam...

SCSS

#slick {

  .slick-list {
    margin: {
      left: -15px;
      right: -15px;
    }
  }
  
  .slick-slide {
    padding-right: 15px;
    padding-left: 15px;
    
    &:focus {
      outline: none;
    }
  }
}

// bootstrap break points for helper below
$breakpoints: (
  // Small screen / phone
  'sm': 576px,
  // Medium screen / tablet
  'md': 768px,
  // Large screen / desktop
  'lg': 992px,
  // Extra large screen / wide desktop
  'xl': 1200px
);

// helper in navbar to show breakpoint size
#breakpoint-helper {
  &:after {
    color: #fff;
    text-transform: uppercase;
    content: 'XS';
    @each $size, $px in $breakpoints {
      @media (min-width: $px ) {
        content: $size;
      }
    }
  }
}

JavaScript

var breakpoint = {
  // Small screen / phone
  sm: 576,
  // Medium screen / tablet
  md: 768,
  // Large screen / desktop
  lg: 992,
  // Extra large screen / wide desktop
  xl: 1200
};

// page slider
$('#slick').slick({
	autoplay: true,
  autoplaySpeed: 2000,
  draggable: true,
  infinite: true,
  dots: false,
  arrows: false,
  speed: 1000,
  mobileFirst: true,
  slidesToShow: 1,
  slidesToScroll: 1,
  responsive: [
    {
      breakpoint: breakpoint.sm,
      settings: {
        slidesToShow: 2,
        slidesToScroll: 2
      }
    },
    {
      breakpoint: breakpoint.md,
      settings: {
        slidesToShow: 3,
        slidesToScroll: 3
      }
    },
    {
      breakpoint: breakpoint.lg,
      settings: {
        slidesToShow: 4,
        slidesToScroll: 4
      }
    },
    {
      breakpoint: breakpoint.xl,
      settings: {
        slidesToShow: 5,
        slidesToScroll: 5
      }
    }
  ]
});