# 🌙 Lunaris
Современный кроссплатформенный клиент для Booru и Creator-архивов
Плавный Pinterest-стиль, поддержка фото, видео и GIF, умный черный список, встроенный менеджер загрузок и автообновление.
---
## ✨ Основные возможности
- **📱 Плавная лента в стиле Pinterest**: Masonry-сетка с адаптивным количеством колонок для мобильных и ПК.
- **⚡ Сверхбыстрые видео-превью**: Мгновенная загрузка превью без фризов и лишней нагрузки на процессор и память смартфона.
- **↔️ Листание постов влево и вправо**: Полноэкранный пейджер с плавными свайпами между фото и видео во всех разделах (Лента, Авторы, Избранное, Коллекции, История просмотров).
- **🖼️ Мульти-медиа в одном посте**: Удобная карусель с индикатором `1 / 4` для постов с несколькими файлами.
- **⭐ Любимые авторы сверху**: Верхняя панель со «сториз»-аватарами любимых создателей и мгновенным просмотром их свежих фото и видео.
- **🐾 Поддержка Pawchive**: Интеграция с `pawchive.pw` для просмотра профилей авторов, связанных аккаунтов, тегов и работ с Patreon, Fanbox, Fantia, Discord, Boosty и др.
- **🔍 Умный поиск и автодополнение**: Интерактивные чипсы тегов с подсказками от активных API. Быстрое исключение (`-tag`), добавление (`+tag`) или отправка в черный список по долгому тапу.
- **🛡️ Продвинутый Blacklist / Whitelist**: Фильтрация по тегам, категориям, рейтингу контента (safe/questionable/explicit), провайдерам и минимальному score.
- **🎬 Встроенный плеер**: Удобное воспроизведение WebM / MP4, запоминание настроек звука, fullscreen и повтор.
- **💾 Менеджер загрузок и коллекции**: Скачивание оригиналов в высоком качестве, тематические папки-коллекции и автозагрузка избранного.
- **🔄 Встроенное автообновление**: Проверка и скачивание свежих релизов напрямую из личного репозитория Gitea.
---
## 🌐 Активные провайдеры
| Провайдер | Тип API | Назначение |
|---|---|---|
| **Gelbooru** | XML / JSON API | Основная база аниме-артов |
| **Rule34** | Booru API | Популярный booru-источник |
| **Realbooru** | HTML Scraper | Фото и реалистичный контент |
| **e621 / e926** | JSON API | Фурри- и антро-арт с богатой системой тегов |
| **Pawchive** | REST API v1 | Архивы авторов Patreon, Pixiv Fanbox, Fantia и др. |
---
## 📥 Скачать приложение
Готовые сборки для всех поддерживаемых платформ доступны на странице релизов:
🔗 **[Gitea Releases (RarDog/Lunaris)](https://gitea.rardogsynapse.online/RarDog/Lunaris/releases)**
- **Android**: `Lunaris-v2.0.2.apk`
- **Linux (x64)**: `Lunaris-v2.0.2-linux-x64.tar.gz`
- **Windows**: `LunarisSetup-v2.0.2.exe` / `LunarisPortable-v2.0.2.zip`
---
## 🛠️ Сборка из исходников
### Требования
- Flutter SDK `>= 3.19.0`
- OpenJDK 17
- Android SDK (для сборки APK)
- Clang / CMake / GTK-3 (для сборки под Linux)
### Команды разработки
```bash
# Клонирование репозитория
git clone https://gitea.rardogsynapse.online/RarDog/Lunaris.git
cd Lunaris
# Установка зависимостей
flutter pub get
# Запуск тестов и анализатора
flutter analyze
flutter test
# Запуск на подключенном устройстве
flutter run
```
### Сборка релизов
```bash
# Android APK
flutter build apk --release
# Linux x64 Bundle
flutter build linux --release
# Windows Bundle
flutter build windows --release
```
---
## 🏛️ Архитектура
```
lib/
├── app/ # Роутер, тема, локализация (RU/EN), анимации
├── backend/
│ ├── di/ # Riverpod providers для сервисов
│ ├── models/ # Post, ArtistProfile, AppSettings, AppUpdateInfo
│ ├── providers/ # Реализации API (Gelbooru, Rule34, Pawchive и др.)
│ ├── repositories/ # Доступ к локальной БД Isar
│ └── services/ # Бизнес-логика (Feed, Search, Favorites, Downloads, Updates)
├── core/ # Сеть (Dio), база данных (Isar), ошибки и кеши
├── features/ # Модули экранов (feed, post, artists, favorites, settings)
└── shared/widgets/ # Переиспользуемые виджеты (PostCard, MasonryGrid, TagChip)
```
---
## 🔒 Приватность и безопасность
- **Полная автономность**: Приложение не отправляет телеметрию и работает без внешних серверов-посредников.
- **Локальное хранение**: Все настройки, история поиска, черный список и избранное хранятся исключительно на вашем устройстве в локальной базе Isar.
- **Бережное отношение к трафику**: В ленте загружаются только оптимизированные превью. Тяжелые оригиналы и видео загружаются только при открытии или скачивании.