Live site:
Server site Repo:
Admin Email and password
- Email: sajjad@gmail.com
- Password: Sajjad@123
- User-friendly Registration: Streamlined signup process allowing users to register as donors with basic information and blood type.
- Search for Blood Donations: Public search functionality to find potential blood donors based on blood group, location (district and upazila), simplifying the search for recipients in need.
- Manage Donation Requests: Donors can create and manage blood donation requests, specifying recipient details, hospital location, date, time, and a message.
- Donation Request Status Tracking: Real-time tracking of donation requests with clear status updates (pending, in-progress, done, canceled) for both donors and admins.
- Secure User Authentication: Secure login system with JWT token implementation to protect user data and restrict access to private functionalities.
- Role-Based Access Control: Differentiated access levels for donors, volunteers, and admins. Donors can manage their requests, volunteers can view and update donation statuses, and admins have full control over user management, content management, and overall data access.
- Content Management System: Dedicated section for admins to create and publish informative blog posts to raise awareness about blood donation and related topics.
- Donation Request Details: Detailed view of each donation request, including recipient information, location, date, and time, allowing potential donors to make informed decisions.
- Responsive Design: Optimized website layout that seamlessly adapts to various devices (mobile, tablet, desktop) for a smooth user experience across all platforms.
- Funding Integration (Optional): Optional feature for users to contribute financially to support the organization's blood donation efforts (requires Stripe payment integration).
Please follow the instructions to run this repository on your machine:
-
Clone this repository -
git clone https://github.com/sajjathossainbd/go-blood-bank-client.git
-
Go to the cloned project directory
cd go-blood-bank-client
-
Install project Dependencies
If you use Yarn:
yarn add
Or if you use npm:
npm install
-
Run project local machine
If you use Yarn:
yarn dev
Or if you use npm:
npm start
- Environment Variables:
- Create a
.env.local
file in the root of your client project and add the following variables:VITE_API_KEY=Your firebase config file VITE_AUTH_DOMAIN=Your firebase config file VITE_PROJECT_ID=Your firebase config file VITE_STORAGE_BUCKET=Your firebase config file VITE_MESSAGING_SENDER_ID=Your firebase config file VITE_APP_ID=Your firebase config file VITE_API_BASE_URL=Your firebase config file VITE_IMAGEBB_API_KEY=your imageBB Api key
- Create a
- React - A JavaScript library for building user interfaces.
- React Router Dom - Declarative routing for React applications.
- Tailwind CSS - A utility-first CSS framework
- Daisy UI - Component library for Tailwind CSS
- Firebase - Firebase is a set of backend cloud computing services
- React Icon - Include popular icons in your React projects easily with react-icons.
- React Helmet Async - Dynamic header title change
- Sweetalert2 - Beautiful, responsive, customizable replacement for JavaScript's popup boxes
- Tanstack Query - Powerful asynchronous state management, fetching, caching, and updating data in React.
- Axios - Promise-based HTTP client for the browser and Node.js.
- React Hook Form - Performant, flexible and extensible forms with easy-to-use validation.
- Swiper - The Most Modern Mobile Touch Slider
If you'd like to contribute to this project, please fork the repository and use a feature branch. Pull requests are welcome.
This project is open-source and available under the MIT License.