@pylonsync/create-pylon 0.3.332 → 0.3.334

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 (61) hide show
  1. package/package.json +1 -1
  2. package/templates/ARCHETYPES.md +72 -74
  3. package/templates/_root/AGENTS.md +16 -16
  4. package/templates/_root/README.md +3 -3
  5. package/templates/agency/AGENTS.md +30 -30
  6. package/templates/agency/CLAUDE.md +3 -3
  7. package/templates/agency/README.md +13 -14
  8. package/templates/agency/lib/site.config.ts +9 -10
  9. package/templates/ai-chat/AGENTS.md +30 -30
  10. package/templates/ai-chat/CLAUDE.md +3 -3
  11. package/templates/ai-chat/README.md +10 -11
  12. package/templates/ai-chat/lib/site.config.ts +3 -4
  13. package/templates/ai-studio/AGENTS.md +30 -30
  14. package/templates/ai-studio/CLAUDE.md +3 -3
  15. package/templates/ai-studio/README.md +11 -12
  16. package/templates/ai-studio/lib/site.config.ts +5 -6
  17. package/templates/barebones/AGENTS.md +30 -30
  18. package/templates/barebones/CLAUDE.md +3 -3
  19. package/templates/barebones/README.md +5 -6
  20. package/templates/chat/AGENTS.md +30 -30
  21. package/templates/chat/CLAUDE.md +3 -3
  22. package/templates/chat/README.md +4 -6
  23. package/templates/consumer/AGENTS.md +30 -30
  24. package/templates/consumer/CLAUDE.md +3 -3
  25. package/templates/consumer/README.md +5 -6
  26. package/templates/creator/AGENTS.md +30 -30
  27. package/templates/creator/CLAUDE.md +3 -3
  28. package/templates/creator/README.md +11 -13
  29. package/templates/creator/lib/site.config.ts +6 -8
  30. package/templates/default/AGENTS.md +30 -30
  31. package/templates/default/CLAUDE.md +3 -3
  32. package/templates/default/README.md +8 -10
  33. package/templates/default/app/auth-shell.tsx +2 -2
  34. package/templates/default/lib/site.config.ts +26 -29
  35. package/templates/directory/AGENTS.md +30 -30
  36. package/templates/directory/CLAUDE.md +3 -3
  37. package/templates/directory/README.md +10 -14
  38. package/templates/directory/lib/site.config.ts +7 -9
  39. package/templates/local-service/AGENTS.md +30 -30
  40. package/templates/local-service/CLAUDE.md +3 -3
  41. package/templates/local-service/README.md +12 -15
  42. package/templates/local-service/lib/site.config.ts +8 -9
  43. package/templates/marketplace/AGENTS.md +30 -30
  44. package/templates/marketplace/CLAUDE.md +3 -3
  45. package/templates/marketplace/README.md +7 -8
  46. package/templates/marketplace/app/page.tsx +2 -2
  47. package/templates/restaurant/AGENTS.md +30 -30
  48. package/templates/restaurant/CLAUDE.md +3 -3
  49. package/templates/restaurant/README.md +10 -13
  50. package/templates/restaurant/lib/site.config.ts +7 -8
  51. package/templates/shop/AGENTS.md +30 -30
  52. package/templates/shop/CLAUDE.md +3 -3
  53. package/templates/shop/README.md +11 -13
  54. package/templates/shop/lib/site.config.ts +4 -5
  55. package/templates/todo/AGENTS.md +30 -30
  56. package/templates/todo/CLAUDE.md +3 -3
  57. package/templates/todo/README.md +4 -6
  58. package/templates/waitlist/AGENTS.md +30 -30
  59. package/templates/waitlist/CLAUDE.md +3 -3
  60. package/templates/waitlist/README.md +12 -16
  61. package/templates/waitlist/lib/site.config.ts +11 -12
@@ -1,12 +1,10 @@
1
1
  # __APP_NAME__
2
2
 
