Using the theme

To use the theme extract the main downloaded zip file.

After extracting you will find a folder named similar to theme name. That folder is the production ready ( live site ready ) theme. After the required setup you will make a zip of this folder's content ( all files and folders within this folder ) and upload it to your ghost site.

To set up the theme properly with several setting options, please read through the documentation.

Please edit theme files using a proper code editor. There are lots of free and open source code editor available. You can choose any of those, some popular free code editor Visual Studio Code , Atom


Light and dark mode

By default the theme is in light mode.

If you want to enable dark mode then follow the steps below

  • Open default.hbs file from your theme folder.
  • Change data-theme="light" to data-theme="dark" in the html tag at line number 2. So that the line will become like below.
<html lang="{{@site.lang}}" class="no-js" data-theme="light">

Logo settings

This section describe instruction to setup image logo. If you do not use image logo then site title will be shown at the place of logo and you can skip this section.

As this theme has option to toggle dark and light mode. We have to provide, 2 different logo for 2 different mode.

If you want to add logo image from dashboard then please follow the steps below. I recommend to make your logos in svg format, but the format is not absolute requirement.

  • At first prepare 2 version of your logo ( one for light background and anther for dark background ).
  • From your ghost dashboard, upload normally the logo which is made for light background ( i.e. dark color logo for light background).
  • Now the second logo ( light color logo for dark background) place it in the assets > images folder within your theme folder replacing dark-theme-logo.svg. If you keep your file name same ( i.e. dark-theme-logo.svg) then you are ok to skip below steps.
  • If you do not named your logo dark-theme-logo.svg then open header.hbs file located in partials folder. At line number 9 you will find following code.
<a href="{{@site.url}}" class="logo-img theme-dark-logo"><img src="{{asset "images/dark-theme-logo.svg"}}" alt="{{@site.title}}"></a>
  • Change the dark-theme-logo.svg to your logo file name with extension. See following example. Here we assume the logo file name is your-logo.png
<a href="{{@site.url}}" class="logo-img theme-dark-logo"><img src="{{asset "images/your-logo.png"}}" alt="{{@site.title}}"></a>

Changing navbar behavior

By default the navigation behavior is sticky, means it stays on the screen when you scroll the page.

If you do not want this behavior and want the navigation bar scroll normally with the page then follow steps below.

  • Open default.hbs file from your theme folder.
  • Remove data-nav="sticky" in the body tag at line number 27. So that the line will become like below.
<body class="{{body_class}}">

Featured post on home page

On home page of this theme the top section shows 2 recent featured posts. So make your post as featured and it will be shown there.

