A beautiful, cross-platform notes application built with Flutter that connects to your Next.js notes backend API.
✅ Complete CRUD Operations
- Create, read, update, and delete notes
- Real-time sync with your Next.js backend
✅ Rich Note Management
- Add titles, content, and categories
- Mark notes as favorites
- Move notes to trash
- Permanent deletion
✅ Beautiful UI/UX
- Material Design 3
- Grid and list view modes
- Dark and light themes
- Smooth animations and transitions
- Responsive layout
✅ Search & Filter
- Real-time search across titles, content, and categories
- Filter by categories
- Sort by date (created/updated) or title
- Favorite notes always appear first
✅ Cross-Platform Support
- ✅ Android
- ✅ Linux
- ✅ Windows
- iOS (untested but should work)
- macOS (untested but should work)
- Web (untested but should work)
- Flutter SDK (3.9.2 or higher)
- For Android: Android Studio and SDK
- For Linux: GTK development libraries
- For Windows: Visual Studio 2022
- Clone the repository
cd /path/to/notesapp- Install dependencies
flutter pub get- Configure API endpoint (if needed)
The app is already configured to use:
- Base URL:
https://notes.shubham-shah.com.np - API Token: Pre-configured
If you want to use a different backend, edit lib/services/api_service.dart:
static const String baseUrl = 'YOUR_API_URL';
static const String apiToken = 'YOUR_API_TOKEN';- Run the app
For Linux:
flutter run -d linuxFor Android:
flutter run -d androidFor Windows:
flutter run -d windowsLinux
flutter build linux --release
# Output: build/linux/x64/release/bundle/Android APK
flutter build apk --release
# Output: build/app/outputs/flutter-apk/app-release.apkWindows
flutter build windows --release
# Output: build/windows/x64/runner/Release/lib/
├── main.dart # App entry point
├── models/
│ └── note.dart # Note data model
├── providers/
│ ├── notes_provider.dart # Notes state management
│ └── theme_provider.dart # Theme state management
├── screens/
│ ├── home_screen.dart # Main notes list screen
│ └── note_editor_screen.dart # Note create/edit screen
├── services/
│ ├── api_service.dart # API integration
│ └── storage_service.dart # Local storage
├── utils/
│ └── theme.dart # Theme configuration
└── widgets/
└── note_card.dart # Note card widget
- Tap the "+ New Note" button
- Enter a title (required)
- Optionally add a category
- Write your content
- Tap the checkmark to save
- Tap on any note card
- Make your changes
- Tap the checkmark to save
- Favorite: Tap the menu (⋮) → Add to Favorites
- Move to Trash: Tap the menu (⋮) → Move to Trash
- Delete Permanently: Tap the menu (⋮) → Delete Permanently
- Use the search bar to find notes
- Search works across titles, content, and categories
- Results update in real-time as you type
- Toggle between Grid and List views using the view icon in the app bar
- Your preference is automatically saved
- Toggle dark/light theme using the theme icon in the app bar
- Or use system theme (default)
This project is open source and available under the MIT License.
Built with ❤️ using Flutter