workers-scheduler-app

Developed a comprehensive Flutter application for efficient worker scheduling and shift handling. Utilized the principles of Clean Architecture to structure the codebase into data, domain, and UI layers, enhancing maintainability and scalability. Implemented BLoC pattern for robust state management and Firebase as the backend technology for real-time data synchronization.

Key Achievements:

Designed and implemented a user-friendly UI utilizing the flutter_login package for seamless authentication, with Gmail as the login method. Created a dynamic worker scheduling system, allowing managers to allocate shifts based on availability and skill sets. Developed a real-time shift status tracking feature using Firebase's Firestore, ensuring up-to-date information for both managers and workers. Implemented the Clean Architecture approach, which led to a modular and maintainable codebase, enabling efficient collaboration and future enhancements. Utilized BLoC pattern for state management, improving app performance and user experience by maintaining a consistent and responsive UI. Incorporated Firebase Authentication and Firestore to manage user accounts and synchronize data, enhancing security and data integrity. Demonstrated strong problem-solving skills by addressing challenges such as handling conflicts when multiple users modify shift details simultaneously. Collaborated closely with the development team to ensure seamless integration of UI, business logic, and backend components. Technologies Used: Flutter, Dart, Clean Architecture, BLoC State Management, Firebase (Authentication, Firestore), flutter_login Package

Results:

The app has streamlined the worker scheduling process, leading to improved operational efficiency and reduced scheduling conflicts. The real-time shift tracking functionality has enhanced communication and collaboration among team members, resulting in increased overall productivity.

Lessons Learned:

This project provided valuable insights into designing scalable and modular Flutter applications, integrating Firebase services for backend functionality, and employing effective state management techniques using the BLoC pattern. It also reinforced the importance of user-centric design in creating intuitive and efficient UIs.

login screen which i use google for my authentication, and to also know whether this is admin or user

WhatsApp Image 2023-08-21 at 10 27 14 PM

workers choose their available times

WhatsApp Image 2023-08-21 at 10 19 25 PM (6)

workers are able to view their upcoming shifts, that are assigned by admins

WhatsApp Image 2023-08-21 at 10 19 25 PM (4)

also they're able to view the completed shifts

WhatsApp Image 2023-08-21 at 10 19 25 PM (3)

this how they assign their avaialbilty

WhatsApp Image 2023-08-21 at 10 19 25 PM (2)

navigation to all app's screens

WhatsApp Image 2023-08-21 at 10 19 25 PM (5)