Full-stack application developed as part of the SyntaxBase Advanced Web Development Course.
This project represents the final, hands-on lab where learners design and implement a production-style web application simulating the complete blood donation process. The system enables donors to register, schedule appointments, track donation history, and monitor blood stock levels, while organizations manage incoming donations and inventory. Built with React, TypeScript, Spring Boot, and PostgreSQL, the application follows the MVC architecture and demonstrates real-world integration of authentication, data persistence, and client-server communication.
- Account registration
- Browse available appointments by organization
- View donation locations
- Secure login and account management
- Access educational resources and FAQs
- Select an organization for blood donation
- Choose donation date, time, and blood type
- Submit and manage donation requests
- View and cancel reserved appointments
- Review donation history and reward points
- Monitor organization-specific blood stock levels
- Organization account registration
- Review and process donation requests
- Accept or decline incoming donations
- Track and manage blood inventory
The project is implemented using React.
For more information, see: Create React App
Runs the application in development mode.
Open http://localhost:3000 to view it in the browser.
Hot reloading is supported, so any changes or errors will be reflected automatically.
Launches the test runner in interactive watch mode.
More information: Running Tests
Builds the application for production into the build
folder.
Correctly bundles React in production mode and optimizes the build for the best performance.
More information: Deployment
The recommended IDE for this project is IntelliJ IDEA.
- Clone or download the project.
- Open IntelliJ IDEA and select:
File -> New -> Project from Version Control...
- Choose the Load Maven build script option.
- Verify your Java version.
- Navigate to:
IzvorniKod/backend/src/main/java/opp
- Locate the
IzvorniKodApplication.java
class and run it.
- Open the terminal in IntelliJ IDEA (or use your system terminal).
- Navigate to:
/IzvorniKod/frontend/src
- Run:
npm install npm start