@marktiderman/genesis-sites 0.0.0-stage → 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 (43) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +465 -2
  3. package/dist/assets/form-island.c0f6fac859.js +51 -0
  4. package/dist/assets/islands.77d11f5697.js +1 -0
  5. package/dist/assets/sites-forms.4e6aa42497.css +10 -0
  6. package/dist/assets/sites-forms.css +10 -0
  7. package/dist/assets/sites.css +2 -0
  8. package/dist/assets/sites.e1ffd2708b.css +2 -0
  9. package/dist/blocks.d.ts +13 -0
  10. package/dist/blocks.js +26 -0
  11. package/dist/blocks.js.map +1 -0
  12. package/dist/chunk-3VKTBE7S.js +69 -0
  13. package/dist/chunk-3VKTBE7S.js.map +1 -0
  14. package/dist/chunk-C375ZPU2.js +2241 -0
  15. package/dist/chunk-C375ZPU2.js.map +1 -0
  16. package/dist/chunk-IXMY4B56.js +877 -0
  17. package/dist/chunk-IXMY4B56.js.map +1 -0
  18. package/dist/chunk-VZUDRPFG.js +13 -0
  19. package/dist/chunk-VZUDRPFG.js.map +1 -0
  20. package/dist/chunk-ZGWGQGT2.js +595 -0
  21. package/dist/chunk-ZGWGQGT2.js.map +1 -0
  22. package/dist/import.d.ts +130 -0
  23. package/dist/import.js +330 -0
  24. package/dist/import.js.map +1 -0
  25. package/dist/index.d.ts +273 -0
  26. package/dist/index.js +254 -0
  27. package/dist/index.js.map +1 -0
  28. package/dist/registry-D_DCWRTc.d.ts +1030 -0
  29. package/dist/sections.d.ts +802 -0
  30. package/dist/sections.js +6 -0
  31. package/dist/sections.js.map +1 -0
  32. package/dist/store-DkSycDhq.d.ts +443 -0
  33. package/dist/supabase.d.ts +41 -0
  34. package/dist/supabase.js +283 -0
  35. package/dist/supabase.js.map +1 -0
  36. package/dist/web.d.ts +136 -0
  37. package/dist/web.js +479 -0
  38. package/dist/web.js.map +1 -0
  39. package/migrations/0001_genesis_sites.sql +821 -0
  40. package/migrations/0002_genesis_sites_posts.sql +404 -0
  41. package/migrations/tests/0001_genesis_sites.test.sql +349 -0
  42. package/migrations/tests/0002_genesis_sites_posts.test.sql +242 -0
  43. package/package.json +152 -3
