search results:

    License Free hosting Learn Playground Services Community
    • + D
    • Light
    • Dark
    • System
    logo Tailwind Elements
    • Getting started
      • Quick start
      • Tutorials
      • Optimization
      • Dark mode
      • Theming
      • Changelog
      • Contribute
    • Integrations
      • Angular
      • Django
      • Express
      • Laravel
      • Next
      • Nuxt
      • React
      • Remix
      • Solid
      • Svelte
      • Vue
    • Content & styles
      • Animations
      • Colors
      • Dividers
      • Figures
      • Headings
      • Hover effects
      • Icons
      • Images
      • Mask
      • Shadows
      • Typography
    • Navigation
      • Breadcrumbs
      • Footer
      • Headers
      • Mega menu
      • Navbar
      • Offcanvas
      • Pagination
      • Pills
      • Scrollspy
      • Sidenav
      • Tabs
    • Components
      • Accordion
      • Alerts
      • Avatar
      • Badges
      • Button group
      • Buttons
      • Cards
      • Carousel
      • Chips
      • Collapse
      • Dropdown
      • Gallery
      • Jumbotron
      • Link
      • List group
      • Modal
      • Notifications
      • Paragraphs
      • Placeholders
      • Popover
      • Progress
      • Rating
      • Scroll back to top button
      • Social buttons
      • Spinners
      • Stepper
      • Testimonials
      • Timeline
      • Toast
      • Tooltip
      • Video
      • Video carousel
    • Forms
      • Checkbox
      • Datepicker
      • File input
      • Form templates
      • Input Group
      • Inputs
      • Login form
      • Radio
      • Range
      • Registration form
      • Search
      • Select
      • Switch
      • Textarea
      • Timepicker
    • Data
      • Charts
      • Tables
    • Methods
      • Ripple
    • Design Blocks
      • Banners
      • Contact
      • Content
      • CTA
      • FAQ
      • Features
      • Headers
      • Hero / Intro sections
      • Logo clouds
      • Mega menu
      • News
      • Newsletter
      • Pricing
      • Projects
      • Stats
      • Team
      • Testimonials
    • Coming Soon
      • Angular
      • Builder
      • React
      • Templates
      • Vue
    • ResourcesNew
      • YouTube Channel
      • Private FB Group
      • Newsletter
      • UI Design course New

    Tailwind Elements Express integration

    This article shows you how to integrate Express application with Tailwind Elements. Free download, open source license.


    Prerequisites

    Before starting the project make sure to install the following utilities:

    • Node LTS (14.x.x or higher recommended)
    • Code editor. We recommend VSCode

    Creating a new Express application

    Let's create a fresh Express application so that we can go through all the steps together.

    Step 1

    Create new project

    • Terminal
            
                
            mkdir my-project
            cd my-project
            npm init
            
            
        

    Step 2

    Install Express

    • Terminal
            
                
            npm install express
            
            
        

    Step 3

    Create folder views (in root directory) and put inside index.ejs file with classical HTML structure.

    Step 4

    In root directory create index.js file where will be located your Express configuration.

    • index.js
            
                
            const express = require("express");
            const app = express();
            const port = 3000;
            const path = require("path");
    
            app.set("view engine", "ejs");
            app.use(express.static("public"));
            app.use(express.static("node_modules"));
    
            app.get("/", (req, res) => {
              res.render("index");
            });
    
            app.listen(port, () => {
              console.log(`Example app listening on port ${port}`);
            });
          
            
        

    Installing and configuring Tailwind CSS and Tailwind Elements

    Step 1

    Install Tailwind CSS

    • Terminal
            
                
              npm install -D tailwindcss postcss autoprefixer
              npx tailwindcss init -p
            
            
        

    Step 2

    Add the paths to all of your template files in your tailwind.config.cjs file.

    • tailwind.config.cjs
            
                
              /** @type {import('tailwindcss').Config} */
              module.exports = {
              content: [
                "./public/**/*.{html,js,css}",
                "./src/**/*.{html,js,css}",
                "./node_modules/tw-elements/dist/js/**/*.js",
              ],
              darkMode: "class",
              plugins: [require("tw-elements/dist/plugin.cjs")]
              }
            
            
        

    Step 3

    Add the @tailwind directives for each of Tailwind’s layers to your input.css file in root directory.

    • input.css
            
                
              @tailwind base;
              @tailwind components;
              @tailwind utilities;
            
            
        

    Step 4

    Start the Tailwind CLI build process. Run the CLI tool to scan your template files for classes and build your CSS.

    • Terminal
            
                
              npx tailwindcss -i ./src/input.css -o ./public/output.css --watch
            
            
        

    Step 5

    Install ejs.

    • Terminal
            
                
              npm install ejs
            
            
        

    Step 6

    In index.ejs file, at the end of head link Tailwind's CSS file.

    • index.ejs
            
                
        <link href="/output.css" rel="stylesheet" />
        
            
        

    Step 7

    Attach the Roboto font in index.ejs.

    • index.html
            
                
        <link
          href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900&display=swap"
          rel="stylesheet" />
        
            
        

    Step 8

    In index.ejs file, at the end of body link script for Tailwind Elements JS file.

    • index.ejs
            
                
        <script
          src="/tw-elements/dist/js/tw-elements.umd.min.js"
          type="text/javascript"></script>
        
            
        

    Initializing via JS

    By default all components have autoinit which means they are initialized by data attributes. But if you want to make init by JavaScript - there is also possibility to do that.

    Step 1

    Initialize components in script section.

    • index.ejs
            
                
              const myInput = new te.Input(document.getElementById("myDatepicker"));
              const options = {
                format: "dd-mm-yyyy",
              };
              const myDatepicker = new te.Datepicker(
                document.getElementById("myDatepicker"),
                options
              );
          
            
        
    • Prerequisites
    • Creating a new Express.js application
    • Installing and configuring Tailwind CSS and Tailwind Elements
    • Initializing via JS
    Get useful tips & free resources directly to your inbox along with exclusive subscriber-only content.
    Join our mailing list now
    © 2023 Copyright: MDBootstrap.com