The Healthcare Management System (HMS) is an innovative, FHIR-compliant backend solution designed to streamline and secure the management of electronic health records. Developed using Spring Boot and PostgreSQL, HMS ensures efficient interoperability, robust data integrity, and secure access to sensitive healthcare information. Our forward-thinking approach leverages modern standards like JWT authentication and FHIR protocols to facilitate seamless communication between healthcare providers.
- Modular Architecture: Built using Spring Boot to ensure scalability and maintainability.
- FHIR Compliance: Implements FHIR standards to guarantee interoperability with modern healthcare systems.
- Secure Authentication: Utilizes JWT for stateless, secure user authentication.
- Robust Data Management: Integrates PostgreSQL for reliable storage and management of clinical data.
- RESTful API Design: Delivers a comprehensive set of endpoints for seamless integration with frontend systems and third-party applications.
- Backend Framework: Spring Boot
- Database: PostgreSQL
- Authentication: JWT (JSON Web Tokens)
- Interoperability Standard: FHIR
- API Design: RESTful Services
These instructions will help you set up the HMS project in your local development environment. Our comprehensive documentation ensures a smooth onboarding process and empowers developers to contribute effectively.
Ensure you have the following installed:
- Java JDK (version 11 or above)
- Maven (for dependency management)
- PostgreSQL (version 12 or above)
- Git (for version control)
-
Clone the Repository
git clone https://github.com/shaurya-afk/Hospital-Management-System.git cd hms
-
Configure the Database
Create a PostgreSQL database and update the
application.properties
file with your database credentials:spring.datasource.url=jdbc:postgresql://localhost:5432/hmsdb spring.datasource.username=your_username spring.datasource.password=your_password
-
Build the Project
Use Maven to compile and package the application:
mvn clean install
-
Run the Application
Launch the application using the Spring Boot Maven plugin:
mvn spring-boot:run
- JWT Authentication: Configure your JWT secret and expiration settings in the
application.properties
file. - FHIR Endpoints: Customize FHIR resource handling and endpoints as required to match your deployment strategy.
- POST /auth/login: Authenticate a user and return a JWT token.
- POST /auth/register: Register a new user.
- POST /hms/doctors: Create a new doctor id.
- GET /hms/doctors/{id}: Retrieve details of a specific doctor by ID.
- GET /hms/patients/{id}: Retrieve details of a specific patient by ID.
- POST /hms/patients: Create a new patient record.
- PUT /hms/patients/{id}: Update an existing patient record by ID.
- DELETE /hms/patients/{id}: Delete a patient record by ID.
- POST /hms/appointments: Create a new appointment.
- GET /hms/appointments/{id}: Retrieve details of a specific appointment by ID.
This documentation outlines all available endpoints, request/response models, and authorization mechanisms.
For production deployment, consider the following best practices:
- Containerization: Use Docker to containerize the application for consistent deployments.
- Security Enhancements: Ensure HTTPS is enforced and regularly update dependencies to mitigate vulnerabilities.
For any queries or further discussion regarding the project, please reach out via:
- Email: [email protected]
- LinkedIn: Your LinkedIn Profile
We believe that HMS sets a strong foundation for future advancements in healthcare technology. Your feedback and contributions are invaluable as we continue to innovate and refine our approach to secure and interoperable health data management.
Please feel encouraged to share your thoughts and ideas as we move forward together.