Kalimni (كلّمني) is a bilingual Arabic/French teletherapy app for Algeria, connecting people with licensed psychologists via private, secure chat and voice calls. It offers validated GAD-7/PHQ-9 intake, progress tracking, a guided content library, and an AI safety net that flags at-risk messages in Arabic, Darija and French.
# كلّمني — Kalimni
Arabic-first (RTL) + French teletherapy platform: patients talk to licensed
mental-health specialists through secure chat, guided by a clinically validated
intake questionnaire. Three-sided product: **patient app**, **specialist
interface**, and **admin panel** — all inside one React Native (Expo) app with
role-based navigation, backed by a Node.js API.
Built from the hi-fi mockups in `Kalimni App Design.html` (13 screens, turns 1–2).
## Structure
```
psycology app/
├── api/ Node.js (Express 5 + Socket.IO) API, PostgreSQL data layer
├── client/ React Native app (Expo SDK 54) — Android-first, runs in Expo Go
│ (a custom dev build is only needed for live audio calls, see below)
├── docker-compose.yml Dev PostgreSQL (host port 5433)
└── Kalimni App Design.html Original design mockups
```
## Quick start
**1. Database** (from the project root — needs Docker):
```bash
docker compose up -d # starts PostgreSQL on host port 5433
```
The dev DB uses host port **5433** (not the default 5432) so it coexists with
any other local Postgres — change the mapping in `docker-compose.yml` and the
`DATABASE_URL` in `api/.env` together if you need a different port.
**2. API** (terminal 1):
```bash
cd api
npm install
cp .env.example .env # then edit if needed (DB URL, Agora keys)
npm run db:setup # creates the schema + loads demo data (re-runnable; resets everything)
npm run dev # or: npm start — listens on
0.0.0.0
```
**3. Mobile app** (terminal 2):
```bash
cd client
npm install
npm start # scan the QR with Expo Go on Android
```
The client auto-derives the API host from the Metro dev server, so a phone on
the **same Wi-Fi** reaches the API with zero config. To override, create
`client/.env` with `EXPO_PUBLIC_API_URL=http:// :4000/api`.
### Demo accounts (password for all: `password123`)
| Role | Email | Notes |
|---|---|---|
| Patient | `amina@email.com` | Assigned to Dr Sa …