DEV Community

Ritik Yadav
Ritik Yadav

Posted on

BloodHub - Connecting Lives, One Drop at a Time

**Frontend (React):
**Components:

App Component (App.jsx):
Layout and structure of the entire application.
Routing setup for different pages.
Donor Registration Component (DonorRegistration.jsx):
Form for donors to register.
Interaction with the backend to save donor information.
Receiver Registration Component (ReceiverRegistration.jsx):
Form for receivers to register.
Interaction with the backend to save receiver information.
Statistics Component (Statistics.jsx):
Display statistics using data fetched from the backend.
Styles:

Global Styles (styles.css):
Basic styling for the entire application.
Backend (Node.js with SQLite):
Server Setup (server.js):

Express server setup.
Middleware setup (body-parser, etc.).
Static file serving (for React build files).
Database setup (SQLite).
Routes:

Donor Registration Route (donorRoutes.js):
Endpoint for donor registration.
Interaction with the SQLite database to store donor information.
Receiver Registration Route (receiverRoutes.js):
Endpoint for receiver registration.
Interaction with the SQLite database to store receiver information.
Statistics Route (statisticsRoutes.js):
Endpoint to fetch statistics.
Interaction with the SQLite database to retrieve relevant data.
Database (database.js):

SQLite database setup and connection.
Schema definition for donors and receivers.
Functions for database operations (insert, retrieve, etc.).
Additional Considerations:
User Authentication:

Separate components and routes for user authentication (if needed).
Notification System:

Component and backend logic for managing notifications.
Search Functionality:

Component and backend logic for searching donors or receivers.
Real-time Updates:

Implement real-time updates using WebSocket or a similar technology.
Mobile Responsiveness:

Ensure that the frontend is responsive for various device sizes.
Privacy Controls:

Implement features to control user privacy and data access.
Deployment:

Configure deployment scripts and settings for hosting.
Testing:

Implement testing for both frontend and backend components.
Documentation:

Create documentation for developers and users.

Project will start on: 10 January, 2024

Top comments (0)