@zykeco/sync-server 0.3.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 (58) hide show
  1. package/dist/db/client.d.ts +5 -0
  2. package/dist/db/client.js +8 -0
  3. package/dist/db/client.js.map +1 -0
  4. package/dist/db/migrate.d.ts +2 -0
  5. package/dist/db/migrate.js +9 -0
  6. package/dist/db/migrate.js.map +1 -0
  7. package/dist/db/schema.d.ts +433 -0
  8. package/dist/db/schema.js +38 -0
  9. package/dist/db/schema.js.map +1 -0
  10. package/dist/env.d.ts +8 -0
  11. package/dist/env.js +16 -0
  12. package/dist/env.js.map +1 -0
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.js +34 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/migrate-cli.d.ts +2 -0
  17. package/dist/migrate-cli.js +9 -0
  18. package/dist/migrate-cli.js.map +1 -0
  19. package/dist/routes/auth.d.ts +6 -0
  20. package/dist/routes/auth.js +20 -0
  21. package/dist/routes/auth.js.map +1 -0
  22. package/dist/routes/daily-metrics.d.ts +3 -0
  23. package/dist/routes/daily-metrics.js +24 -0
  24. package/dist/routes/daily-metrics.js.map +1 -0
  25. package/dist/routes/health.d.ts +3 -0
  26. package/dist/routes/health.js +16 -0
  27. package/dist/routes/health.js.map +1 -0
  28. package/dist/routes/sleep-sessions.d.ts +3 -0
  29. package/dist/routes/sleep-sessions.js +24 -0
  30. package/dist/routes/sleep-sessions.js.map +1 -0
  31. package/dist/routes/validate.d.ts +3 -0
  32. package/dist/routes/validate.js +17 -0
  33. package/dist/routes/validate.js.map +1 -0
  34. package/dist/routes/weekly-metrics.d.ts +3 -0
  35. package/dist/routes/weekly-metrics.js +24 -0
  36. package/dist/routes/weekly-metrics.js.map +1 -0
  37. package/dist/routes/wipe.d.ts +7 -0
  38. package/dist/routes/wipe.js +23 -0
  39. package/dist/routes/wipe.js.map +1 -0
  40. package/dist/startup-cli.d.ts +2 -0
  41. package/dist/startup-cli.js +57 -0
  42. package/dist/startup-cli.js.map +1 -0
  43. package/dist/stores/daily-metrics.d.ts +3 -0
  44. package/dist/stores/daily-metrics.js +45 -0
  45. package/dist/stores/daily-metrics.js.map +1 -0
  46. package/dist/stores/sleep-sessions.d.ts +3 -0
  47. package/dist/stores/sleep-sessions.js +42 -0
  48. package/dist/stores/sleep-sessions.js.map +1 -0
  49. package/dist/stores/weekly-metrics.d.ts +3 -0
  50. package/dist/stores/weekly-metrics.js +44 -0
  51. package/dist/stores/weekly-metrics.js.map +1 -0
  52. package/dist/upgrade-cli.d.ts +2 -0
  53. package/dist/upgrade-cli.js +23 -0
  54. package/dist/upgrade-cli.js.map +1 -0
  55. package/drizzle/0000_parallel_juggernaut.sql +37 -0
  56. package/drizzle/meta/0000_snapshot.json +238 -0
  57. package/drizzle/meta/_journal.json +13 -0
  58. package/package.json +67 -0
