ArdaLink Web hosts the two user-facing surfaces: an operator dashboard for monitoring drought status and herder ground truth, and a public Talk app that lets anyone converse with ArdaLink in their browser.
# Requires Node 24 and pnpm 9
pnpm install
cp .env.example .env # edit
pnpm --filter dashboard run dev # http://localhost:5173
pnpm --filter talk run dev # http://localhost:5174Both apps read their OpenAPI hooks from
MUNENE1212/ardalink-api/lib/api-spec/openapi.yaml.
| App | Path | Audience |
|---|---|---|
| Operator dashboard | dashboard/ |
Internal — drought status, ground truth, call controls |
| Public Talk | talk/ |
Anyone — browser voice + chat, no phone required |
ardalink-web/
├── dashboard/ React 19 + Vite + Tailwind
│ ├── src/
│ │ ├── components/ WardMapLive, CallModal, CostRailsCard
│ │ ├── pages/ dashboard, call-receiver
│ │ └── lib/ browserVoice bridge
│ └── vite.config.ts
├── talk/ React 19 + Vite + Tailwind
│ ├── src/
│ │ ├── components/
│ │ └── pages/
│ └── vite.config.ts
├── pnpm-workspace.yaml
├── package.json
└── docs/ 8-doc CTO navigation
Start with docs/00-EXECUTIVE-INDEX.md (5 min).
MUNENE1212/ardalink-api— backend + voice bridgeMUNENE1212/ardalink-engine— biophysical brain
Proprietary — all rights reserved. Contact the maintainer before any reuse or distribution.