This is a minimal full-stack Flask application implementing:
- User registration/login (patient, doctor, admin)
- Doctor profiles with available time slots
- Patients can book appointments; overlapping slots are prevented
- Simulated Razorpay payment flow (placeholder for real integration)
- Email/SMS placeholders (configure SMTP or Twilio)
- SQLite database via SQLAlchemy
- Jinja2 templates for frontend
-
Create virtualenv and install requirements: python -m venv venv source venv/bin/activate # on Windows: venv\Scripts\activate pip install -r requirements.txt
-
Set environment variables (create a .env file) - example: FLASK_APP=app.py FLASK_ENV=development SECRET_KEY=replace_this_with_a_secret_key RAZORPAY_KEY_ID=your_key_here RAZORPAY_KEY_SECRET=your_secret_here SMTP_SERVER=smtp.example.com SMTP_PORT=587 SMTP_USER=your_email SMTP_PASS=your_email_password
-
Initialize DB and run: python app.py
This will create 'app.db' and run the dev server at http://127.0.0.1:5000
- Razorpay integration is stubbed with a '/pay' endpoint that demonstrates where you'd call Razorpay orders API.
- For production, secure secrets, use HTTPS, and configure a real email/SMS gateway.