https://github.com/roeiharfi/node-js-express-bio-project
A college project in Node JS using Express, a Blood bank website with the ability to recieve and dispense blood doses, has permission management with three user types and records preformed actions in logs that can be exported.
https://github.com/roeiharfi/node-js-express-bio-project
college-project ejs expressjs nodejs nodejs-webapp wbsite
Last synced: 2 months ago
JSON representation
A college project in Node JS using Express, a Blood bank website with the ability to recieve and dispense blood doses, has permission management with three user types and records preformed actions in logs that can be exported.
- Host: GitHub
- URL: https://github.com/roeiharfi/node-js-express-bio-project
- Owner: RoeiHarfi
- License: mit
- Created: 2024-10-05T16:18:11.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-05T16:24:17.000Z (over 1 year ago)
- Last Synced: 2024-11-21T11:39:46.530Z (over 1 year ago)
- Topics: college-project, ejs, expressjs, nodejs, nodejs-webapp, wbsite
- Language: JavaScript
- Homepage:
- Size: 1000 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bio Project - Blood Bank

A college project in Node.js using Express.
A blood bank web app that allows users to manage blood inventory by adding and dispensing doses. It features three user types with different permissions and logs all actions, which can be exported as PDF reports using a Puppeteer-based library.
Collaborators
@ElenaChes
@RoeiHarfi
Content
- [Installation](#installation)
- [Usage](#usage)
# Installation
1. Run `npm i`.
2. Start `app.js`.
# Usage
1. Log in to your preferred user. (registered users list is in `database/users.json`)
2. Regular users can:
- Add blood doses to inventory, dispense a set amount, or dispense all O- blood doses in the case of an MCI.
- Change their own password.
3. Research student users can:
- View and export logs with personal data emitted.
- Change their own password.
4. Admin users can:
- Add blood doses to inventory, dispense a set amount, or dispense all O- blood doses in the case of an MCI.
- View and export full logs.
- Add, edit, and delete users in the system.
- View the blood inventory and remove expired doses.
> [!CAUTION]
> Passwords are stored in plaintext in `database/users.json`.
> This project is intended for learning/testing purposes only and **should not** be used in any real production environment.