package/package.json CHANGED
@@ -1,6 +1,155 @@
1
1
  {
2
2
  "name": "@marktiderman/genesis-sites",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.2.0",
4
+ "private": false,
5
+ "type": "module",
6
+ "sideEffects": [
7
+ "./dist/sections.js",
8
+ "*.css"
9
+ ],
10
+ "description": "Sites and landing pages for Genesis apps: a section registry with zod 4 schemas, 20 server-rendered sections on Genesis UI (timetable, team, blog, map, timeline and downloads among them), a blog with drafts, published posts, RSS and Article JSON-LD, a guarded asset import, a per-request renderer with no hydration, SEO (meta, sitemap, robots, JSON-LD, redirects), publish-time accessibility checks, one-click landing pages from a brand, and a Supabase schema with draft, publish and rollback. Part of the Genesis framework.",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/marktiderman/genesis.git",
14
+ "directory": "packages/sites"
15
+ },
16
+ "license": "MIT",
17
+ "publishConfig": {
18
+ "access": "public",
19
+ "provenance": false
20
+ },
21
+ "main": "./dist/index.js",
22
+ "module": "./dist/index.js",
23
+ "types": "./dist/index.d.ts",
24
+ "exports": {
25
+ "./package.json": "./package.json",
26
+ ".": {
27
+ "types": "./dist/index.d.ts",
28
+ "import": "./dist/index.js"
29
+ },
30
+ "./core": {
31
+ "types": "./dist/index.d.ts",
32
+ "import": "./dist/index.js"
33
+ },
34
+ "./sections": {
35
+ "types": "./dist/sections.d.ts",
36
+ "import": "./dist/sections.js"
37
+ },
38
+ "./web": {
39
+ "types": "./dist/web.d.ts",
40
+ "import": "./dist/web.js"
41
+ },
42
+ "./supabase": {
43
+ "types": "./dist/supabase.d.ts",
44
+ "import": "./dist/supabase.js"
45
+ },
46
+ "./blocks": {
47
+ "types": "./dist/blocks.d.ts",
48
+ "import": "./dist/blocks.js"
49
+ },
50
+ "./import": {
51
+ "types": "./dist/import.d.ts",
52
+ "import": "./dist/import.js"
53
+ },
54
+ "./sites.css": "./dist/assets/sites.css",
55
+ "./sites-forms.css": "./dist/assets/sites-forms.css"
56
+ },
57
+ "files": [
58
+ "dist",
59
+ "migrations",
60
+ "README.md"
61
+ ],
62
+ "dependencies": {
63
+ "@marktiderman/genesis-features": "^0.3.0"
64
+ },
65
+ "peerDependencies": {
66
+ "@marktiderman/genesis-design-system": "^1.5.0",
67
+ "@marktiderman/genesis-forms": ">=0.6.0 <1.0.0",
68
+ "@marktiderman/genesis-forms-web": ">=0.5.0 <1.0.0",
69
+ "@marktiderman/genesis-ui": "^2.13.0",
70
+ "@supabase/supabase-js": "^2.118.0",
71
+ "lucide-react": "^1.0.0",
72
+ "react": "^19.0.0",
73
+ "react-dom": "^19.0.0",
74
+ "zod": "^4.0.0"
75
+ },
76
+ "peerDependenciesMeta": {
77
+ "@supabase/supabase-js": {
78
+ "optional": true
79
+ }
80
+ },
81
+ "devDependencies": {
82
+ "@marktiderman/genesis-design-system": "^1.5.0",
83
+ "@marktiderman/genesis-forms": "^0.9.0",
84
+ "@marktiderman/genesis-forms-react": "^0.3.0",
85
+ "@marktiderman/genesis-forms-web": "^0.6.2",
86
+ "@marktiderman/genesis-ui": "^2.13.0",
87
+ "@supabase/supabase-js": "^2.118.0",
88
+ "@tailwindcss/cli": "4.3.3",
89
+ "@types/node": "^22",
90
+ "@types/react": "^19.2.14",
91
+ "@types/react-dom": "^19.2.3",
92
+ "axe-core": "^4.14.0",
93
+ "esbuild": "^0.28.1",
94
+ "happy-dom": "^20.9.0",
95
+ "lucide-react": "^1.0.0",
96
+ "radix-ui": "^1.6.7",
97
+ "react": "^19.0.0",
98
+ "react-dom": "^19.0.0",
99
+ "tailwindcss": "4.3.3",
100
+ "tsup": "^8.3.0",
101
+ "typescript": "~6.0.3",
102
+ "vitest": "^4.1.12",
103
+ "zod": "^4.4.3"
104
+ },
105
+ "genesis": {
106
+ "blocks": {
107
+ "sites": {
108
+ "feature": {
109
+ "name": "Sites and landing pages",
110
+ "summary": "Multi-page sites and one-click landing pages from the brand: drafts, preview, publish and rollback, served as cached HTML with no hydration.",
111
+ "keywords": [
112
+ "site builder",
113
+ "landing page",
114
+ "website",
115
+ "seo",
116
+ "sitemap"
117
+ ],
118
+ "audience": [
119
+ "admin",
120
+ "person"
121
+ ]
122
+ },
123
+ "platforms": [
124
+ "web",
125
+ "server"
126
+ ],
127
+ "migrations": [
128
+ {
129
+ "file": "migrations/0001_genesis_sites.sql",
130
+ "test": "migrations/tests/0001_genesis_sites.test.sql"
131
+ },
132
+ {
133
+ "file": "migrations/0002_genesis_sites_posts.sql",
134
+ "test": "migrations/tests/0002_genesis_sites_posts.test.sql"
135
+ }
136
+ ],
137
+ "install": [
138
+ "zod@^4.0.0"
139
+ ],
140
+ "steps": [
141
+ "Expose the genesis_sites schema to the API: add it to `schemas` under [api] in supabase/config.toml, and to Exposed schemas in the dashboard.",
142
+ "Decide who edits a site: replace genesis_sites.can_edit(uuid) (and, if previews should reach more people, genesis_sites.can_view(uuid)) in a migration of your own, after this one (genesis-sites README, Who may edit).",
143
+ "Mount handleSiteRequest from @marktiderman/genesis-sites/web on your server, before your app's routes: it answers the site's paths and returns null for everything else."
144
+ ]
145
+ }
146
+ }
147
+ },
148
+ "scripts": {
149
+ "assets": "node scripts/build-assets.mjs",
150
+ "build": "node scripts/build-assets.mjs && tsup && node ../../scripts/check-exports-resolve.mjs",
151
+ "clean": "rm -rf dist src/web/assets.generated.ts",
152
+ "typecheck": "node scripts/build-assets.mjs --if-missing && tsc --noEmit",
153
+ "test": "node scripts/build-assets.mjs --if-missing && vitest run"
154
+ }
6
155
  }