A starter Flutter project featuring user authentication and a simple blog system. This project demonstrates best practices in Flutter app architecture, state management, and integration with modern backend services.
- User Authentication: Sign up, login, and session management using Supabase.
- Blog System:
- Create, list, and view blog posts
- Each blog includes a title, content, image, topics, author, and date
- Select from predefined topics: Technology, Business, Programming, Entertainment
- State Management: Uses Bloc for scalable and testable state management.
- Local Storage: Utilizes Hive for efficient local data storage.
- Modern UI: Clean, responsive design with reusable widgets.
lib/features/auth
: Authentication logic (data, domain, presentation)lib/features/blog
: Blog logic (data, domain, presentation)lib/core
: Shared utilities, constants, themes, and widgets (e.g., Loader)
- Clone the repository:
git clone <repo-url> cd flutter_starter
- Install dependencies:
flutter pub get
- Configure Supabase:
- Add your Supabase URL and anon key to
lib/core/secrets/app_secrets.dart
.
- Add your Supabase URL and anon key to
- Run the app:
flutter run
See pubspec.yaml
for the full list.
This project is intended as a starting point for building robust Flutter applications with authentication and content features. Contributions and suggestions are welcome!