From 823552f95f209e9adcd184212eb2545dc5c474ba Mon Sep 17 00:00:00 2001 From: ivaosthu Date: Tue, 20 Nov 2018 20:34:42 +0100 Subject: [PATCH] chore(documentation): Added Docusaurus with a website fixes #355 --- .eslintignore | 7 + .gitignore | 8 + .travis.yml | 13 +- docs/activation-strategies.md | 6 +- docs/api/admin/events-api.md | 5 + docs/api/admin/feature-toggles-api.md | 5 + docs/api/admin/metrics-api.md | 5 + docs/api/admin/strategies-api.md | 5 +- docs/api/client/feature-toggles-api.md | 5 + docs/api/client/metrics-api.md | 7 +- docs/api/client/register-api.md | 5 +- docs/api/index.md | 5 +- docs/api/internal-backstage-api.md | 5 + docs/client-specification.md | 6 + docs/database-backup.md | 6 +- docs/database-schema.md | 6 +- docs/developer-guide.md | 6 +- docs/getting-started.md | 5 +- docs/migration-guide.md | 6 +- docs/securing-unleash.md | 6 +- docs/unleash-context.md | 6 +- website/README.md | 145 ++++++++++++++++ website/core/Footer.js | 86 ++++++++++ website/package.json | 14 ++ website/pages/en/help.js | 58 +++++++ website/pages/en/index.js | 225 +++++++++++++++++++++++++ website/pages/en/users.js | 49 ++++++ website/sidebars.json | 12 ++ website/siteConfig.js | 108 ++++++++++++ website/static/css/custom.css | 24 +++ website/static/img/dashboard.png | Bin 0 -> 98874 bytes website/static/img/docusaurus.svg | 1 + website/static/img/favicon/favicon.ico | Bin 0 -> 17910 bytes website/static/img/finn.jpg | Bin 0 -> 6099 bytes website/static/img/logo-inverted.png | Bin 0 -> 5463 bytes website/static/img/unleash_logo.png | Bin 0 -> 5627 bytes 36 files changed, 836 insertions(+), 14 deletions(-) create mode 100644 website/README.md create mode 100644 website/core/Footer.js create mode 100644 website/package.json create mode 100755 website/pages/en/help.js create mode 100755 website/pages/en/index.js create mode 100644 website/pages/en/users.js create mode 100644 website/sidebars.json create mode 100644 website/siteConfig.js create mode 100644 website/static/css/custom.css create mode 100644 website/static/img/dashboard.png create mode 100644 website/static/img/docusaurus.svg create mode 100644 website/static/img/favicon/favicon.ico create mode 100644 website/static/img/finn.jpg create mode 100644 website/static/img/logo-inverted.png create mode 100644 website/static/img/unleash_logo.png diff --git a/.eslintignore b/.eslintignore index d1c1dbe227..e88a1d1af6 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,2 +1,9 @@ node_modules bundle.js +website/blog +website/build +website/node_modules +website/i18n/*.js +website/translated_docs +website/core +website/pages diff --git a/.gitignore b/.gitignore index f67a381ed1..e9a64d5f5d 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,11 @@ typings # We use yarn.lock package-lock.json + +# Website stuff +/website/build +/website/backers.json +/website/node_modules +/website/yarn.lock +/website/translated_docs +/website/i18n/* \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 3f7ff007d5..dcdf1b6eeb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,7 +14,8 @@ before_script: - greenkeeper-lockfile-update script: yarn run test:coverage after_script: greenkeeper-lockfile-upload -after_success: yarn run test:coverage-report +after_success: +- yarn run test:coverage-report notifications: slack: secure: MroremSKwtQkwPbrXjgs9hIqKTCDKk7bAIXXzjcS6wXC9uRaFgwFaW8oO3vBxtWa4BL44EQBLE/rboWgqFER62+XgXNgEqGZqrcJHJvby4r+dUNMPI64OZvWdIiydIYxLo8C1C4x5PqBup0xuLq8h/SBnNvA2NLgkjuvzOi+v/Q= @@ -22,3 +23,13 @@ addons: postgresql: '9.4' cache: yarn: true +deploy: + # deploy doc on master to production + - provider: script + script: + - git config --global user.name "${GH_NAME}" + - git config --global user.email "${GH_EMAIL}" + - echo "machine github.com login ${GH_NAME} password ${GH_TOKEN}" > ~/.netrc + - cd website && npm install && GIT_USER="${GH_NAME}" npm run publish-gh-pages + on: + branch: master \ No newline at end of file diff --git a/docs/activation-strategies.md b/docs/activation-strategies.md index 3e1c16406f..d3bea98178 100644 --- a/docs/activation-strategies.md +++ b/docs/activation-strategies.md @@ -1,4 +1,8 @@ -# Activation Strategies +--- +id: activation_strategy +title: Activation Strategies +--- + It is powerful to be able to turn a feature on and off instantaneously, without redeploying the application. The next level of control comes when you are able to enable a feature for specific users or enable it for a small subset of the users. We achieve this level of control with the help of activation strategies. The most simple strategy is the “default” strategy, which basically means that the feature should be enabled to everyone. diff --git a/docs/api/admin/events-api.md b/docs/api/admin/events-api.md index aece9ffdb1..48f12cd014 100644 --- a/docs/api/admin/events-api.md +++ b/docs/api/admin/events-api.md @@ -1,3 +1,8 @@ +--- +id: events +title: /api/admin/events +--- + # Events API `GET: http://unleash.host.com/api/admin/events` diff --git a/docs/api/admin/feature-toggles-api.md b/docs/api/admin/feature-toggles-api.md index 744983474b..cc4f6e5474 100644 --- a/docs/api/admin/feature-toggles-api.md +++ b/docs/api/admin/feature-toggles-api.md @@ -1,3 +1,8 @@ +--- +id: features +title: /api/admin/features +--- + ### Fetching Feature Toggles `GET: http://unleash.host.com/api/admin/features` diff --git a/docs/api/admin/metrics-api.md b/docs/api/admin/metrics-api.md index f9e1e316e1..feca5bbcfc 100644 --- a/docs/api/admin/metrics-api.md +++ b/docs/api/admin/metrics-api.md @@ -1,3 +1,8 @@ +--- +id: metrics +title: /api/admin/metrics +--- + # This document describes the metrics endpoint for admin ui diff --git a/docs/api/admin/strategies-api.md b/docs/api/admin/strategies-api.md index 3ba64e5952..0e4f17b432 100644 --- a/docs/api/admin/strategies-api.md +++ b/docs/api/admin/strategies-api.md @@ -1,4 +1,7 @@ -## Strategies API +--- +id: strategies +title: /api/admin/strategies +--- ### Fetch Strategies `GET: http://unleash.host.com/api/admin/strategies` diff --git a/docs/api/client/feature-toggles-api.md b/docs/api/client/feature-toggles-api.md index bf0847d9fd..b92db8068c 100644 --- a/docs/api/client/feature-toggles-api.md +++ b/docs/api/client/feature-toggles-api.md @@ -1,3 +1,8 @@ +--- +id: features +title: /api/client/features +--- + ### Fetching Feature Toggles `GET: http://unleash.host.com/api/client/features` diff --git a/docs/api/client/metrics-api.md b/docs/api/client/metrics-api.md index d1428b0c93..5027859977 100644 --- a/docs/api/client/metrics-api.md +++ b/docs/api/client/metrics-api.md @@ -1,8 +1,11 @@ -# This document describes the client metrics endpoints +--- +id: metrics +title: /api/client/metrics +--- ### Send metrics -`POST http://unleash.host.com/api/client/metrics` +`POST: http://unleash.host.com/api/client/metrics` Register a metrics payload with a timed bucket. diff --git a/docs/api/client/register-api.md b/docs/api/client/register-api.md index da3a3769d2..4ef26ffeef 100644 --- a/docs/api/client/register-api.md +++ b/docs/api/client/register-api.md @@ -1,4 +1,7 @@ -# This document describes the client registration endpoints +--- +id: register +title: /api/client/register +--- ### Client registration diff --git a/docs/api/index.md b/docs/api/index.md index 1c035ce28a..306d7e579e 100644 --- a/docs/api/index.md +++ b/docs/api/index.md @@ -1,4 +1,7 @@ -# API Documentation +--- +id: index +title: API Documentation +--- ## Client API This describes the API provided to unleash-clients. diff --git a/docs/api/internal-backstage-api.md b/docs/api/internal-backstage-api.md index ab11889779..2d8b57974f 100644 --- a/docs/api/internal-backstage-api.md +++ b/docs/api/internal-backstage-api.md @@ -1,3 +1,8 @@ +--- +id: internal +title: /internal-backstage/prometheus +--- + # Internal Backstage API `GET http://unleash.host.com/internal-backstage/prometheus` diff --git a/docs/client-specification.md b/docs/client-specification.md index 9fa461082f..67831b1e75 100644 --- a/docs/client-specification.md +++ b/docs/client-specification.md @@ -1,3 +1,9 @@ +--- +id: client_specification +title: Client Specification +--- + + # Client Specification 1.0 This document attempts to guide developers in implementing a Unleash Client SDK. diff --git a/docs/database-backup.md b/docs/database-backup.md index 0ddeab59da..d4dd930f35 100644 --- a/docs/database-backup.md +++ b/docs/database-backup.md @@ -1,4 +1,8 @@ -# Database backups +--- +id: database_backup +title: Database Backup +--- + When upgrading to a new major version of Unleash it is advised to do a full database backup to ease rollback in case of failures. diff --git a/docs/database-schema.md b/docs/database-schema.md index 16c10a0408..e959678db0 100644 --- a/docs/database-schema.md +++ b/docs/database-schema.md @@ -1,4 +1,8 @@ -# Schema +--- +id: database_schema +title: Database Schema +--- + This document describes our current database schema used in PostgreSQL. We use db-migrate to migrate (create tables, add columns etc) the database. diff --git a/docs/developer-guide.md b/docs/developer-guide.md index 6932cbcdc0..edbdb5befe 100644 --- a/docs/developer-guide.md +++ b/docs/developer-guide.md @@ -1,4 +1,8 @@ -# Developer Guide +--- +id: developer_guide +title: Developer guide +--- + ## PostgreSQL To run and develop unleash you need to have PostgreSQL database (PostgreSQL v.9.5.x or newer) locally. diff --git a/docs/getting-started.md b/docs/getting-started.md index e73b70aa0a..0c777802b1 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -1,4 +1,7 @@ -# Getting stated +--- +id: getting_started +title: Getting Started +--- ## Requirements diff --git a/docs/migration-guide.md b/docs/migration-guide.md index 4cedc82c80..0121cf5526 100644 --- a/docs/migration-guide.md +++ b/docs/migration-guide.md @@ -1,4 +1,8 @@ -# Migrations guide +--- +id: migration_guide +title: Migration Guide +--- + Generally the intention is that `unleash-server` should always provide support for clients one lower major version. This should make possible to upgrade `unleash` gradually. diff --git a/docs/securing-unleash.md b/docs/securing-unleash.md index c6841c1fd3..f9ca33658d 100644 --- a/docs/securing-unleash.md +++ b/docs/securing-unleash.md @@ -1,4 +1,8 @@ -# Securing Unleash +--- +id: securing_unleash +title: Securing Unleash +--- + The Unleash API is split in two different paths: `/api/client` and `/api/admin`. This makes it easy to have different authentication strategy for the admin interface and the client-api used by the applications integrating with Unleash. diff --git a/docs/unleash-context.md b/docs/unleash-context.md index 4a91dd1ab0..8a6fe07379 100644 --- a/docs/unleash-context.md +++ b/docs/unleash-context.md @@ -1,4 +1,8 @@ -# Unleash Context +--- +id: unleash_context +title: Unleash Context +--- + In order to standardise a few activation strategies we also needed to standardise a unleash context, which contains some fields that varies diff --git a/website/README.md b/website/README.md new file mode 100644 index 0000000000..b7490fdf7a --- /dev/null +++ b/website/README.md @@ -0,0 +1,145 @@ +The Unleash website was created with [Docusaurus](https://docusaurus.io/). + +It's hosted on https://unleash.github.io/ + +# What's In This Document + +* [Get Started in 5 Minutes](#get-started-in-5-minutes) +* [Directory Structure](#directory-structure) +* [Editing Content](#editing-content) +* [Adding Content](#adding-content) +* [Full Documentation](#full-documentation) + +# Get Started in 5 Minutes + +1. Make sure all the dependencies for the website are installed: + +```sh +# Install dependencies +$ npm install +``` +2. Run your dev server: + +```sh +# Start the site +$ npm run start +``` + +## Directory Structure + +Your project file structure should look something like this + +``` +unleash/ + docs/ + doc-1.md + doc-2.md + doc-3.md + website/ + core/ + pages/ + static/ + css/ + img/ + package.json + sidebar.json + siteConfig.js +``` + +# Editing Content + +## Editing an existing docs page + +Edit docs by navigating to `docs/` and editing the corresponding document: + +`docs/doc-to-be-edited.md` + +```markdown +--- +id: page-needs-edit +title: This Doc Needs To Be Edited +--- + +Edit me... +``` + +For more information about docs, click [here](https://docusaurus.io/docs/en/navigation) + +# Adding Content + +## Adding a new docs page to an existing sidebar + +1. Create the doc as a new markdown file in `/docs`, example `docs/newly-created-doc.md`: + +```md +--- +id: newly-created-doc +title: This Doc Needs To Be Edited +--- + +My new content here.. +``` + +1. Refer to that doc's ID in an existing sidebar in `website/sidebar.json`: + +```javascript +// Add newly-created-doc to the Getting Started category of docs +{ + "docs": { + "Getting Started": [ + "quick-start", + "newly-created-doc" // new doc here + ], + ... + }, + ... +} +``` + +For more information about adding new docs, click [here](https://docusaurus.io/docs/en/navigation) + +## Adding items to your site's top navigation bar + +1. Add links to docs, custom pages or external links by editing the headerLinks field of `website/siteConfig.js`: + +`website/siteConfig.js` +```javascript +{ + headerLinks: [ + ... + /* you can add docs */ + { doc: 'my-examples', label: 'Examples' }, + /* you can add custom pages */ + { page: 'help', label: 'Help' }, + /* you can add external links */ + { href: 'https://github.com/facebook/Docusaurus', label: 'GitHub' }, + ... + ], + ... +} +``` + +For more information about the navigation bar, click [here](https://docusaurus.io/docs/en/navigation) + +## Adding custom pages + +1. Docusaurus uses React components to build pages. The components are saved as .js files in `website/pages/en`: +1. If you want your page to show up in your navigation header, you will need to update `website/siteConfig.js` to add to the `headerLinks` element: + +`website/siteConfig.js` +```javascript +{ + headerLinks: [ + ... + { page: 'my-new-custom-page', label: 'My New Custom Page' }, + ... + ], + ... +} +``` + +For more information about custom pages, click [here](https://docusaurus.io/docs/en/custom-pages). + +# Full Documentation + +Full documentation can be found on the [website](https://docusaurus.io/). diff --git a/website/core/Footer.js b/website/core/Footer.js new file mode 100644 index 0000000000..282cb8382a --- /dev/null +++ b/website/core/Footer.js @@ -0,0 +1,86 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +class Footer extends React.Component { + docUrl(doc, language) { + const baseUrl = this.props.config.baseUrl; + return `${baseUrl}docs/${language ? `${language}/` : ''}${doc}`; + } + + pageUrl(doc, language) { + const baseUrl = this.props.config.baseUrl; + return baseUrl + (language ? `${language}/` : '') + doc; + } + + render() { + return ( + + ); + } +} + +module.exports = Footer; diff --git a/website/package.json b/website/package.json new file mode 100644 index 0000000000..04776b1e7a --- /dev/null +++ b/website/package.json @@ -0,0 +1,14 @@ +{ + "scripts": { + "examples": "docusaurus-examples", + "start": "docusaurus-start", + "build": "docusaurus-build", + "publish-gh-pages": "docusaurus-publish", + "write-translations": "docusaurus-write-translations", + "version": "docusaurus-version", + "rename-version": "docusaurus-rename-version" + }, + "devDependencies": { + "docusaurus": "^1.5.1" + } +} diff --git a/website/pages/en/help.js b/website/pages/en/help.js new file mode 100755 index 0000000000..512e335a99 --- /dev/null +++ b/website/pages/en/help.js @@ -0,0 +1,58 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const Container = CompLibrary.Container; +const GridBlock = CompLibrary.GridBlock; + +const siteConfig = require(`${process.cwd()}/siteConfig.js`); + +function docUrl(doc, language) { + return `${siteConfig.baseUrl}docs/${language ? `${language}/` : ''}${doc}`; +} + +class Help extends React.Component { + render() { + const language = this.props.language || ''; + const supportLinks = [ + { + content: `Learn more using the [documentation on this site.](${docUrl( + 'doc1.html', + language, + )})`, + title: 'Browse Docs', + }, + { + content: 'Ask questions about the documentation and project', + title: 'Join the community', + }, + { + content: "Find out what's new with this project", + title: 'Stay up to date', + }, + ]; + + return ( +
+ +
+
+

