This is an appointment booking system where patients can book appointments with doctors, and admins can accept or reject these appointments. The system uses Spring Boot for the backend and Angular for the frontend.
- Patients can book appointments.
- Admins can accept or reject appointments.
- Appointment statuses: PENDING, ACCEPTED, COMPLETED, CANCELED.
- Patients can cancel their appointments.
- REST API endpoints for managing appointments.
- Spring Boot (Java)
- Spring Data JPA
- PostgreSQL
- Spring Boot Security (optional for authentication)
- Angular (for UI development)
- TailwindCSS (for styling)
- Spring Boot
- PostgreSQL
- Node.js (for Angular frontend)
- Clone the repository:
git clone https://github.com/yourusername/springboot-booking-system.git cd springboot-booking-system
- Configure the database in
src/main/resources/application.properties
:spring.datasource.url=jdbc:postgresql://localhost:5432/your_db... spring.datasource.username=your_username.... spring.datasource.password=your_password.... spring.jpa.hibernate.ddl-auto=update / create
- Run the Spring Boot application:
mvn spring-boot:run
- Navigate to the Angular project folder:
cd frontend
- Install dependencies:
npm install
- Run the Angular application:
ng serve
Method | Endpoint | Description |
---|---|---|
GET | /appointments |
Get all appointments |
POST | /appointments/book |
Book an appointment |
PUT | /appointments/{id}/accept |
Accept an appointment |
PUT | /appointments/{id}/complete |
Mark appointment as completed |
PUT | /appointments/{id}/cancel |
Cancel an appointment |
- User authentication (Spring Security & JWT)
- Email notifications for appointment status updates
- Calendar integration