Skip to content
This repository was archived by the owner on Mar 26, 2026. It is now read-only.

Commit 4f1d300

Browse files
authored
Merge pull request #34 from pyreon/bump-deps-latest
Bump deps to latest (core 0.7.11, fundamentals 0.10.0)
2 parents ab2bd2e + 68f5f2c commit 4f1d300

13 files changed

Lines changed: 117 additions & 109 deletions

File tree

.claude/rules/anti-patterns.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@
1212
- **Never** call `signal(value)` to set — use `signal.set(value)` or `signal.update(fn)`
1313
- **Never** forget to call signal as function to read: use `count()` not `count`
1414

15+
## JSX attribute casing
16+
- **Always** use camelCase for JSX attributes: `onClick`, `onMouseEnter`, `onTouchStart`, `onLoad`
17+
- **Never** use lowercase DOM event names: `onclick`, `onmouseenter`, `ontouchstart`, `onload`
18+
- **Always** use `srcSet` not `srcset`, `fetchPriority` not `fetchpriority`
19+
- **Always** use `className``class`, `htmlFor``for` (Pyreon uses HTML names, not React names)
20+
1521
## JSX reactive expressions
1622
- **Never** use bare signal reads in JSX text — wrap in arrow: `{() => count()}` not `{count()}`
1723
- **Never** return `undefined` from reactive JSX attributes — return empty string `''` instead

bun.lock

Lines changed: 60 additions & 60 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"@changesets/cli": "^2.30.0",
1919
"@clack/core": "^1.1.0",
2020
"@clack/prompts": "^1.1.0",
21-
"@pyreon/typescript": "^0.7.5",
21+
"@pyreon/typescript": "^0.7.11",
2222
"@types/bun": "^1.3.11",
2323
"@types/node": "^25.5.0",
2424
"@vitus-labs/tools-lint": "^1.15.4",

