This repo is being served using GitHub Pages at https://ibm-cloud-architecture.github.io/cloudpak-for-integration The intention for thie repo is share various Cloud Pak for Integration resources and tutorials.
Source template gatsby-gitbook-starter
- Write using Markdown / MDX
Get started by running the following commands:
$ npm install -g gatsby-cli
$ git clone https://github.com/ibm-cloud-architecture/cloudpak-for-integration.git
$ cd cloudpak-for-integration.git
$ npm install
$ gatsby develop
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.
-
gatsbyconfig for global configuration likepathPrefix- Gatsby Path PrefixsiteUrl- Gatsby Site URLgaTrackingId- Google Analytics Tracking ID
-
headerconfig 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
-
sidebarconfig for navigation links configurationforcedNavOrderfor 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.
-
siteMetadataconfig 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
.mdfilename and the sub navigation is auto-generated. The sub navigation is alphabetically ordered.
To setup Algolia, go to config.js and update the search object to look like the one below:
"search": {
"enabled": true,
"indexName": "MY_INDEX_NAME",
"algoliaAppId": process.env.GATSBY_ALGOLIA_APP_ID,
"algoliaSearchKey": process.env.GATSBY_ALGOLIA_SEARCH_KEY,
"algoliaAdminKey": process.env.ALGOLIA_ADMIN_KEY
},
Values for Algolia App ID, Search Key, and Admin Key can be obtained from Algolia Dashboard with the right set of permissions. Replace MY_INDEX_NAME with the Algolia Index name of your choice. To build the Algolia index, you need to run npm run build which will do a gatsby build along with content indexing in Algolia.
To enable PWA, go to config.js and update the pwa object to look like the one below:
"pwa": {
"enabled": false, // disabling this will also remove the existing service worker.
"manifest": {
"name": "Gatsby Gitbook Starter",
"short_name": "GitbookStarter",
"start_url": "/",
"background_color": "#6b37bf",
"theme_color": "#6b37bf",
"display": "standalone",
"crossOrigin": "use-credentials",
icons: [
{
src: "src/pwa-512.png",
sizes: `512x512`,
type: `image/png`,
},
],
},
}
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.