A lightweight, offline-first health data collection and synchronization platform designed for field workers, researchers, and organizations working in connectivity-challenged regions.
-
Dynamic form creation - selecting your own parameters
-
Offline data entry & syncing when online
-
Clean web dashboard for accessing data, viewing submissions & regional health patterns
-
Role-based access (enumerators, reviewers)
-
Frontend: React / Next.js / Tailwind CSS
-
Backend: Flask / Node.js /
-
Database: Mongo DB
-
Data Pipeline: Pandas
/Cphorm
├── form/
│ ├── back-end/
│ │ ├── app/
│ │ │ ├── __init__.py
│ │ │ ├── models.py
│ │ │ ├── routes.py
│ │ │ └── utils.py
│ │ ├── tests/
│ │ │ └── test_api.py
│ │ └── requirements.txt
│ └── front-end/
│ ├── components/
│ │ ├── FormBuilder.jsx
│ │ ├── Dashboard.jsx
│ │ └── Navbar.jsx
│ ├── pages/
│ │ ├── index.jsx
│ │ └── dashboard.jsx
│ ├── public/
│ │ └── favicon.ico
│ ├── styles/
│ │ └── globals.css
│ ├── utils/
│ │ └── api.js
│ └── package.json
├── platform/
│ ├── analytics/
│ │ ├── src/
│ │ │ └── data_generation.py
│ │ ├── tests/
│ │ │ └── test_analytics.py
│ │ ├── notebooks/
│ │ │ └── main.ipynb
│ │ └── __init__.py
│ └── dashboard/
│ ├── components/
│ │ └── Chart.js
│ └── app.py
├── utils/
│ └── helpers.py
├── docs/
│ └── architecture.md
└── README.md
- Python 3.10+
(Required for analytics, data generation, and backend scripts) - Node.js (Recommended v18+ for frontend)
- pip (Python package manager)
- npm or yarn (Node.js package manager)
- MongoDB (for backend database)
- [Optional] Docker (for containerized deployment)
git clone https://github.com/STACK-42/Cphorm.git
cd cphorm
Then follow setup steps for /frontend and /backend in their respective READMEs.
-
Health survey campaigns
-
Rapid response to humanitarian crises (by detecting patterns early)
-
Offline-first data collection in rural areas