The Health Hub application is designed to provide users with the ability to search for nearby pharmacies and hospitals, as well as schedule appointments. It leverages a combination of technologies, including Angular for the frontend, Node.js and Spring Boot for the backend, MySQL for data storage, and MongoDB for storing doctor and hospital ratings. Additionally, the Google Maps API is integrated for displaying nearby locations, and the Yelp API is utilized for obtaining reviews, which are then stored in Elasticsearch.
-
User Registration and Login:
- Users can register an account and securely log in to the application.
-
Nearby Pharmacy and Hospital Search:
- The application allows users to search for nearby pharmacies and hospitals based on their location.
- Integration with the Google Maps API enables accurate location-based search results.
-
Appointment Scheduling:
- Users can schedule appointments with doctors or hospitals based on their availability.
- Appointment requests are handled by the backend system built with Spring Boot.
- User appointments are stored in a MySQL database for efficient retrieval and management.
-
Doctor and Hospital Ratings:
- The application incorporates MongoDB to store and manage ratings of doctors and hospitals.
- Users can provide ratings and reviews for healthcare providers to help other users make informed decisions.
-
Yelp API Integration:
- A Python script is used to fetch reviews from the Yelp API.
- The obtained reviews are stored in Elasticsearch, allowing for efficient search and retrieval.
-
Frontend:
- Angular: A popular JavaScript framework for building responsive and dynamic user interfaces.
-
Backend:
- Node.js: A JavaScript runtime environment for building scalable server-side applications.
- Spring Boot: A Java framework that simplifies the development of Java-based web applications.
-
Databases:
- MySQL: A relational database management system used for storing user registration and appointment data.
- MongoDB: A NoSQL document database used for storing doctor and hospital ratings.
- Elasticsearch: A distributed search and analytics engine used for storing Yelp reviews.
-
APIs and Services:
- Google Maps API: Integrated to provide location-based search functionality for nearby pharmacies and hospitals.
- Yelp API: Utilized to fetch reviews and ratings for doctors and hospitals.
- Clone the repository:
git clone <repository-url>
- Frontend setup:
- Install Angular CLI:
npm install -g @angular/cli
- Install dependencies:
cd frontend && npm install
- Start the frontend server:
ng serve
- Install Angular CLI:
- Backend setup:
- Install dependencies:
cd backend && npm install
- Start the backend server:
node server.js
- Install dependencies:
- Configure and connect the MySQL database.
- Configure and connect the MongoDB database.
- Configure the necessary API keys for Google Maps and Yelp.
For detailed instructions on setting up the application and its dependencies, please refer to the project's documentation.
This project is a servlet-based web application developed in Java that provides customers with the ability to create an account, manage their shopping cart, and choose delivery options. It also includes two additional roles, salesperson and store manager, who can manage the inventory.
The web shopping cart application offers the following features:
-
User Registration and Authentication:
- Customers can create an account by providing necessary details such as name, email, and password.
- User authentication is implemented to ensure secure access to the application.
-
Product Management:
- Customers can view the available products and add/remove items to/from their shopping cart.
- Salespersons and store managers have the ability to manage the inventory by adding new products or updating existing ones.
-
Shopping Cart Management:
- Customers can view their shopping cart, modify quantities, and remove items.
- The total price of the items in the shopping cart is calculated and displayed.
-
Delivery Options:
- Customers can choose between home delivery or pick-up options during the checkout process.
-
Role-Based Access Control:
- The application includes three roles: customer, salesperson, and store manager.
- Salespersons can manage the inventory by adding or updating products.
- Store managers have additional privileges to manage salespersons and access sales reports.
To use the web shopping cart application, follow these steps:
-
Clone or download the repository.
-
Set up the Java development environment and ensure that a compatible web server (e.g., Apache Tomcat) is installed.
-
Import the project into your preferred integrated development environment (IDE).
-
Configure the database connection settings in the application to ensure proper interaction with the database.
-
Build and deploy the application on the web server.
-
Access the application through a web browser using the provided URL.
-
Create a customer account to start using the shopping cart functionalities.
-
If you are a salesperson or store manager, use the provided login credentials to access the respective roles and manage the inventory.
The web shopping cart application is built using the following technologies:
- Java: The core programming language used to develop the application.
- Servlets: Used for handling HTTP requests and building the web application logic.
- HTML/CSS: Used for creating the user interface and styling the application.
- MySQL: The database management system used for storing customer details, product information, and other relevant data.