@@ -0,0 +1,238 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "7332e603-568e-4e8d-8ed3-8dbf585e13f3",
5
+ "prevId": "00000000-0000-0000-0000-000000000000",
6
+ "tables": {
7
+ "blobs": {
8
+ "name": "blobs",
9
+ "columns": {
10
+ "id": {
11
+ "name": "id",
12
+ "type": "text",
13
+ "primaryKey": true,
14
+ "notNull": true,
15
+ "autoincrement": false
16
+ },
17
+ "content_type": {
18
+ "name": "content_type",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true,
22
+ "autoincrement": false
23
+ },
24
+ "size": {
25
+ "name": "size",
26
+ "type": "integer",
27
+ "primaryKey": false,
28
+ "notNull": true,
29
+ "autoincrement": false
30
+ },
31
+ "bytes": {
32
+ "name": "bytes",
33
+ "type": "blob",
34
+ "primaryKey": false,
35
+ "notNull": true,
36
+ "autoincrement": false
37
+ },
38
+ "created_at": {
39
+ "name": "created_at",
40
+ "type": "integer",
41
+ "primaryKey": false,
42
+ "notNull": true,
43
+ "autoincrement": false
44
+ },
45
+ "updated_at": {
46
+ "name": "updated_at",
47
+ "type": "integer",
48
+ "primaryKey": false,
49
+ "notNull": true,
50
+ "autoincrement": false
51
+ }
52
+ },
53
+ "indexes": {},
54
+ "foreignKeys": {},
55
+ "compositePrimaryKeys": {},
56
+ "uniqueConstraints": {},
57
+ "checkConstraints": {}
58
+ },
59
+ "daily_metrics": {
60
+ "name": "daily_metrics",
61
+ "columns": {
62
+ "id": {
63
+ "name": "id",
64
+ "type": "integer",
65
+ "primaryKey": true,
66
+ "notNull": true,
67
+ "autoincrement": false
68
+ },
69
+ "iso_date": {
70
+ "name": "iso_date",
71
+ "type": "text",
72
+ "primaryKey": false,
73
+ "notNull": true,
74
+ "autoincrement": false
75
+ },
76
+ "metric_key": {
77
+ "name": "metric_key",
78
+ "type": "text",
79
+ "primaryKey": false,
80
+ "notNull": true,
81
+ "autoincrement": false
82
+ },
83
+ "value": {
84
+ "name": "value",
85
+ "type": "real",
86
+ "primaryKey": false,
87
+ "notNull": true,
88
+ "autoincrement": false
89
+ },
90
+ "created_at": {
91
+ "name": "created_at",
92
+ "type": "integer",
93
+ "primaryKey": false,
94
+ "notNull": true,
95
+ "autoincrement": false
96
+ },
97
+ "updated_at": {
98
+ "name": "updated_at",
99
+ "type": "integer",
100
+ "primaryKey": false,
101
+ "notNull": true,
102
+ "autoincrement": false
103
+ }
104
+ },
105
+ "indexes": {
106
+ "dm_natural_key_idx": {
107
+ "name": "dm_natural_key_idx",
108
+ "columns": [
109
+ "iso_date",
110
+ "metric_key"
111
+ ],
112
+ "isUnique": true
113
+ }
114
+ },
115
+ "foreignKeys": {},
116
+ "compositePrimaryKeys": {},
117
+ "uniqueConstraints": {},
118
+ "checkConstraints": {}
119
+ },
120
+ "sleep_sessions": {
121
+ "name": "sleep_sessions",
122
+ "columns": {
123
+ "id": {
124
+ "name": "id",
125
+ "type": "integer",
126
+ "primaryKey": true,
127
+ "notNull": true,
128
+ "autoincrement": false
129
+ },
130
+ "iso_date": {
131
+ "name": "iso_date",
132
+ "type": "text",
133
+ "primaryKey": false,
134
+ "notNull": true,
135
+ "autoincrement": false
136
+ },
137
+ "updated_at": {
138
+ "name": "updated_at",
139
+ "type": "integer",
140
+ "primaryKey": false,
141
+ "notNull": true,
142
+ "autoincrement": false
143
+ },
144
+ "payload_version": {
145
+ "name": "payload_version",
146
+ "type": "integer",
147
+ "primaryKey": false,
148
+ "notNull": true,
149
+ "autoincrement": false,
150
+ "default": 1
151
+ },
152
+ "payload": {
153
+ "name": "payload",
154
+ "type": "text",
155
+ "primaryKey": false,
156
+ "notNull": true,
157
+ "autoincrement": false
158
+ }
159
+ },
160
+ "indexes": {},
161
+ "foreignKeys": {},
162
+ "compositePrimaryKeys": {},
163
+ "uniqueConstraints": {},
164
+ "checkConstraints": {}
165
+ },
166
+ "weekly_metrics": {
167
+ "name": "weekly_metrics",
168
+ "columns": {
169
+ "id": {
170
+ "name": "id",
171
+ "type": "integer",
172
+ "primaryKey": true,
173
+ "notNull": true,
174
+ "autoincrement": false
175
+ },
176
+ "week_start_iso_date": {
177
+ "name": "week_start_iso_date",
178
+ "type": "text",
179
+ "primaryKey": false,
180
+ "notNull": true,
181
+ "autoincrement": false
182
+ },
183
+ "metric_key": {
184
+ "name": "metric_key",
185
+ "type": "text",
186
+ "primaryKey": false,
187
+ "notNull": true,
188
+ "autoincrement": false
189
+ },
190
+ "value": {
191
+ "name": "value",
192
+ "type": "real",
193
+ "primaryKey": false,
194
+ "notNull": true,
195
+ "autoincrement": false
196
+ },
197
+ "created_at": {
198
+ "name": "created_at",
199
+ "type": "integer",
200
+ "primaryKey": false,
201
+ "notNull": true,
202
+ "autoincrement": false
203
+ },
204
+ "updated_at": {
205
+ "name": "updated_at",
206
+ "type": "integer",
207
+ "primaryKey": false,
208
+ "notNull": true,
209
+ "autoincrement": false
210
+ }
211
+ },
212
+ "indexes": {
213
+ "wm_natural_key_idx": {
214
+ "name": "wm_natural_key_idx",
215
+ "columns": [
216
+ "week_start_iso_date",
217
+ "metric_key"
218
+ ],
219
+ "isUnique": true
220
+ }
221
+ },
222
+ "foreignKeys": {},
223
+ "compositePrimaryKeys": {},
224
+ "uniqueConstraints": {},
225
+ "checkConstraints": {}
226
+ }
227
+ },
228
+ "views": {},
229
+ "enums": {},
230
+ "_meta": {
231
+ "schemas": {},
232
+ "tables": {},
233
+ "columns": {}
234
+ },
235
+ "internal": {
236
+ "indexes": {}
237
+ }
238
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "sqlite",
4
+ "entries": [
5
+ {
6
+ "idx": 0,
7
+ "version": "6",
8
+ "when": 1779181277132,
9
+ "tag": "0000_parallel_juggernaut",
10
+ "breakpoints": true
11
+ }
12
+ ]
13
+ }
package/package.json ADDED
@@ -0,0 +1,67 @@
1
+ {
2
+ "name": "@zykeco/sync-server",
3
+ "version": "0.3.0",
4
+ "description": "Self-hosted Zyke sync server (Hono + Drizzle + libsql). Imports to auto-start; ships a migrate CLI.",
5
+ "license": "AGPL-3.0-or-later",
6
+ "author": "P2LS9K GmbH <office@p2ls9k.com>",
7
+ "homepage": "https://github.com/zykeco/sync#readme",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/zykeco/sync.git",
11
+ "directory": "apps/sync-server"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/zykeco/sync/issues"
15
+ },
16
+ "type": "module",
17
+ "main": "./dist/index.js",
18
+ "types": "./dist/index.d.ts",
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "import": "./dist/index.js"
23
+ }
24
+ },
25
+ "bin": {
26
+ "zyke-sync-migrate": "./dist/migrate-cli.js",
27
+ "zyke-sync-startup": "./dist/startup-cli.js",
28
+ "zyke-sync-upgrade": "./dist/upgrade-cli.js"
29
+ },
30
+ "files": [
31
+ "dist",
32
+ "drizzle",
33
+ "LICENSE",
34
+ "README.md"
35
+ ],
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
39
+ "engines": {
40
+ "node": ">=24",
41
+ "npm": ">=11"
42
+ },
43
+ "scripts": {
44
+ "build": "tsc -p tsconfig.json && chmod +x dist/migrate-cli.js dist/startup-cli.js dist/upgrade-cli.js",
45
+ "typecheck": "tsc -p tsconfig.json --noEmit",
46
+ "test": "node --test",
47
+ "dev": "tsx --watch src/index.ts",
48
+ "start": "node dist/index.js",
49
+ "clean": "rm -rf dist .tsbuildinfo",
50
+ "publish:dry": "npm pack --dry-run",
51
+ "db:generate": "drizzle-kit generate",
52
+ "db:migrate": "drizzle-kit migrate"
53
+ },
54
+ "dependencies": {
55
+ "@hono/node-server": "^2.0.2",
56
+ "@libsql/client": "^0.17.3",
57
+ "@zykeco/server-core": "^0.3.0",
58
+ "@zykeco/sync-protocol": "^0.3.0",
59
+ "dotenv": "^17.4.2",
60
+ "drizzle-orm": "^0.45.2",
61
+ "hono": "^4.6.0"
62
+ },
63
+ "devDependencies": {
64
+ "drizzle-kit": "^0.31.10",
65
+ "tsx": "^4.22.1"
66
+ }
67
+ }