Skip to content

IceUnite/rik_and_morty

Repository files navigation

🛸 Rick & Morty Characters App

Флаттер-приложение, которое отображает персонажей из вселенной Rick and Morty, с возможностью добавлять их в избранное. Присутствует плавная анимация, визуальные эффекты и поддержка локального кеша изображений.


📱 Скриншоты

🌙 Тёмная тема ☀️ Светлая тема
Dark Light

✨ Функциональность и технологии

  • 🔍 Список персонажей — отображение карточек с изображениями, статусом, расой, полом, происхождением и текущим местоположением.
  • ❤️ Избранное — добавление и удаление персонажей с анимацией "пульсации" и эффектом "улёта" карточки.
  • 📦 Локальное хранилище — реализация через Hive для сохранения избранных, с поддержкой работы оффлайн.
  • 💫 Анимации — применяются с помощью flutter_animate для создания плавных и приятных переходов.
  • 🌐 Работа с API и файлами — данные загружаются с внешнего API, также поддерживаются локальные изображения.
  • 🧠 Чистая архитектура (Clean Architecture) — проект структурирован по слоям data, domain, presentation, соблюдая принципы SOLID и разделение ответственности.
  • 🧩 Стейт-менеджмент через BLoC — бизнес-логика и состояние управляются с помощью flutter_bloc, что обеспечивает чистую и предсказуемую логику приложения.
  • 📦 Dependency Injection — используется get_it для удобного и гибкого внедрения зависимостей.
  • 🧪 Генерация кода — build_runner, hive_generator и кастомные аннотации применяются для генерации моделей и адаптеров.
  • 🎨 Темы и стили — адаптация под тёмную и светлую темы, единый стиль с использованием ThemeData.


🚀 Запуск проекта

  • 🔥 Клонируй репозиторий и переходи в папку проекта
  • 📦 Установи все зависимости с помощью flutter pub get
  • 🛠 Выполни кодогенерацию командой flutter pub run build_runner build --delete-conflicting-outputs
  • ▶️ Запусти приложение с помощью flutter run