Skip to content

Commit 5f5d828

Browse files
committed
Replace Zod with ArkType for schema validation
- Converted queries.ts to use ArkType type() syntax - Converted mutators.ts to use ArkType type() and type.enumerated() - Removed zod package, added arktype package - ArkType provides better TypeScript inference and smaller bundle size
1 parent 3b941ef commit 5f5d828

File tree

5 files changed

+145
-118
lines changed

5 files changed

+145
-118
lines changed

.beads/issues.jsonl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
{"id":"battle_mode-hty.4","title":"Implement invite code validation and join flow","description":"Route and logic to validate invite codes and allow users to join mystery battles","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-18T10:15:36.305961-07:00","updated_at":"2025-12-18T10:15:36.305961-07:00","dependencies":[{"issue_id":"battle_mode-hty.4","depends_on_id":"battle_mode-hty","type":"parent-child","created_at":"2025-12-18T10:15:36.306425-07:00","created_by":"daemon"},{"issue_id":"battle_mode-hty.4","depends_on_id":"battle_mode-hty.2","type":"blocks","created_at":"2025-12-18T10:15:43.580959-07:00","created_by":"daemon"}]}
2222
{"id":"battle_mode-hty.5","title":"Hide target details until battle starts for mystery challenges","description":"Modify lobby and battle UI to hide target information for mystery challenges until countdown completes","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-18T10:15:37.626465-07:00","updated_at":"2025-12-18T10:15:37.626465-07:00","dependencies":[{"issue_id":"battle_mode-hty.5","depends_on_id":"battle_mode-hty","type":"parent-child","created_at":"2025-12-18T10:15:37.627085-07:00","created_by":"daemon"},{"issue_id":"battle_mode-hty.5","depends_on_id":"battle_mode-hty.1","type":"blocks","created_at":"2025-12-18T10:15:43.691927-07:00","created_by":"daemon"}]}
2323
{"id":"battle_mode-hty.6","title":"Add mystery challenge toggle to battle creation flow","description":"Allow battle creators to mark a battle as a mystery challenge during creation","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-18T10:15:38.452636-07:00","updated_at":"2025-12-18T10:15:38.452636-07:00","dependencies":[{"issue_id":"battle_mode-hty.6","depends_on_id":"battle_mode-hty","type":"parent-child","created_at":"2025-12-18T10:15:38.4532-07:00","created_by":"daemon"},{"issue_id":"battle_mode-hty.6","depends_on_id":"battle_mode-hty.1","type":"blocks","created_at":"2025-12-18T10:15:43.807738-07:00","created_by":"daemon"}]}
24-
{"id":"battle_mode-hzq","title":"Replace Zod with ArkType","description":"","status":"open","priority":2,"issue_type":"task","created_at":"2025-12-18T14:05:49.334642-07:00","updated_at":"2025-12-18T14:05:49.334642-07:00"}
24+
{"id":"battle_mode-hzq","title":"Replace Zod with ArkType","description":"","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-18T14:05:49.334642-07:00","updated_at":"2025-12-18T15:19:53.082809-07:00","closed_at":"2025-12-18T15:19:53.082809-07:00"}
2525
{"id":"battle_mode-iwh","title":"Code based targets","description":"","status":"open","priority":2,"issue_type":"feature","created_at":"2025-12-11T17:07:14.597012-07:00","updated_at":"2025-12-11T17:07:14.597012-07:00"}
2626
{"id":"battle_mode-jbi","title":"Remove AI avatars, use GitHub avatars only","description":"Remove all AI avatar generation code and switch to using GitHub avatars exclusively. Clean up related API endpoints and UI components.","status":"closed","priority":1,"issue_type":"feature","created_at":"2025-12-11T17:07:14.843567-07:00","updated_at":"2025-12-18T13:19:43.893916-07:00","closed_at":"2025-12-18T13:19:43.893916-07:00"}
2727
{"id":"battle_mode-jji","title":"Remove default padding and margin on battle view","description":"Remove default padding and margin in src/routes/(blank)/battle/[id]/code/","status":"closed","priority":2,"issue_type":"bug","created_at":"2025-12-11T17:26:55.496068-07:00","updated_at":"2025-12-12T11:01:56.083143-07:00","closed_at":"2025-12-12T11:01:56.083143-07:00"}

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
"@tanstack/match-sorter-utils": "^8.19.4",
5757
"@tanstack/svelte-table": "npm:tanstack-table-8-svelte-5@^0.1",
5858
"@tanstack/table-core": "^8.21.3",
59+
"arktype": "^2.1.29",
5960
"better-auth": "^1.4.7",
6061
"dotenv": "^17.2.3",
6162
"drizzle-orm": "^0.45.1",
@@ -66,7 +67,6 @@
6667
"postgres": "^3.4.7",
6768
"svelte-highlight": "^7.9.0",
6869
"svelte-splitpanes": "^8.0.12",
69-
"zero-svelte": "^1.2.0",
70-
"zod": "^4.2.1"
70+
"zero-svelte": "^1.2.0"
7171
}
7272
}

pnpm-lock.yaml

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

0 commit comments

Comments
 (0)