create-shibumi 0.3.4 → 0.4.1

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.
Files changed (43) hide show
  1. package/README.md +20 -4
  2. package/package.json +6 -5
  3. package/scripts/shibumi.lock.json +2 -2
  4. package/scripts/ship.lock.json +3 -3
  5. package/src/args.ts +3 -3
  6. package/src/cli.ts +3 -3
  7. package/src/create.ts +9 -0
  8. package/src/templates/blog/README.md +4 -3
  9. package/src/templates/blog/agents.md +22 -11
  10. package/src/templates/blog/bun.lock +7 -756
  11. package/src/templates/blog/gitignore +1 -2
  12. package/src/templates/blog/package.json +9 -11
  13. package/src/templates/blog/scripts/build.ts +48 -0
  14. package/src/templates/blog/scripts/preview.ts +42 -0
  15. package/src/templates/blog/serve.ts +11 -0
  16. package/src/templates/blog/src/app.ts +418 -0
  17. package/src/templates/blog/src/layout.html +25 -0
  18. package/src/templates/blog/src/pages/404.html +6 -0
  19. package/src/templates/blog/src/pages/index.html +11 -0
  20. package/src/templates/blog/src/pages/post.html +15 -0
  21. package/src/templates/blog/src/site.ts +7 -2
  22. package/src/templates/blog/tsconfig.json +18 -4
  23. package/src/templates/full-stack/Dockerfile +1 -1
  24. package/src/templates/full-stack/agents.md +2 -2
  25. package/src/templates/full-stack/bun.lock +1 -4
  26. package/src/templates/full-stack/compose.yaml +5 -2
  27. package/src/templates/full-stack/package.json +2 -3
  28. package/src/templates/full-stack/src/env.ts +1 -1
  29. package/src/templates/shibumi.ts +1 -1
  30. package/src/templates/ship.ts +50 -15
  31. package/src/templates/static/package.json +1 -1
  32. package/src/templates/static/scripts/preview.ts +1 -1
  33. package/src/templates/blog/astro.config.mjs +0 -13
  34. package/src/templates/blog/src/components/BaseHead.astro +0 -41
  35. package/src/templates/blog/src/content.config.ts +0 -20
  36. package/src/templates/blog/src/layouts/Base.astro +0 -37
  37. package/src/templates/blog/src/pages/404.astro +0 -11
  38. package/src/templates/blog/src/pages/index.astro +0 -33
  39. package/src/templates/blog/src/pages/llms.txt.ts +0 -29
  40. package/src/templates/blog/src/pages/posts/[id].astro +0 -32
  41. package/src/templates/blog/src/pages/posts/[id].md.ts +0 -18
  42. package/src/templates/blog/src/pages/robots.txt.ts +0 -6
  43. package/src/templates/blog/src/pages/rss.xml.ts +0 -21
@@ -1,5 +1,19 @@
1
1
  {
2
- "extends": "astro/tsconfigs/strict",
3
- "include": [".astro/types.d.ts", "src/**/*"],
4
- "exclude": ["dist"]
5
- }
2
+ "compilerOptions": {
3
+ "target": "ESNext",
4
+ "module": "ESNext",
5
+ "moduleResolution": "bundler",
6
+ "resolveJsonModule": true,
7
+ "noEmit": true,
8
+ "strict": true,
9
+ "types": [
10
+ "bun-types"
11
+ ],
12
+ "skipLibCheck": true
13
+ },
14
+ "include": [
15
+ "src",
16
+ "serve.ts",
17
+ "scripts"
18
+ ]
19
+ }
@@ -19,5 +19,5 @@ USER bun
19
19
  # refusing to build login links from the Host header. Never unset it here.
20
20
  ENV NODE_ENV=production
21
21
  ENV DB_PATH=/data/app.db
22
- EXPOSE 3000
22
+ EXPOSE 9001
23
23
  CMD ["bun", "dist/server.js"]
@@ -6,9 +6,9 @@ Bun full-stack app generated by create-shibumi. Hono routes, Zod validation, Alp
6
6
 
