The goal of this project is to learn Flutter and build a usable note-taking app.
- Flutter – Google's framework for building apps
- Dart – Flutter's programming language
- Firebase
- Authentication for authentication
- Cloud Firestore as the database for notes on the cloud
- Storage for storing large files and images
- SQLite – Database for storing notes locally
- Write notes
- Upload notes to the cloud or download notes from the cloud to the device
- Access your synced notes from multiple devices and even when offline
- Login with email and password or biometrics
- Biometric authentication works offline as well
- Search notes by title or content with debounced live search
- Mark notes for deletion with the ability to restore them later
- Add images to notes
- Ask AI to summarize notes or create new ones
- Record voice notes with the option to have them transcribed into written notes
- Create todo tasks and prioritize them
- Push notifications for reminding yourself of upcoming tasks
- Add widgets to your phone's home screen for quick note viewing