BloodLink - Hospital Blood Donation Management System. A full-stack web application connecting blood donors with hospitals in Ethiopia. Built with React, Node.js, Express, and SQLite.
# π©Έ BloodLink - Hospital Blood Donation Management System
BloodLink is a full-stack hospital blood donation management system designed to connect blood donors with hospitals in Ethiopia. It streamlines the blood donation process, manages donor records, blood inventory, and emergency blood requests.
## π Features
### π€ Donor Dashboard
- Register and manage profile
- Update blood donation availability
- View donation history
- Receive blood request notifications
- Track donation impact (lives saved)
### π¨ββοΈ Staff Dashboard
- Create blood requests for patients
- Track request status
- View blood inventory
- Search compatible donors
### π§ Admin Dashboard
- Verify new donor registrations
- Manage hospital staff accounts
- Monitor blood inventory levels
- Approve/Reject blood requests
- Generate system reports
## π οΈ Tech Stack
**Frontend:**
- React.js
- CSS3 (Custom styling)
- Axios for API calls
**Backend:**
- Node.js
- Express.js
- SQLite3 database
- JWT Authentication
- Bcrypt for password hashing
## π Installation
### Prerequisites
- Node.js (v18 or higher)
- npm or yarn
### Clone the repository
```bash
git clone
github.com
cd BloodLink
**Backend Setup**
cd backend
npm install
node index.js
Server runs on
localhost
**Frontend Setup**
cd frontend
npm install
npm run dev
App runs on
localhost
**Default Admin Login**
Email: admin@bloodlink.com
Password: admin123
**π Project Structure**
text
BloodLink/
βββ backend/
β βββ index.js # Express server
β βββ database.js # SQLite setup
β βββ bloodlink.db # Database file
β βββ package.json
βββ frontend/
β βββ src/
β β βββ App.jsx # Main React component
β β βββ App.css # Styles
β β βββ main.jsx
β βββ package.json
βββ README.md
**π Workflow**
Donor registers β Admin verifies β Donor can donate
Staff creates blood request β Admin approves β Request processed
Staff searches compatible don β¦