packages/cli/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@
2727
"typecheck": "tsc --noEmit"
2828
},
2929
"dependencies": {
30-
"@pyreon/cli": "^0.7.5",
30+
"@pyreon/cli": "^0.7.11",
3131
"@pyreon/create-zero": "workspace:^",
32-
"@pyreon/server": "^0.7.5",
32+
"@pyreon/server": "^0.7.11",
3333
"@pyreon/zero": "workspace:^",
3434
"cac": "^7.0.0",
3535
"vite": "^8.0.0"

packages/create-zero/src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -306,12 +306,12 @@ async function scaffold(config: ProjectConfig) {
306306
function pyreonVersion(pkg: string): string {
307307
// Core packages
308308
const core = ['core', 'reactivity', 'runtime-dom', 'runtime-server', 'server', 'head', 'router', 'vite-plugin', 'compiler', 'cli', 'mcp']
309-
if (core.some((c) => pkg === `@pyreon/${c}`)) return '^0.7.5'
309+
if (core.some((c) => pkg === `@pyreon/${c}`)) return '^0.7.11'
310310
// Zero framework packages
311311
if (pkg === '@pyreon/zero' || pkg === '@pyreon/meta' || pkg === '@pyreon/zero-cli' || pkg === '@pyreon/create-zero') return '^0.3.0'
312312
// Fundamentals
313313
const fundamentals = ['store', 'form', 'validation', 'query', 'table', 'virtual', 'i18n', 'feature', 'machine', 'permissions', 'flow', 'code']
314-
if (fundamentals.some((f) => pkg === `@pyreon/${f}`)) return '^0.9.0'
314+
if (fundamentals.some((f) => pkg === `@pyreon/${f}`)) return '^0.10.0'
315315
// UI system
316316
return '^0.3.0'
317317
}

packages/create-zero/templates/default/CLAUDE.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,12 @@ This project uses Pyreon Zero, a signal-based full-stack meta-framework. Do NOT
1515

1616
- Use `class=` not `className`
1717
- Use `for=` not `htmlFor`
18+
- Use camelCase events: `onClick`, `onMouseEnter`, `onLoad` (not `onclick`, `onmouseenter`)
19+
- Use `srcSet` not `srcset`, `fetchPriority` not `fetchpriority`
1820
- Reactive text: `{() => count()}`
1921
- Conditional: `{() => show() ? <A /> : null}`
2022
- Lists: `{() => items().map(item => <Item />)}`
21-
- Events: `onClick={() => ...}` (standard DOM events)
23+
- Events: `onClick={() => ...}`
2224
- JSX import source is `@pyreon/core` (auto-configured, no manual import needed)
2325

2426
## File-Based Routing

packages/create-zero/templates/default/src/routes/(admin)/dashboard.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ export default function Dashboard() {
110110
<button
111111
type="button"
112112
class="btn btn-secondary"
113-
onclick={() => {
113+
onClick={() => {
114114
localStorage.removeItem('zero-demo-auth')
115115
window.location.href = '/about'
116116
}}

packages/create-zero/templates/default/src/routes/counter.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,21 +31,21 @@ export default function Counter() {
3131
<button
3232
type="button"
3333
class="btn btn-secondary"
34-
onclick={() => count.update((n) => n - 1)}
34+
onClick={() => count.update((n) => n - 1)}
3535
>
3636
-
3737
</button>
3838
<button
3939
type="button"
4040
class="btn btn-primary"
41-
onclick={() => count.set(0)}
41+
onClick={() => count.set(0)}
4242
>
4343
Reset
4444
</button>
4545
<button
4646
type="button"
4747
class="btn btn-secondary"
48-
onclick={() => count.update((n) => n + 1)}
48+
onClick={() => count.update((n) => n + 1)}
4949
>
5050
+
5151
</button>

packages/meta/package.json

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -34,22 +34,22 @@
3434
"typecheck": "tsc --noEmit"
3535
},
3636
"dependencies": {
37-
"@pyreon/charts": "^0.9.0",
38-
"@pyreon/code": "^0.9.0",
39-
"@pyreon/feature": "^0.9.0",
40-
"@pyreon/flow": "^0.9.0",
41-
"@pyreon/form": "^0.9.0",
42-
"@pyreon/hotkeys": "^0.9.0",
43-
"@pyreon/i18n": "^0.9.0",
44-
"@pyreon/machine": "^0.9.0",
45-
"@pyreon/permissions": "^0.9.0",
46-
"@pyreon/query": "^0.9.0",
47-
"@pyreon/state-tree": "^0.9.0",
48-
"@pyreon/storage": "^0.9.0",
49-
"@pyreon/store": "^0.9.0",
50-
"@pyreon/table": "^0.9.0",
51-
"@pyreon/validation": "^0.9.0",
52-
"@pyreon/virtual": "^0.9.0",
37+
"@pyreon/charts": "^0.10.0",
38+
"@pyreon/code": "^0.10.0",
39+
"@pyreon/feature": "^0.10.0",
40+
"@pyreon/flow": "^0.10.0",
41+
"@pyreon/form": "^0.10.0",
42+
"@pyreon/hotkeys": "^0.10.0",
43+
"@pyreon/i18n": "^0.10.0",
44+
"@pyreon/machine": "^0.10.0",
45+
"@pyreon/permissions": "^0.10.0",
46+
"@pyreon/query": "^0.10.0",
47+
"@pyreon/state-tree": "^0.10.0",
48+
"@pyreon/storage": "^0.10.0",
49+
"@pyreon/store": "^0.10.0",
50+
"@pyreon/table": "^0.10.0",
51+
"@pyreon/validation": "^0.10.0",
52+
"@pyreon/virtual": "^0.10.0",
5353
"@pyreon/attrs": "^0.2.0",
5454
"@pyreon/coolgrid": "^0.2.0",
5555
"@pyreon/elements": "^0.2.0",
@@ -62,6 +62,6 @@
6262
"@pyreon/unistyle": "^0.2.0"
6363
},
6464
"peerDependencies": {
65-
"@pyreon/reactivity": "^0.7.5"
65+
"@pyreon/reactivity": "^0.7.11"
6666
}
6767
}

packages/zero/package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -115,17 +115,17 @@
115115
"typecheck": "tsc --noEmit"
116116
},
117117
"dependencies": {
118-
"@pyreon/core": "^0.7.5",
119-
"@pyreon/head": "^0.7.5",
118+
"@pyreon/core": "^0.7.11",
119+
"@pyreon/head": "^0.7.11",
120120
"@pyreon/meta": "workspace:^",
121-
"@pyreon/router": "^0.7.5",
122-
"@pyreon/runtime-dom": "^0.7.5",
123-
"@pyreon/runtime-server": "^0.7.5",
124-
"@pyreon/server": "^0.7.5",
125-
"@pyreon/vite-plugin": "^0.7.5",
121+
"@pyreon/router": "^0.7.11",
122+
"@pyreon/runtime-dom": "^0.7.11",
123+
"@pyreon/runtime-server": "^0.7.11",
124+
"@pyreon/server": "^0.7.11",
125+
"@pyreon/vite-plugin": "^0.7.11",
126126
"vite": "^8.0.0"
127127
},
128128
"peerDependencies": {
129-
"@pyreon/reactivity": "^0.7.5"
129+
"@pyreon/reactivity": "^0.7.11"
130130
}
131131
}

0 commit comments

Comments
 (0)