Skip to content

Mobterest-Studio/intelligent_flutter_tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intelligent Flutter Tutorial

Source code for the Intelligent Flutter Tutorial Series — a 10-lesson course on building AI-powered Flutter apps using the Gemini API, Clean Architecture, and BLoC state management.

Apps Included

This repo contains two complete apps built progressively across the series:

App Lessons Description
Note Summariser 1 – 5 Summarises user notes using the Gemini API
Chat App 6 – 10 A persistent, context-aware AI chat with user memory

Architecture

Both apps follow Clean Architecture with the following layers:

lib/
├── core/
│   ├── di/               # Dependency injection (get_it)
│   └── errors/           # Failure types
├── data/
│   ├── cache/            # In-memory caching
│   ├── datasources/      # Remote API calls
│   ├── local/            # Drift database (Chat App)
│   ├── providers/        # Gemini AI provider
│   └── repositories/     # Repository implementations
├── domain/
│   ├── entities/         # Core data models
│   ├── repositories/     # Repository contracts
│   ├── services/         # User memory service
│   └── usecases/         # Business logic
└── presentation/
    ├── bloc/             # BLoC state management
    └── screens/          # UI screens

Tech Stack

  • Flutter with Material 3
  • Gemini API — AI inference via http
  • flutter_bloc — state management
  • get_it — dependency injection
  • Drift — local SQLite database for chat history
  • shared_preferences — lightweight user memory persistence
  • mocktail + bloc_test — unit and widget testing

Getting Started

Prerequisites

Run the app

flutter run --dart-define=GEMINI_API_KEY=your_api_key_here

Run tests

flutter test

Tutorial Series

The series covers building real AI features from scratch:

  • Lessons 1–5: Clean Architecture, BLoC, Gemini API integration, prompt engineering, and unit testing — all through the Note Summariser app.
  • Lessons 6–10: Persistent chat history with Drift, user memory, context-aware conversations — all through the Chat App.

About

Learn how to architect an AI-powered flutter application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors