Skip to content

Commit edf08de

Browse files
committed
feat: migrate to monorepo & gha cache server docs
1 parent e3ea693 commit edf08de

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+3514
-1605
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@
44
node_modules/
55
dist/
66
**/.vitepress/dist/
7-
**/.vitepress/cache/
7+
**/.vitepress/cache/
8+
.turbo/
9+
.wrangler/

.vitepress/config.ts

Lines changed: 0 additions & 43 deletions
This file was deleted.

.vitepress/theme/CustomLayout.vue

Lines changed: 0 additions & 61 deletions
This file was deleted.

default-config.ts

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,39 @@ import { defu } from 'defu'
22
import { type DefaultTheme, defineConfig, type UserConfig } from 'vitepress'
33
import { groupIconMdPlugin, groupIconVitePlugin } from 'vitepress-plugin-group-icons'
44

5-
export function defineConfigWithDefaults(config: UserConfig<DefaultTheme.Config>) {
5+
export function defineConfigWithDefaults(opts: {
6+
title: string
7+
description: string
8+
url: string
9+
port: number
10+
/**
11+
* Short format, e.g. `falcondev-oss/caps`
12+
*/
13+
repo: string
14+
config: UserConfig<DefaultTheme.Config>
15+
}) {
616
return defu(
7-
config,
17+
opts.config,
818
defineConfig({
9-
outDir: new URL(`dist${config.base ?? ''}`, import.meta.url).pathname,
19+
title: opts.title,
20+
description: opts.description,
21+
themeConfig: {
22+
socialLinks: [{ icon: 'github', link: `https://github.com/${opts.repo}` }],
23+
logo: '/logo.svg',
24+
},
25+
outDir: 'dist',
26+
cleanUrls: true,
1027
vite: {
11-
// @ts-expect-error plugin type
28+
server: {
29+
port: opts.port,
30+
},
1231
plugins: [groupIconVitePlugin()],
32+
build: {
33+
minify: false,
34+
},
35+
},
36+
sitemap: {
37+
hostname: opts.url,
1338
},
1439
markdown: {
1540
config(md) {

package.json

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,32 @@
33
"type": "module",
44
"version": "1.0.0",
55
"private": true,
6-
"description": "",
6+
"packageManager": "pnpm@10.13.1",
77
"engines": {
88
"node": "^22.14.0",
99
"pnpm": "^10.11.1"
1010
},
1111
"scripts": {
12-
"dev": "concurrently --prefix command 'vitepress dev' \"vitepress dev packages/\"{caps,configs,expo-event-source-polyfill,form,gha-cache-server,lang,nitro-trpc-event-handler,trpc-vue-query,util}",
13-
"build": "vitepress build && bash -c 'echo packages/{caps,configs,expo-event-source-polyfill,form,gha-cache-server,lang,nitro-trpc-event-handler,trpc-vue-query,util} | xargs -n1 -P4 vitepress build'"
12+
"dev": "turbo dev",
13+
"deploy": "turbo deploy",
14+
"build": "turbo build"
1415
},
1516
"dependencies": {
1617
"@eslint/eslintrc": "^3.3.1",
17-
"@louishaftmann/eslint-config": "^4.2.0",
18-
"@louishaftmann/prettier-config": "^4.2.0",
19-
"concurrently": "^9.1.2",
18+
"@louishaftmann/eslint-config": "^4.3.3",
19+
"@louishaftmann/prettier-config": "^4.3.3",
20+
"concurrently": "^9.2.0",
2021
"defu": "^6.1.4",
21-
"eslint": "^9.28.0",
22-
"prettier": "^3.5.3",
23-
"remeda": "^2.23.0",
24-
"vitepress-plugin-group-icons": "^1.6.0",
25-
"vue": "^3.5.16"
22+
"eslint": "^9.32.0",
23+
"prettier": "^3.6.2",
24+
"remeda": "^2.27.0",
25+
"vitepress-plugin-group-icons": "^1.6.1",
26+
"vue": "^3.5.18"
2627
},
2728
"devDependencies": {
28-
"vite": "^6.3.5",
29-
"vitepress": "^1.6.3"
29+
"turbo": "^2.5.5",
30+
"vite": "^7.0.6",
31+
"vitepress": "^1.6.3",
32+
"wrangler": "^4.27.0"
3033
}
3134
}

packages/caps/.vitepress/config.ts

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,20 @@
11
import { defineConfigWithDefaults } from '../../../default-config'
22

33
export default defineConfigWithDefaults({
4+
repo: 'falcondev-oss/caps',
5+
port: 5175,
46
title: 'Caps',
7+
url: 'https://caps.falcondev.io',
58
description:
69
'Type-safe capability-based access control library for fine-grained permissions and authorization',
7-
base: '/caps',
8-
vite: {
9-
server: {
10-
port: 5175,
10+
config: {
11+
themeConfig: {
12+
sidebar: [
13+
{
14+
text: 'Getting Started',
15+
link: '/getting-started',
16+
},
17+
],
1118
},
1219
},
13-
themeConfig: {
14-
// https://vitepress.dev/reference/default-theme-config
15-
nav: [
16-
{ text: 'Guide', link: '/guide' },
17-
{ text: 'Examples', link: '/examples' },
18-
],
19-
20-
sidebar: [
21-
{
22-
text: 'Getting Started',
23-
link: '/getting-started',
24-
},
25-
{
26-
text: 'Guide',
27-
items: [
28-
{
29-
text: 'Basic Concepts',
30-
link: '/guide/basic-concepts',
31-
},
32-
],
33-
},
34-
],
35-
socialLinks: [{ icon: 'github', link: 'https://github.com/falcondev-oss/caps' }],
36-
logo: '/logo.svg',
37-
},
3820
})
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
export { default } from '../../../../.vitepress/theme/layout'
1+
export { default } from '../../../../theme/layout'
22

33
import './custom.css'
4-
import 'virtual:group-icons.css'

packages/caps/getting-started.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,19 @@
55
::: code-group
66

77
```sh [npm]
8-
$ npm install @falcondev-oss/caps
8+
npm install @falcondev-oss/caps
99
```
1010

1111
```sh [yarn]
12-
$ yarn add @falcondev-oss/caps
12+
yarn add @falcondev-oss/caps
1313
```
1414

1515
```sh [pnpm]
16-
$ pnpm add @falcondev-oss/caps
16+
pnpm add @falcondev-oss/caps
1717
```
1818

1919
```sh [bun]
20-
$ bun add @falcondev-oss/caps
20+
bun add @falcondev-oss/caps
2121
```
2222

2323
:::

packages/caps/index.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,7 @@ hero:
1212
actions:
1313
- theme: brand
1414
text: Get Started
15-
link: /guide
16-
- theme: alt
17-
text: Examples
18-
link: /examples
15+
link: /getting-started
1916

2017
features:
2118
- title: Actor-Subject Model

packages/caps/package.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"name": "caps",
3+
"type": "module",
4+
"scripts": {
5+
"build": "vitepress build",
6+
"dev": "vitepress dev",
7+
"deploy": "wrangler deploy"
8+
}
9+
}

0 commit comments

Comments
 (0)