Logo Lanfrica

elieano41-wq/sika-warri

Domaine:

digital infrastructuresocioeconomic

Type de record:

software
Créateur:
eli
Hôte:
# Sika Warri Un service d'enregistrement de la monnaie gardée chez le commerçant, pour le commerce de détail informel en Côte d'Ivoire. > Sika Warri est un service d'enregistrement. Sika Warri ne détient, ne reçoit > et ne transfère aucun fonds. La monnaie enregistrée reste physiquement chez le > commerçant et constitue une dette commerciale de ce commerçant envers son > client. Elle est utilisable uniquement auprès de ce même commerçant. Le client > peut à tout moment demander le remboursement en espèces auprès du commerçant > concerné. That paragraph is not marketing copy. It is the legal position, it is enforced structurally in the database rather than in the interface, and it must appear verbatim in `/conditions` and in vendor onboarding. --- ## What is built | Layer | State | |---|---| | Data layer — 14 migrations, RLS, ledger RPC | Built, 183 tests green in CI | | Edge Functions — register, login, change-pin, initiate-debit, confirm-debit | Built and deployed; verified end to end against the live project | | Vendor PWA | Not started | | Customer PWA | Not started | | Keepalive workflow | **Not built** | | Backup workflow | **Not built** | --- ## Local setup Requires Node 24+. Docker is **not** required for anything in this repository. ```bash npm install npm run smoke # applies all migrations to an embedded Postgres (PGlite) npm run portability # asserts no Supabase dependency in the data layer npx tsc --noEmit # typecheck ``` `npm test` needs a real Postgres 15+ and reads `DATABASE_URL`. There is no default: a missing variable fails loudly rather than silently targeting something unintended. CI provides one as a service container — see `.github/workflows/ci.yml`. Without a local Postgres, `npm run smoke` is the fast substitute (real Postgres parser, single connection, no RLS). ### Migrations ```bash npx supabase login --token npx supabase link --project-ref npx supabase db push --linked ``` `scripts/migrate.mjs` applies the sam …