create-fate 1.13.0 → 1.14.0
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/bin/create-fate.mjs +5 -4
- package/package.json +1 -1
- package/templates/fate/_shared/vue-app/package.json +2 -2
- package/templates/fate/_shared/vue-app/src/ui/Link.vue +3 -2
- package/templates/fate/drizzle/.vite-hooks/pre-commit +0 -0
- package/templates/fate/drizzle/_gitignore +2 -0
- package/templates/fate/drizzle/client/package.json +2 -2
- package/templates/fate/drizzle/server/src/app.tsx +0 -0
- package/templates/fate/drizzle/vite.config.ts +2 -0
- package/templates/fate/graphql/.vite-hooks/pre-commit +0 -0
- package/templates/fate/graphql/_gitignore +2 -0
- package/templates/fate/graphql/client/package.json +2 -2
- package/templates/fate/graphql/package.json +1 -1
- package/templates/fate/graphql/server/package.json +2 -2
- package/templates/fate/graphql/server/scripts/generate-graphql.tsx +0 -0
- package/templates/fate/graphql/server/src/app.tsx +0 -0
- package/templates/fate/graphql/server/src/prisma/seed.tsx +0 -0
- package/templates/fate/graphql/vite.config.ts +2 -0
- package/templates/fate/graphql-client/_gitignore +2 -0
- package/templates/fate/graphql-client/package.json +2 -2
- package/templates/fate/graphql-client/vite.config.ts +16 -2
- package/templates/fate/http/.vite-hooks/pre-commit +0 -0
- package/templates/fate/http/_gitignore +2 -0
- package/templates/fate/http/client/package.json +2 -2
- package/templates/fate/http/server/src/app.tsx +0 -0
- package/templates/fate/http/vite.config.ts +2 -0
- package/templates/fate/prisma/.vite-hooks/pre-commit +0 -0
- package/templates/fate/prisma/_gitignore +2 -0
- package/templates/fate/prisma/client/package.json +2 -2
- package/templates/fate/prisma/server/src/app.tsx +0 -0
- package/templates/fate/prisma/server/src/prisma/seed.tsx +0 -0
- package/templates/fate/prisma/vite.config.ts +2 -0
- package/templates/fate/void/README.md +2 -2
- package/templates/fate/void/_gitignore +3 -0
- package/templates/fate/void/package.json +5 -5
- package/templates/fate/void/pnpm-workspace.yaml +2 -1
- package/templates/fate/void/src/ui/Link.tsx +5 -3
- package/templates/fate/void/vite.config.ts +18 -2
- package/templates/fate/void/void.config.ts +40 -0
- package/templates/fate/graphql/server/.gitignore +0 -5
- package/templates/fate/void/void.json +0 -32
- package/templates/fate/void/wrangler.jsonc +0 -16
package/bin/create-fate.mjs
CHANGED
|
@@ -805,6 +805,7 @@ const configureVueTemplate = (targetPath, selectedVariant) => {
|
|
|
805
805
|
}
|
|
806
806
|
|
|
807
807
|
if (selectedVariant === 'void') {
|
|
808
|
+
removeIfExists(path.join(frontendRoot, 'void.json'));
|
|
808
809
|
configureVueVoidServerFiles(frontendRoot);
|
|
809
810
|
}
|
|
810
811
|
|
|
@@ -827,12 +828,12 @@ const configureVueTemplate = (targetPath, selectedVariant) => {
|
|
|
827
828
|
__FATE_TYPE_MODULE__: config.typeModule,
|
|
828
829
|
__FMT_IGNORE_PATTERNS__:
|
|
829
830
|
selectedVariant === 'void' || selectedVariant === 'graphql-client'
|
|
830
|
-
? "['.fate/', '.void/', 'dist/', 'node_modules/', 'pnpm-lock.yaml']"
|
|
831
|
-
: "['.fate/', '.void/', 'dist/', 'node_modules/', '../dist/', 'pnpm-lock.yaml']",
|
|
831
|
+
? "['**/.cloudflare/**', '.fate/', '.void/', '.void-wrangler.jsonc', 'dist/', 'node_modules/', 'pnpm-lock.yaml']"
|
|
832
|
+
: "['**/.cloudflare/**', '.fate/', '.void/', 'dist/', 'node_modules/', '../dist/', 'pnpm-lock.yaml']",
|
|
832
833
|
__LINT_IGNORE_PATTERNS__:
|
|
833
834
|
selectedVariant === 'void' || selectedVariant === 'graphql-client'
|
|
834
|
-
? "['.fate', '.void', 'dist', 'node_modules', 'vite.config.ts.timestamp-*']"
|
|
835
|
-
: "['.fate', '.void', 'dist', 'node_modules', '../dist', 'vite.config.ts.timestamp-*']",
|
|
835
|
+
? "['**/.cloudflare/**', '.fate', '.void', '.void-wrangler.jsonc', 'dist', 'node_modules', 'vite.config.ts.timestamp-*']"
|
|
836
|
+
: "['**/.cloudflare/**', '.fate', '.void', 'dist', 'node_modules', '../dist', 'vite.config.ts.timestamp-*']",
|
|
836
837
|
__TSCONFIG_EXTENDS__:
|
|
837
838
|
selectedVariant === 'void' || selectedVariant === 'graphql-client'
|
|
838
839
|
? './.void/tsconfig.json'
|
package/package.json
CHANGED
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
"@nkzw/core": "^1.3.1",
|
|
23
23
|
"@nkzw/define-env": "^1.1.0",
|
|
24
24
|
"@trpc/client": "^11.19.0",
|
|
25
|
-
"@void/vue": "^1.
|
|
25
|
+
"@void/vue": "^1.6.1",
|
|
26
26
|
"class-variance-authority": "^0.7.1",
|
|
27
27
|
"clsx": "^2.1.1",
|
|
28
28
|
"dotenv": "^18.0.9",
|
|
29
29
|
"graphql-sse": "^2.6.3",
|
|
30
30
|
"tailwind-merge": "^3.7.0",
|
|
31
|
-
"void": "^1.
|
|
31
|
+
"void": "^1.6.1",
|
|
32
32
|
"vue": "^3.5.44",
|
|
33
33
|
"vue-fate": "latest"
|
|
34
34
|
},
|
|
File without changes
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@nkzw/stack": "^2.3.2",
|
|
28
28
|
"@radix-ui/react-slot": "^1.5.0",
|
|
29
29
|
"@trpc/client": "^11.19.0",
|
|
30
|
-
"@void/react": "^1.
|
|
30
|
+
"@void/react": "^1.6.1",
|
|
31
31
|
"better-auth": "^1.7.14",
|
|
32
32
|
"class-variance-authority": "^0.7.1",
|
|
33
33
|
"clsx": "^2.1.1",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"react-error-boundary": "^6.1.6",
|
|
39
39
|
"react-fate": "latest",
|
|
40
40
|
"tailwind-merge": "^3.7.0",
|
|
41
|
-
"void": "^1.
|
|
41
|
+
"void": "^1.6.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@nkzw/fbtee-compiler": "^5.0.0",
|
|
File without changes
|
|
@@ -22,6 +22,7 @@ export default defineConfig({
|
|
|
22
22
|
stylesheet: 'client/src/App.css',
|
|
23
23
|
},
|
|
24
24
|
ignorePatterns: [
|
|
25
|
+
'**/.cloudflare/**',
|
|
25
26
|
'coverage/',
|
|
26
27
|
'dist/',
|
|
27
28
|
'.fate/',
|
|
@@ -35,6 +36,7 @@ export default defineConfig({
|
|
|
35
36
|
lint: {
|
|
36
37
|
extends: [nkzw],
|
|
37
38
|
ignorePatterns: [
|
|
39
|
+
'**/.cloudflare/**',
|
|
38
40
|
'coverage',
|
|
39
41
|
'dist',
|
|
40
42
|
'.fate',
|
|
File without changes
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@nkzw/define-env": "^1.1.0",
|
|
27
27
|
"@nkzw/stack": "^2.3.2",
|
|
28
28
|
"@radix-ui/react-slot": "^1.5.0",
|
|
29
|
-
"@void/react": "^1.
|
|
29
|
+
"@void/react": "^1.6.1",
|
|
30
30
|
"better-auth": "^1.7.14",
|
|
31
31
|
"class-variance-authority": "^0.7.1",
|
|
32
32
|
"clsx": "^2.1.1",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"react-error-boundary": "^6.1.6",
|
|
39
39
|
"react-fate": "latest",
|
|
40
40
|
"tailwind-merge": "^3.7.0",
|
|
41
|
-
"void": "^1.
|
|
41
|
+
"void": "^1.6.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@nkzw/fbtee-compiler": "^5.0.0",
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"glob": "^13.0.6",
|
|
47
47
|
"nodemon": "^3.1.14",
|
|
48
48
|
"oxfmt": "^0.65.0",
|
|
49
|
-
"prisma": "^7.10.
|
|
50
|
-
"prisma-json-types-generator": "^
|
|
49
|
+
"prisma": "^7.10.1",
|
|
50
|
+
"prisma-json-types-generator": "^6.0.0",
|
|
51
51
|
"typescript": "^7.0.2",
|
|
52
52
|
"vite-plus": "catalog:",
|
|
53
53
|
"vitest": "catalog:"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -22,6 +22,7 @@ export default defineConfig({
|
|
|
22
22
|
stylesheet: 'client/src/App.css',
|
|
23
23
|
},
|
|
24
24
|
ignorePatterns: [
|
|
25
|
+
'**/.cloudflare/**',
|
|
25
26
|
'coverage/',
|
|
26
27
|
'dist/',
|
|
27
28
|
'.fate/',
|
|
@@ -36,6 +37,7 @@ export default defineConfig({
|
|
|
36
37
|
lint: {
|
|
37
38
|
extends: [nkzw],
|
|
38
39
|
ignorePatterns: [
|
|
40
|
+
'**/.cloudflare/**',
|
|
39
41
|
'coverage',
|
|
40
42
|
'dist',
|
|
41
43
|
'.fate',
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@nkzw/fate": "latest",
|
|
26
|
-
"@void/react": "^1.
|
|
26
|
+
"@void/react": "^1.6.1",
|
|
27
27
|
"fbtee": "^5.0.0",
|
|
28
28
|
"graphql-sse": "^2.6.3",
|
|
29
29
|
"lucide-react": "^1.61.0",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"react-dom": "^19.3.1",
|
|
32
32
|
"react-error-boundary": "^6.1.6",
|
|
33
33
|
"react-fate": "latest",
|
|
34
|
-
"void": "^1.
|
|
34
|
+
"void": "^1.6.1"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@nkzw/eslint-plugin": "^2.0.0",
|
|
@@ -30,12 +30,26 @@ export default defineConfig({
|
|
|
30
30
|
experimentalTailwindcss: {
|
|
31
31
|
stylesheet: 'src/App.css',
|
|
32
32
|
},
|
|
33
|
-
ignorePatterns: [
|
|
33
|
+
ignorePatterns: [
|
|
34
|
+
'**/.cloudflare/**',
|
|
35
|
+
'.fate/',
|
|
36
|
+
'.void/',
|
|
37
|
+
'dist/',
|
|
38
|
+
'node_modules/',
|
|
39
|
+
'pnpm-lock.yaml',
|
|
40
|
+
],
|
|
34
41
|
singleQuote: true,
|
|
35
42
|
},
|
|
36
43
|
lint: {
|
|
37
44
|
extends: [nkzw],
|
|
38
|
-
ignorePatterns: [
|
|
45
|
+
ignorePatterns: [
|
|
46
|
+
'**/.cloudflare/**',
|
|
47
|
+
'.fate',
|
|
48
|
+
'.void',
|
|
49
|
+
'dist',
|
|
50
|
+
'node_modules',
|
|
51
|
+
'vite.config.ts.timestamp-*',
|
|
52
|
+
],
|
|
39
53
|
options: { typeAware: true, typeCheck: true },
|
|
40
54
|
overrides: [
|
|
41
55
|
{
|
|
File without changes
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@nkzw/define-env": "^1.1.0",
|
|
27
27
|
"@nkzw/stack": "^2.3.2",
|
|
28
28
|
"@radix-ui/react-slot": "^1.5.0",
|
|
29
|
-
"@void/react": "^1.
|
|
29
|
+
"@void/react": "^1.6.1",
|
|
30
30
|
"better-auth": "^1.7.14",
|
|
31
31
|
"class-variance-authority": "^0.7.1",
|
|
32
32
|
"clsx": "^2.1.1",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"react-error-boundary": "^6.1.6",
|
|
38
38
|
"react-fate": "latest",
|
|
39
39
|
"tailwind-merge": "^3.7.0",
|
|
40
|
-
"void": "^1.
|
|
40
|
+
"void": "^1.6.1"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@nkzw/fbtee-compiler": "^5.0.0",
|
|
File without changes
|
|
@@ -22,6 +22,7 @@ export default defineConfig({
|
|
|
22
22
|
stylesheet: 'client/src/App.css',
|
|
23
23
|
},
|
|
24
24
|
ignorePatterns: [
|
|
25
|
+
'**/.cloudflare/**',
|
|
25
26
|
'coverage/',
|
|
26
27
|
'dist/',
|
|
27
28
|
'.fate/',
|
|
@@ -35,6 +36,7 @@ export default defineConfig({
|
|
|
35
36
|
lint: {
|
|
36
37
|
extends: [nkzw],
|
|
37
38
|
ignorePatterns: [
|
|
39
|
+
'**/.cloudflare/**',
|
|
38
40
|
'coverage',
|
|
39
41
|
'dist',
|
|
40
42
|
'.fate',
|
|
File without changes
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@nkzw/stack": "^2.3.2",
|
|
28
28
|
"@radix-ui/react-slot": "^1.5.0",
|
|
29
29
|
"@trpc/client": "^11.19.0",
|
|
30
|
-
"@void/react": "^1.
|
|
30
|
+
"@void/react": "^1.6.1",
|
|
31
31
|
"better-auth": "^1.7.14",
|
|
32
32
|
"class-variance-authority": "^0.7.1",
|
|
33
33
|
"clsx": "^2.1.1",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"react-error-boundary": "^6.1.6",
|
|
39
39
|
"react-fate": "latest",
|
|
40
40
|
"tailwind-merge": "^3.7.0",
|
|
41
|
-
"void": "^1.
|
|
41
|
+
"void": "^1.6.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@nkzw/fbtee-compiler": "^5.0.0",
|
|
File without changes
|
|
File without changes
|
|
@@ -22,6 +22,7 @@ export default defineConfig({
|
|
|
22
22
|
stylesheet: 'client/src/App.css',
|
|
23
23
|
},
|
|
24
24
|
ignorePatterns: [
|
|
25
|
+
'**/.cloudflare/**',
|
|
25
26
|
'coverage/',
|
|
26
27
|
'dist/',
|
|
27
28
|
'.fate/',
|
|
@@ -35,6 +36,7 @@ export default defineConfig({
|
|
|
35
36
|
lint: {
|
|
36
37
|
extends: [nkzw],
|
|
37
38
|
ignorePatterns: [
|
|
39
|
+
'**/.cloudflare/**',
|
|
38
40
|
'coverage',
|
|
39
41
|
'dist',
|
|
40
42
|
'.fate',
|
|
@@ -17,7 +17,7 @@ This template uses the Void pages router with Drizzle, `void-fate`, `react-fate`
|
|
|
17
17
|
|
|
18
18
|
## Initial Setup
|
|
19
19
|
|
|
20
|
-
You'll need Node.js 24+ and [Vite+](https://viteplus.dev/guide/).
|
|
20
|
+
You'll need Node.js 24.22+ on the 24.x line or Node.js 26.12+, and [Vite+](https://viteplus.dev/guide/).
|
|
21
21
|
|
|
22
22
|
Install dependencies:
|
|
23
23
|
|
|
@@ -62,7 +62,7 @@ Deploy directly to your own Cloudflare account:
|
|
|
62
62
|
vp exec void deploy --platform cloudflare
|
|
63
63
|
```
|
|
64
64
|
|
|
65
|
-
Void signs you into Cloudflare when needed, provisions resources, applies the checked-in database migrations, and deploys the app. Commit the resource IDs saved in `
|
|
65
|
+
Void signs you into Cloudflare when needed, provisions resources, applies the checked-in database migrations, and deploys the app. Commit the resource IDs saved in `void.lock.json` for subsequent deployments. Keep the template's `VOID_LIVE` Durable Object binding and class migration in `void.config.ts` for live updates.
|
|
66
66
|
|
|
67
67
|
After changing the database schema or auth configuration, run `vp run db:generate`, review and commit the migration, then deploy. The template's migrations include the production Better Auth schema.
|
|
68
68
|
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"@nkzw/fate": "latest",
|
|
30
30
|
"@nkzw/stack": "^2.3.2",
|
|
31
31
|
"@radix-ui/react-slot": "^1.5.0",
|
|
32
|
-
"@void/react": "^1.
|
|
33
|
-
"better-auth": "^1.7.
|
|
32
|
+
"@void/react": "^1.6.1",
|
|
33
|
+
"better-auth": "^1.7.15",
|
|
34
34
|
"class-variance-authority": "^0.7.1",
|
|
35
35
|
"clsx": "^2.1.1",
|
|
36
36
|
"drizzle-orm": "^0.45.4",
|
|
@@ -41,12 +41,12 @@
|
|
|
41
41
|
"react-error-boundary": "^6.1.6",
|
|
42
42
|
"react-fate": "latest",
|
|
43
43
|
"tailwind-merge": "^3.7.0",
|
|
44
|
-
"void": "^1.
|
|
44
|
+
"void": "^1.6.1",
|
|
45
45
|
"void-fate": "latest",
|
|
46
46
|
"zod": "^4.6.7"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@cloudflare/workers-types": "5.
|
|
49
|
+
"@cloudflare/workers-types": "5.20261103.1",
|
|
50
50
|
"@nkzw/eslint-plugin": "^2.0.0",
|
|
51
51
|
"@nkzw/fbtee-compiler": "^5.0.0",
|
|
52
52
|
"@nkzw/oxlint-config": "^2.0.1",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"not op_mini all"
|
|
71
71
|
],
|
|
72
72
|
"engines": {
|
|
73
|
-
"node": "
|
|
73
|
+
"node": "^24.22.0 || >=26.12.0",
|
|
74
74
|
"pnpm": ">=11.0.0"
|
|
75
75
|
},
|
|
76
76
|
"packageManager": "pnpm@12.6.0"
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { Link as VoidLink } from '@void/react';
|
|
2
2
|
import type { ComponentProps } from 'react';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
type VoidLinkProps = ComponentProps<typeof VoidLink>;
|
|
5
|
+
|
|
6
|
+
export type LinkProps = Omit<VoidLinkProps, 'href'> & {
|
|
7
|
+
href?: VoidLinkProps['href'];
|
|
8
|
+
to?: VoidLinkProps['href'];
|
|
7
9
|
};
|
|
8
10
|
|
|
9
11
|
export default function Link({ href, to, ...props }: LinkProps) {
|
|
@@ -36,12 +36,28 @@ export default defineConfig({
|
|
|
36
36
|
experimentalTailwindcss: {
|
|
37
37
|
stylesheet: 'src/App.css',
|
|
38
38
|
},
|
|
39
|
-
ignorePatterns: [
|
|
39
|
+
ignorePatterns: [
|
|
40
|
+
'**/.cloudflare/**',
|
|
41
|
+
'.fate/',
|
|
42
|
+
'.void/',
|
|
43
|
+
'.void-wrangler.jsonc',
|
|
44
|
+
'dist/',
|
|
45
|
+
'node_modules/',
|
|
46
|
+
'pnpm-lock.yaml',
|
|
47
|
+
],
|
|
40
48
|
singleQuote: true,
|
|
41
49
|
},
|
|
42
50
|
lint: {
|
|
43
51
|
extends: [nkzw],
|
|
44
|
-
ignorePatterns: [
|
|
52
|
+
ignorePatterns: [
|
|
53
|
+
'**/.cloudflare/**',
|
|
54
|
+
'.fate',
|
|
55
|
+
'.void',
|
|
56
|
+
'.void-wrangler.jsonc',
|
|
57
|
+
'dist',
|
|
58
|
+
'node_modules',
|
|
59
|
+
'vite.config.ts.timestamp-*',
|
|
60
|
+
],
|
|
45
61
|
options: { typeAware: true, typeCheck: true },
|
|
46
62
|
overrides: [
|
|
47
63
|
{
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { defineConfig } from 'void/config';
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
auth: {
|
|
5
|
+
providers: ['email'],
|
|
6
|
+
},
|
|
7
|
+
cloudflare: {
|
|
8
|
+
durable_objects: {
|
|
9
|
+
bindings: [
|
|
10
|
+
{
|
|
11
|
+
class_name: 'VoidLiveStreamDurableObject',
|
|
12
|
+
name: 'VOID_LIVE',
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
},
|
|
16
|
+
migrations: [
|
|
17
|
+
{
|
|
18
|
+
new_sqlite_classes: ['VoidLiveStreamDurableObject'],
|
|
19
|
+
tag: 'live-v1',
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
},
|
|
23
|
+
head: {
|
|
24
|
+
htmlAttrs: {
|
|
25
|
+
lang: 'en',
|
|
26
|
+
},
|
|
27
|
+
link: [{ href: '/icon.svg', rel: 'icon' }],
|
|
28
|
+
meta: [
|
|
29
|
+
{ charset: 'utf8' },
|
|
30
|
+
{ content: 'width=device-width, initial-scale=1', name: 'viewport' },
|
|
31
|
+
],
|
|
32
|
+
title: 'fate',
|
|
33
|
+
titleTemplate: '%s | fate',
|
|
34
|
+
},
|
|
35
|
+
routing: { typedRoutes: true },
|
|
36
|
+
worker: {
|
|
37
|
+
compatibility_date: '2025-12-01',
|
|
38
|
+
compatibility_flags: ['nodejs_compat', 'no_handle_cross_request_promise_resolution'],
|
|
39
|
+
},
|
|
40
|
+
});
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "./node_modules/void/schema.json",
|
|
3
|
-
"auth": {
|
|
4
|
-
"providers": ["email"]
|
|
5
|
-
},
|
|
6
|
-
"head": {
|
|
7
|
-
"title": "fate",
|
|
8
|
-
"titleTemplate": "%s | fate",
|
|
9
|
-
"htmlAttrs": {
|
|
10
|
-
"lang": "en"
|
|
11
|
-
},
|
|
12
|
-
"meta": [
|
|
13
|
-
{
|
|
14
|
-
"charset": "utf-8"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"name": "viewport",
|
|
18
|
-
"content": "width=device-width, initial-scale=1"
|
|
19
|
-
}
|
|
20
|
-
],
|
|
21
|
-
"link": [
|
|
22
|
-
{
|
|
23
|
-
"rel": "icon",
|
|
24
|
-
"href": "/icon.svg"
|
|
25
|
-
}
|
|
26
|
-
]
|
|
27
|
-
},
|
|
28
|
-
"worker": {
|
|
29
|
-
"compatibility_date": "2025-12-01",
|
|
30
|
-
"compatibility_flags": ["nodejs_compat", "no_handle_cross_request_promise_resolution"]
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"durable_objects": {
|
|
3
|
-
"bindings": [
|
|
4
|
-
{
|
|
5
|
-
"name": "VOID_LIVE",
|
|
6
|
-
"class_name": "VoidLiveStreamDurableObject",
|
|
7
|
-
},
|
|
8
|
-
],
|
|
9
|
-
},
|
|
10
|
-
"migrations": [
|
|
11
|
-
{
|
|
12
|
-
"tag": "live-v1",
|
|
13
|
-
"new_sqlite_classes": ["VoidLiveStreamDurableObject"],
|
|
14
|
-
},
|
|
15
|
-
],
|
|
16
|
-
}
|