This is a full-stack Blood Bank Management System developed using the MERN stack, designed to act as a Real-Time Health Resource Locator. The system efficiently connects hospitals, blood banks, and organizations to manage critical blood inventory and donor information with a focus on security, performance, and real-time updates for emergency use cases.
- Role-Based Security: Implemented secure, restricted access for different entities (Donors, Hospitals, Organizations, and Admins/Blood Banks) using JSON Web Tokens (JWT) and Bcrypt.
- Real-Time Blood Locator: A React.js interface allows users to quickly find nearby hospitals and check the availability of specific blood types in real-time.
- Secure Data Handling: Built robust backend services with Node.js and MongoDB for secure storage and management of sensitive donor and patient data.
- Inventory & Transaction Management: Tools for blood banks/admins to manage inventory levels, approve transactions, and maintain detailed logging of all blood requests and donations.
- Scalable Architecture: Designed and deployed the platform with a focus on scalability and accessibility to ensure reliability during high-demand emergency scenarios.
This application is built using the following technologies:
- React.js: For building the dynamic user interface.
- HTML5 / CSS3
- Node.js & Express.js: For building secure, scalable RESTful APIs.
- MongoDB (Mongoose): As the NoSQL database for flexible storage of donor, inventory, and transaction data.
Create a file named .env in the root directory (for the server) and a separate .env file inside the client directory (for the frontend). You must provide your own MongoDB connection string and JWT secret.
Server (.env) Example:
PORT=5000
MONGO_URI=[YOUR_MONGODB_CONNECTION_STRING_HERE]
JWT_SECRET=[A_RANDOM_SECRET_STRING_FOR_JWT]
DEV_MODE =[YOUR_DEV_MODE_VALUE]
Client (client/.env) Example:
REACT_APP_SERVER_URL=http://localhost:5000
Navigate to both the root and client directories to install dependencies:
# In the root directory:
npm install
# Then, in the client directory:
cd client
npm install
cd ..Start the server and client in separate terminals (or use your custom run command):
# To start the server (in the root directory):
npm start
# OR: node server.js
# To start the client (in the client directory):
cd client
npm startThe application will typically be accessible at http://localhost:[Your Client Port, e.g., 3000].
This project is distributed under the MIT License. See the LICENSE file in the repository root for full details.
Mahale Rajesh - rajeshmahale103@gmail.com
Project Link: https://github.com/rajesh2004-source/Blood-Bank-Mngt-System