Skip to content

A flutter to do list app performing CRUD operations with Firebase and SQLite using cubit, dependency injection

License

Notifications You must be signed in to change notification settings

AslihanYoldas/flutter_to_do_v2

Repository files navigation

Flutter To-Do List App

A Flutter to-do list app that performs CRUD (Create, Read, Update, Delete) operations on SQLite and Firebase Cloud Firestore using cubit state management and dependency injection. The app also uses Firebase Authentication for login.

Feautures

  • Firebase Authentication: Implements user authentication using Firebase for secure login.
  • CRUD Operations: Allows users to create, read, update, and delete tasks locally and on Firebase Cloud Firestore in real time.
  • SQLite Local Storage: Utilizes SQLite for local data storage
  • Firebase Cloud Firestore: Utilizes Firebase for remote data storage
  • Cubit State Management: Implements the Cubit pattern for effective state management.
  • Dependency Injection: Utilizes dependency injection for organized and scalable code.
  • Route Generator: Includes a route generator for smooth navigation between different screens.

Getting Started

To run this project locally, follow these steps:

  1. Clone the repository:
git clone https://github.com/AslihanYoldas/flutter_to_do_v2.git
  1. Navigate to the project directory:
cd flutter_to_do_v2
  1. Install dependencies:
flutter pub get
  1. Run the app:
flutter run

Screenshots

Login page

  • You can create a new user.
  • You can log in to your existing account.
  • You can toggle the visibility of your password by pressing the eye icon.

login_page create_user

Main Page

  • You can switch between storing your data locally or remotely by using the bottom navigation bar.
  • To add new tasks, simply press the "+" button.
  • In the new task widget, you can enter the title, description, and category (work, personal, other) for your task.
  • To delete a task, long-press on the task you want to delete.
  • To update a task, press the pencil icon on the task.
  • You can log out by pressing the exit icon located at the top right corner of the screen.

firebase_main_page sql_main_page new_task delete_task update_task

Acknowledgments

Contributing

Feel free to contribute by opening issues or submitting pull requests.

Contact

For questions or feedback, contact aslihanyoldas24@gmail.com

About

A flutter to do list app performing CRUD operations with Firebase and SQLite using cubit, dependency injection

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published