3
- A pre-launch / coming-soon landing page built with [Pylon](https://pylonsync.com)
4
- a server-rendered marketing page with a **live signup counter** and a private
5
- owner dashboard, all served from one binary on one port. No Next.js, no separate
6
- API server.
3
+ A pre-launch landing page built with [Pylon](https://pylonsync.com), with a
4
+ server-rendered marketing page, live signup counter, and private owner
5
+ dashboard.
7
6
 
8
- The whole point is that it's a *real live app*, not a static page: the signup
9
- counter ticks up in realtime for everyone with the page open.
7
+ The signup counter updates on every open page as people join the waitlist.
10
8
 
11
9
  ## Develop
12
10
 
@@ -14,23 +12,22 @@ counter ticks up in realtime for everyone with the page open.
14
12
  __RUN_DEV__
15
13
  ```
16
14
 
17
- Open http://localhost:4321. Then **open a second tab**, submit an email in one,
18
- and watch the counter increment in the other — with no refresh. That's the live
19
- backend doing its thing.
15
+ Open http://localhost:4321, submit an email in one tab, and watch the counter
16
+ increment in another without refreshing.
20
17
 
21
18
  ## How the realtime works
22
19
 
23
- - `functions/joinWaitlist.ts` a public **mutation** that validates, lowercases,
20
+ - `functions/joinWaitlist.ts`: a public **mutation** that validates, lowercases,
24
21
  and dedupes the email, then inserts one `Signup` row. The insert fires a
25
22
  change event.
26
- - `functions/waitlistCount.ts` a public **query** the landing page subscribes
23
+ - `functions/waitlistCount.ts`: a public **query** the landing page subscribes
27
24
  to with `db.useReactiveQuery`. The server records that it read the `Signup`
28
25
  table, so every new signup re-runs it and pushes the fresh count to every open
29
26
  tab. No polling.
30
27
  - The counter island (`app/waitlist-hero.tsx`) is wrapped in `<EnsureGuest>`,
31
28
  which mints an anonymous session so the live WebSocket can connect.
32
29
 
33
- ## Privacy — read this
30
+ ## Privacy
34
31
 
35
32
  The `Signup` entity holds visitor emails (PII), so its policy in `app.ts`
36
33
  **denies every client read and write**. Emails can never be pulled from the
@@ -50,10 +47,9 @@ account can see signups; anyone else gets a locked screen.
50
47
 
51
48
  ## Rebrand it
52
49
 
53
- Everything business-specific lives in **`lib/site.config.ts`** brand, colors,
54
- hero copy, value props, social proof, FAQ. Edit that one file (or have a
55
- generator produce it) and the whole page re-themes; you never touch the JSX or
56
- CSS.
50
+ Brand, colors, hero copy, value props, social proof, and FAQ content live in
51
+ **`lib/site.config.ts`**. Edit or generate that file to update the page without
52
+ changing JSX or CSS.
57
53
 
58
54
  ## Layout
59
55
 
@@ -1,11 +1,10 @@
1
- // THE single source of truth for everything business-specific on this waitlist.
2
- // Rebrand the whole page by editing this ONE file — the landing page and layout
3
- // read from here and stay generic.
1
+ // Business-specific copy and settings live here. The landing page and layout
2
+ // both read this file.
4
3
  //
5
4
  // Colors live here too (applied as CSS variables on <html> in app/layout.tsx),
6
- // so you don't touch globals.css to re-theme.
5
+ // so re-theming does not require changes to globals.css.
7
6
  //
8
- // Fictional demo copy replace the values, keep the shape.
7
+ // Fictional demo copy. Replace the values and keep the shape.
9
8
 
10
9
  /* ----------------------------- types ----------------------------- */
11
10
 
@@ -65,7 +64,7 @@ export const siteConfig: WaitlistConfig = {
65
64
  domain: "lumo.app",
66
65
  email: "hello@lumo.example",
67
66
  footerBlurb:
68
- "Lumo is the calm, focused home for everything you're working on. Launching soon — join the list to get an invite first.",
67
+ "Lumo keeps projects, notes, and tasks in one focused workspace. Join the list for an early invite.",
69
68
  copyrightName: "Lumo, Inc.",
70
69
  socials: [
71
70
  {
@@ -91,9 +90,9 @@ export const siteConfig: WaitlistConfig = {
91
90
 
92
91
  hero: {
93
92
  badge: "Launching this fall",
94
- headline: "Your work, finally in one calm place.",
93
+ headline: "Projects, notes, and tasks in one calm place.",
95
94
  subcopy:
96
- "Lumo is the focused home for your projects, notes, and tasks no clutter, no busywork. We're opening the doors soon. Join the list and we'll send you an invite first.",
95
+ "Lumo keeps your projects, notes, and tasks together in a focused workspace. Join the list for an early invite.",
97
96
  emailPlaceholder: "you@work.com",
98
97
  ctaLabel: "Join the waitlist",
99
98
  successMessage: "You're on the list — we'll email your invite soon.",
@@ -107,7 +106,7 @@ export const siteConfig: WaitlistConfig = {
107
106
 
108
107
  valueProps: {
109
108
  eyebrow: "Why Lumo",
110
- headline: "Built for focus, not for busywork.",
109
+ headline: "Keep your attention on the work.",
111
110
  items: [
112
111
  {
113
112
  icon: "◇",
@@ -122,7 +121,7 @@ export const siteConfig: WaitlistConfig = {
122
121
  {
123
122
  icon: "✦",
124
123
  title: "Calm by default",
125
- body: "No noisy notifications, no endless feeds. Lumo shows you what matters now and gets out of the way.",
124
+ body: "Lumo keeps notifications and feeds quiet, then shows the work that needs attention now.",
126
125
  },
127
126
  ],
128
127
  },
@@ -132,13 +131,13 @@ export const siteConfig: WaitlistConfig = {
132
131
  quotes: [
133
132
  {
134
133
  quote:
135
- "I've tried every productivity app out there. Lumo is the first one that actually made me feel calmer, not busier.",
134
+ "I've tried every productivity app out there. Lumo is the first one that leaves me calmer after planning my week.",
136
135
  name: "Maya Chen",
137
136
  role: "Product designer",
138
137
  },
139
138
  {
140
139
  quote:
141
- "Finally, one place for all my half-finished projects. I check it every morning and actually know what to do next.",
140
+ "All my half-finished projects are in one place. I check it every morning and know what to do next.",
142
141
  name: "Daniel Reyes",
143
142
  role: "Indie founder",
144
143
  },