Skip to content

tech-ramakant/clean_starter_demo

Repository files navigation

Flutter Clean Architecture Demo (Login + User List )

This project demonstrates a clean and scalable Flutter architecture using:

  • Clean Architecture
  • Riverpod + StateNotifier
  • GoRouter for navigation
  • Dio with interceptors for networking
  • Local token storage via SharedPreferences
  • Splash screen with authentication check
  • User list with pagination and avatar caching

✅ Features

Feature Status
Login with ReqRes API
Persist token locally
Auto login on app restart
User list with pagination
Cached profile images
GoRouter clean navigation
Splash transition animation

🏛️ Project Structure

lib/
 ├─ core/
 │   ├─ network/api_client.dart        # Dio API Client
 │   ├─ constants/app_const.dart
 │   └─ di/providers.dart              # Riverpod dependency graph
 ├─ features/
 │   ├─ auth/
 │   │   ├─ data/                      # Remote & Local Sources
 │   │   ├─ domain/                    # Repository & Entities
 │   │   └─ presentation/              # Login UI & Notifier
 │   ├─ users/
 │   │   ├─ data/
 │   │   ├─ domain/
 │   │   └─ presentation/
 └─ router/
     └─ app_router.dart

🔧 Setup Instructions

1. Clone the project

git clone <your_repo_url>
cd <project_folder>

2. Install packages

flutter pub get

4. Run Project

flutter run

📌 Notes

  • ReqRes.in API is used only for demo purpose
  • This architecture is ready for future scaling & modularization

🧑‍💻 Contributing

Feel free to fork, improve and submit PRs.


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published