<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ ejs - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ ejs - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Sat, 30 May 2026 16:32:25 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/tag/ejs/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ How to use EJS Templating in a Node.js Application ]]>
                </title>
                <description>
                    <![CDATA[ By Jennifer Bland EJS, embedded javascript, is a templating language. EJS combines data and a template to produce HTML. One of the most important features in EJS is its use of partials. Partials allow you to define something once, and then apply it t... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-use-ejs-templating-in-a-node-js-application-ea9347a96c65/</link>
                <guid isPermaLink="false">66c355a7df235c0b59e2533e</guid>
                
                    <category>
                        <![CDATA[ ejs ]]>
                    </category>
                
                    <category>
                        <![CDATA[ JavaScript ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Node.js ]]>
                    </category>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Web Development ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Sun, 03 Apr 2016 14:59:47 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*TDMS2SG4EjQuDsRPDDh50w.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Jennifer Bland</p>
<p>EJS, embedded javascript, is a templating language. EJS combines data and a template to produce HTML. One of the most important features in EJS is its use of partials. Partials allow you to define something once, and then apply it to any page in your application.</p>
<p>I will show you how to create a simple Node.js application that uses EJS as the templating engine. Then we will create 2 pages for a website. We will use partials to build out our head, navigation, footer and content.</p>
<p><a target="_blank" href="https://github.com/ratracegrad/nodejs_ejs_boilerplate">You can get the code for this example on github</a></p>
<h4 id="heading-file-structure">File Structure</h4>
<p>We will be creating a sample application that will have two pages: index and about.</p>
<p>Here is the file structure for the application we will be creating.</p>
<pre><code>public — — style.css- routes — — index.js- views — — pages — — — — about.ejs — — — — index.ejs- partials — — — — <span class="hljs-number">3</span>columns.ejs — — — — footer.ejs — — — — head.ejs — — — — nav.ejs — — — — scripts.ejs- package.json- server.js
</code></pre><h4 id="heading-getting-started">Getting Started</h4>
<p>We will setup our package.json first. This file will contain all the modules we will be using in our application. We will be using:</p>
<ul>
<li>express</li>
<li>ejs</li>
</ul>
<pre><code>{   “name”:    “node_ejs_boilerplate”,   “version”: “<span class="hljs-number">1.0</span><span class="hljs-number">.0</span>”,   “description”: “Boilerplate showing the use <span class="hljs-keyword">of</span> ejs <span class="hljs-keyword">as</span> view template engine <span class="hljs-keyword">in</span> a Node.js application”,   “author”: “Jennifer Bland”,   “main”: “server.js”,   “dependencies”: {       “ejs”: “^<span class="hljs-number">2.4</span><span class="hljs-number">.1</span>”,       “express”: “^<span class="hljs-number">4.13</span><span class="hljs-number">.4</span>”   }}
</code></pre><p>You can add the dependencies directly into your package.json or your can install the dependencies so that they are automatically added to the package.json. To manually install dependencies, enter this command:</p>
<pre><code>npm install express ejs  — save
</code></pre><p>If you added dependencies by adding them to your package.json, you will need to install them by using this commend:</p>
<pre><code>npm install
</code></pre><h4 id="heading-serverjs">Server.js</h4>
<p>Now that we have all our dependencies installed, we need to build out application in server.js. Here is what our server.js file looks like.</p>
<pre><code>‘use strict’;
</code></pre><pre><code><span class="hljs-comment">// ================================================================// get all the tools we need// ================================================================var express = require(‘express’);var routes = require(‘./routes/index.js’);var port = process.env.PORT || 3000;</span>
</code></pre><pre><code><span class="hljs-keyword">var</span> app = express();
</code></pre><pre><code><span class="hljs-comment">// ================================================================// setup our express application// ================================================================app.use(‘/public’, express.static(process.cwd() + ‘/public’));app.set(‘view engine’, ‘ejs’);</span>
</code></pre><pre><code><span class="hljs-comment">// ================================================================// setup routes// ================================================================routes(app);</span>
</code></pre><pre><code><span class="hljs-comment">// ================================================================// start our server// ================================================================app.listen(port, function() { console.log(‘Server listening on port ‘ + port + ‘…’);});</span>
</code></pre><p>Our server will be listening on the port defined in process.env.PORT or 3000 if it is not defined.</p>
<p>We define a /public directory because this is how we will reach our stylesheet style.css located in the /public folder.</p>
<p>We define our templating engine to be ejs.</p>
<h4 id="heading-routes">Routes</h4>
<p>To make our application follow the structure of a node.js application I have put the routes for our index and about pages into their own file. This file is index.js in the routes folder.</p>
<p>Since I have put the routes in their own folder I need to gain access to them by requiring them in the server.js file.</p>
<p>We have 2 routes in our application</p>
<ul>
<li>/ — this is a GET to display the homepage</li>
<li>/about — this is a GET to display the about page</li>
</ul>
<p>In the routes we use res.render to display the appropriate pages. The render command by default will look for files in a folder called views. We rely on this default and only add the path from within the views folder.</p>
<p>Here is our index.js file in the routes folder.</p>
<pre><code>‘use strict’;
</code></pre><pre><code><span class="hljs-built_in">module</span>.exports = <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">app</span>) </span>{ app.get(‘/’, <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">req, res</span>) </span>{   res.render(‘pages/index’); });
</code></pre><pre><code> app.get(‘/about’, <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">req, res</span>) </span>{   res.render(‘pages/about’); });};
</code></pre><h4 id="heading-configuring-our-partials">Configuring our partials</h4>
<p>For our sample application, I am going to implement four partials.</p>
<ul>
<li>head — contains items found in the head section of a webpage</li>
<li>nav — the navigation that will be displayed on every page</li>
<li>footer — static footer with link to my website</li>
<li>scripts- loading scripts like jQuery and Bootstrap</li>
<li>3columns — content that will be displayed on the homepage</li>
</ul>
<p>Partials provide easy maintenance of your code. For example, if you create navigation on all of your pages, when you need to add a new entry to the navigation, you must then update every single page with this change.</p>
<p>The navigation partial will be inserted into every page that requires it. To add a new entry to the navigation, you need to just update the partial and it will automatically be applied to every page that contains the nav partial.</p>
<p>Here are the contents of all of our partials.</p>
<p>head.ejs</p>
<pre><code>&lt;! — views/partials/head.ejs →&lt;head&gt;  &lt;meta charset=”UTF-8"&gt;  &lt;meta http-equiv=”X-UA-Compatible” content=”IE=edge”&gt;  &lt;meta name=”viewport” content=”width=device-width, initial-scale=1"&gt;  &lt;! — The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags →  &lt;title&gt;Demonstration of EJS templating in NodeJS Application&lt;/title&gt;
</code></pre><pre><code>  &lt;! — STYLESHEETS →  &lt;! — CSS (load bootstrap <span class="hljs-keyword">from</span> a CDN) →  &lt;link rel=”stylesheet” href=”https:<span class="hljs-comment">//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"&gt;  &lt;link rel=”stylesheet” href=”/public/style.css”&gt;&lt;/head&gt;</span>
</code></pre><p>nav.ejs</p>
<pre><code>&lt;! — views/partials/nav.ejs →&lt;nav <span class="hljs-class"><span class="hljs-keyword">class</span></span>=”navbar navbar-inverse navbar-fixed-top” role=”navigation”&gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”container”</span>&gt;</span></span>
</code></pre><pre><code>&lt;div <span class="hljs-class"><span class="hljs-keyword">class</span></span>=”navbar-header”&gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”navbar-brand”</span> <span class="hljs-attr">href</span>=<span class="hljs-string">”/”</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”glyphicon</span> <span class="hljs-attr">glyphicon</span> <span class="hljs-attr">glyphicon-cog</span>”&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span> CodePrep.io <span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span></span> &lt;/div&gt;
</code></pre><pre><code>&lt;ul <span class="hljs-class"><span class="hljs-keyword">class</span></span>=”nav navbar-nav pull-right”&gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">li</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">href</span>=<span class="hljs-string">”/”</span>&gt;</span>Home<span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">li</span>&gt;</span></span> <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">li</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">href</span>=<span class="hljs-string">”/about”</span>&gt;</span>About<span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">li</span>&gt;</span></span> &lt;/ul&gt;
</code></pre><pre><code>&lt;<span class="hljs-regexp">/div&gt;&lt;/</span>nav&gt;
</code></pre><p>footer.ejs</p>
<pre><code>&lt;! — views/partials/footer.ejs →&lt;footer <span class="hljs-class"><span class="hljs-keyword">class</span></span>=”footer”&gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”container”</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">p</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”text-center</span> <span class="hljs-attr">text-muted</span>”&gt;</span>© Copyright 2015 <span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">href</span>=<span class="hljs-string">”http://www.codeprep.io</span>"&gt;</span>CodePrep.io<span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span></span>&lt;/footer&gt;
</code></pre><p>scripts.ejs</p>
<pre><code>&lt;! — views/partials/scripts.ejs →
</code></pre><pre><code>&lt;! — jQuery (necessary <span class="hljs-keyword">for</span> Bootstrap’s JavaScript plugins) →&lt;script src=”https:<span class="hljs-comment">//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"&gt;&lt;/script&gt;&lt;! — Bootstrap javascript file →&lt;script src=”https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"&gt;&lt;/script&gt;</span>
</code></pre><p>3columns.ejs</p>
<pre><code>&lt;! — views/partials/<span class="hljs-number">3</span>columns.ejs →&lt;section name=”content”&gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”container”</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">h2</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”text-center”</span>&gt;</span>Sample Data<span class="hljs-tag">&lt;/<span class="hljs-name">h2</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”col-xs-12</span> <span class="hljs-attr">col-md-4</span>"&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">p</span>&gt;</span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum eget iaculis lorem. Fusce elementum magna fringilla ipsum bibendum, vitae consectetur ligula interdum. Sed mauris diam, hendrerit eget suscipit vel, luctus at odio. Etiam pellentesque a metus et pharetra. Praesent dictum, libero id tempor malesuada, erat ex cursus nibh, ac hendrerit massa neque commodo metus. Integer porttitor ante eu varius interdum. Suspendisse quis iaculis erat. Fusce eu nisl id eros tempor posuere. Donec placerat orci orci, ut ultrices neque rutrum in. Nunc dignissim ante et risus rhoncus, vel feugiat mi vestibulum. Aliquam in dictum neque, non vestibulum lorem. Sed imperdiet dolor vitae felis iaculis, id sollicitudin lectus rhoncus. Maecenas ac dolor eget tortor rutrum commodo. Aliquam luctus iaculis mi id semper. Suspendisse sem nisi, convallis at dapibus in, convallis eu neque. Curabitur maximus magna et nulla ullamcorper facilisis.<span class="hljs-tag">&lt;/<span class="hljs-name">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”col-xs-12</span> <span class="hljs-attr">col-md-4</span>"&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">p</span>&gt;</span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum eget iaculis lorem. Fusce elementum magna fringilla ipsum bibendum, vitae consectetur ligula interdum. Sed mauris diam, hendrerit eget suscipit vel, luctus at odio. Etiam pellentesque a metus et pharetra. Praesent dictum, libero id tempor malesuada, erat ex cursus nibh, ac hendrerit massa neque commodo metus. Integer porttitor ante eu varius interdum. Suspendisse quis iaculis erat. Fusce eu nisl id eros tempor posuere. Donec placerat orci orci, ut ultrices neque rutrum in. Nunc dignissim ante et risus rhoncus, vel feugiat mi vestibulum. Aliquam in dictum neque, non vestibulum lorem. Sed imperdiet dolor vitae felis iaculis, id sollicitudin lectus rhoncus. Maecenas ac dolor eget tortor rutrum commodo. Aliquam luctus iaculis mi id semper. Suspendisse sem nisi, convallis at dapibus in, convallis eu neque. Curabitur maximus magna et nulla ullamcorper facilisis.<span class="hljs-tag">&lt;/<span class="hljs-name">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”col-xs-12</span> <span class="hljs-attr">col-md-4</span>"&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">p</span>&gt;</span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum eget iaculis lorem. Fusce elementum magna fringilla ipsum bibendum, vitae consectetur ligula interdum. Sed mauris diam, hendrerit eget suscipit vel, luctus at odio. Etiam pellentesque a metus et pharetra. Praesent dictum, libero id tempor malesuada, erat ex cursus nibh, ac hendrerit massa neque commodo metus. Integer porttitor ante eu varius interdum. Suspendisse quis iaculis erat. Fusce eu nisl id eros tempor posuere. Donec placerat orci orci, ut ultrices neque rutrum in. Nunc dignissim ante et risus rhoncus, vel feugiat mi vestibulum. Aliquam in dictum neque, non vestibulum lorem. Sed imperdiet dolor vitae felis iaculis, id sollicitudin lectus rhoncus. Maecenas ac dolor eget tortor rutrum commodo. Aliquam luctus iaculis mi id semper. Suspendisse sem nisi, convallis at dapibus in, convallis eu neque. Curabitur maximus magna et nulla ullamcorper facilisis.<span class="hljs-tag">&lt;/<span class="hljs-name">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span></span>&lt;/section&gt;
</code></pre><h4 id="heading-building-our-pages">Building our Pages</h4>
<p>Our sample application has a homepage and an about page. We will need to create both of these pages. On these pages we will insert the appropriate partials we just created on the page.</p>
<p>We put all of our partials in a folder called partials within the views folder. We are going to create another folder in the views folder called pages. This folder will contain our homepage and about pages.</p>
<p>To insert a partial on a page we use this format:</p>
<pre><code>&lt;% include ../partials/head %&gt;
</code></pre><p>Here are the contents of our two pages:</p>
<p><strong>index.ejs</strong></p>
<pre><code>&lt;!DOCTYPE html&gt;<span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">html</span> <span class="hljs-attr">lang</span>=<span class="hljs-string">”en”</span>&gt;</span></span>
</code></pre><pre><code>&lt;% include ../partials/head %&gt;
</code></pre><pre><code>&lt;body&gt;
</code></pre><pre><code>&lt;% include ../partials/nav %&gt;
</code></pre><pre><code>&lt;section name=”jumbotron” &gt; <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">”jumbotron</span> <span class="hljs-attr">text-center</span>”&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">h1</span>&gt;</span>CodePrep.io Presents<span class="hljs-tag">&lt;/<span class="hljs-name">h1</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">p</span>&gt;</span>Using EJS templating with Node.js<span class="hljs-tag">&lt;/<span class="hljs-name">p</span>&gt;</span> <span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span></span> &lt;/section&gt;
</code></pre><pre><code>&lt;% include ../partials/<span class="hljs-number">3</span>columns %&gt;
</code></pre><pre><code>&lt;% include ../partials/footer %&gt;
</code></pre><pre><code>&lt;% include ../partials/scripts %&gt;
</code></pre><pre><code>&lt;/body&gt;
</code></pre><pre><code>&lt;/html&gt;
</code></pre><p><strong>about.ejs</strong></p>
<pre><code>&lt;!DOCTYPE html&gt;<span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">html</span> <span class="hljs-attr">lang</span>=<span class="hljs-string">”en”</span>&gt;</span></span>
</code></pre><pre><code>&lt;% include ../partials/head %&gt;
</code></pre><pre><code>&lt;body&gt;
</code></pre><pre><code>&lt;% include ../partials/nav %&gt;
</code></pre><pre><code>&lt;! — content <span class="hljs-keyword">for</span> about page → &lt;div <span class="hljs-class"><span class="hljs-keyword">class</span></span>=”container” id=”about”&gt; &lt;div class=”row”&gt; &lt;h2 class=”text-center”&gt;About Page&lt;/h2&gt; &lt;div class=”col-xs-12"&gt; &lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sapien eros, dictum eu malesuada sagittis, pellentesque sed enim. Donec at odio volutpat, dignissim mauris tincidunt, pharetra lorem. Fusce porta neque non lorem vulputate, et commodo dolor semper. Proin sodales lacinia nibh vel semper. Nulla sed faucibus nisi. Aliquam venenatis pellentesque tortor et fringilla. Nulla porttitor massa vitae libero volutpat, id mollis neque elementum. Integer porta, enim eu pharetra interdum, diam metus mollis purus, id ornare risus enim a magna. Sed rhoncus, nulla ac hendrerit lacinia, neque lectus iaculis ligula, et euismod erat massa sit amet orci. Ut fermentum hendrerit arcu. Vestibulum quis leo ut ante eleifend fringilla.
</code></pre><pre><code>Morbi maximus eu lorem sit amet tempor. Nunc dignissim lacus vel aliquet ornare. Aliquam eget turpis et nisi tincidunt rhoncus. Vestibulum interdum interdum aliquet. Phasellus quis erat est. Pellentesque molestie pretium quam <span class="hljs-keyword">in</span> fermentum. Maecenas eu luctus turpis, euismod feugiat risus. Integer scelerisque cursus tempor. Phasellus <span class="hljs-keyword">in</span> bibendum tortor.
</code></pre><pre><code>Aenean vitae lorem augue. Cras ultricies posuere vestibulum. Integer non felis porttitor mi ultricies pretium. Sed vitae nisi accumsan, maximus lorem sed, malesuada quam. Nunc lacus est, elementum vel ultrices sit amet, suscipit eu nibh. Maecenas vel facilisis leo, id congue sem. In hac habitasse platea dictumst. Aenean est lorem, hendrerit sit amet rutrum ac, sodales eget neque. Pellentesque hendrerit, risus <span class="hljs-keyword">in</span> bibendum varius, purus tellus accumsan leo, et suscipit lorem nulla non arcu.&lt;<span class="hljs-regexp">/p&gt; &lt;/</span>div&gt;
</code></pre><pre><code>&lt;<span class="hljs-regexp">/div&gt; &lt;/</span>div&gt;&lt;! — end <span class="hljs-keyword">of</span> content →
</code></pre><pre><code>&lt;% include ../partials/footer %&gt;
</code></pre><pre><code>&lt;% include ../partials/scripts %&gt;
</code></pre><pre><code>&lt;<span class="hljs-regexp">/body&gt;&lt;/</span>html&gt;
</code></pre><h4 id="heading-starting-our-application">Starting our Application</h4>
<p>To start the application enter the following command:</p>
<pre><code>node server.js
</code></pre><p>When our application starts it will display our homepage:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Jw4IUCIlbgoAmUUj910htgwTuO4IMLu6fQf3" alt="Image" width="800" height="402" loading="lazy">
<em>homepage</em></p>
<p>If you click on the about link in the navigation, you will see the about page:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/lKS7AgrCRU6XiLL2hqRJJDulaOGXBCzIu53d" alt="Image" width="800" height="402" loading="lazy">
<em>about page</em></p>
<h3 id="heading-get-the-code">Get the code</h3>
<p><a target="_blank" href="https://github.com/ratracegrad/nodejs_ejs_boilerplate">You can get the code for this example on github</a></p>
<h3 id="heading-more-articles">More Articles</h3>
<p>Thanks for reading my article. If you like it, please click on clap icon below so that others will find the article. Here are some more of my articles that you might be interested in:<br><a target="_blank" href="https://medium.com/@ratracegrad/hitchhikers-guide-to-back-end-development-with-examples-3f97c70e0073">Using Node.js &amp; Express.js to save data to MongoDB Database</a><br><a target="_blank" href="https://medium.com/@ratracegrad/first-impressions-count-why-doesnt-your-github-repo-have-a-readme-file-f240961a8fca">First Impressions Count — Why Doesn’t Your Github Repo Have a ReadMe File?</a><br><a target="_blank" href="https://medium.freecodecamp.org/why-company-culture-is-important-to-your-career-as-a-software-engineer-5a590bc44621">Why Company Culture is Important to Your Career as a Software Engineer</a></p>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
