aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2024-10-20 18:13:48 +0000
committerMohamed Bassem <me@mbassem.com>2024-10-20 18:13:48 +0000
commit6ffa51dfcc5d2a0e997841e547f4a50bbd9dbb3b (patch)
treedd64f6d15d3ad29acd5d1d2a4e0795797bde2741 /docs
parent3c1ec3aa2f7d64932fd26c8cbcb1aee1e57861bd (diff)
downloadkarakeep-6ffa51dfcc5d2a0e997841e547f4a50bbd9dbb3b.tar.zst
docs: Generate OpenAPI docs
Diffstat (limited to 'docs')
-rw-r--r--docs/docusaurus.config.ts20
-rw-r--r--docs/package.json13
2 files changed, 22 insertions, 11 deletions
diff --git a/docs/docusaurus.config.ts b/docs/docusaurus.config.ts
index 54e6ae05..ebc39a9c 100644
--- a/docs/docusaurus.config.ts
+++ b/docs/docusaurus.config.ts
@@ -1,6 +1,7 @@
import {themes as prismThemes} from 'prism-react-renderer';
import type {Config} from '@docusaurus/types';
import type * as Preset from '@docusaurus/preset-classic';
+import type * as OpenApiPlugin from "docusaurus-preset-openapi";
const config: Config = {
title: 'Hoarder Docs',
@@ -15,8 +16,8 @@ const config: Config = {
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
- organizationName: 'MohamedBassem', // Usually your GitHub org/user name.
- projectName: 'hoarder-app', // Usually your repo name.
+ organizationName: 'hoarder-app', // Usually your GitHub org/user name.
+ projectName: 'hoarder', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
@@ -31,19 +32,23 @@ const config: Config = {
presets: [
[
- 'classic',
- {
+ 'docusaurus-preset-openapi',
+ ({
docs: {
sidebarPath: './sidebars.ts',
editUrl:
'https://github.com/hoarder-app/hoarder/tree/main/docs/',
routeBasePath: "/",
},
+ api: {
+ path: "../packages/open-api/hoarder-openapi-spec.json",
+ routeBasePath: '/api',
+ },
blog: false,
theme: {
customCss: './src/css/custom.css',
},
- } satisfies Preset.Options,
+ }) satisfies OpenApiPlugin.Options,
],
],
@@ -63,6 +68,11 @@ const config: Config = {
position: 'right',
},
{
+ to: '/api',
+ label: 'API',
+ position: 'right',
+ },
+ {
href: 'https://hoarder.app',
label: 'Homepage',
position: 'right',
diff --git a/docs/package.json b/docs/package.json
index b58d900b..4d6b153f 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -15,18 +15,19 @@
"typecheck": "tsc"
},
"dependencies": {
- "@docusaurus/core": "3.1.1",
- "@docusaurus/preset-classic": "3.1.1",
+ "@docusaurus/core": "3.5.2",
+ "@docusaurus/preset-classic": "3.5.2",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.1.0",
+ "docusaurus-preset-openapi": "^0.7.5",
"prism-react-renderer": "^2.3.0",
"react": "^18.2.0",
"react-dom": "^18.2.0"
},
"devDependencies": {
- "@docusaurus/module-type-aliases": "3.1.1",
- "@docusaurus/tsconfig": "3.1.1",
- "@docusaurus/types": "3.1.1",
+ "@docusaurus/module-type-aliases": "3.5.2",
+ "@docusaurus/tsconfig": "3.5.2",
+ "@docusaurus/types": "3.5.2",
"typescript": "^5.3.3"
},
"browserslist": {
@@ -41,7 +42,7 @@
"last 5 safari version"
]
},
- "eslintConfig": {
+ "eslintConfig": {
"root": true,
"extends": [
"@hoarder/eslint-config/base",