@life-and-dev/mdsite 0.0.8 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -67,6 +67,29 @@ mdsite-dev stop
67
67
 
68
68
  > [!NOTE] When using `mdsite-dev` locally (e.g. `npm run install-alias`), the CLI utility is called `mdsite-dev`. When installed globally via npm registry, the CLI utility is called `mdsite` instead.
69
69
 
70
+ ## Release version and npm publish
71
+
72
+ The npm package is `@life-and-dev/mdsite`. To bump the package version and create a release tag, run:
73
+
74
+ ```bash
75
+ npm run release:version -- patch
76
+ npm run release:version -- minor
77
+ npm run release:version -- major
78
+ npm run release:version -- x.y.z
79
+ ```
80
+
81
+ The script updates `package.json` and `package-lock.json` with `npm version`, runs typecheck, build, and package verification, commits `chore: release v<version>`, and creates a local annotated tag named `v<version>`.
82
+
83
+ The script does not push changes or publish to npm. Push the release commit and tag manually:
84
+
85
+ ```bash
86
+ git push origin main
87
+ git push origin v<version>
88
+ ```
89
+
90
+ > [!WARNING]
91
+ > Pushing the `v<version>` tag triggers the GitHub Actions npm publish workflow with provenance. The `npm-publish.yml` workflow requires npm Trusted Publisher configuration for `@life-and-dev/mdsite`.
92
+
70
93
  ## Supported CLI flow
71
94
 
72
95
  ### Check the CLI version
@@ -225,4 +248,3 @@ Run `mdsite generate` first. `preview` requires an existing generated renderer b
225
248
  | `site.name` | derived from `index.md` or directory | Site name passed to the renderer. |
226
249
  | `themes.light.colors` | built-in palette | Light theme colour overrides. |
227
250
  | `themes.dark.colors` | built-in palette | Dark theme colour overrides. |
