Barber is a minimal blog theme built for Jekyll. The blog theme features a masonry grid, endless scrolling, and page transitions. 💈

View Demo Buy Theme


Ghost requires the theme to be uploaded in a .zip file. You will need to do this whenever you make any edit to the source code. You can run gulp zip in your command line to generate this file without all the extra folders Ghost does not need (see Source Code for more information about Gulp).

Browser Screen

Update Settings

Browser Screen

Create Static Pages

Creating a static page is the same as creating a story. The only difference is before the story is published it is turned into a page by selecting the checkbox at the very bottom of the post settings.

Browser Screen

Create Navigation

You can create a navigation under the Design Settings. Visitors can be linked directly to static pages right on the top of your website.

Contact Form

Once you have created a static page for Contact and navigated to that page you will see a form. The form uses Formspree to send submitted messages straight to your inbox.

Browser Screen

You do have to set the email address where you want to receive the form (you can even set the subject too). This file can be found in _includes/formspree.html. After everything is set you will need to submit a message yourself to confirm the email address is correct.

Social Media Links

Font Awesome is used for the social media icons. The icons in the theme can be found in _includes/share.html and _includes/social.html. The icons in _includes/share.html do not need to be edited unless you want to remove a certain website; however, the ones in _includes/social.hbs do have to be changed. You can follow the template that has been provided for you to link to all of your social media accounts. The naming convention has not changed from the instructions provided on Font Awesome.

Disqus Comments

Comments can be enabled on every blog post in three steps. The first step is to register your website with Disqus. Disqus will provide you with a shortname that you need for the next step. Once you have that the second step is to open _includes/disqus.html, remove all the instructions, and paste in your shortcode where the placeholder one currently is. The third step is to visit a blog post and verify that your comments are there.

Source Code

The source code is broken down to make finding what you need as easy as possible. Almost everything runs through gulpfile.js, so you will need to run npm install on your command line before doing any additional development. You can then run gulp or npm start to compile everything.

├── _assets
|   ├── js
|       ├── components
|       ├── vendor
|       ├── _inits.js
|       └── app.js
|   └── scss
|       ├── base
|       ├── components
|       ├── fonts
|       ├── regions
|       ├── tools
|       ├── utils
|       ├── vendor
|       ├── amp.scss
|       └── app.scss
├── _includes
|   ├── contact.html
|   ├── disqus.html
|   ├── footer.html
|   ├── formspree.html
|   ├── head.html
|   ├── header.html
|   ├── navigation.html
|   ├── pagination.html
|   ├── post-card.html
|   ├── share.html
|   ├── social.html
|   └── subscribe-form.html
├── _layouts
|   ├── compress.html
|   ├── default.html
|   ├── page.html
|   ├── post.html
|   └── tag.hbs
├── _plugins
|   ├── tags_list.rb
|   └── tags_pagination.rb
├── _posts
|   └──
├── _site
├── assets
|   ├── css
|   ├── images
|   └── js
├── src
|   ├── js
|       ├── components
|       ├── vendor
|       └── _init.js
|   └── scss
|       ├── base
|       ├── components
|       ├── fonts
|       ├── regions
|       ├── tools
|       ├── utils
|       ├── vendor
|       ├── amp.scss
|       └── app.scss
├── .eslintrc
├── .gitignore
├── .stylelintrc
├── 404.html
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── gulpfile.js
├── index.html
├── package.json
├── style-guide.html
└── subscribe.html

The CSS is written in Sass and compiled in two different files. One for the whole website and one for Google AMP pages. The JavaScript is written in ES6, so your code is up to date with the newest standards. This theme does not have jQuery, so you are saving every visitor from downloading that script.


Email if you need any additional support with Barber.