See their repo for all the goods. They get the credit here. We like what they are doing and pull from them.
$ git clone [email protected]:hasura/gatsby-gitbook-starter.git
$ npm install
$ npm start
Get started by running the following commands:
$ git clone https://github.com/cryptowerk/docs.cryptowerk.com.git
$ cd docs.cryptowerk.com
$ npm install
$ npm start
$ # optionally: ./node_modules/.bin/gatsby telemetry --disable
Visit http://localhost:8000/
to view the app.
Write markdown files in content
folder.
Open config.js
for templating variables. Broadly configuration is available for gatsby
, header
, sidebar
and siteMetadata
.
-
gatsby
config for global configuration likepathPrefix
- Gatsby Path PrefixsiteUrl
- Gatsby Site URLgaTrackingId
- Google Analytics Tracking ID
-
header
config for site header configuration liketitle
- The title that appears on the top leftgithubUrl
- The Github URL for the docs websitehelpUrl
- Help URL for pointing to resourcestweetText
- Tweet textlinks
- Links on the top rightsearch
- Enable search and configure Algolia
-
sidebar
config for navigation links configurationforcedNavOrder
for left sidebar navigation order. It should be in the format "/"frontLine
- whether to show a front line at the beginning of a nested menu.(Collapsing capability would be turned of if this option is set to true)links
- Links on the bottom left of the sidebarignoreIndex
- Set this to true if the index.md file shouldn't appear on the left sidebar navigation. Typically this can be used for landing pages.
-
siteMetadata
config for website related configurationtitle
- Title of the websitedescription
- Description of the websiteogImage
- Social Media share og:image tagdocsLocation
- The Github URL for Edit on Github
-
For sub nesting in left sidebar, create a folder with the same name as the top level
.md
filename and the sub navigation is auto-generated. The sub navigation is alphabetically ordered.
To render react components for live editing, add the react-live=true
to the code section. For example:
<button>Edit my text</button>
In the above code, just add javascript react-live=true
after the triple quote ``` to start rendering react components that can be edited by users.
This is a static site and comes with all the SEO benefits. Configure meta tags like title and description for each markdown file using MDX Frontmatter
---
title: "Title of the page"
metaTitle: "Meta Title Tag for this page"
metaDescription: "Meta Description Tag for this page"
---
Canonical URLs are generated automatically.