dogsbay 0.2.0-beta.18 → 0.2.0-beta.19

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.
@@ -17,7 +17,7 @@
17
17
  import { existsSync } from "node:fs";
18
18
  import { dirname, isAbsolute, resolve } from "node:path";
19
19
  import pc from "picocolors";
20
- import { emitAstroPages, emitPassthroughAstroPages, emitSiteConfig, emitConfigDerivedFiles, emitAgentReadinessFiles, emitMissingTranslationStubs, emitSwitcherMap, emitTaxonomyRoutes, emitPluginRuntime, normalizeBasePath, basePathSegments, } from "@dogsbay/format-astro";
20
+ import { emitAstroPages, emitPassthroughAstroPages, emitSiteConfig, emitConfigDerivedFiles, emitDeployArtifacts, emitAgentReadinessFiles, emitMissingTranslationStubs, emitSwitcherMap, emitTaxonomyRoutes, emitPluginRuntime, normalizeBasePath, basePathSegments, } from "@dogsbay/format-astro";
21
21
  import { collectPassthroughEntries } from "../passthrough-astro.js";
22
22
  import { configToAstroOptions, findConfig, loadConfig, resolveOutputDir, } from "../config/index.js";
23
23
  import { filterSourcesForMode, importContent, primaryModeFiltersAnything, } from "../import-content.js";
@@ -196,6 +196,11 @@ export async function siteBuild(cwd, options) {
196
196
  console.log(` Copied ${copied} passthrough .astro page${copied === 1 ? "" : "s"}`);
197
197
  }
198
198
  emitConfigDerivedFiles(outputDir, astroOpts);
199
+ // Deploy artifacts — write-if-missing so adding `deploy: github-pages`
200
+ // to dogsbay.config.yml on an existing site materializes the workflow
201
+ // on the next build. Author edits survive (only fired when the file
202
+ // doesn't exist; --force regeneration goes through site init).
203
+ emitDeployArtifacts(outputDir, astroOpts);
199
204
  emitAgentReadinessFiles(pages, outputNav, outputDir, config.site.name, astroOpts);
200
205
  // switcherMap.json — per-page version-equivalent lookup. No-op
201
206
  // when the version axis isn't active; cleans up a stale file
@@ -349,6 +354,9 @@ function mergeOverrides(config, opts) {
349
354
  if (opts.deploy === "cloudflare-workers") {
350
355
  next.deploy = { target: "cloudflare-workers" };
351
356
  }
357
+ else if (opts.deploy === "github-pages") {
358
+ next.deploy = { target: "github-pages" };
359
+ }
352
360
  // Analytics
353
361
  if (opts.plausibleDomain) {
354
362
  next.analytics = next.analytics ?? {};
@@ -533,6 +533,9 @@ function buildConfig(opts) {
533
533
  if (opts.deploy === "cloudflare-workers") {
534
534
  config.deploy = { target: "cloudflare-workers" };
535
535
  }
536
+ else if (opts.deploy === "github-pages") {
537
+ config.deploy = { target: "github-pages" };
538
+ }
536
539
  if (opts.plausibleDomain?.trim()) {
537
540
  config.analytics = {
538
541
  plausible: {
package/dist/index.js CHANGED
@@ -63,7 +63,7 @@ site
63
63
  .option("--edit-uri <path>", "Repo path prefix for edit links (default: blob/main/content/)")
64
64
  .option("--copyright <text>", "Footer copyright text")
65
65
  .option("--theme <name>", "Theme preset (default | material)")
66
- .option("--deploy <target>", "Deploy target (cloudflare-workers)")
66
+ .option("--deploy <target>", "Deploy target (cloudflare-workers | github-pages)")
67
67
  .option("--content <path>", "Path to source markdown (relative to config)")
68
68
  .option("--from <format>", "Source format (auto | dogsbay-md | mkdocs | obsidian | starlight | mdx)")
69
69
  .option("--nav <path>", "Path to explicit nav file (.json/.yml)")
@@ -97,7 +97,7 @@ site
97
97
  .option("--edit-uri <path>", "Override site.editUri")
98
98
  .option("--copyright <text>", "Override site.copyright")
99
99
  .option("--theme <name>", "Override theme (default | material)")
100
- .option("--deploy <target>", "Override deploy.target (cloudflare-workers)")
100
+ .option("--deploy <target>", "Override deploy.target (cloudflare-workers | github-pages)")
101
101
  .option("--content <path>", "Override content.source")
102
102
  .option("--from <format>", "Override content.from")
103
103
  .option("--nav <path>", "Override content.nav")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dogsbay",
3
- "version": "0.2.0-beta.18",
3
+ "version": "0.2.0-beta.19",
4
4
  "description": "CLI for Dogsbay — scaffold, build, and serve documentation sites with markdown / MkDocs / Obsidian / OpenAPI sources",
5
5
  "type": "module",
6
6
  "bin": {
@@ -32,14 +32,14 @@
32
32
  "picocolors": "^1.1.0",
33
33
  "prompts": "^2.4.2",
34
34
  "yaml": "^2.8.3",
35
- "@dogsbay/format-mkdocs": "0.2.0-beta.18",
36
- "@dogsbay/format-obsidian": "0.2.0-beta.18",
37
- "@dogsbay/format-mdx": "0.2.0-beta.18",
38
- "@dogsbay/format-starlight": "0.2.0-beta.18",
39
- "@dogsbay/format-dogsbay-md": "0.2.0-beta.18",
40
- "@dogsbay/format-openapi": "0.2.0-beta.18",
41
- "@dogsbay/format-astro": "0.2.0-beta.18",
42
- "@dogsbay/types": "0.2.0-beta.18"
35
+ "@dogsbay/format-astro": "0.2.0-beta.19",
36
+ "@dogsbay/format-obsidian": "0.2.0-beta.19",
37
+ "@dogsbay/format-mkdocs": "0.2.0-beta.19",
38
+ "@dogsbay/format-mdx": "0.2.0-beta.19",
39
+ "@dogsbay/format-starlight": "0.2.0-beta.19",
40
+ "@dogsbay/format-dogsbay-md": "0.2.0-beta.19",
41
+ "@dogsbay/format-openapi": "0.2.0-beta.19",
42
+ "@dogsbay/types": "0.2.0-beta.19"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@types/node": "^22.0.0",