docs: Use Go readme (#2816)
# PR 1: add remote content plugin and rust readme
## What
This PR does a few connected things:
1. It adds the ["docusaurus-plugin-remote-content" package](https://github.com/rdilweb/docusaurus-plugin-remote-content).
2. It adds configuration to make it work with Readmes found on GitHub.
3. It adds the Rust SDK's readme (replacing the link we used to have) as a proof of concept on how to do it.
## Why
With documentation split between GitHub readmes and the official docs, it's hard to keep everything up to date and in sync. It's also quite confusing that some information is only available in some places, but not in others.
We've talked about auto-including readmes from GitHub for a while, so here's a proof of concept (finally) 🥳
The intention is to get this merged and then to migrate the other SDK docs one by one, ensuring that everything in the documentation is also in the readme (so that no info is lost).
## Discussion points
### Generation directory
The current generation method generates the files into `/reference/sdks/<sdk name>`. I think this works for now, but it means it adds auto-generated files into a directory that you can't ignore (at least not yet).
We could instead generate them into `/generated/sdks` and update the slugs so that they still match the expected pattern.
However, this would make the sidebar a little harder to work with (for now). That said, there may be ways around it. It's worth exploring.
### Generation method
By default, this plugin will generate files whenever you build. That (probably) means that you need an internet connection _and_ that you'll end up with a bunch of untracked files.
An option is to only generate the files "manually" and commit them to the repo. That would allow you to build the project without an internet connection and would also remove the need for ignoring the files. We could automate the generation if we wanted to.
## Preview / Screenies
Visit [/reference/sdks/rust](https://unleash-docs-git-docs-include-sdk-readmes-unleash-team.vercel.app/reference/sdks/rust) in the preview to see what it looks like live.
![image](https://user-images.githubusercontent.com/17786332/210373446-784b7e69-0f36-4e9e-874a-2b06b863b603.png)
# PR 2: add go readme
This PR changes the docs generation to use the Go SDK's GitHub readme
for the SDK docs instead of a separate document.
## What
The changes in this PR are:
- Delete the existing Go SDK documentation. All the content in this
guide already exists in the Go readme.
- Add the Go SDK to the list of auto-generated readme docs
- Move the readme-related code into a separate module, `readme-fns.js`
(I'm not bullish about the file name: we can change it if you have
suggestions)
- Add a note to the top of all generated readmes saying you'll need an
API url and an API token. The note also links you to the relevant
reference and how-to docs.
## Why
Having two different bits of documentation for the same SDK is
troublesome. By only having the data in one place, we can avoid it going
out of sync and getting stale.
2023-01-05 10:47:49 +01:00
|
|
|
const { readmes } = require('./readme-fns');
|
|
|
|
|
docs: add `/docs` redirects to _all_ redirect paths (#2839)
## What
For each defined doc redirect path (that doesn't start with `/docs/`),
this PR adds an additional redirect that starts with `/docs`. The rest
of the path is otherwise identical.
For instance, if we have a redirect that goes from `/user_guide/x`, then
this change will ensure that we also have redirect that goes from
`/docs/user_guide/x`.
## Why
As reported by Roman, we've had some 404s recently when people have
tried to access pages that used to exist (wayyyy back) and that used to
redirect.
The reason these redirects stopped working is that we changed the url
structure recently. Before then, the `createRedirects` function would go
and create redirects that started with `/docs/` for all the paths that
required it. However, now that we've changed the structure of the URLs,
a blanket implementation like that won't work anymore.
Luckily, though, we already have all the redirects for pages we have
moved (just not redirecting from the `/docs/...` paths), so we can map
over the paths and add the missing redirects.
2023-01-05 21:47:04 +01:00
|
|
|
// for a given redirect object, modify it's `from` property such that for every
|
|
|
|
// path that doesn't start with `/docs/`, a corresponding path that _does_ start
|
|
|
|
// with `/docs/` is added.
|
|
|
|
//
|
|
|
|
// For instance, given the object
|
|
|
|
//
|
|
|
|
// {
|
|
|
|
// to: '/new/path',
|
|
|
|
// from: ['/old/path', '/docs/other/old/path'],
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// it will produce
|
|
|
|
//
|
|
|
|
// {
|
|
|
|
// to: '/new/path',
|
|
|
|
// from: ['/old/path', '/docs/old/path', '/docs/other/old/path'],
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
const addDocsRoutePrefix = ({ from, ...rest }) => {
|
|
|
|
const addDocs = (from) => {
|
|
|
|
if (Array.isArray(from)) {
|
|
|
|
// if `from` is a list, then check each entry
|
|
|
|
return from.flatMap(addDocs);
|
|
|
|
} else {
|
|
|
|
if (from.startsWith('/docs/')) {
|
|
|
|
return [from];
|
|
|
|
} else {
|
|
|
|
return [from, `/docs${from}`];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
return {
|
|
|
|
...rest,
|
|
|
|
from: addDocs(from),
|
|
|
|
};
|
|
|
|
};
|
2021-06-04 11:17:15 +02:00
|
|
|
/** @type {import('@docusaurus/types').DocusaurusConfig} */
|
|
|
|
module.exports = {
|
2021-08-17 15:24:37 +02:00
|
|
|
title: 'Unleash',
|
|
|
|
tagline: 'The enterprise ready feature toggle service',
|
|
|
|
url: 'https://docs.getunleash.io',
|
|
|
|
baseUrl: '/',
|
|
|
|
onBrokenLinks: 'throw',
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
onBrokenMarkdownLinks: 'throw',
|
2021-08-17 15:24:37 +02:00
|
|
|
favicon: 'img/favicon.ico',
|
|
|
|
organizationName: 'Unleash', // Usually your GitHub org/user name.
|
|
|
|
projectName: 'unleash.github.io', // Usually your repo name.
|
|
|
|
trailingSlash: false,
|
2022-03-01 17:21:14 +01:00
|
|
|
customFields: {
|
|
|
|
// expose env vars etc here
|
|
|
|
unleashProxyUrl: process.env.UNLEASH_PROXY_URL,
|
|
|
|
unleashProxyClientKey: process.env.UNLEASH_PROXY_CLIENT_KEY,
|
|
|
|
unleashFeedbackTargetUrl: process.env.UNLEASH_FEEDBACK_TARGET_URL,
|
|
|
|
environment: process.env.NODE_ENV,
|
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
themeConfig: {
|
|
|
|
defaultMode: 'light',
|
|
|
|
disableSwitch: true,
|
|
|
|
respectPrefersColorScheme: false,
|
2021-06-16 08:52:33 +02:00
|
|
|
algolia: {
|
2022-10-18 13:53:06 +02:00
|
|
|
appId: '5U05JI5NE1',
|
|
|
|
apiKey: 'dc9c4491fcf9143ee34015f22d1dd9d6',
|
2021-08-17 15:24:37 +02:00
|
|
|
indexName: 'getunleash',
|
2021-06-16 08:52:33 +02:00
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
navbar: {
|
2021-08-17 15:24:37 +02:00
|
|
|
title: 'Unleash',
|
2021-06-04 11:17:15 +02:00
|
|
|
logo: {
|
2021-08-17 15:24:37 +02:00
|
|
|
alt: 'Unleash logo',
|
|
|
|
src: 'img/logo.svg',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
|
|
|
items: [
|
2021-08-17 15:24:37 +02:00
|
|
|
{
|
|
|
|
href: 'https://www.getunleash.io/plans',
|
|
|
|
label: 'Unleash Enterprise',
|
|
|
|
position: 'right',
|
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
{
|
|
|
|
href: 'https://github.com/Unleash/unleash',
|
|
|
|
position: 'right',
|
|
|
|
className: 'header-github-link',
|
2022-01-26 12:22:03 +01:00
|
|
|
'aria-label': 'Unleash GitHub repository',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
2021-08-17 15:24:37 +02:00
|
|
|
],
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
2021-06-04 14:50:52 +02:00
|
|
|
prism: {
|
2022-01-25 15:19:32 +01:00
|
|
|
additionalLanguages: [
|
|
|
|
'csharp',
|
2022-02-09 15:54:16 +01:00
|
|
|
'http',
|
|
|
|
'java',
|
2022-01-25 15:19:32 +01:00
|
|
|
'kotlin',
|
|
|
|
'php',
|
2022-02-09 15:54:16 +01:00
|
|
|
'ruby',
|
docs: Use Go readme (#2816)
# PR 1: add remote content plugin and rust readme
## What
This PR does a few connected things:
1. It adds the ["docusaurus-plugin-remote-content" package](https://github.com/rdilweb/docusaurus-plugin-remote-content).
2. It adds configuration to make it work with Readmes found on GitHub.
3. It adds the Rust SDK's readme (replacing the link we used to have) as a proof of concept on how to do it.
## Why
With documentation split between GitHub readmes and the official docs, it's hard to keep everything up to date and in sync. It's also quite confusing that some information is only available in some places, but not in others.
We've talked about auto-including readmes from GitHub for a while, so here's a proof of concept (finally) 🥳
The intention is to get this merged and then to migrate the other SDK docs one by one, ensuring that everything in the documentation is also in the readme (so that no info is lost).
## Discussion points
### Generation directory
The current generation method generates the files into `/reference/sdks/<sdk name>`. I think this works for now, but it means it adds auto-generated files into a directory that you can't ignore (at least not yet).
We could instead generate them into `/generated/sdks` and update the slugs so that they still match the expected pattern.
However, this would make the sidebar a little harder to work with (for now). That said, there may be ways around it. It's worth exploring.
### Generation method
By default, this plugin will generate files whenever you build. That (probably) means that you need an internet connection _and_ that you'll end up with a bunch of untracked files.
An option is to only generate the files "manually" and commit them to the repo. That would allow you to build the project without an internet connection and would also remove the need for ignoring the files. We could automate the generation if we wanted to.
## Preview / Screenies
Visit [/reference/sdks/rust](https://unleash-docs-git-docs-include-sdk-readmes-unleash-team.vercel.app/reference/sdks/rust) in the preview to see what it looks like live.
![image](https://user-images.githubusercontent.com/17786332/210373446-784b7e69-0f36-4e9e-874a-2b06b863b603.png)
# PR 2: add go readme
This PR changes the docs generation to use the Go SDK's GitHub readme
for the SDK docs instead of a separate document.
## What
The changes in this PR are:
- Delete the existing Go SDK documentation. All the content in this
guide already exists in the Go readme.
- Add the Go SDK to the list of auto-generated readme docs
- Move the readme-related code into a separate module, `readme-fns.js`
(I'm not bullish about the file name: we can change it if you have
suggestions)
- Add a note to the top of all generated readmes saying you'll need an
API url and an API token. The note also links you to the relevant
reference and how-to docs.
## Why
Having two different bits of documentation for the same SDK is
troublesome. By only having the data in one place, we can avoid it going
out of sync and getting stale.
2023-01-05 10:47:49 +01:00
|
|
|
'rust',
|
2022-02-09 15:54:16 +01:00
|
|
|
'swift',
|
2022-01-25 15:19:32 +01:00
|
|
|
],
|
2021-08-17 15:24:37 +02:00
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
footer: {
|
2021-08-17 15:24:37 +02:00
|
|
|
style: 'dark',
|
2021-06-04 11:17:15 +02:00
|
|
|
links: [
|
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
title: 'Product',
|
2021-06-04 11:17:15 +02:00
|
|
|
items: [
|
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
label: 'Docs',
|
|
|
|
to: '/',
|
2021-08-11 12:55:56 +02:00
|
|
|
},
|
|
|
|
{
|
2022-01-26 12:22:03 +01:00
|
|
|
label: 'Unleash on GitHub',
|
2021-08-17 15:24:37 +02:00
|
|
|
href: 'https://github.com/Unleash/unleash',
|
2021-08-11 12:55:56 +02:00
|
|
|
},
|
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
label: 'Roadmap',
|
2023-01-17 13:26:59 +01:00
|
|
|
href: 'https://github.com/orgs/Unleash/projects/10',
|
2021-08-17 15:24:37 +02:00
|
|
|
},
|
2023-01-18 13:59:43 +01:00
|
|
|
{
|
|
|
|
label: 'Unleash help center',
|
|
|
|
href: 'https://getunleash.zendesk.com/hc/en-gb',
|
|
|
|
},
|
2021-08-17 15:24:37 +02:00
|
|
|
],
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
title: 'Community',
|
2021-06-04 11:17:15 +02:00
|
|
|
items: [
|
|
|
|
{
|
2023-01-17 13:26:59 +01:00
|
|
|
label: 'GitHub discussions',
|
|
|
|
href: 'https://github.com/unleash/unleash/discussions/',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
label: 'Slack',
|
2022-05-20 08:17:36 +02:00
|
|
|
href: 'https://slack.unleash.run/',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
2023-01-17 13:26:59 +01:00
|
|
|
{
|
|
|
|
label: 'Stack Overflow',
|
|
|
|
href: 'https://stackoverflow.com/questions/tagged/unleash',
|
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
{
|
2021-08-17 15:24:37 +02:00
|
|
|
label: 'Twitter',
|
|
|
|
href: 'https://twitter.com/getunleash',
|
|
|
|
},
|
|
|
|
],
|
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
],
|
|
|
|
copyright: `Copyright © ${new Date().getFullYear()} Unleash. Built with Docusaurus.`,
|
|
|
|
logo: {
|
|
|
|
src: 'img/logo.svg',
|
2021-08-17 15:24:37 +02:00
|
|
|
alt: 'Unleash logo',
|
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
2021-08-17 15:24:37 +02:00
|
|
|
image: 'img/logo.png',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
|
|
|
presets: [
|
|
|
|
[
|
2021-08-17 15:24:37 +02:00
|
|
|
'@docusaurus/preset-classic',
|
2021-06-04 11:17:15 +02:00
|
|
|
{
|
|
|
|
docs: {
|
2021-08-17 15:24:37 +02:00
|
|
|
sidebarPath: require.resolve('./sidebars.js'),
|
2021-06-04 11:17:15 +02:00
|
|
|
// Please change this to your repo.
|
2021-08-17 15:24:37 +02:00
|
|
|
editUrl:
|
2021-12-23 14:12:19 +01:00
|
|
|
'https://github.com/Unleash/unleash/edit/main/website/',
|
2021-08-17 15:24:37 +02:00
|
|
|
routeBasePath: '/',
|
2022-01-03 14:59:47 +01:00
|
|
|
remarkPlugins: [
|
2022-01-25 15:19:32 +01:00
|
|
|
[
|
|
|
|
require('@docusaurus/remark-plugin-npm2yarn'),
|
|
|
|
{ sync: true },
|
|
|
|
],
|
|
|
|
],
|
2022-08-12 11:37:57 +02:00
|
|
|
docLayoutComponent: '@theme/DocPage',
|
|
|
|
docItemComponent: '@theme/ApiItem',
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
|
|
|
theme: {
|
2021-08-17 15:24:37 +02:00
|
|
|
customCss: require.resolve('./src/css/custom.css'),
|
|
|
|
},
|
2022-01-27 13:12:00 +01:00
|
|
|
googleAnalytics: {
|
|
|
|
trackingID: 'UA-134882379-1',
|
|
|
|
},
|
2021-08-17 15:24:37 +02:00
|
|
|
},
|
|
|
|
],
|
2021-06-04 11:17:15 +02:00
|
|
|
],
|
|
|
|
plugins: [
|
|
|
|
[
|
2022-09-14 09:59:18 +02:00
|
|
|
// heads up to anyone making redirects:
|
|
|
|
//
|
|
|
|
// remember that redirects only work in production and not in
|
|
|
|
// development, as mentioned in the docs
|
|
|
|
// https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-client-redirects/
|
2021-06-04 11:17:15 +02:00
|
|
|
'@docusaurus/plugin-client-redirects',
|
|
|
|
{
|
|
|
|
fromExtensions: ['html', 'htm'],
|
|
|
|
redirects: [
|
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/how-to/how-to-create-api-tokens',
|
2021-08-17 15:24:37 +02:00
|
|
|
from: [
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
'/user_guide/api-token',
|
|
|
|
'/deploy/user_guide/api-token',
|
2021-08-17 15:24:37 +02:00
|
|
|
],
|
2021-06-04 11:17:15 +02:00
|
|
|
},
|
2021-06-10 23:15:14 +02:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: '/advanced/audit_log',
|
|
|
|
to: '/reference/event-log',
|
2021-06-10 23:15:14 +02:00
|
|
|
},
|
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: '/api/open_api',
|
|
|
|
to: '/reference/api/unleash',
|
2021-06-10 23:15:14 +02:00
|
|
|
},
|
2021-06-04 11:17:15 +02:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: '/advanced/api_access',
|
|
|
|
to: '/how-to/how-to-use-the-admin-api',
|
2021-08-17 15:24:37 +02:00
|
|
|
},
|
2022-01-11 10:36:23 +01:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: '/advanced/archived_toggles',
|
|
|
|
to: '/reference/archived-toggles',
|
2022-01-11 10:36:23 +01:00
|
|
|
},
|
2022-01-13 11:05:40 +01:00
|
|
|
{
|
2022-12-12 14:08:13 +01:00
|
|
|
from: [
|
|
|
|
'/advanced/custom-activation-strategy',
|
|
|
|
'/advanced/custom_activation_strategy',
|
|
|
|
],
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/reference/custom-activation-strategies',
|
2022-01-13 11:05:40 +01:00
|
|
|
},
|
2022-02-08 12:11:08 +01:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: '/advanced/feature_toggle_types',
|
|
|
|
to: '/reference/feature-toggle-types',
|
2022-03-01 17:21:14 +01:00
|
|
|
},
|
2022-09-14 09:59:18 +02:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: [
|
|
|
|
'/toggle_variants',
|
|
|
|
'/advanced/feature_toggle_variants',
|
2022-12-06 09:32:42 +01:00
|
|
|
'/advanced/toggle_variants',
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
],
|
|
|
|
to: '/reference/feature-toggle-variants',
|
2022-09-14 09:59:18 +02:00
|
|
|
},
|
2022-10-19 14:02:00 +02:00
|
|
|
{
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
from: [
|
|
|
|
'/advanced/impression-data',
|
|
|
|
'/advanced/impression_data',
|
|
|
|
],
|
|
|
|
to: '/reference/impression-data',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/stickiness',
|
|
|
|
to: '/reference/stickiness',
|
2022-10-19 14:02:00 +02:00
|
|
|
},
|
2022-11-14 13:11:27 +01:00
|
|
|
{
|
|
|
|
from: '/advanced/sso-google',
|
|
|
|
to: '/how-to/how-to-add-sso-google',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/sso-open-id-connect',
|
|
|
|
to: '/how-to/how-to-add-sso-open-id-connect',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/sso-saml-keycloak',
|
|
|
|
to: '/how-to/how-to-add-sso-saml-keycloak',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/sso-saml',
|
|
|
|
to: '/how-to/how-to-add-sso-saml',
|
|
|
|
},
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
{
|
|
|
|
from: '/advanced/strategy_constraints',
|
|
|
|
to: '/reference/strategy-constraints',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/tags',
|
|
|
|
to: '/reference/tags',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/advanced/enterprise-authentication',
|
|
|
|
to: '/reference/sso',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy',
|
|
|
|
to: '/reference/deploy',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/getting_started',
|
|
|
|
to: '/reference/deploy/getting-started',
|
|
|
|
},
|
|
|
|
{
|
docs: add `/docs` redirects to _all_ redirect paths (#2839)
## What
For each defined doc redirect path (that doesn't start with `/docs/`),
this PR adds an additional redirect that starts with `/docs`. The rest
of the path is otherwise identical.
For instance, if we have a redirect that goes from `/user_guide/x`, then
this change will ensure that we also have redirect that goes from
`/docs/user_guide/x`.
## Why
As reported by Roman, we've had some 404s recently when people have
tried to access pages that used to exist (wayyyy back) and that used to
redirect.
The reason these redirects stopped working is that we changed the url
structure recently. Before then, the `createRedirects` function would go
and create redirects that started with `/docs/` for all the paths that
required it. However, now that we've changed the structure of the URLs,
a blanket implementation like that won't work anymore.
Luckily, though, we already have all the redirects for pages we have
moved (just not redirecting from the `/docs/...` paths), so we can map
over the paths and add the missing redirects.
2023-01-05 21:47:04 +01:00
|
|
|
from: '/deploy/configuring_unleash',
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/reference/deploy/configuring-unleash',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/configuring_unleash_v3',
|
|
|
|
to: '/reference/deploy/configuring-unleash-v3',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/database-setup',
|
|
|
|
to: '/reference/deploy/database-setup',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/database_backup',
|
|
|
|
to: '/reference/deploy/database-backup',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/email',
|
|
|
|
to: '/reference/deploy/email-service',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/google_auth_v3',
|
|
|
|
to: '/reference/deploy/google-auth-v3',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/google_auth',
|
|
|
|
to: '/reference/deploy/google-auth-hook',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/import_export',
|
|
|
|
to: '/reference/deploy/import-export',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/migration_guide',
|
|
|
|
to: '/reference/deploy/migration-guide',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/securing_unleash',
|
|
|
|
to: '/reference/deploy/securing-unleash',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/deploy/securing-unleash-v3',
|
|
|
|
to: '/reference/deploy/securing-unleash-v3',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/addons',
|
|
|
|
to: '/reference/addons',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/addons/datadog',
|
|
|
|
to: '/reference/addons/datadog',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/addons/slack',
|
|
|
|
to: '/reference/addons/slack',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/addons/teams',
|
|
|
|
to: '/reference/addons/teams',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/addons/webhook',
|
|
|
|
to: '/reference/addons/webhook',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/guides/feature_updates_to_slack',
|
|
|
|
to: '/how-to/how-to-send-feature-updates-to-slack-deprecated',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: ['/integrations/integrations', '/integrations'],
|
|
|
|
to: '/reference/integrations',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/integrations/jira_server_plugin_installation',
|
|
|
|
to: '/reference/integrations/jira-server-plugin-installation',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/integrations/jira_server_plugin_usage',
|
|
|
|
to: '/reference/integrations/jira-server-plugin-usage',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: [
|
|
|
|
'/sdks',
|
|
|
|
'/user_guide/client-sdk',
|
|
|
|
'/client-sdk',
|
|
|
|
'/user_guide/connect_sdk',
|
|
|
|
'/sdks/community',
|
|
|
|
],
|
|
|
|
to: '/reference/sdks',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/go_sdk',
|
|
|
|
to: '/reference/sdks/go',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/java_sdk',
|
|
|
|
to: '/reference/sdks/java',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/node_sdk',
|
|
|
|
to: '/reference/sdks/node',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/php_sdk',
|
|
|
|
to: '/reference/sdks/php',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/python_sdk',
|
|
|
|
to: '/reference/sdks/python',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/dot_net_sdk',
|
|
|
|
to: '/reference/sdks/dotnet',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/ruby_sdk',
|
|
|
|
to: '/reference/sdks/ruby',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/android_proxy_sdk',
|
|
|
|
to: '/reference/sdks/android-proxy',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/proxy-ios',
|
|
|
|
to: '/reference/sdks/ios-proxy',
|
|
|
|
},
|
|
|
|
{
|
2022-12-12 14:08:13 +01:00
|
|
|
from: [
|
|
|
|
'/sdks/proxy-javascript',
|
|
|
|
'/sdks/javascript-browser',
|
|
|
|
],
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/reference/sdks/javascript-browser',
|
|
|
|
},
|
|
|
|
{
|
2022-12-12 14:08:13 +01:00
|
|
|
from: ['/sdks/proxy-react', '/sdks/react'],
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/reference/sdks/react',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/proxy-vue',
|
|
|
|
to: '/reference/sdks/vue',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/sdks/proxy-svelte',
|
|
|
|
to: '/reference/sdks/svelte',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: [
|
|
|
|
'/user_guide/native_apps',
|
|
|
|
'/user_guide/proxy-api',
|
|
|
|
'/sdks/unleash-proxy',
|
|
|
|
],
|
|
|
|
to: '/reference/unleash-proxy',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
to: '/how-to/how-to-create-feature-toggles',
|
|
|
|
from: '/user_guide/create_feature_toggle',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
to: '/reference/activation-strategies',
|
|
|
|
from: [
|
|
|
|
'/user_guide/control_rollout',
|
|
|
|
'/user_guide/activation_strategy',
|
|
|
|
],
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/environments',
|
|
|
|
to: '/reference/environments',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/projects',
|
|
|
|
to: '/reference/projects',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/rbac',
|
|
|
|
to: '/reference/rbac',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/technical_debt',
|
|
|
|
to: '/reference/technical-debt',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/unleash_context',
|
|
|
|
to: '/reference/unleash-context',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/user-management',
|
|
|
|
to: '/how-to/how-to-add-users-to-unleash',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/v4-whats-new',
|
|
|
|
to: '/reference/whats-new-v4',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/important-concepts',
|
|
|
|
to: '/tutorials/important-concepts',
|
|
|
|
},
|
|
|
|
{
|
2022-12-12 14:08:13 +01:00
|
|
|
from: [
|
|
|
|
'/user_guide/quickstart',
|
|
|
|
'/docs/getting_started',
|
|
|
|
],
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/tutorials/quickstart',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/user_guide/unleash_overview',
|
|
|
|
to: '/tutorials/unleash-overview',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/basic-auth',
|
|
|
|
to: '/reference/api/legacy/unleash/basic-auth',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api',
|
|
|
|
to: '/reference/api/legacy/unleash',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/addons',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/addons',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/context',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/context',
|
|
|
|
},
|
|
|
|
{
|
docs: add `/docs` redirects to _all_ redirect paths (#2839)
## What
For each defined doc redirect path (that doesn't start with `/docs/`),
this PR adds an additional redirect that starts with `/docs`. The rest
of the path is otherwise identical.
For instance, if we have a redirect that goes from `/user_guide/x`, then
this change will ensure that we also have redirect that goes from
`/docs/user_guide/x`.
## Why
As reported by Roman, we've had some 404s recently when people have
tried to access pages that used to exist (wayyyy back) and that used to
redirect.
The reason these redirects stopped working is that we changed the url
structure recently. Before then, the `createRedirects` function would go
and create redirects that started with `/docs/` for all the paths that
required it. However, now that we've changed the structure of the URLs,
a blanket implementation like that won't work anymore.
Luckily, though, we already have all the redirects for pages we have
moved (just not redirecting from the `/docs/...` paths), so we can map
over the paths and add the missing redirects.
2023-01-05 21:47:04 +01:00
|
|
|
from: '/api/admin/events',
|
refactor: move docs into new structure / fix links for SEO (#2416)
## What
This (admittedly massive) PR updates the "physical" documentation
structure and fixes url inconsistencies and SEO problems reported by
marketing. The main points are:
- remove or move directories : advanced, user_guide, deploy, api
- move the files contained within to the appropriate one of topics,
how-to, tutorials, or reference
- update internal doc links and product links to the content
- create client-side redirects for all the urls that have changed.
A number of the files have been renamed in small ways to better match
their url and to make them easier to find. Additionally, the top-level
api directory has been moved to /reference/api/legacy/unleash (see the
discussion points section for more on this).
## Why
When moving our doc structure to diataxis a while back, we left the
"physical' files lying where they were, because it didn't matter much to
the new structure. However, that did introduce some inconsistencies with
where you place docs and how we organize them.
There's also the discrepancies in whether urls us underscores or hyphens
(which isn't necessarily the same as their file name), which has been
annoying me for a while, but now has also been raised by marketing as an
issue in terms of SEO.
## Discussion points
The old, hand-written API docs have been moved from /api to
/reference/api/legacy/unleash. There _is_ a /reference/api/unleash
directory, but this is being populated by the OpenAPI plugin, and mixing
those could only cause trouble. However, I'm unsure about putting
/legacy/ in the title, because the API isn't legacy, the docs are. Maybe
we could use another path? Like /old-docs/ or something? I'd appreciate
some input on this.
2022-11-22 10:05:30 +01:00
|
|
|
to: '/reference/api/legacy/unleash/admin/events',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/feature-toggles-v2',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/features-v2',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/feature-types',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/feature-types',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/features',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/features',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/features-archive',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/archive',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/metrics',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/metrics',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/projects',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/projects',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/segments',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/segments',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/state',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/state',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/strategies',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/strategies',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/tags',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/tags',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/admin/user-admin',
|
|
|
|
to: '/reference/api/legacy/unleash/admin/user-admin',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/client/features',
|
|
|
|
to: '/reference/api/legacy/unleash/client/features',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/client/metrics',
|
|
|
|
to: '/reference/api/legacy/unleash/client/metrics',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/client/register',
|
|
|
|
to: '/reference/api/legacy/unleash/client/register',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/internal/internal',
|
|
|
|
to: '/reference/api/legacy/unleash/internal/prometheus',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
from: '/api/internal/health',
|
|
|
|
to: '/reference/api/legacy/unleash/internal/health',
|
|
|
|
},
|
docs: add `/docs` redirects to _all_ redirect paths (#2839)
## What
For each defined doc redirect path (that doesn't start with `/docs/`),
this PR adds an additional redirect that starts with `/docs`. The rest
of the path is otherwise identical.
For instance, if we have a redirect that goes from `/user_guide/x`, then
this change will ensure that we also have redirect that goes from
`/docs/user_guide/x`.
## Why
As reported by Roman, we've had some 404s recently when people have
tried to access pages that used to exist (wayyyy back) and that used to
redirect.
The reason these redirects stopped working is that we changed the url
structure recently. Before then, the `createRedirects` function would go
and create redirects that started with `/docs/` for all the paths that
required it. However, now that we've changed the structure of the URLs,
a blanket implementation like that won't work anymore.
Luckily, though, we already have all the redirects for pages we have
moved (just not redirecting from the `/docs/...` paths), so we can map
over the paths and add the missing redirects.
2023-01-05 21:47:04 +01:00
|
|
|
{
|
|
|
|
from: '/help',
|
|
|
|
to: '/',
|
|
|
|
},
|
|
|
|
].map(addDocsRoutePrefix), // add /docs prefixes
|
2022-01-25 15:19:32 +01:00
|
|
|
createRedirects: function (toPath) {
|
2021-08-17 15:24:37 +02:00
|
|
|
if (
|
|
|
|
toPath.indexOf('/docs/') === -1 &&
|
|
|
|
toPath.indexOf('index.html') === -1
|
|
|
|
) {
|
|
|
|
return `/docs/${toPath}`;
|
2021-06-04 11:17:15 +02:00
|
|
|
}
|
2021-08-17 15:24:37 +02:00
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
Add OpenAPI docs (#1391) (#2066)
## What
This PR (finally 🎉) adds generated OpenAPI docs to the official Unleash documentation. In addition to generating docs when things get merged to main, it also pushes new doc updates every day at 12:00 AM (cron `@daily`).
## Why
Now that we have OpenAPI'd all the things, we can finally start using it. This will allow us to remove hand-written api docs from the documentation and should make sure everything is always kept up to date.
### Generating from us-hosted (Unleash enterprise)
Unleash has several different versions (open source, pro, enterprise). The versions do not necessarily have the exact same api surface. In fact, the enterprise version has a few endpoints that open source does not.
Because we want to have _all_ endpoints listed in the documentation we need to generated the docs from an enterprise spec. Which brings us into the next point:
### The need for scheduled jobs
Regarding the daily scheduled tasks to update the documentation: why do we need that?
The docs are generated from the tip of the main branch. For most of the docs, this is good and something that we want. However, because the OpenAPI docs are generated from the enterprise edition, it _will not be in sync_ with the open source main branch.
Also, we probably do not want the docs to list the current bleeding edge api changes. Instead, we should prefer to use the latest enterprise release (roughly). However, because we don't get notified when this version is released and deployed, we'll instead run the API generation on a daily cadence.
This isn't the perfect solution, but it's simple and gets us 80% of the way there. More intricate solutions can be set up later.
## How
- By adding a scheduled workflow to the generate docs config.
- By adding .gitignore entries for the generated files
There's also some minor changes in styling etc.
## Dependencies
This is dependent on the changes introduced in #2062 having propagated to the enterprise release, which will probably not be for another week or so.
## Discussion
What should the API reference docs url be? I've set it to be `/reference/api/unleash/*` for now, but I'm on the fence about whether it should be `apis` or `api` in there. I also want to get the proxy and other APIs in there as we grow.
-------
## Commits
* docs: style openapi operation buttons
* docs: minor operation badge adjustments
* docs: use permalink to css snippet i copied
* docs: ignore files related to openapi generation
* docs: re-enable openapi docs
* Docs(#1391): prep for integration
* docs(#1391): run docs generation daily
* docs(#1391): add generation step to doc prs too
* docs(#1391): use the US hosted instance to generate docs
* docs(#1391): move doc generation into build command
* docs(#1391): use `/reference/api/*` instead of `/reference/apis/*`
2022-09-19 14:50:24 +02:00
|
|
|
[
|
|
|
|
'docusaurus-plugin-openapi-docs',
|
|
|
|
{
|
|
|
|
id: 'api-operations',
|
|
|
|
docsPluginId: 'classic',
|
|
|
|
config: {
|
|
|
|
server: {
|
|
|
|
specPath:
|
#1391: add generated doc cleaning script (#2077)
* #1391: add generated doc cleaning script
## What
The cleaning script replaces all references to the Unleash ushosted instance in the
generated OpenAPI docs. It removes extra path segments (such as leading
`/ushosted` instances) and replaces the ushosted base url with something
user-agnostic.
## Why
When we host the OpenAPI docs in our official documentation, the generated
docs shouldn't necessarily point at _one specific instance_, and especially
not one that the reader is unlikely to ever use. Instead, we can remove all
the bits that are specific to the generation source we use, and make the docs
easier to use. In particular, removing the leading `/ushosted` is likely to
save us loooots of questions.
* #1391: change env var used for generating openapi from localhost
Using NODE_ENV=development doesn't necessarily make sense, so adding
an extra variable sounds reasonable to me.
* #1391: ensure that all generation commands also clean docs
* #1391: change <your-unleash-instance-url> to <your-unleash-url>
* #1391: fix ushosted replacement: not all paths start with /api
* #1391: chore: remove potential `ushosted` ending of api url
In the event that we change the base URL of OpenAPI, so that paths
don't start with `/ushosted/`, the script should still work, changing
those paths into <your-unleash-url> too.
Additionally, remove all instances of `/ushosted` that we find. In the
event that some things switch around or whatever.
2022-09-20 12:43:39 +02:00
|
|
|
process.env.OPENAPI_SOURCE === 'localhost'
|
Add OpenAPI docs (#1391) (#2066)
## What
This PR (finally 🎉) adds generated OpenAPI docs to the official Unleash documentation. In addition to generating docs when things get merged to main, it also pushes new doc updates every day at 12:00 AM (cron `@daily`).
## Why
Now that we have OpenAPI'd all the things, we can finally start using it. This will allow us to remove hand-written api docs from the documentation and should make sure everything is always kept up to date.
### Generating from us-hosted (Unleash enterprise)
Unleash has several different versions (open source, pro, enterprise). The versions do not necessarily have the exact same api surface. In fact, the enterprise version has a few endpoints that open source does not.
Because we want to have _all_ endpoints listed in the documentation we need to generated the docs from an enterprise spec. Which brings us into the next point:
### The need for scheduled jobs
Regarding the daily scheduled tasks to update the documentation: why do we need that?
The docs are generated from the tip of the main branch. For most of the docs, this is good and something that we want. However, because the OpenAPI docs are generated from the enterprise edition, it _will not be in sync_ with the open source main branch.
Also, we probably do not want the docs to list the current bleeding edge api changes. Instead, we should prefer to use the latest enterprise release (roughly). However, because we don't get notified when this version is released and deployed, we'll instead run the API generation on a daily cadence.
This isn't the perfect solution, but it's simple and gets us 80% of the way there. More intricate solutions can be set up later.
## How
- By adding a scheduled workflow to the generate docs config.
- By adding .gitignore entries for the generated files
There's also some minor changes in styling etc.
## Dependencies
This is dependent on the changes introduced in #2062 having propagated to the enterprise release, which will probably not be for another week or so.
## Discussion
What should the API reference docs url be? I've set it to be `/reference/api/unleash/*` for now, but I'm on the fence about whether it should be `apis` or `api` in there. I also want to get the proxy and other APIs in there as we grow.
-------
## Commits
* docs: style openapi operation buttons
* docs: minor operation badge adjustments
* docs: use permalink to css snippet i copied
* docs: ignore files related to openapi generation
* docs: re-enable openapi docs
* Docs(#1391): prep for integration
* docs(#1391): run docs generation daily
* docs(#1391): add generation step to doc prs too
* docs(#1391): use the US hosted instance to generate docs
* docs(#1391): move doc generation into build command
* docs(#1391): use `/reference/api/*` instead of `/reference/apis/*`
2022-09-19 14:50:24 +02:00
|
|
|
? 'http://localhost:4242/docs/openapi.json'
|
|
|
|
: 'https://us.app.unleash-hosted.com/ushosted/docs/openapi.json',
|
|
|
|
outputDir: 'docs/reference/api/unleash',
|
|
|
|
sidebarOptions: {
|
|
|
|
groupPathsBy: 'tag',
|
|
|
|
categoryLinkSource: 'tag',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
docs: Use Go readme (#2816)
# PR 1: add remote content plugin and rust readme
## What
This PR does a few connected things:
1. It adds the ["docusaurus-plugin-remote-content" package](https://github.com/rdilweb/docusaurus-plugin-remote-content).
2. It adds configuration to make it work with Readmes found on GitHub.
3. It adds the Rust SDK's readme (replacing the link we used to have) as a proof of concept on how to do it.
## Why
With documentation split between GitHub readmes and the official docs, it's hard to keep everything up to date and in sync. It's also quite confusing that some information is only available in some places, but not in others.
We've talked about auto-including readmes from GitHub for a while, so here's a proof of concept (finally) 🥳
The intention is to get this merged and then to migrate the other SDK docs one by one, ensuring that everything in the documentation is also in the readme (so that no info is lost).
## Discussion points
### Generation directory
The current generation method generates the files into `/reference/sdks/<sdk name>`. I think this works for now, but it means it adds auto-generated files into a directory that you can't ignore (at least not yet).
We could instead generate them into `/generated/sdks` and update the slugs so that they still match the expected pattern.
However, this would make the sidebar a little harder to work with (for now). That said, there may be ways around it. It's worth exploring.
### Generation method
By default, this plugin will generate files whenever you build. That (probably) means that you need an internet connection _and_ that you'll end up with a bunch of untracked files.
An option is to only generate the files "manually" and commit them to the repo. That would allow you to build the project without an internet connection and would also remove the need for ignoring the files. We could automate the generation if we wanted to.
## Preview / Screenies
Visit [/reference/sdks/rust](https://unleash-docs-git-docs-include-sdk-readmes-unleash-team.vercel.app/reference/sdks/rust) in the preview to see what it looks like live.
![image](https://user-images.githubusercontent.com/17786332/210373446-784b7e69-0f36-4e9e-874a-2b06b863b603.png)
# PR 2: add go readme
This PR changes the docs generation to use the Go SDK's GitHub readme
for the SDK docs instead of a separate document.
## What
The changes in this PR are:
- Delete the existing Go SDK documentation. All the content in this
guide already exists in the Go readme.
- Add the Go SDK to the list of auto-generated readme docs
- Move the readme-related code into a separate module, `readme-fns.js`
(I'm not bullish about the file name: we can change it if you have
suggestions)
- Add a note to the top of all generated readmes saying you'll need an
API url and an API token. The note also links you to the relevant
reference and how-to docs.
## Why
Having two different bits of documentation for the same SDK is
troublesome. By only having the data in one place, we can avoid it going
out of sync and getting stale.
2023-01-05 10:47:49 +01:00
|
|
|
[
|
|
|
|
'docusaurus-plugin-remote-content',
|
|
|
|
{
|
|
|
|
// more info at https://github.com/rdilweb/docusaurus-plugin-remote-content#options
|
|
|
|
name: 'content-sdks',
|
|
|
|
sourceBaseUrl: 'https://raw.githubusercontent.com/Unleash/', // gets prepended to all of the documents when fetching
|
docs: auto-generate remaining server-side SDK docs (#2858)
This PR builds on the preceding doc auto-generation PRs and generates
documentation for the remaining server-side SDKs.
## Why
Refer to https://github.com/Unleash/unleash/pull/2809 for more context
about generating SDK docs.
## What
- Adds generation for the remaining server-side SDKs
- Moves generated docs from the `/reference/sdks` directory to
`/generated` directory.
- Makes sure that the URLs do not change because of the move by using
the `slug` frontmatter property.
- replaces relative github links in the markdown documents so that they
become absolute github links. (refer to the next section)
- Updates some image styling so that it doesn't apply to readme badges
(we don't need them using `display: block`)
### On link replacing:
This PR adds handling of links in the generated documentation.
Specifically, it changes links in one case:
Relative links to github. Links to code and other files in the
repository. These are prefixed with the repository's URL.
While this should work in most cases, it will fail in cases where the
links to the files are not on the repository's primary branch.
(typically main, but could also be "v3", for instance). In these cases,
the links will get a double branch in the URL and will fail. However, I
see no easy way around this (though suggestions are definitely
accepted!), and think it's a fair tradeoff. It takes the links from
"definitely failing" to "will work in the vast majority of cases".
Note: I originally also wanted to handle the case where the link is an
absolute link to docs.getunleash.io. We could turn these into relative
urls to avoid full page reloads and enjoy a smoother experience.
However, the client-side redirects don't work correctly if the relative
URL goes to a redirect page, so you end up with a 404 page. As such, I
think it's better to leave the links as absolute for now.
2023-01-13 12:40:28 +01:00
|
|
|
outDir: 'docs/generated/sdks', // the base directory to output to.
|
docs: Use Go readme (#2816)
# PR 1: add remote content plugin and rust readme
## What
This PR does a few connected things:
1. It adds the ["docusaurus-plugin-remote-content" package](https://github.com/rdilweb/docusaurus-plugin-remote-content).
2. It adds configuration to make it work with Readmes found on GitHub.
3. It adds the Rust SDK's readme (replacing the link we used to have) as a proof of concept on how to do it.
## Why
With documentation split between GitHub readmes and the official docs, it's hard to keep everything up to date and in sync. It's also quite confusing that some information is only available in some places, but not in others.
We've talked about auto-including readmes from GitHub for a while, so here's a proof of concept (finally) 🥳
The intention is to get this merged and then to migrate the other SDK docs one by one, ensuring that everything in the documentation is also in the readme (so that no info is lost).
## Discussion points
### Generation directory
The current generation method generates the files into `/reference/sdks/<sdk name>`. I think this works for now, but it means it adds auto-generated files into a directory that you can't ignore (at least not yet).
We could instead generate them into `/generated/sdks` and update the slugs so that they still match the expected pattern.
However, this would make the sidebar a little harder to work with (for now). That said, there may be ways around it. It's worth exploring.
### Generation method
By default, this plugin will generate files whenever you build. That (probably) means that you need an internet connection _and_ that you'll end up with a bunch of untracked files.
An option is to only generate the files "manually" and commit them to the repo. That would allow you to build the project without an internet connection and would also remove the need for ignoring the files. We could automate the generation if we wanted to.
## Preview / Screenies
Visit [/reference/sdks/rust](https://unleash-docs-git-docs-include-sdk-readmes-unleash-team.vercel.app/reference/sdks/rust) in the preview to see what it looks like live.
![image](https://user-images.githubusercontent.com/17786332/210373446-784b7e69-0f36-4e9e-874a-2b06b863b603.png)
# PR 2: add go readme
This PR changes the docs generation to use the Go SDK's GitHub readme
for the SDK docs instead of a separate document.
## What
The changes in this PR are:
- Delete the existing Go SDK documentation. All the content in this
guide already exists in the Go readme.
- Add the Go SDK to the list of auto-generated readme docs
- Move the readme-related code into a separate module, `readme-fns.js`
(I'm not bullish about the file name: we can change it if you have
suggestions)
- Add a note to the top of all generated readmes saying you'll need an
API url and an API token. The note also links you to the relevant
reference and how-to docs.
## Why
Having two different bits of documentation for the same SDK is
troublesome. By only having the data in one place, we can avoid it going
out of sync and getting stale.
2023-01-05 10:47:49 +01:00
|
|
|
documents: readmes.documentUrls, // the file names to download
|
|
|
|
modifyContent: readmes.modifyContent,
|
|
|
|
},
|
|
|
|
],
|
2021-08-17 15:24:37 +02:00
|
|
|
],
|
2022-08-12 11:37:57 +02:00
|
|
|
themes: ['docusaurus-theme-openapi-docs'], // Allows use of @theme/ApiItem and other components
|
2021-06-04 11:17:15 +02:00
|
|
|
};
|