
As mentioned above, Jade is the old version of Pug - specifically Pug 1.0.Īlthough the last version of Jade is 3 years old (at the time of writing, summer 2018), it’s still the default in Express for backward compatibility reasons. You can still use Jade (aka Pug 1.0), but going forward it’s best to use Pug 2.0.Īlso see the differences between Jade and PugĮxpress uses Jade as the default. It’s Jade 2.0.ĭue to a trademark issue, the name was changed from Jade to Pug when the project released version 2 in 2016. Template engines allow us to add data to a view and generate HTML dynamically. What is Pug? It’s a template engine for server-side Node.js applications.Įxpress is capable of handling server-side template engines. Adding id and class attributes to elements.Setup Pug to be the template engine in Express.You can emulate the live reload behavior of front-end frameworks such as React and Angular in Express templates using Browsersync. Add Live Reload to Express Using Browsersync To overcome that, you'll use Browsersync. However, manually refreshing the browser to see updates slows down your development process. pug template, you can refresh the browser to see the changes. 🛠️ Refresh the browser to see the new page rendered on the screen. Refer to Using template engines with Express for more details. pug doesn't use title locally instead, the template it extends, layout. json file to run nodemon and delete the test script: defines a local title variable in index. 🛠️ Create a dev script command in your package. The command above is the equivalent of running npm install -save -dev nodemon. 🛠️ As such, install nodemon as a development dependency: npm i -D nodemon

You'll use nodemon to monitor your project source code and automatically restart your Node.js server whenever it changes. js: touch index.js Create an npm script to run the application 🛠️ Then, create the entry point of the application, a file named index. 🛠️ Execute the following command within the whatabyte -portal directory to initialize your Node.js project with default settings: npm init -y 🛠️ Create a project directory named whatabyte -portal anywhere in your system and make it your current directory: mkdir whatabyte-portal If you need to install Node.js and npm, use any of the official Node.js installers provided for your operating system. We tested this tutorial using Node.js v12. You'll build a login portal for a restaurant named WHATABYTE using server-side rendering (SSR): Look for the 🛠️️ emoji if you'd like to skim through the content while focusing on the build steps. In this tutorial, you'll learn how to build a simple and clean Node.js server-side rendered application using the Express framework and Pug templates styled with CSS.Īs a bonus, you'll learn how to streamline your Node.js development workflow by using nodemon to restart the server and browser -sync to reload the browser whenever relevant source files change.
