Insight Blog is a dynamic and user-friendly blogging application built using Flutter. It allows users to create, read, update, and delete blog posts with real-time updates. Users can also select images for their posts, choose topics, and write content. This project leverages the power of Supabase for backend services and Flutter Bloc for state management.
- User Authentication: Sign up, log in, and log out using Supabase's authentication services.
- Create and Edit Blog Posts: Write new blog posts, edit existing ones, and attach images.
- Real-Time Updates: All changes are reflected in real-time across all devices.
- State Management: Managed using Flutter Bloc for predictable and efficient state transitions.
- Image Selection: Choose images from the device gallery or take new pictures using the camera.
- Local Storage: Store user data and preferences locally using Hive.
- Flutter: For building the cross-platform mobile application.
- Dart: The programming language used by Flutter.
- Supabase: Backend services for database, authentication, and real-time updates.
- Flutter Bloc: For state management.
The project uses the following dependencies:
dependencies:
cupertino_icons: ^1.0.6
fpdart: ^1.1.0
supabase_flutter: ^2.3.4
flutter_bloc: ^8.1.4
get_it: ^7.6.7
dotted_border: ^2.1.0
image_picker: ^1.0.7
uuid: ^4.3.3
intl: ^0.19.0
internet_connection_checker_plus: ^2.2.0
hive: ^4.0.0-dev.2
isar_flutter_libs: ^4.0.0-dev.13
path_provider: ^2.1.0
Clone the repository:
git clone https://github.com/alokranjan1803/insight_blog.git
Navigate to the project directory:
cd insight_blog
Install the dependencies:
flutter pub get
Run the application:
flutter run
Sign up or log in using Supabase authentication.
Create, edit, and view blog posts in real-time.