EcoSync is a comprehensive solution designed to tackle the challenges of domestic solid waste management in Dhaka, Bangladesh. As the city rapidly expands into a megacity, efficient waste management has become crucial. Our project focuses on enhancing the waste collection process, improving the quality of services, and raising community awareness. EcoSync offers a user-friendly, responsive web application with features like real-time data visualization, secure authentication, and role-based access control. Key functionalities include the registration and management of third-party contractors, workforce tracking, waste collection monitoring, bill generation, and optimized collection plans. By leveraging modern technologies and ensuring seamless coordination among various stakeholders, EcoSync aims to transform waste management practices, contributing to a cleaner and healthier urban environment.
HTML: To structure the web content.
CSS: For styling the web project.
Tailwind CSS: A utility-first CSS framework for rapid UI development.
JavaScript: For adding interactivity to the web project.
React: To build the frontend of the web project.
React Router: For declarative routing in React applications.
React Spinners: A collection of loading spinners for React.
Recharts: A composable charting library built on React components.
Animate.css: A library of ready-to-use, cross-browser animations for use in web projects.
SweetAlert2: A beautiful, responsive, customizable, and accessible replacement for JavaScript's popup boxes.
React Google reCAPTCHA: For integrating Google's reCAPTCHA to enhance security.
Node.js: To manage the backend and API calls.
Express.js: For building the backend services and APIs.
dotenv: For loading environment variables.
cors: For enabling cross-origin resource sharing.
express-rate-limit: For rate limiting to enhance security.
nodemailer: For sending emails.
-
Secure Authentication π: EcoSync employs JSON Web Token (JWT) for secure authentication, ensuring that user data is protected and accessible only to authorized individuals.
-
Registration of STS Manager π οΈ: Administrators can create and manage user accounts for STS managers, enabling them to oversee STS operations and monitor waste collection activities.
-
Registration of Landfill Manager π: Administrators can create and manage user accounts for landfill managers, allowing them to oversee landfill operations and ensure environmental compliance.
-
Registration of 3rd Party Contractors ποΈ: Administrators can register and manage third-party contractors, including essential information such as company details, contact information, workforce size, and contract duration.
-
Creation of Contractor Manager User π€: Administrators can create user accounts for contractor managers, allowing them to manage workforce registration, collection plans, and monitor daily activities.
-
Workforce Registration π·: Contractor managers can handle the registration of employees, including essential details such as employee ID, contact information, job title, and assigned collection route.
-
Create a Collection Plan ποΈ: Contractor managers can create schedules for domestic solid waste collection plans, including details such as area of collection, collection start time, duration, number of laborers, number of vans, and expected weight of daily solid waste.
-
Real-time Data Visualization π: EcoSync provides real-time data visualization through interactive charts and graphs, allowing users to easily analyze and understand environmental data.
-
Monitoring Transported Waste by Contractors π: STS managers can track waste collection activities by third-party contractors, including details such as time/date of collection, amount of waste collected, type of waste, and designated STS for deposit.
-
Monitoring Logged Working Hours β°: Contractor managers can track the working hours of their teams, including daily log-in/out times, total hours worked, overtime hours, and absences/leaves.
-
Bill Generation π΅: STS managers can generate bills for third-party contractors based on the percentage of required waste collected and deposited to the STS, including calculations for basic pay, deficit, fine, and total bill.
-
Fleet Optimization π: EcoSync optimizes the fleet of waste collection vehicles to ensure efficient routes and minimal fuel consumption, reducing operational costs and environmental impact.
-
Optimal Routes for Waste Collection πΊοΈ: Using Google Map, EcoSync calculates the most efficient routes for waste collection, ensuring timely and cost-effective waste management operations.
-
User-friendly Interface π»: With a clean and intuitive user interface, EcoSync ensures a smooth user experience, making it easy for users to navigate and access information.
-
Responsive Design π±: Built with responsive design principles, EcoSync is accessible across devices of all sizes, providing a seamless experience on desktops, tablets, and mobile phones.
EcoSync implements role-based access control (RBAC) to manage user permissions effectively:
- Administrator: Has full access to all features and functionalities of the system, including user management, contractor registration, and billing.
- STS Manager: Can track waste collection activities, generate bills, and manage STS operations, with restricted access to administrative functions.
- Landfill Manager: Responsible for overseeing landfill operations, including waste disposal, environmental compliance, and safety protocols.
- Contractor Manager: Can manage workforce registration, collection plans, and monitor daily activities, but does not have access to administrative features.
- Regular User: Limited access to view data and reports, without permission to perform any administrative or managerial tasks.
Clone the repository and run the following command:
docker-compose up --build- Frontend: Runs on port
5173 - Backend: Runs on port
8000
If Docker isn't working, run the system manually:
Backend:
cd samurai-backend
npm install
npm startFrontend:
cd samurai-frontend
npm install
npm run devYou can use our system with the following credentials:
-
email: mutaher.shakil@gmail.com
- password:
1234
- password:
-
email: unayeskhan.0808@gmail.com
- password:
1234
- password:
-
email: awakicde@gmail.com
- password:
1234
- password:
-
email: stsmanager1@gmail.com
- password:
1234
- password:
-
email: stsmanager2@gmail.com
- password:
1234
- password:
-
email: stsmanager3@gmail.com
- password:
1234
- password:
-
email: landmanager1@gmail.com
- password:
1234
- password:
-
email: landmanager2@gmail.com
- password:
1234
- password:
-
email: landmanager3@gmail.com
- password:
1234
- password:
Here are some vehicle's information you can use:
- [TEST - 101] [Dump Truck]
- [TEST - 102] [Compactor]
- [TEST - 103] [Open Truck]
- [TEST - 104] [Container Carrier]
-
Single Active Session: For security purposes, controlled by JWT, a user is restricted to a single active session. If login attempts are made from multiple devices using the same credentials, the most recent login is prioritized, and other sessions are invalidated, requiring those users to return to the login page.
-
Enrollment: When a user enrolls, an email containing their login credentials will be sent to the provided email address. So, please provide a valid email address.
- Chrome















































