A full-stack clinic management system built with Spring Boot, React, and MySQL. Features secure JWT authentication, role-based access control (Doctor/Patient), prescription requests, and testing.
Secure JWT authentication
Patient management (CRUD operations)

Appointment scheduling and management
Medical records management
Prescription request management

Secure login
View medical history
Request prescriptions
JWT-based authentication
Role-based access control (RBAC)
RESTful API design
Unit testing with JUnit & Mockito
Containerized with Docker
MySQL database with relationships
Responsive React UI with Bootstrap
Input validation
Error handling
- 🪡 Backend
Java 17
Spring Boot 3.1.5
Spring Security (JWT Authentication)
Spring Data JPA (Database ORM)
MySQL 8.0
Maven (Build tool)
JUnit 5 & Mockito (Testing)
Lombok (Boilerplate reduction)
- 🪡 Frontend
React 18
Axios (HTTP client)
Bootstrap
Context API (State management)
- 🪡 DevOps
Docker & Docker Compose
- Java 17
- Node.js 18
- MySQL 8.0
mysql -u root -p -e "CREATE DATABASE doctor_db;"
./mvnw spring-boot:run
cd clinic-frontend
npm install
npm start
docker-compose up --build
Doctor: doctor@clinic.com / doctor123 Patient: john.smith@email.com / patient123