Need help?

+
+

This project is maintained by a dedicated group of people.

+ +
+
+
+ ); + } +} + +module.exports = Help; diff --git a/website/pages/en/index.js b/website/pages/en/index.js new file mode 100755 index 0000000000..b894efc541 --- /dev/null +++ b/website/pages/en/index.js @@ -0,0 +1,225 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const MarkdownBlock = CompLibrary.MarkdownBlock; /* Used to read markdown */ +const Container = CompLibrary.Container; +const GridBlock = CompLibrary.GridBlock; + +const siteConfig = require(`${process.cwd()}/siteConfig.js`); + +function imgUrl(img) { + return `${siteConfig.baseUrl}img/${img}`; +} + +function docUrl(doc, language) { + return `${siteConfig.baseUrl}docs/${language ? `${language}/` : ''}${doc}`; +} + +function pageUrl(page, language) { + return siteConfig.baseUrl + (language ? `${language}/` : '') + page; +} + +class Button extends React.Component { + render() { + return ( +
+ + {this.props.children} + +
+ ); + } +} + +Button.defaultProps = { + target: '_self', +}; + +const SplashContainer = props => ( +
+
+
{props.children}
+
+
+); + +const Logo = props => ( +
+ Project Logo +
+); + +const ProjectTitle = () => ( +

+ {siteConfig.title} + {siteConfig.tagline} +

+); + +const PromoSection = props => ( +
+
+
{props.children}
+
+
+); + +class HomeSplash extends React.Component { + render() { + const language = this.props.language || ''; + return ( + +
+ + + Star + + + + + + +
+
+ ); + } +} + +const Block = props => ( + + + +); + +const FeatureCallout = () => ( +
+

+ Unleash is a feature toggle system, that gives you a great overview over all feature toggles across + all your applications and services. It comes with official client implementations for Java, Node.js, Go, Ruby and Python. +

+

+ The main motivation for doing feature toggling is to decouple the process for deploying code to production + and releasing new features. This helps reducing risk, and allow us to easily manage which features to enable +

+
+); + +const UnleashClient = () => ( + + +

Client implementations

+

+ Unleash has offical SDK's for Java, Node.js, Go, Ruby and Python. And we will be happy to add implementations in other langugages written by you! These libraries makes it very easy to use Unleash in you application. +

+ +

Official client SDKs:

+ + +

Clients written by awesome enthusiasts:

+ +
+); + +const TryOut = () => ( + + {[ + { + content: 'We have deployed a demo version of [Unleash on Heroku](https://unleash.herokuapp.com). '+ + 'Here you can play with the Unleash UI, define your toggles.

'+ + 'You can even use on of the Unleash client SDKs and test it out Unleash your application. '+ + 'Use the api url located at https://unleash.herokuapp.com/api/.', + image: imgUrl('dashboard.png'), + imageAlign: 'left', + align: 'left', + title: 'Try Unleash', + }, + ]} +
+); + +const ActivationStrategies = () => ( + + {[ + { + content: 'It\'s fine to have a system for turning stuff on and off. But some times we want more granular control, we want to decide who to the toggle should be enabled for. This is where [activation strategies](docs/activation_strategy) comes in to the picture. Activation strategies take arbitrary config and allows us to enable a toggle in various ways.', + image: imgUrl('logo-inverted.png'), + imageAlign: 'right', + title: 'Activation strategies', + }, + ]} + +); + +const Showcase = props => { + if ((siteConfig.users || []).length === 0) { + return null; + } + + const showcase = siteConfig.users.filter(user => user.pinned).map(user => ( + + {user.caption} + + )); + + return ( +
+

Who is Using This?

+

This project is used by all these people

+
{showcase}
+
+ + More {siteConfig.title} Users + +
+
+ ); +}; + +class Index extends React.Component { + render() { + const language = this.props.language || ''; + + return ( +
+ +
+ + + + + +
+
+ ); + } +} + +module.exports = Index; diff --git a/website/pages/en/users.js b/website/pages/en/users.js new file mode 100644 index 0000000000..b03fb812ad --- /dev/null +++ b/website/pages/en/users.js @@ -0,0 +1,49 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const Container = CompLibrary.Container; + +const siteConfig = require(`${process.cwd()}/siteConfig.js`); + +class Users extends React.Component { + render() { + if ((siteConfig.users || []).length === 0) { + return null; + } + + const editUrl = `${siteConfig.repoUrl}/edit/master/website/siteConfig.js`; + const showcase = siteConfig.users.map(user => ( + + {user.caption} + + )); + + return ( +
+ +
+
+

Who is Using This?

+

This project is used by many folks

+
+
{showcase}
+

Are you using this project?

+ + Add your company + +
+
+
+ ); + } +} + +module.exports = Users; diff --git a/website/sidebars.json b/website/sidebars.json new file mode 100644 index 0000000000..93b204ce18 --- /dev/null +++ b/website/sidebars.json @@ -0,0 +1,12 @@ +{ + "documentation": { + "Getting Started": ["getting_started", "securing_unleash", "unleash_context", "activation_strategy", "client_specification", "migration_guide"], + "Developer Guide": ["developer_guide", "database_schema", "database_backup"] + }, + "api": { + "Client": ["api/client/features", "api/client/register", "api/client/metrics"], + "Admin": ["api/admin/features", "api/admin/strategies", "api/admin/metrics", "api/admin/events" ], + "Internal": ["api/internal" ] + + } +} diff --git a/website/siteConfig.js b/website/siteConfig.js new file mode 100644 index 0000000000..3c802e6ab9 --- /dev/null +++ b/website/siteConfig.js @@ -0,0 +1,108 @@ +'use strict'; + +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +// See https://docusaurus.io/docs/site-config for all the possible +// site configuration options. + +// List of projects/orgs using your project for the users page. +const users = [ + { + caption: 'FINN.no', + // You will need to prepend the image path with your baseUrl + // if it is not '/', like: '/test-site/img/docusaurus.svg'. + image: '/img/finn.jpg', + infoLink: 'https://www.finn.no', + pinned: true, + }, +]; + +const siteConfig = { + title: 'Unleash', // Title for your website. + tagline: 'The enterprise ready feature toggle service', + url: 'https://unleash.github.io', // Your website URL + baseUrl: '/', // Base URL for your project */ + // For github.io type URLs, you would set the url and baseUrl like: + // url: 'https://facebook.github.io', + // baseUrl: '/test-site/', + + // Used for publishing and more + projectName: 'unleash.github.io', + organizationName: 'Unleash', + // For top-level user or org sites, the organization is still the same. + // e.g., for the https://JoelMarcey.github.io site, it would be set like... + // organizationName: 'JoelMarcey' + + // For no header links in the top nav bar -> headerLinks: [], + headerLinks: [ + { doc: 'getting_started', label: 'Documentation' }, + { doc: 'api/client/features', label: 'API' }, + { page: 'help', label: 'Help' }, + // {blog: true, label: 'Blog'}, + ], + + // If you have users set above, you add it here: + users, + + /* path to images for header/footer */ + headerIcon: 'img/logo-inverted.png', + footerIcon: 'img/logo-inverted.png', + favicon: 'img/favicon/favicon.ico', + + /* Colors for website */ + colors: { + primaryColor: '#3f51b5', + secondaryColor: '#697ce5', + }, + + /* Custom fonts for website */ + /* + fonts: { + myFont: [ + "Times New Roman", + "Serif" + ], + myOtherFont: [ + "-apple-system", + "system-ui" + ] + }, + */ + + // This copyright info is used in /core/Footer.js and blog RSS/Atom feeds. + copyright: `Copyright © ${new Date().getFullYear()} FINN.no`, + + highlight: { + // Highlight.js theme to use for syntax highlighting in code blocks. + theme: 'default', + }, + + // Add custom scripts here that would be placed in