Современное веб-приложение для отслеживания просмотренных аниме с системой оценок и управлением сезонами.
- Иерархическая структура: IP → Сезоны/Фильмы/OVA/Спешлы
- Гибкая система оценок: Индивидуальная оценка каждого сезона (1-10)
- Визуализация оценок: Звездочки (5 звезд = 10 баллов, половина звезды = 1 балл)
- Автоматический расчет: Средняя оценка IP на основе просмотренных элементов
- Редактирование: Изменение названий и превью аниме
- Импорт из Shikimori: Автоматическая загрузка списка аниме
- Публичные профили: Делитесь своим списком с другими пользователями
- Множественные виды: Сетка, список, таблица
- Экспорт данных: JSON, CSV, TXT
- Личные аккаунты: Регистрация и авторизация пользователей
- Профиль: Управление именем, email, паролем, биографией
- Python 3.8+
- pip (менеджер пакетов Python)
cd anime-tracker-appcd backend
pip install -r requirements.txtpython app.pyПриложение будет доступно по адресу: http://localhost:5000
- Откройте браузер и перейдите на
http://localhost:5000 - Нажмите "Зарегистрироваться"
- Введите имя пользователя, email и пароль
- После регистрации вы автоматически войдете в систему
- Нажмите кнопку "+ Добавить аниме"
- Введите название аниме
- Опционально: добавьте URL превью (изображение)
- Нажмите "Добавить"
- Кликните на карточку аниме
- В открывшемся модальном окне нажмите "+ Добавить сезон/фильм"
- Введите название и выберите тип (Сезон, Фильм, OVA, Спешл, Ремейк)
- Отметьте просмотренные элементы чекбоксом
- Поставьте оценку (1-10) просмотренным элементам
- Сетка - карточки с превью
- Список - компактный список
- Таблица - табличное представление
- Нажмите кнопку "Экспорт ▼"
- Выберите формат:
- JSON - структурированные данные
- CSV - для Excel/Google Sheets
- TXT - текстовый формат
- Нажмите на своё имя в правом верхнем углу
- Заполните биографию (опционально)
- Укажите имя пользователя на Shikimori (опционально)
- Включите "Сделать профиль публичным" чтобы другие могли видеть ваш список
- Измените имя, email или пароль при необходимости
- Нажмите "Сохранить"
- Откройте карточку аниме
- Нажмите "Редактировать"
- Измените название или URL превью
- Нажмите "Сохранить"
- Перейдите на вкладку "Импорт"
- Введите ваше имя пользователя на Shikimori
- Нажмите "Импортировать"
- Дождитесь завершения импорта
Примечание: Импортируются только аниме со статусами "просмотрено", "смотрю", "отложено" или "брошено". Дубликаты автоматически пропускаются.
- Перейдите на вкладку "Публичные профили"
- Просмотрите список пользователей с публичными профилями
- Кликните на профиль, чтобы увидеть их список аниме
- Адаптивный дизайн: работает на всех устройствах
- Темная тема: современный киберпанк-стиль
- Анимации: плавные переходы и эффекты
- Горячие клавиши:
Ctrl + N- добавить новое анимеEsc- закрыть модальное окно
anime-tracker-app/
├── backend/
│ ├── app.py # Основное приложение Flask
│ ├── requirements.txt # Зависимости Python
│ └── anime_tracker.db # База данных SQLite (создается автоматически)
│
└── frontend/
├── templates/
│ └── index.html # Главная страница
└── static/
├── css/
│ └── style.css # Стили
└── js/
├── auth.js # Аутентификация
├── api.js # API взаимодействие
└── app.js # Основная логика
Приложение использует SQLite для хранения данных. База создается автоматически при первом запуске.
- User: пользователи (id, username, email, password_hash)
- Anime: аниме IP (id, user_id, title, preview_url)
- Season: сезоны/фильмы (id, anime_id, name, type, watched, rating)
- Пароли хешируются с помощью Werkzeug
- Сессии управляются через Flask-Login
- Каждый пользователь видит только свои данные
Для продакшн-развертывания:
- Измените
SECRET_KEYвapp.pyна случайную строку - Используйте продакшн-сервер (например, Gunicorn)
- Настройте HTTPS
- Используйте PostgreSQL вместо SQLite для лучшей производительности
pip install gunicorn
gunicorn -w 4 -b 0.0.0.0:5000 backend.app:appPOST /api/register- регистрацияPOST /api/login- входPOST /api/logout- выходGET /api/user- текущий пользовательPUT /api/user/update- обновление профиля
GET /api/anime- список анимеGET /api/anime/<id>- детали анимеPOST /api/anime- добавить анимеPUT /api/anime/<id>- обновить аниме (редактирование)DELETE /api/anime/<id>- удалить аниме
POST /api/anime/<id>/season- добавить сезонPUT /api/season/<id>- обновить сезонDELETE /api/season/<id>- удалить сезон
GET /api/public/users- список публичных профилейGET /api/public/user/<username>- публичный профиль пользователя
POST /api/shikimori/import- импорт из Shikimori
GET /api/export/json- экспорт в JSONGET /api/export/csv- экспорт в CSVGET /api/export/txt- экспорт в TXT
- OAuth авторизация (Google) - в разработке
- Импорт из MAL/AniList - Shikimori реализован
- Публичные профили - реализовано
- Редактирование аниме - реализовано
- Визуализация оценок звездами - реализовано
- Поиск аниме через API
- Статистика и графики
- Теги и категории
- Рекомендации
MIT License - свободное использование
Создано для персонального использования и развития сообщества аниме-фанатов.
Приятного использования! 📺✨