iamdoubz
b2d57c1e81
ci: lint, typecheck, test and build both images
...
Works on GitHub and Gitea/Forgejo Actions. Not run yet: no remote or
runner configured.
Task: M0-T7
2026-10-17 14:32:58 -05:00
iamdoubz
d0de0c9039
deploy: docker compose stack, api image, install script, proxy configs
...
Postgres and AMI secrets are hex (the password goes into DATABASE_URL).
Task: M0-T6
2026-10-17 14:32:57 -05:00
iamdoubz
909ac2d62d
asterisk: 24.0.0-rc2 image built from source with static config
...
Adds stub configs and noloads so a clean boot logs no ERROR lines,
ships stock indications.conf, seeds default MOH from the entrypoint.
Spec 01 synced with the real files.
Task: M0-T5
2026-10-17 14:31:05 -05:00
iamdoubz
d12795ec8b
web: vite + react + tailwind hello page with dark-mode toggle
...
Workspace packages export TS source under a 'source' condition used by
vite, node (--conditions=source) and tsc.
Task: M0-T4
2026-10-17 14:23:15 -05:00
iamdoubz
08bd33eefa
api: env config, fastify with /healthz and SPA static serving
...
Task: M0-T3
2026-10-17 14:20:52 -05:00
iamdoubz
0247137765
shared: phone number normalize, format and reserved check
...
Task: M0-T2
2026-10-17 14:19:34 -05:00
iamdoubz
aa99622a24
workspace: pnpm monorepo with api, web, shared
...
TypeScript 7 strict, ESLint + Prettier, vitest, AGPL-3.0 license.
Decision 0001 records the latest-majors choice and the TS 6 alias.
Task: M0-T1
2026-10-17 14:18:02 -05:00
iamdoubz
547bb68a6f
docs: initial SelfPhoneNG spec
...
Fix leftover __OP_* dialplan variables from the openphone rename (all
readers use SP_*). Record the reverse-proxy decision in 00 §10.
2026-10-17 14:11:09 -05:00