Skip to content
← projects

open source

Blog App — Clean Architecture

A full-stack blog app built to master Clean Architecture in Flutter — a strict presentation/domain/data split, SOLID principles, and a Supabase backend.

Blog App — Clean Architecture

Screenshots

Blog
Blog
Blog
Blog
001

Stack

SupabaseDartGetItBLoCFlutter
002

Problem

Flutter apps get tangled fast; the goal was a codebase that stays testable and easy to change as features grow.
004

Architecture

Clean Architecture in three layers (presentation, domain, data), Bloc and Cubit for state, get_it for dependency injection, and Supabase for auth and data.
005

Stack notes

Flutter, Dart, Bloc/Cubit, Supabase, get_it. Runs on iOS, Android, web, and desktop.
006

Decisions

Kept business logic independent of UI and data sources so each layer can be tested and swapped on its own.
009

Lessons

Clean Architecture is discipline up front that pays back every time a feature changes.