7
7
  ```sh
8
8
  bun dev # Ship wrapper starts hot reload on the configured app port
9
- bun dev:app # plain watch mode on PORT (default 3000)
9
+ bun dev:app # plain watch mode on PORT (default 9001)
10
10
  bun test # route, security-header, migration, backup, restore tests
11
- bun run check # TypeScript check
11
+ bun check # native type check (Bun 1.4.4+, no standalone TypeScript dependency)
12
12
  bun run build # bundle src/server.ts to dist/server.js
13
13
  bun db:status # applied and pending migrations
14
14
  bun db:migrate # backup (when needed), then apply pending migrations
@@ -11,9 +11,8 @@
11
11
  },
12
12
  "devDependencies": {
13
13
  "@clack/prompts": "1.7.0",
14
- "@types/bun": "latest",
14
+ "@types/bun": "1.4.0",
15
15
  "drizzle-kit": "0.31.10",
16
- "typescript": "5.9.2",
17
16
  },
18
17
  },
19
18
  },
@@ -116,8 +115,6 @@
116
115
 
117
116
  "tsx": ["tsx@4.23.12", "", { "dependencies": { "esbuild": "~0.28.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "bin": { "tsx": "dist/cli.mjs" } }, "sha512-FDf4L4sYzKtzWYhU/Xm0AQFdTjdIxNo9ElTf2mxXM6k8YMHXzYUe4yODVaXP4V9uMFbVg8c0qyBccK2OOxb45Q=="],
118
117
 
119
- "typescript": ["typescript@5.9.2", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A=="],
120
-
121
118
  "undici-types": ["undici-types@8.3.0", "", {}, "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ=="],
122
119
 
123
120
  "zod": ["zod@4.4.3", "", {}, "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ=="],
@@ -2,14 +2,17 @@ services:
2
2
  app:
3
3
  build: .
4
4
  ports:
5
- - "127.0.0.1:${SHIBUMI_PORT:-9001}:3000"
5
+ - "127.0.0.1:${SHIBUMI_PORT:-9001}:9001"
6
6
  environment:
7
+ # Container and host both listen above 9000; SHIBUMI_PORT is the host
8
+ # port and 9001 is the app's own default (see src/env.ts).
9
+ PORT: "9001"
7
10
  DB_PATH: /data/app.db
8
11
  volumes:
9
12
  - app_data:/data
10
13
  restart: unless-stopped
11
14
  healthcheck:
12
- test: ["CMD", "wget", "-q", "-T", "5", "-O", "/dev/null", "http://127.0.0.1:3000/healthz"]
15
+ test: ["CMD", "wget", "-q", "-T", "5", "-O", "/dev/null", "http://127.0.0.1:9001/healthz"]
13
16
  interval: 60s
14
17
  timeout: 10s
15
18
  retries: 3
@@ -9,7 +9,7 @@
9
9
  "start": "bun dist/server.js",
10
10
  "build": "bun build src/server.ts --outdir dist --target bun",
11
11
  "test": "bun test",
12
- "check": "tsc --noEmit",
12
+ "check": "bun check --no-script",
13
13
  "ship": "bun scripts/ship.ts",
14
14
  "ship:setup": "bun scripts/ship.ts --setup",
15
15
  "ship:update": "bun scripts/ship.ts --update",
@@ -32,10 +32,9 @@
32
32
  "devDependencies": {
33
33
  "@clack/prompts": "1.7.0",
34
34
  "@types/bun": "1.4.0",
35
- "typescript": "5.9.2",
36
35
  "drizzle-kit": "0.31.10"
37
36
  },
38
37
  "engines": {
39
- "bun": ">=1.4.0"
38
+ "bun": ">=1.4.4"
40
39
  }
41
40
  }
@@ -3,7 +3,7 @@ import { z } from "zod";
3
3
  // Validate the environment at the boundary; the app never reads process.env
4
4
  // directly. Add new variables here so misconfiguration fails at startup.
5
5
  const schema = z.object({
6
- PORT: z.coerce.number().int().min(1).max(65535).default(3000),
6
+ PORT: z.coerce.number().int().min(1).max(65535).default(9001),
7
7
  // Container deployments mount a persistent volume at /data and set
8
8
  // DB_PATH=/data/app.db (see compose.yaml). Local development stays in ./data.
9
9
  DB_PATH: z.string().min(1).default("data/app.db"),