https://github.com/abx15/medilink
https://github.com/abx15/medilink
cloudinary-integration css express mongodb mongoose nodejs qrcode-generator react react-router tailwindcss twilio vite
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/abx15/medilink
- Owner: abx15
- Created: 2026-01-01T12:33:26.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2026-01-06T04:04:42.000Z (6 months ago)
- Last Synced: 2026-01-06T11:57:25.104Z (6 months ago)
- Topics: cloudinary-integration, css, express, mongodb, mongoose, nodejs, qrcode-generator, react, react-router, tailwindcss, twilio, vite
- Language: JavaScript
- Homepage: https://medilink-sooty.vercel.app
- Size: 947 KB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MedLink - Digital Health Records & Emergency QR Access System
A production-ready MERN application for managing digital health records with emergency QR code access.
## 📁 Project Structure
```
medilink/
├── client/ # React Frontend
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ ├── utils/
│ │ ├── App.js
│ │ └── index.js
│ ├── .env
│ └── package.json
│
└── server/ # Node.js + Express Backend
├── config/
├── controllers/
├── middleware/
├── models/
├── routes/
├── services/
├── utils/
├── .env
├── server.js
└── package.json
```
## 🚀 Tech Stack
- **Frontend**: React, Tailwind CSS, React Router, Axios
- **Backend**: Node.js, Express.js
- **Database**: MongoDB (Atlas-ready)
- **Authentication**: JWT
- **OTP & Notifications**: Twilio (SMS + WhatsApp), Nodemailer (Email)
- **File Uploads**: Cloudinary
- **QR Codes**: Token-based secure QR generation
## ✨ Features
### Three-Role Authentication System
- **Users (Patients)**: OTP-verified registration, self-reporting, health card generation
- **Doctors**: Credential submission, admin approval required, medical record verification
- **Admins**: Doctor approval workflow, system oversight, audit logs
### Core Functionality
- ✅ Dual OTP verification (SMS + Email)
- ✅ Digital Health Card generation (Aadhaar/Ayushman style)
- ✅ QR-based emergency access (real-time data)
- ✅ Medical record management with versioning
- ✅ Doctor verification workflow
- ✅ Comprehensive notification system
- ✅ Audit logging for all critical actions
## 🛠️ Setup Instructions
### Prerequisites
- Node.js (v16+)
- MongoDB (local or Atlas)
- Git
### Backend Setup
1. Navigate to server directory:
```bash
cd server
```
2. Install dependencies:
```bash
npm install
```
3. Create `.env` file (copy from `.env.example`):
```bash
cp .env.example .env
```
4. Configure environment variables in `.env`:
- MongoDB connection string
- JWT secret
- Twilio credentials (for SMS/WhatsApp)
- SMTP credentials (for email)
- Cloudinary credentials (for file uploads)
5. Start the server:
```bash
# Development mode
npm run dev
# Production mode
npm start
```
Server will run on `http://localhost:5000`
### Frontend Setup
1. Navigate to client directory:
```bash
cd client
```
2. Install dependencies:
```bash
npm install
```
3. Create `.env` file:
```bash
cp .env.example .env
```
4. Start the development server:
```bash
npm start
```
Frontend will run on `http://localhost:3000`
## 🔐 Environment Variables
### Backend (.env)
```env
NODE_ENV=development
PORT=5000
MONGODB_URI=your-mongodb-connection-string
JWT_SECRET=your-jwt-secret
JWT_EXPIRE=7d
TWILIO_ACCOUNT_SID=your-twilio-sid
TWILIO_AUTH_TOKEN=your-twilio-token
TWILIO_PHONE_NUMBER=your-twilio-phone
TWILIO_WHATSAPP_NUMBER=your-twilio-whatsapp
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password
CLOUDINARY_CLOUD_NAME=your-cloud-name
CLOUDINARY_API_KEY=your-api-key
CLOUDINARY_API_SECRET=your-api-secret
FRONTEND_URL=http://localhost:3000
QR_ENCRYPTION_KEY=your-encryption-key
```
### Frontend (.env)
```env
REACT_APP_API_URL=http://localhost:5000
```
## 📡 Documentation
- [Full API Documentation](API_DOCUMENTATION.md)
- [Frontend Component Guide](client/README.md)
## ✅ Project Status (Production Ready)
- ✅ Phase 1-6: Backend Core (Auth, Records, QR, Health Card)
- ✅ Phase 7: Notifications & Audit System
- ✅ Phase 8-10: Frontend Implementation
- ✅ Phase 11: Testing & Verification
- ✅ Phase 12: Polish & Documentation
## 🎯 Hackathon Highlights
- ✅ **Digital Identity**: Secure, tamper-proof health IDs.
- ✅ **Emergency Access**: 10ms response time for life-critical data via QR.
- ✅ **Universal Login**: Multi-role adaptive authentication.
- ✅ **Modern UX**: Glassmorphic UI with smooth animations.
- ✅ **Compliance**: Role-based access control and medical board approval workflow.
- ✅ **Audit Ready**: Full transparency on data access and modifications.
## 📝 License
ISC
## 👥 Contributors
MedLink Development Team:
- **Arun Kumar Bind** – 💡 Idea, 🖥️ Developer, MERN stack, system architecture
- **Amit Kumar Bind** – 📊 Research & Marketing, user flow analysis, hackathon strategy
- **Rajan Yadav** – 🎨 Design & Graphics, UI/UX, video editing, branding