Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blood Donation System

A comprehensive blood donation management platform where receptionists record donor information and blood donations, hospitals request blood, and system managers oversee and approve blood requests. Built with TypeScript, JavaScript, and a modular backend and frontend structure.


📝 Features

👩‍💻 Receptionists

  • Register new donors into the system.
  • Log blood donation events and donor data.

🏥 Hospitals

  • Request specific blood types and amounts.
  • Track the status of blood requests.

🧑🏻‍💼 System Managers

  • Approve or reject blood requests from hospitals.
  • Manage user registrations (receptionists, hospitals, managers).

💉 Donors

  • Donor information and donations are securely tracked.
  • Donors can donate at any registered blood bank.

🗂️ Main Modules

  • Donations: Register donors, record donations, and search donor info.
  • Orders: Hospitals place blood orders, managers approve/reject them.
  • Blood Banks: Track available blood types, donated units, and locations.
  • Authentication & Authorization: Secure login for different user roles.
  • User Management: Only managers can add new users to the system.
  • Bank Locations: View list of blood banks and addresses.

📊 ER Diagram

ER Diagram


📸 Screenshots

🟡 Logged Out Menus

homepage champions how-to-donate login

🟡 Logged In Common

manage-account

🟡 Receptionist

donate

🟡 Hospital

order-blood

🟡 System Manager

register-user manage-orders

🌚 Night Mode

dark-mode


🚀 Getting Started

  1. Clone the repository:

    git clone https://github.com/adarSonmez/blood-donation-system.git
    cd blood-donation-system
  2. Install dependencies:

    • Frontend:
      cd client
      npm install
    • Backend:
      cd server
      npm install
  3. Configure environment variables and database settings as needed.

  4. Start the backend server:

    npm run start
  5. Start the frontend:

    npm start
  6. Visit http://localhost:3000 to use the system.


🛠️ Tech Stack

  • Frontend: React (TypeScript)
  • Backend: Node.js, Express (JavaScript/TypeScript)
  • Database: SQL-based (see ER diagram)
  • Other: Material UI, modular REST API

👤 Author

Created by adarSonmez


About

A comprehensive blood donation management platform with a Node.js backend and ReactJS frontend, built with TypeScript for managing donors, hospitals, and blood requests.

Topics

Resources

Stars

Watchers

Forks

Used by

Contributors

Languages