create-aphex 0.1.3 → 0.2.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.
Files changed (104) hide show
  1. package/dist/index.js +9 -88
  2. package/package.json +4 -4
  3. package/templates/base/.dockerignore +0 -44
  4. package/templates/base/.env.example +0 -38
  5. package/templates/base/CHANGELOG.md +0 -124
  6. package/templates/base/Dockerfile +0 -69
  7. package/templates/base/README.md +0 -147
  8. package/templates/base/aphex.config.ts +0 -45
  9. package/templates/base/docker-compose.yml +0 -31
  10. package/templates/base/drizzle/0000_tiny_redwing.sql +0 -226
  11. package/templates/base/drizzle/meta/0000_snapshot.json +0 -1379
  12. package/templates/base/drizzle/meta/_journal.json +0 -13
  13. package/templates/base/drizzle.config.ts +0 -17
  14. package/templates/base/package.json +0 -81
  15. package/templates/base/prod.docker-compose.yml +0 -61
  16. package/templates/base/src/app.css +0 -32
  17. package/templates/base/src/app.d.ts +0 -26
  18. package/templates/base/src/app.html +0 -11
  19. package/templates/base/src/hooks.server.ts +0 -52
  20. package/templates/base/src/lib/assets/favicon.svg +0 -5
  21. package/templates/base/src/lib/auth-client.ts +0 -19
  22. package/templates/base/src/lib/index.ts +0 -1
  23. package/templates/base/src/lib/schemaTypes/index.ts +0 -11
  24. package/templates/base/src/lib/schemaTypes/post.ts +0 -47
  25. package/templates/base/src/lib/server/auth/better-auth/instance.ts +0 -183
  26. package/templates/base/src/lib/server/auth/index.ts +0 -25
  27. package/templates/base/src/lib/server/auth/instance.ts +0 -7
  28. package/templates/base/src/lib/server/auth/service.ts +0 -486
  29. package/templates/base/src/lib/server/cache/index.ts +0 -10
  30. package/templates/base/src/lib/server/db/auth-schema.ts +0 -86
  31. package/templates/base/src/lib/server/db/cms-schema.ts +0 -23
  32. package/templates/base/src/lib/server/db/index.ts +0 -55
  33. package/templates/base/src/lib/server/db/schema.ts +0 -3
  34. package/templates/base/src/lib/server/email/components/EmailLayout.svelte +0 -24
  35. package/templates/base/src/lib/server/email/components/EmailVerification.svelte +0 -26
  36. package/templates/base/src/lib/server/email/components/Invitation.svelte +0 -30
  37. package/templates/base/src/lib/server/email/components/PasswordReset.svelte +0 -28
  38. package/templates/base/src/lib/server/email/index.ts +0 -28
  39. package/templates/base/src/lib/server/email/invitation-hook.ts +0 -56
  40. package/templates/base/src/lib/server/email/renderer.ts +0 -13
  41. package/templates/base/src/lib/server/email/templates/email-verification.ts +0 -8
  42. package/templates/base/src/lib/server/email/templates/invitation.ts +0 -8
  43. package/templates/base/src/lib/server/email/templates/password-reset.ts +0 -7
  44. package/templates/base/src/lib/server/services/organization.ts +0 -68
  45. package/templates/base/src/lib/server/storage/index.ts +0 -28
  46. package/templates/base/src/lib/stores/activeTab.svelte.ts +0 -14
  47. package/templates/base/src/lib/utils/imageBuilder.ts +0 -3
  48. package/templates/base/src/lib/utils/slug.ts +0 -33
  49. package/templates/base/src/routes/(protected)/admin/+layout.server.ts +0 -86
  50. package/templates/base/src/routes/(protected)/admin/+layout.svelte +0 -78
  51. package/templates/base/src/routes/(protected)/admin/+page.server.ts +0 -60
  52. package/templates/base/src/routes/(protected)/admin/+page.svelte +0 -34
  53. package/templates/base/src/routes/(protected)/admin/organizations/+page.server.ts +0 -39
  54. package/templates/base/src/routes/(protected)/admin/organizations/+page.svelte +0 -31
  55. package/templates/base/src/routes/(protected)/admin/organizations/_components/CreateOrganization.svelte +0 -141
  56. package/templates/base/src/routes/(protected)/admin/organizations/_components/OrganizationsList.svelte +0 -102
  57. package/templates/base/src/routes/(protected)/admin/settings/+layout.server.ts +0 -42
  58. package/templates/base/src/routes/(protected)/admin/settings/+layout.svelte +0 -116
  59. package/templates/base/src/routes/(protected)/admin/settings/+page.server.ts +0 -16
  60. package/templates/base/src/routes/(protected)/admin/settings/+page.svelte +0 -32
  61. package/templates/base/src/routes/(protected)/admin/settings/_components/AccountSettings.svelte +0 -177
  62. package/templates/base/src/routes/(protected)/admin/settings/_components/ApiKeysSettings.svelte +0 -472
  63. package/templates/base/src/routes/(protected)/admin/settings/_components/OrganizationsSettings.svelte +0 -182
  64. package/templates/base/src/routes/(protected)/admin/settings/account/+page.server.ts +0 -25
  65. package/templates/base/src/routes/(protected)/admin/settings/account/+page.svelte +0 -23
  66. package/templates/base/src/routes/(protected)/admin/settings/api-keys/+page.server.ts +0 -54
  67. package/templates/base/src/routes/(protected)/admin/settings/api-keys/+page.svelte +0 -14
  68. package/templates/base/src/routes/(protected)/admin/settings/members/+page.server.ts +0 -31
  69. package/templates/base/src/routes/(protected)/admin/settings/members/+page.svelte +0 -338
  70. package/templates/base/src/routes/(protected)/admin/settings/roles/+page.server.ts +0 -17
  71. package/templates/base/src/routes/(protected)/admin/settings/roles/+page.svelte +0 -339
  72. package/templates/base/src/routes/+layout.svelte +0 -12
  73. package/templates/base/src/routes/+page.svelte +0 -2
  74. package/templates/base/src/routes/api/[...slug]/+server.ts +0 -35
  75. package/templates/base/src/routes/api/instance-settings/+server.ts +0 -70
  76. package/templates/base/src/routes/api/invitations/+server.ts +0 -54
  77. package/templates/base/src/routes/api/invitations/[id]/accept/+server.ts +0 -54
  78. package/templates/base/src/routes/api/invitations/[id]/reject/+server.ts +0 -49
  79. package/templates/base/src/routes/api/settings/api-keys/+server.ts +0 -57
  80. package/templates/base/src/routes/api/settings/api-keys/[id]/+server.ts +0 -53
  81. package/templates/base/src/routes/god-mode/+layout.server.ts +0 -32
  82. package/templates/base/src/routes/god-mode/+layout.svelte +0 -155
  83. package/templates/base/src/routes/god-mode/+page.server.ts +0 -10
  84. package/templates/base/src/routes/god-mode/+page.svelte +0 -32
  85. package/templates/base/src/routes/god-mode/_components/CreateOrganization.svelte +0 -141
  86. package/templates/base/src/routes/god-mode/_components/OrganizationsList.svelte +0 -169
  87. package/templates/base/src/routes/god-mode/organizations/+page.server.ts +0 -43
  88. package/templates/base/src/routes/god-mode/organizations/+page.svelte +0 -74
  89. package/templates/base/src/routes/invitations/+page.server.ts +0 -48
  90. package/templates/base/src/routes/invitations/+page.svelte +0 -264
  91. package/templates/base/src/routes/invite/[token]/+page.server.ts +0 -59
  92. package/templates/base/src/routes/invite/[token]/+page.svelte +0 -109
  93. package/templates/base/src/routes/login/+page.server.ts +0 -14
  94. package/templates/base/src/routes/login/+page.svelte +0 -332
  95. package/templates/base/src/routes/media/[id]/[filename]/+server.ts +0 -3
  96. package/templates/base/src/routes/reset-password/[token]/+page.server.ts +0 -15
  97. package/templates/base/src/routes/reset-password/[token]/+page.svelte +0 -179
  98. package/templates/base/src/routes/verify-email/+page.svelte +0 -41
  99. package/templates/base/static/images/aphex-darkmode.png +0 -0
  100. package/templates/base/static/images/aphex-lightmode.png +0 -0
  101. package/templates/base/static/robots.txt +0 -3
  102. package/templates/base/svelte.config.js +0 -19
  103. package/templates/base/tsconfig.json +0 -20
  104. package/templates/base/vite.config.ts +0 -146