228
-
@@ -16,7 +16,7 @@ export async function runPrepareGithubCommand(contentDir) {
16
16
  function buildGithubWorkflow(config) {
17
17
  const rendererPath = path.posix.normalize(config.server.path.replace(/\\/g, '/'));
18
18
  const outputPath = path.posix.join(rendererPath, path.posix.normalize(config.server.output.replace(/\\/g, '/')));
19
- const workflowName = `Deploy ${config.site.name} to GitHub Pages`;
19
+ const workflowName = 'Deploy Docs';
20
20
  const artifactPath = `./${outputPath}/public`;
21
21
  const workspaceContentPath = config.content?.path ? `\${{ github.workspace }}/${path.posix.normalize(config.content.path.replace(/\\/g, '/'))}` : '${{ github.workspace }}';
22
22
  return [
@@ -45,22 +45,22 @@ function buildGithubWorkflow(config) {
45
45
  ' MDSITE_CONFIG_PATH: "${{ github.workspace }}/mdsite.yml"',
46
46
  ' steps:',
47
47
  ' - name: Checkout',
48
- ' uses: actions/checkout@v4',
48
+ ' uses: actions/checkout@v7',
49
49
  '',
50
50
  ' - name: Setup mdsite renderer',
51
51
  ' run: |',
52
- ' npm install --no-save mdsite',
52
+ ' npm install --no-save @life-and-dev/mdsite',
53
53
  " node <<'NODE'",
54
54
  " const fs = require('node:fs')",
55
55
  " const path = require('node:path')",
56
56
  " const ignored = new Set(['node_modules', '.nuxt', '.output', 'dist', '.cache'])",
57
- " const source = path.join(process.cwd(), 'node_modules', 'mdsite', 'mdsite-nuxt')",
57
+ " const source = path.join(process.cwd(), 'node_modules', '@life-and-dev', 'mdsite', 'mdsite-nuxt')",
58
58
  ` const target = path.join(process.cwd(), ${JSON.stringify(rendererPath)})`,
59
59
  ' fs.cpSync(source, target, { recursive: true, force: true, filter: (sourcePath) => !ignored.has(path.basename(sourcePath)) })',
60
60
  ' NODE',
61
61
  '',
62
62
  ' - name: Setup Node',
63
- ' uses: actions/setup-node@v4',
63
+ ' uses: actions/setup-node@v6',
64
64
  ' with:',
65
65
  ' node-version: "24"',
66
66
  ' cache: npm',
@@ -68,15 +68,13 @@ function buildGithubWorkflow(config) {
68
68
  '',
69
69
  ' - name: Setup Pages',
70
70
  ' id: pages',
71
- ' uses: actions/configure-pages@v5',
71
+ ' uses: actions/configure-pages@v6',
72
72
  '',
73
73
  ' - name: Restore cache',
74
- ' uses: actions/cache@v4',
74
+ ' uses: actions/cache@v5',
75
75
  ' with:',
76
76
  ' path: |',
77
77
  ` ${rendererPath}/node_modules`,
78
- ` ${rendererPath}/.nuxt`,
79
- ` ${outputPath}`,
80
78
  " key: ${{ runner.os }}-nuxt-build-${{ hashFiles('" + rendererPath + "/package-lock.json') }}",
81
79
  ' restore-keys: |',
82
80
  ' ${{ runner.os }}-nuxt-build-',
@@ -89,10 +87,10 @@ function buildGithubWorkflow(config) {
89
87
  ` working-directory: ${rendererPath}`,
90
88
  ' run: npm run generate',
91
89
  ' env:',
92
- ' NUXT_APP_BASE_URL: ${{ steps.pages.outputs.base_path }}',
90
+ ' NUXT_APP_BASE_URL: ${{ steps.pages.outputs.base_path }}/',
93
91
  '',
94
92
  ' - name: Upload artifact',
95
- ' uses: actions/upload-pages-artifact@v3',
93
+ ' uses: actions/upload-pages-artifact@v5',
96
94
  ' with:',
97
95
  ` path: ${JSON.stringify(artifactPath)}`,
98
96
  '',
@@ -105,7 +103,7 @@ function buildGithubWorkflow(config) {
105
103
  ' steps:',
106
104
  ' - name: Deploy to GitHub Pages',
107
105
  ' id: deployment',
108
- ' uses: actions/deploy-pages@v4'
106
+ ' uses: actions/deploy-pages@v5'
109
107
  ].join('\n') + '\n';
110
108
  }
111
109
  //# sourceMappingURL=prepare.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,iCAAiC,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAE7J,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkB;IAC9D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,iCAAiC,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjF,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9G,MAAM,0BAA0B,CAAC,WAAW,CAAC,CAAA;IAC7C,MAAM,sBAAsB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;IAEtD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAChF,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5D,MAAM,SAAS,CAAC,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAA;IAEzE,OAAO,sCAAsC,YAAY,EAAE,CAAA;AAC7D,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA8D;IACzF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;IACjF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IAChH,MAAM,YAAY,GAAG,aAAa,CAAA;IAClC,MAAM,YAAY,GAAG,KAAK,UAAU,SAAS,CAAA;IAC7C,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,4BAA4B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAA;IAE3K,OAAO;QACL,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;QACvC,EAAE;QACF,KAAK;QACL,SAAS;QACT,wBAAwB;QACxB,sBAAsB;QACtB,EAAE;QACF,cAAc;QACd,kBAAkB;QAClB,gBAAgB;QAChB,mBAAmB;QACnB,EAAE;QACF,cAAc;QACd,kBAAkB;QAClB,6BAA6B;QAC7B,EAAE;QACF,OAAO;QACP,UAAU;QACV,4BAA4B;QAC5B,UAAU;QACV,6BAA6B,oBAAoB,GAAG;QACpD,uBAAuB,oBAAoB,GAAG;QAC9C,gEAAgE;QAChE,YAAY;QACZ,wBAAwB;QACxB,mCAAmC;QACnC,EAAE;QACF,qCAAqC;QACrC,gBAAgB;QAChB,sDAAsD;QACtD,yBAAyB;QACzB,yCAAyC;QACzC,6CAA6C;QAC7C,2FAA2F;QAC3F,6GAA6G;QAC7G,qDAAqD,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG;QACpF,wIAAwI;QACxI,gBAAgB;QAChB,EAAE;QACF,0BAA0B;QAC1B,qCAAqC;QACrC,eAAe;QACf,8BAA8B;QAC9B,sBAAsB;QACtB,oCAAoC,IAAI,CAAC,SAAS,CAAC,GAAG,YAAY,oBAAoB,CAAC,EAAE;QACzF,EAAE;QACF,2BAA2B;QAC3B,mBAAmB;QACnB,0CAA0C;QAC1C,EAAE;QACF,6BAA6B;QAC7B,gCAAgC;QAChC,eAAe;QACf,mBAAmB;QACnB,eAAe,YAAY,eAAe;QAC1C,4DAA4D,GAAG,YAAY,GAAG,yBAAyB;QACvG,2BAA2B;QAC3B,0CAA0C;QAC1C,EAAE;QACF,oCAAoC;QACpC,8BAA8B,YAAY,EAAE;QAC5C,0BAA0B;QAC1B,EAAE;QACF,oCAAoC;QACpC,8BAA8B,YAAY,EAAE;QAC5C,+BAA+B;QAC/B,cAAc;QACd,oEAAoE;QACpE,EAAE;QACF,+BAA+B;QAC/B,gDAAgD;QAChD,eAAe;QACf,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;QACjD,EAAE;QACF,WAAW;QACX,kBAAkB;QAClB,0BAA0B;QAC1B,qDAAqD;QACrD,4BAA4B;QAC5B,kBAAkB;QAClB,YAAY;QACZ,sCAAsC;QACtC,wBAAwB;QACxB,uCAAuC;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AACrB,CAAC"}
@@ -39,24 +39,27 @@ describe('runPrepareGithubCommand', () => {
39
39
  const workflowPath = path.join(contentDir, '.github', 'workflows', 'deploy.yml');
40
40
  const workflow = await readFile(workflowPath, 'utf8');
41
41
  expect(result).toBe(`Generated GitHub Pages workflow at ${workflowPath}`);
42
- expect(workflow).toContain('name: "Deploy Example Docs to GitHub Pages"');
42
+ expect(workflow).toContain('name: "Deploy Docs"');
43
43
  expect(workflow).toContain('runs-on: ubuntu-latest');
44
44
  expect(workflow).toContain('node-version: "24"');
45
45
  expect(workflow).toContain('working-directory: renderer');
46
- expect(workflow).toContain('NUXT_APP_BASE_URL: ${{ steps.pages.outputs.base_path }}');
46
+ expect(workflow).toContain('NUXT_APP_BASE_URL: ${{ steps.pages.outputs.base_path }}/');
47
47
  expect(workflow).toContain('NUXT_CONTENT_PATH: "${{ github.workspace }}"');
48
48
  expect(workflow).toContain('CONTENT_DIR: "${{ github.workspace }}"');
49
49
  expect(workflow).toContain('MDSITE_CONFIG_PATH: "${{ github.workspace }}/mdsite.yml"');
50
50
  expect(workflow).toContain('cache-dependency-path: "renderer/package-lock.json"');
51
+ expect(workflow).toContain(' renderer/node_modules');
52
+ expect(workflow).not.toContain(' renderer/.nuxt');
53
+ expect(workflow).not.toContain(' renderer/build/site');
51
54
  expect(workflow).toContain('name: Setup mdsite renderer');
52
- expect(workflow).toContain('npm install --no-save mdsite');
53
- expect(workflow).toContain("node_modules', 'mdsite', 'mdsite-nuxt");
55
+ expect(workflow).toContain('npm install --no-save @life-and-dev/mdsite');
56
+ expect(workflow).toContain("node_modules', '@life-and-dev', 'mdsite', 'mdsite-nuxt");
54
57
  expect(workflow).toContain('renderer/build/site');
55
58
  expect(workflow).toContain('path: "./renderer/build/site/public"');
56
59
  expect(workflow).toContain('run: npm run generate');
57
60
  expect(workflow).not.toContain('npm start -- --generate');
58
- expect(workflow).toContain('actions/upload-pages-artifact@v3');
59
- expect(workflow).toContain('actions/deploy-pages@v4');
61
+ expect(workflow).toContain('actions/upload-pages-artifact@v5');
62
+ expect(workflow).toContain('actions/deploy-pages@v5');
60
63
  expect(runForegroundMock).toHaveBeenCalledTimes(1);
61
64
  expect(runForegroundMock).toHaveBeenCalledWith('npm', ['run', 'prepare:renderer'], rendererDir, expect.objectContaining({
62
65
  CONTENT_DIR: contentDir,
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.test.js","sourceRoot":"","sources":["../../src/commands/prepare.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.test.js","sourceRoot":"","sources":["../../src/commands/prepare.test.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  <v-container class="d-flex justify-center align-center">
9
9
  <div class="footer-links">
10
10
  <v-btn
11
- :to="aboutLink"
11
+ :href="aboutLink"
12
12
  variant="text"
13
13
  color="on-surface-appbar"
14
14
  class="footer-link"
@@ -19,7 +19,7 @@
19
19
  <v-divider vertical class="mx-2" />
20
20
 
21
21
  <v-btn
22
- :to="disclaimerLink"
22
+ :href="disclaimerLink"
23
23
  variant="text"
24
24
  color="on-surface-appbar"
25
25
  class="footer-link"
@@ -47,12 +47,14 @@
47
47
 
48
48
  <script setup lang="ts">
49
49
  import { useSourceEdit } from '~/composables/useSourceEdit';
50
+ import { withBasePath } from '../../utils/base-url'
50
51
 
52
+ const appBaseURL = useRuntimeConfig().app.baseURL
51
53
  const { getEditUrl } = useSourceEdit()
52
54
 
53
55
  // Generate links to root content files
54
- const aboutLink = computed(() => '/about')
55
- const disclaimerLink = computed(() => '/disclaimer')
56
+ const aboutLink = computed(() => withBasePath('/about', appBaseURL))
57
+ const disclaimerLink = computed(() => withBasePath('/disclaimer', appBaseURL))
56
58
  const editUrl = computed(() => getEditUrl())
57
59
  </script>
58
60
 
@@ -1,4 +1,5 @@
1
1
  import type { MinimalTreeNode } from '../../scripts/generate-indices'
2
+ import { withBasePath } from '../../utils/base-url'
2
3
 
3
4
  export interface TreeNode {
4
5
  id: string
@@ -30,6 +31,7 @@ function getCacheKey(): string {
30
31
  * Build hierarchical navigation tree from @nuxt/content collection
31
32
  */
32
33
  export function useNavigationTree() {
34
+ const appBaseURL = useRuntimeConfig().app.baseURL
33
35
  // Use useState for server-side rendering and client hydration
34
36
  // Cache key changes hourly to pick up menu structure changes
35
37
  const tree = useState<TreeNode | null>(getCacheKey(), () => null)
@@ -50,7 +52,7 @@ export function useNavigationTree() {
50
52
  isLoading.value = true
51
53
  try {
52
54
  // Fetch pre-built navigation JSON
53
- const minimalNodes = await $fetch<MinimalTreeNode[]>('/_navigation.json')
55
+ const minimalNodes = await $fetch<MinimalTreeNode[]>(withBasePath('/_navigation.json', appBaseURL))
54
56
 
55
57
  // Convert to TreeNode format with parent references
56
58
  tree.value = buildTreeFromMinimalNodes(minimalNodes)
@@ -1,10 +1,12 @@
1
1
  import type { SearchIndexEntry } from '../../scripts/generate-indices'
2
+ import { withBasePath } from '../../utils/base-url'
2
3
 
3
4
  /**
4
5
  * Fetch and cache search index from pre-built JSON file
5
6
  * Uses useState to prevent duplicate fetches across component instances
6
7
  */
7
8
  export function useSearchIndex() {
9
+ const appBaseURL = useRuntimeConfig().app.baseURL
8
10
  // Cache search index using useState (shared across all components)
9
11
  const searchIndex = useState<SearchIndexEntry[] | null>('search-index', () => null)
10
12
  const isLoading = useState<boolean>('search-index-loading', () => false)
@@ -27,7 +29,7 @@ export function useSearchIndex() {
27
29
  isLoading.value = true
28
30
 
29
31
  try {
30
- const index = await $fetch<SearchIndexEntry[]>('/_search-index.json')
32
+ const index = await $fetch<SearchIndexEntry[]>(withBasePath('/_search-index.json', appBaseURL))
31
33
  searchIndex.value = index
32
34
  return index
33
35
  } catch (error) {
@@ -3,10 +3,12 @@ import path from 'path'
3
3
  import { getDomainThemes } from './app/config/themes'
4
4
  import { createBibleReferencePatterns } from './app/utils/bible-book-names'
5
5
  import { runBuildFallbackHooks } from './scripts/renderer-hooks'
6
+ import { withBasePath } from './utils/base-url'
6
7
  import { loadMdsiteConfigSync } from './utils/mdsite-config'
7
8
 
8
9
  const mdsite = loadMdsiteConfigSync()
9
10
  const siteConfig = mdsite.config
11
+ const appBaseURL = process.env.NUXT_APP_BASE_URL || '/'
10
12
 
11
13
  export default defineNuxtConfig({
12
14
  compatibilityDate: '2025-07-15',
@@ -53,12 +55,13 @@ export default defineNuxtConfig({
53
55
  },
54
56
 
55
57
  app: {
58
+ baseURL: appBaseURL,
56
59
  head: {
57
60
  link: [
58
- { rel: 'icon', type: 'image/svg+xml', href: '/favicon.svg', sizes: 'any' },
59
- { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico', sizes: '32x32' },
60
- { rel: 'apple-touch-icon', href: '/apple-touch-icon.png' },
61
- { rel: 'manifest', href: '/site.webmanifest' },
61
+ { rel: 'icon', type: 'image/svg+xml', href: withBasePath('/favicon.svg', appBaseURL), sizes: 'any' },
62
+ { rel: 'icon', type: 'image/x-icon', href: withBasePath('/favicon.ico', appBaseURL), sizes: '32x32' },
63
+ { rel: 'apple-touch-icon', href: withBasePath('/apple-touch-icon.png', appBaseURL) },
64
+ { rel: 'manifest', href: withBasePath('/site.webmanifest', appBaseURL) },
62
65
  { rel: 'stylesheet', href: 'https://cdn.jsdelivr.net/npm/@mdi/font@7.4.47/css/materialdesignicons.min.css' },
63
66
  { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap' }
64
67
  ]