Aarogyam is a comprehensive healthcare application designed to provide users with a seamless experience for managing their health and wellness. The application includes a client-side interface built with React and TypeScript, a server-side API built with Node.js and Express, and a PostgreSQL database for data storage.
- User authentication and authorization
- Health data management
- Appointment scheduling
- Notifications and reminders
- Responsive design
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Node.js, Express
- Database: PostgreSQL
- Containerization: Docker, Docker Compose
- API Gateway: Nginx
- Node.js (v14 or higher)
- Docker and Docker Compose
- PostgreSQL
-
Clone the repository:
git clone https://github.com/yourusername/aarogyam.git cd aarogyam -
Install dependencies for the client and server:
cd client/aarogyam-client npm install cd ../../server/aarogyam-server npm install
-
Start the application using Docker Compose:
docker-compose up --build
-
The client will be available at
http://localhost:3000and the API gateway athttp://localhost. -
To run only the backend service:
docker-compose up --build aarogyam-db main-service api-gateway
-
To run only the frontend service:
docker-compose up --build aarogyam-client
-
To apply database migrations using Prisma:
docker-compose exec main-service npx prisma migrate deploy
Environment variables are used for configuration. Create a .env file in the root directory and add the following variables:
DB_HOST=
DB_PORT=
DB_USER=
DB_PASS=
DB_NAME=aarogyam
# JWT Secret Key
JWT_SECRET= # $ openssl rand -base64 64
DATABASE_URL=postgres://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME} # Database connection string for Prisma
BREVO_API_KEY=
BACKEND_URL=http://localhostThis project is licensed under the ISC License.