PPPAIMT - Crest
Go to file
Amey Bhagwat 6d1b72024f - In Survey Export, added seperate columns for each option of the field Practice Setting.
- Added downloadable PDF version of the consent form for Admin and User.
2026-10-28 10:51:50 +05:30
backend - In Survey Export, added seperate columns for each option of the field Practice Setting. 2026-10-28 10:51:50 +05:30
docs first commit 2026-10-07 16:32:11 +05:30
e2e first commit 2026-10-07 16:32:11 +05:30
files ###---- changes as per feedback on 22 Oct 2026 2026-10-26 10:13:16 +05:30
frontend - In Survey Export, added seperate columns for each option of the field Practice Setting. 2026-10-28 10:51:50 +05:30
help ###---- changes as per feedback on 22 Oct 2026 2026-10-26 10:13:16 +05:30
scripts first commit 2026-10-07 16:32:11 +05:30
README.md #Added user (doctor) login 2026-10-19 09:56:57 +05:30
ecosystem.config.cjs first commit 2026-10-07 16:32:11 +05:30
eslint.config.js first commit 2026-10-07 16:32:11 +05:30
nginx.conf first commit 2026-10-07 16:32:11 +05:30
package-lock.json #Added user (doctor) login 2026-10-19 09:56:57 +05:30
package.json #Added user (doctor) login 2026-10-19 09:56:57 +05:30
playwright.config.js first commit 2026-10-07 16:32:11 +05:30

README.md

Adherence Pack Study

Web app for CREST Private Limited. Physicians sign a consultation agreement, admins review it, and approved physicians receive a survey link.

This repository is an npm workspaces monorepo:

  • backend — Hapi API
  • frontend — React app (Vite)
  • docs — deployment notes

Requirements

  • Node.js 20 or newer
  • npm 10 or newer

MySQL 8 is required for migrations, admin login, and the test suite. The health check itself does not query the database. Tests use a separate database named ppaimt_crest_test on the same host, port, and user as backend/.env.

Setup

cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env
npm install

Run

npm run dev

The Vite dev server proxies /api to port 4000.

Frontend only

If you are not running the local API, proxy /api to the hosted backend:

npm install
npm run dev:frontend

Then open http://localhost:5173. Requests to /api go to https://pppaimt-crest.xltr.in. Do not submit live agreements unless you intend to change production data.

Database

Create the application database, then:

npm run migrate
ADMIN_EMAIL=admin@example.com ADMIN_PASSWORD='a-long-password' npm run seed:admin

JWT_SECRET must be at least 32 characters. The admin cookie is httpOnly.

Checks

npm test
npm run lint
npm run build

npm run build writes the frontend to frontend/dist.

Deploy

See docs/DEPLOY.md for Ubuntu on EC2, Nginx, PM2, RDS, and S3.