π Features β’ π¦ Installation β’ πΈ Screenshots β’ π οΈ Tech Stack β’ π€ Contributing β’ π Docs
Nota is a revolutionary AI-powered notes and diary application that transforms how you capture and organize your thoughts. Simply input via text, voice, or camera, and watch as our intelligent AI engine automatically categorizes your content into meaningful sections.
πΈπ¦ Full Arabic RTL Support - Designed with Arabic users in mind, featuring beautiful Tajawal fonts and right-to-left layouts.
|
Automatically categorizes notes using Gemini 2.5 Flash - Google's latest AI model. Just type naturally and let AI do the organizing. Input via text, voice recording, or camera capture. Perfect for capturing thoughts on the go. Automatically sorts into Tasks, Appointments, Expenses, and Personal Notes with smart extraction of dates, amounts, and priorities. |
6 login methods: Email, Google, Facebook, GitHub, Apple, and Biometric (Fingerprint/Face ID). Sleek design with smooth animations, haptic feedback, and Material 3 design language. All data synced with Firebase in real-time. Access from any device, anytime. |
| Method | Status | Description |
|---|---|---|
| βοΈ Email/Password | β | Traditional email authentication with verification |
| π΅ Google | β | One-tap Google Sign-In |
| π Facebook | β | Facebook OAuth integration |
| π GitHub | β | GitHub OAuth for developers |
| π Apple | β | Sign in with Apple (iOS/macOS) |
| π Biometric | β | Fingerprint & Face ID support |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β β¨οΈ TEXT ποΈ VOICE π· CAMERA πΌοΈ GALLERY β
β ββββββ βββββ ββββββ βββββββ β
β Type your Speak and Capture Import β
β thoughts transcribe receipts images β
β naturally instantly & docs for AI β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Capability | Description |
|---|---|
| π·οΈ Auto-Categorization | Notes β Tasks, Appointments, Expenses, or Personal |
| π Date Extraction | Automatically detects dates like "ΨΊΨ―Ψ§Ω" or "next Monday" |
| π΅ Amount Detection | Extracts currency and amounts from text |
| β‘ Priority Analysis | Detects urgency from context |
| π Bilingual Support | Understands Arabic & English naturally |
| π§ Context Awareness | Learns from your usage patterns |
| Splash Screen | Login | Register | Forgot Password |
![]() |
![]() |
![]() |
![]() |
| Dashboard | AI Input | Tasks | Appointments | Quotes | Track Money |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| Technology | Version | Purpose |
|---|---|---|
| 3.3+ | Cross-platform UI framework | |
| 3.0+ | Programming language | |
| Latest | Design system | |
| - | Tajawal Arabic font |
| Technology | Purpose |
|---|---|
| Multi-provider authentication | |
| Real-time NoSQL database | |
| Image & file storage | |
| Media management CDN |
| Technology | Model | Purpose |
|---|---|---|
| 2.5 Flash | AI categorization & extraction | |
| - | Voice transcription |
dependencies:
# Firebase Suite
firebase_core: ^3.8.0
firebase_auth: ^5.3.3
cloud_firestore: ^5.5.0
firebase_storage: ^12.4.10
# Social Authentication
google_sign_in: ^6.2.2
flutter_facebook_auth: ^7.1.1
local_auth: ^2.3.0 # Biometric
# AI Integration
google_generative_ai: ^0.4.7
speech_to_text: ^7.3.0
# UI & Animations
flutter_animate: ^4.5.0
lottie: ^3.1.3
google_fonts: ^6.3.0
# Media & Input
camera: ^0.10.3
image_picker: ^1.1.1π Prerequisites
- β Flutter SDK 3.3.0 or higher
- β Dart SDK 3.0.0 or higher
- β Android Studio / VS Code with Flutter extensions
- β Firebase account (free tier works)
- β Gemini API key (Get free key)
- β Git installed
# 1οΈβ£ Clone the repository
git clone https://github.com/Lord-shaban/Nota.git
cd nota
# 2οΈβ£ Install dependencies
flutter pub get
# 3οΈβ£ Run the app
flutter runStep 1: Firebase Configuration
- Create a project at Firebase Console
- Enable these services:
- β Authentication (Email, Google, Facebook, GitHub, Apple)
- β Cloud Firestore
- β Firebase Storage
- Download configuration files:
android/app/google-services.json # Android ios/Runner/GoogleService-Info.plist # iOS
Step 2: Gemini AI Setup
- Get API key from Google AI Studio
- Create
.envfile in root directory:GEMINI_API_KEY=your_api_key_here
Step 3: Social Auth Setup
See π SOCIAL_AUTH_SETUP.md for detailed instructions:
| Provider | Setup Link |
|---|---|
| π΅ Google | Google Cloud Console |
| π Facebook | Facebook Developers |
| π GitHub | GitHub OAuth Apps |
| π Apple | Apple Developer |
Step 4: Run on Different Platforms
# π± Android
flutter run -d android
# π iOS
flutter run -d ios
# π Web
flutter run -d chrome
# π₯οΈ Desktop (Windows/macOS/Linux)
flutter run -d windows
flutter run -d macos
flutter run -d linux
# π Release Build
flutter build apk --release # Android APK
flutter build appbundle --release # Android App Bundle
flutter build ios --release # iOS
flutter build web --release # Webnota/
β
βββ π± lib/ # Main source code
β βββ main.dart # App entry point
β βββ firebase_options.dart # Firebase configuration
β β
β βββ π¨ core/ # Core utilities
β β βββ models/ # Data models (UserModel, NoteModel, etc.)
β β βββ theme/ # App theme & colors
β β βββ utils/ # Helper functions
β β
β βββ β‘ features/ # Feature modules
β β
β βββ π auth/ # Authentication
β β βββ login/ # Enhanced login screen
β β βββ register/ # Registration with password strength
β β βββ splash/ # Animated splash screen
β β βββ services/ # AuthService, SocialAuthService
β β βββ widgets/ # Reusable auth widgets
β β
β βββ π dashboard/ # Home dashboard
β β βββ home_screen.dart # Main dashboard
β β βββ widgets/ # Dashboard widgets
β β
β βββ π notes/ # Notes feature
β β βββ screens/ # Note list & detail screens
β β βββ widgets/ # Note cards & forms
β β
β βββ β
tasks/ # Tasks feature
β β βββ screens/ # Task management screens
β β βββ widgets/ # Task widgets
β β
β βββ π€ ai/ # AI integration
β βββ ai_input_screen.dart # Smart AI input
β βββ services/ # Gemini AI service
β
βββ π€ android/ # Android platform
βββ π ios/ # iOS platform
βββ π web/ # Web platform
βββ π₯οΈ windows/ # Windows desktop
βββ π₯οΈ macos/ # macOS desktop
βββ π§ linux/ # Linux desktop
β
βββ π§ͺ test/ # Tests
β βββ unit/ # Unit tests
β βββ widget/ # Widget tests
β βββ integration/ # Integration tests
β
βββ π docs/ # Documentation
β βββ AUTH_SYSTEM_README.md
β βββ SOCIAL_AUTH_SETUP.md
β βββ TASKS_FEATURE.md
β
βββ π Configuration Files
βββ pubspec.yaml # Dependencies
βββ analysis_options.yaml # Lint rules
βββ firebase.json # Firebase config
| Test Type | Command | Description |
|---|---|---|
| π¬ Unit | flutter test test/unit/ |
Test business logic |
| π§© Widget | flutter test test/widget/ |
Test UI components |
| π Integration | flutter test integration_test/ |
Test full flows |
| π Coverage | flutter test --coverage |
Generate coverage report |
# Run all tests
flutter test
# Run with verbose output
flutter test --reporter expanded
# Run specific test file
flutter test test/unit/auth_service_test.dart
# Generate coverage report
flutter test --coverage
genhtml coverage/lcov.info -o coverage/html
open coverage/html/index.htmlWe love contributions! Here's how to get started:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CONTRIBUTION FLOW β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β 1οΈβ£ Fork β 2οΈβ£ Clone β 3οΈβ£ Branch β 4οΈβ£ Code β 5οΈβ£ PR β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- π Read CONTRIBUTING.md
- π΄ Fork the repository
- πΏ Create feature branch:
git checkout -b feature/amazing-feature
- πΎ Make changes and commit:
git commit -m 'feat: add amazing feature' - π€ Push to your fork:
git push origin feature/amazing-feature
- π Open a Pull Request
We follow Conventional Commits:
| Emoji | Type | Description |
|---|---|---|
| β¨ | feat: |
New feature |
| π | fix: |
Bug fix |
| π | docs: |
Documentation |
| π | style: |
UI/styling changes |
| β»οΈ | refactor: |
Code refactoring |
| π§ͺ | test: |
Adding tests |
| π§ | chore: |
Maintenance |
| β‘ | perf: |
Performance improvement |
Lord-shaban π― Project Lead |
GoldenBoy13420 π» Developer |
Ali-0110 π» Developer |
abdelrahman hesham π» Developer |
| π Document | π Description |
|---|---|
| π AUTH_SYSTEM_README | Complete authentication system documentation |
| π SOCIAL_AUTH_SETUP | Setup guide for Google, Facebook, GitHub, Apple |
| β TASKS_FEATURE | Tasks & to-dos feature documentation |
| π ENHANCED_TASKS_SUMMARY | Enhanced tasks with subtasks & priorities |
| π€ AI_TESTING | AI testing guidelines & examples |
| π€ CONTRIBUTING | Contribution guidelines |
| π SECURITY | Security policies & vulnerability reporting |
| π CODE_OF_CONDUCT | Community code of conduct |
Your security is our priority. Please read SECURITY.md for:
- π¨ Reporting vulnerabilities
- π Security best practices
- π‘οΈ Data protection policies
- π Authentication security measures
| Phase | Feature | Status |
|---|---|---|
| β | Core authentication system | Done |
| β | Social login (Google, Facebook, GitHub, Apple) | Done |
| β | Biometric authentication | Done |
| β | AI-powered note categorization | Done |
| β | Voice input & transcription | Done |
| β | Camera & image input | Done |
| β | Enhanced UI with animations | Done |
| π | Offline mode with sync | In Progress |
| π | Widgets for home screen | Planned |
| π | Apple Watch / Wear OS support | Planned |
| π | Desktop native features | Planned |
| π | AI-powered suggestions | Planned |
Track our progress and upcoming features:
This project is licensed under the MIT License
MIT License
Copyright (c) 2024-2026 Nota Team
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.













