Logo Lanfrica

amosyaw60-tech/N-yensim_Our-wellness

Domain:

healthcare

Record type:

software
Creator:
amo
Host:
Nyensim – Offline-first, voice-enabled maternal and child health toolkit for frontline health workers in Northern Ghana. Designed for the UNICEF Start-up Lab AI for Nurturing Care Hackathon, Nyensim bridges the gap between fragmented paper records and smart, life-saving decision support. # N-yensim ("Our Wellness") Offline-first CHW (Community Health Worker) support app for maternal and child health in Northern Ghana — QR-based patient records, a rule-based clinical triage engine, local-food nutrition guidance, and translated voice education, with optional AI-generated supplementary explanations layered on top of (never instead of) the deterministic clinical rules. This repo has two parts: ``` android/ Native Android app (Kotlin, Jetpack Compose, Room) — what CHWs use backend/ Small Node/Express proxy — the only thing holding an AI vendor key docs/ Architecture, security, and deployment notes ``` See `docs/ARCHITECTURE.md` for how these fit together and what changed from the original AI-Studio-generated scaffold. ## Prerequisites | Tool | Version | For | |---|---|---| | Android Studio | Ladybug (2024.2) or newer | Android app | | JDK | 17 | Android Gradle build | | Node.js | 18.18+ (20 LTS recommended) | Backend | | npm | bundled with Node | Backend | | A Gemini or OpenAI API key | — | AI-enrichment feature (optional — the app works without it) | ## 1. Run the backend locally ```bash cd backend npm install cp .env.example .env # edit .env: set GEMINI_API_KEY (or OPENAI_API_KEY + AI_PROVIDER=openai), # and set CLIENT_KEYS to a generated value, e.g.: # openssl rand -hex 32 npm run dev ``` The server starts on `localhost`. Confirm it's up: ```bash curl localhost # {"status":"ok"} ``` ### Run backend tests ```bash cd backend npm test ``` ## 2. Run the Android app locally ```bash cd android cp local.properties.example local.properties # edit local.properties: # BACKEND_BASE_URL=10.0.2.2 (10.0.2.2 = emulator's view of your host machine) # BACKEND_CLIENT_KEY= ``` Then open the `android/` folder in Android Studio and run the `app` configuration on an emulator or a connected device (**File → Open**, select `android/`, wait for Gradle sync, press Run). Testing on a **physical dev …