EcoLoop is a comprehensive waste management application built with Flutter. It connects citizens, waste collectors, and green champions to create a more sustainable environment. The app allows users to report waste, track collections, locate scrap centers, and earn points for their contributions, which can be redeemed in an in-app store. It features role-based dashboards, real-time alerts, and educational modules to promote proper waste segregation...
The project's lib directory is structured as follows:
lib/app: Contains core application setup, including the global providers for state management.lib/backend: Holds the application's business logic.config: Configuration files for third-party services (e.g., Cloudinary).enums: Enumerations used throughout the app (e.g.,UserType).models: Data models representing the application's entities (e.g.,AppUser,WasteReport).providers: State management providers (usingChangeNotifierProvider) that manage and expose application state.services: Services that handle communication with backend systems like Firebase and Cloudinary.
lib/const: Application-wide constants, primarily for theme and styling (AppTheme).lib/views: Contains all the UI screens, organized by feature.alerts: Screens for creating and viewing alerts.auth: Login and signup screens.dashboards: Role-specific dashboards for Citizens, Workers, and Green Champions.debug: Screens for debugging purposes.home: The main home screen wrapper.map: Map-related screens.scrap: Screens for managing scrap centers and pickups.training: Educational and training modules.users: User management screens.waste: Screens for waste reporting and the eco-shopping feature.worker: Screens specific to the waste collector role.
lib/widgets: Reusable UI components shared across different screens.main.dart: The main entry point for the Flutter application.firebase_options.dart: Auto-generated Firebase configuration file.- Open for Contributions!.....