This repository contains the complete source code of the app developed during the course Mobile App Development for Android and iOS with Flutter, using the public Rick and Morty API. It is designed as a practical demo project to reinforce all the key concepts covered throughout the course.
To provide students, educators, and self-learners with a fully functional app that demonstrates how to:
- Build Flutter apps from scratch.
- Use widgets, state management, and navigation.
- Consume external REST APIs.
- Structure a Flutter project using clean architecture principles.
This project covers all the topics presented in the course, including:
- ✅ Dart fundamentals (variables, functions, control flow, OOP, null safety).
- ✅ Flutter structure (main.dart, MaterialApp, Scaffold, etc.).
- ✅ Core Widgets (Text, Row, Column, Image, ListView, Card, TextField, etc.).
- ✅ Layout and alignment (Padding, Margin, Spacer, SizedBox, MainAxisAlignment, CrossAxisAlignment).
- ✅ Navigation (Navigator.push, Navigator.pushNamed, arguments).
- ✅ State Management with setState and introduction to Riverpod.
- ✅ Separation of concerns using a layered architecture:
- UI layer.
- Presenter/controller layer.
- Repository layer.
- Data/model layer.
- ✅ API consumption (GET requests, JSON parsing, HTTP package).
- ✅ App theming with ThemeData.
- ✅ Creating a minimal MVP (splash screen, home screen, details screen).
This app uses the Rick and Morty API and includes:
- Character list.
- Locations.
- Episodes.
Url -> https://rickandmortyapi.com/api/
🔹 Note: This version does not implement pagination to keep it beginner-friendly. Pagination and loading strategies are suggested as a next step in the README and course.
Possible improvements to evolve the app after the course:
- Implement pagination with infinite scroll.
- Add loading/error states.
- Integrate Riverpod for full state management.
- Add user interaction (favorites, filters).
- Migrate to Firestore for persistent storage.
- Improve responsive design for tablets and web.
Developed and taught by Manuel Bacallado. Designed to empower beginners to create and publish their first Flutter app.
Flutter · Dart · Mobile App Development · Clean Architecture · Rick and Morty API · Educational Project.