If you want to change the maximum number of post in this section, do the following.

  • Open home.hbs file.
  • At line number 8 you will see the following code.
{{#get "posts" limit="2" include="tags,authors" filter="featured:true"}}

Change limit="2" to the number of your choice.

If you don't want to show the featured section on home page entirely Just delete the home.hbs file from your theme folder. Now home page will use index.hbs file which will not show the featured post section.


API key for search function

You have to generate an API key to use in the theme. Without the API key the search function will not work. Please follow theses steps.

  • Go to your admin dashboard and visit "Integrations" setting page.
  • Scroll Below and click on the "Add custom integration" button.
  • Give it a name ( anything you want, it does not matter). You can just name it "search"
  • Save that and copy the "Content API key".

API key for search

  • Now open "api-key.hbs" file which is located in partials folder. You will see following line.
apiKey = "ADD_YOUR_CONTENT_API_KEY_HERE";
  • Replace ADD_YOUR_CONTENT_API_KEY_HERE with the content API key you have copied from your admin dashboard.
  • Save the file.

Configure disqus comment

To enable disqus you need disqus_shotrname for your site. To setup the disqus comment properly please follow the steps below.

  • Go to disqus.com and sign up.
  • After log in go to admin dashboard.
  • Then follow the instruction and add your website there.
  • At the time of adding your site you will get a disqus shortname, copy that.
  • Now open comment.hbs file which is located in partials folder. At line number 9 you will see below code
var disqus_shortname = 'example';
  • replace that example with your own shortname. It will look like below.
var disqus_shortname = 'yourDisqusShortnameHere';
  • Now save the file.

If you want to use other comment comment platform other than disqus then get embed code for respective platform and replace line number 10 to 12 in the comment.hbs file using your embed code. Or contact respective comment platform provider to get help.

If you want to remove entirely the comment area, then open post.hsb file located in theme root. At line number 69 you will see  {{> comment}}. Remove that line from that file.


To add your social links in footer please follow the steps below.

From your ghost dashboard, Go to general setting page and scroll down. In social account option, you can add Facebook and Twitter link there. This facebook and twitter will be linked with the icons.

There is no option to add other social links directly from dashboard. Following are the steps to add other links.

  • open social-links.hbs file located in partials folder.
  • From line number 8, you can add different social links. Replace the # for each href value with your own profile links.
  • If you want to add other social links or want to remove one then copy or remove one of those lines.

The code in social-links.hbs file, where you will add your links, will look like below.

<a href="#" aria-label="instagram link">{{> icons/instagram}}</a>
<a href="#" aria-label="github link">{{> icons/github}}</a>
<a href="#" aria-label="medium link">{{> icons/medium}}</a>
<a href="#" aria-label="youtube link">{{> icons/youtube}}</a>
<a href="#" aria-label="vimeo link">{{> icons/vimeo}}</a>
<a href="#" aria-label="behance link">{{> icons/behance}}</a>
<a href="#" aria-label="dribbble link">{{> icons/dribbble}}</a>

To add links to you static pages please follow the steps below.

  • Create a new page in your dashboard.
  • Copy the URL for this page from the page settings panel.
  • Go to Design page in your admin dashboard.
  • Add a label and the URL and save it.
  • Now the theme will show newly added link in navigation.

In the footer of this theme the secondary navigation links will be shown.


Membership subscription

Ghost introduced a new universal membership management feature portal at Ghost version 3.37.0. This theme uses that for the membership related feature.

You can enable this membership feature from the lab page in your ghost dashboard. You may wish to customize the portal appearance. Change accent color to the theme's accent color for better matching portal appearance with the theme. This theme's default accent color is #0571F0.


Installation

Ones the necessary configuration is done, make a zip of the modified theme folder.

Now login to your admin area and go to Design. In that page scroll down and you can find "Upload a theme" button. Upload the theme zip which you have created while ago. After finishing upload, activate the theme.

If you want to install the demo data to make your site as the preview then you can go to your-site-url/ghost/settings/labs/ and then import the neoblog.ghost.demo.json file there. This file is located in demo data folder in main download folder.

Importing the demo document may miss images. In that case delete the missing images and upload your own images from dashboard.


Author and tag archive

In this theme there are 2 custom template for Tag archive and Author Archive. To use those template please follow the steps below.

  • Create a new page
  • Add a Title ( example: Authors or Authors Archive or any thing else you want). It will not be displayed on the page it just create the page slug and URL.
  • Open page settings panel by clicking on the gear icon at top right corner of the page.
  • Below that there is an dropdown selectable option called "template". Choose "Author archive" template option there.
  • Now save and publish the page.
  • Copy The "post-URL" and use it to create a menu link in design page in your admin area, as you normally do for other static page.
  • Save it and visit your site. If you did everything right then you will see your newly created link in your menu bar. Open to see all available author list.

For Tag archive page follow the same steps as author archive setting. At step 4 choose "Tag archive" option from dropdown select option. Then Follow all the remaining steps and you will be able to add a tag archive page in you site.


Contact form

In the demo of this theme you have seen a contact form. As ghost has no inbuilt feature for this you have to use a third party service. In demo formspree has been used.

If you want to add contact form in your site same as the demo, then follow this steps.

There is a file named contact-form-code.txt in the downloaded zip folder.

Copy the entire code from that file, now go to your page editor and then add the code using an HTML card. Change the example email address to your own email address within the code.


Theme translation

This theme supports translation. Please follow the steps below to translate this theme in your language.

  • Within theme folder, there is a folder named "locales". In that folder by default you will find a file named "en.json". This is the default file for English language and you have to use this file to create your own language file.
  • make a copy of en.json and give a name following this format [language_code].json ( example: for French fr.json for German i.e. Deutsch de.json for Russian ru.json etc. )
  • If you are not sure about what is you language code then you can visit this wiki page and see. Use the two letter (ISO 639-1) code.
  • Now open the newly created <your_language>.json file in text editor. You will see "KEY": "VALUE" format in each line.
  • In English language KEY and VALUE are same. Now you read the left part of the : i.e. KEY part and change the tight part i.e. VALUE part to your own language.
  • After finishing the translation Save the file and upload the theme to your site.
  • Go to your admin area, Visit "General setting" page and change the "publication Language" option. By default there is "en" for English. Add your own language code there in place of "en" and save the settings.
  • Visit your site, If everything goes right, you will see all the theme related text in your site is in your translated language.

If you translate the theme in any language, then please consider to share ( feel free to send me via email ) that language file. I will add that file to the theme, so that it will available to other users.


Theme customization

If you need to add only small CSS then you can add using Ghost's Code Injection feature. In "blog header" box you can add CSS like below example. replace the CSS with your own CSS between the <style> tag.

<style>
.header-wrapper .text-logo {
color: #076eff;
}
</style>

Detail customization prerequisite

This theme is built using Gulp to compile JavaScript and CSS. CSS is written in SCSS. So if you want to modify the theme color, styles or appearance or anything you want to customize, before doing that you need to setup development environment setup.

Please follow all the steps below one by one to do it.

You need to have installed node js and gulp installed in your local machine.

  • If you don't have NodeJS installed in your machine then visit nodejs.org and download and install latest LTS version of NodeJS.
  • After installing NodeJS open a command prompt or terminal. Then type node -v. If it shows a version number then NodeJS is installed correctly. Also enter this command npm -v to see npm ( comes with node js) is installed properly.
  • After installing node js you need to install Gulp CLI globally in your machine. So in your terminal or command prompt enter this command. npm install gulp-cli -g. It may take some time, it will install Gulp CLI globally in your machine. Now you have done the environment setup.
  • At this point go to the development theme folder. In downloaded zip there is a folder named "development". Within that folder you will see a folder named as the theme name. Enter in that folder and run command prompt / terminal here. Or you can navigate to this folder within already running terminal.
  • Now enter command npm install. It may take some time. It will install all the development dependency within the project. It may show some warning, don't worry those are OK.
  • At this time you are ready to modify theme, Run one more command gulp in the terminal. It will initially compile all files and star to watch file changes. Keep the terminal open and start customizing the theme.

How to change color or CSS

In the theme folder you will find "assets > scss" folder which contains all the theme styles written in SCSS.

To change any style / css you need to modify here. In SCSS folder you will find a folder named "components" which contains a bunch of .scss files which are part of the whole theme's style. and all those files are imported in a specific order in "screen.scss" file located in "scss" folder root outside of "components" folder. please don't edit that file.

To change the Theme color please follow the steps below.

  • Open the _global-settings.scss file in your code editor.
  • Now you have to change the color hexcode (#xxxxxx) in this file and save the file.
  • If you have followed the above section of instruction ( Detail customization prerequisite), and already running terminal with the gulp command then the file changes will be detected and if there is no error in your file then it will be automatically compiled.

The _global-settings.scss file looks like below.

/*=====================================================
Fonts
=====================================================*/

:root {
--font-family: 'Manrope', -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
}
/*=====================================================
light theme colors ( as SCSS mixin )
=====================================================*/

@mixin theme-light {
--body-bg: #F3F6F9;
--card-bg: #ffffff;
--theme-color: #0571F0;
--light-bg-color: #F3F6F9;
--text-color-normal: #424447;
--text-color-dark: #06111D;
--text-color-light: #a1a1a1;
--border-color: #E8E9EB;
--shadow: 0px 2px 20px rgba(0, 0, 0, 0.08);
--shadow-two: 0px 2px 40px rgba(0, 0, 0, 0.08);
}
/*=====================================================
dark theme colors ( as SCSS mixin )
=====================================================*/

@mixin theme-dark {
--body-bg: #101216;
--card-bg:#1e1f24;
--theme-color: #0571F0;
--light-bg-color: #16191E;
--text-color-normal: #c2c3c7;
--text-color-dark: #fBfBfC;
--text-color-light: #727272;
--border-color: #0c0c0c;
--shadow: 0px 2px 20px rgba(0, 0, 0, 0.2);
--shadow-two: 0px 2px 40px rgba(0, 0, 0, 0.2);
}
/*=====================================================
common variables ( as SCSS mixin )
define common variable for light and dark here
=====================================================*/

@mixin common-vars {
--white: #FFF;
--black: #000;
--border-radius-small: 2px;
--border-radius-medium: 4px;
--border-radius-large: 6px;
}
/*=====================================================
⚠ WARNING: please do not edit below this line,
incorrect coding may break the theme

Merging common variables with light and dark
separately
=====================================================*/

:root {
@include common-vars;
@include theme-light;
}
[data-theme="dark"] {
@include common-vars;
@include theme-dark;
}

After modifying the theme css when you are done and want to install the final theme in your live site, do the following.

  • Go to running terminal ( terminal is navigated to development theme folder and running gulp command to watch the file changes )
  • Press Ctrl + C or Cmd + C in your keyboard to end the running task.
  • After ending running task enter this command, gulp build. This command will build the production ready ( live site ready ) theme package within a folder named "build".
  • After doing the gulp build if you need you can configure the theme options ( such as disqus shortname, social links etc ) then use this command gulp zip. It will make a folder named "dist" and make a zip of the contents of "build" folder within "dist" folder.
  • Now you can upload this newly created zip in your ghost admin panel.

Changelog

V 1.0.1 - November 27, 2020

  • Fixed issue for light dark mode.

V 1.0.0 - November 22, 2020

  • Initial release