@@ -1,146 +0,0 @@
1
- import { createRequire } from 'node:module';
2
- import tailwindcss from '@tailwindcss/vite';
3
- import { sveltekit } from '@sveltejs/kit/vite';
4
- import { defineConfig } from 'vite';
5
-
6
- const require = createRequire(import.meta.url);
7
- const dayjsEsm = require.resolve('dayjs/esm/index.js');
8
- const dayjsEsmPluginDir = dayjsEsm.replace(/\/index\.js$/, '/plugin');
9
-
10
- export default defineConfig({
11
- plugins: [
12
- tailwindcss(),
13
- sveltekit(),
14
- {
15
- name: 'schema-reload',
16
- configureServer(server) {
17
- const { watcher, ws } = server;
18
-
19
- // Trigger a full CMS re-init when a schema or the CMS config changes.
20
- // Listening to add/change/unlink covers editors that do atomic saves
21
- // (rename-over-write) — chokidar reports those as unlink+add, so
22
- // `change`-only misses them and the old schema stays cached.
23
- function isReloadTarget(file: string): boolean {
24
- const normalized = file.replace(/\\/g, '/');
25
- return (
26
- (normalized.includes('/schemaTypes/') && normalized.endsWith('.ts')) ||
27
- normalized.endsWith('/aphex.config.ts')
28
- );
29
- }
30
-
31
- function invalidateSchemaGraph(file: string) {
32
- console.log(`🔄 CMS schema reload: ${file}`);
33
-
34
- // Changed file itself
35
- const changedMod = server.moduleGraph.getModulesByFile(file);
36
- changedMod?.forEach((mod) => server.moduleGraph.invalidateModule(mod));
37
-
38
- // aphex.config.ts + anything that imports it
39
- const configPath = server.config.root + '/aphex.config.ts';
40
- const configMods = server.moduleGraph.getModulesByFile(configPath);
41
- configMods?.forEach((mod) => {
42
- server.moduleGraph.invalidateModule(mod);
43
- mod.importers.forEach((importer) => server.moduleGraph.invalidateModule(importer));
44
- });
45
-
46
- // schemaTypes barrel
47
- const indexPath = server.config.root + '/src/lib/schemaTypes/index.ts';
48
- const indexMods = server.moduleGraph.getModulesByFile(indexPath);
49
- indexMods?.forEach((mod) => {
50
- server.moduleGraph.invalidateModule(mod);
51
- mod.importers.forEach((importer) => server.moduleGraph.invalidateModule(importer));
52
- });
53
-
54
- // Flag the server-side CMS hook to rebuild cmsInstances on next req
55
- (global as any).__aphexSchemasDirty = true;
56
-
57
- // Full reload so the browser picks up fresh schemas on the client too
58
- ws.send({ type: 'full-reload' });
59
- }
60
-
61
- for (const event of ['change', 'add', 'unlink'] as const) {
62
- watcher.on(event, (file) => {
63
- if (isReloadTarget(file)) invalidateSchemaGraph(file);
64
- });
65
- }
66
- }
67
- }
68
- ],
69
- resolve: {
70
- // dayjs 1.x ships a UMD main (`dayjs.min.js`) with no `exports` map or
71
- // `module` field. When imports originate inside an excluded package
72
- // (e.g. `@aphexcms/cms-core` via `optimizeDeps.exclude`), Vite serves the
73
- // raw UMD file — which has no ESM `default` export — and the browser
74
- // blows up with "does not provide an export named 'default'". Redirect
75
- // to dayjs's proper ESM build so those imports work regardless of which
76
- // package they come from.
77
- alias: [
78
- { find: /^dayjs$/, replacement: dayjsEsm },
79
- { find: /^dayjs\/plugin\/([^/]+?)(\.js)?$/, replacement: `${dayjsEsmPluginDir}/$1/index.js` }
80
- ]
81
- },
82
- server: {
83
- fs: {
84
- allow: ['../../']
85
- },
86
- watch: {
87
- ignored: ['!**/node_modules/@aphexcms/cms-core/**', '!**/node_modules/@aphexcms/ui/**']
88
- }
89
- },
90
- ssr: {
91
- // `@aphexcms/cms-core` and `@aphexcms/ui` re-export `.svelte` components
92
- // through their entry barrels — Vite must bundle them for SSR. If they
93
- // are externalized, Node's native ESM loader tries to resolve the raw
94
- // `.svelte` files directly and throws ERR_UNKNOWN_FILE_EXTENSION (the
95
- // `svelte` export condition is only honored by Vite, not by Node).
96
- noExternal: ['@aphexcms/ui', '@aphexcms/cms-core'],
97
- external: ['sharp', 'graphql', 'graphql-yoga']
98
- },
99
- optimizeDeps: {
100
- // Exclude Aphex Svelte packages from esbuild pre-bundling — esbuild does
101
- // not know how to handle `.svelte` files, and the dist barrels re-export
102
- // real Svelte component files. Vite-plugin-svelte handles them at
103
- // transform time instead.
104
- exclude: ['sharp', '@aphexcms/ui', '@aphexcms/cms-core'],
105
- include: [
106
- 'tailwind-variants',
107
- 'tailwind-merge',
108
- '@internationalized/date',
109
- 'bits-ui',
110
- 'dayjs',
111
- 'dayjs/plugin/customParseFormat',
112
- 'dayjs/plugin/utc',
113
- '@lucide/svelte',
114
- '@lucide/svelte/icons/panel-left',
115
- '@lucide/svelte/icons/minus',
116
- '@lucide/svelte/icons/circle',
117
- '@lucide/svelte/icons/chevron-right',
118
- '@lucide/svelte/icons/search',
119
- '@lucide/svelte/icons/bot',
120
- '@lucide/svelte/icons/calendar',
121
- '@lucide/svelte/icons/check',
122
- '@lucide/svelte/icons/chevron-down',
123
- '@lucide/svelte/icons/chevron-left',
124
- '@lucide/svelte/icons/chevron-up',
125
- '@lucide/svelte/icons/chevrons-up-down',
126
- '@lucide/svelte/icons/circle-check',
127
- '@lucide/svelte/icons/info',
128
- '@lucide/svelte/icons/loader-2',
129
- '@lucide/svelte/icons/octagon-x',
130
- '@lucide/svelte/icons/plus',
131
- '@lucide/svelte/icons/triangle-alert',
132
- '@lucide/svelte/icons/x',
133
- 'better-auth/client/plugins',
134
- 'better-auth/svelte',
135
- 'mode-watcher',
136
- 'svelte-sonner',
137
- // Transitive deps from @aphexcms/cms-core that Vite discovers at runtime
138
- '@aphexcms/cms-core > @dnd-kit/helpers',
139
- '@aphexcms/cms-core > @dnd-kit/svelte',
140
- '@aphexcms/cms-core > @dnd-kit/svelte/sortable',
141
- '@aphexcms/cms-core > dayjs',
142
- '@aphexcms/cms-core > dayjs/plugin/customParseFormat',
143
- '@aphexcms/cms-core > dayjs/plugin/utc'
144
- ]
145
- }
146
- });