Workout Dashboard
Workout Dashboard — Django admin panel для керування тренуваннями та відео
Workout Dashboard — це адміністративна панель для мобільного фітнес-додатку, яка дозволяє централізовано керувати тренуваннями, категоріями, вправами та відеоконтентом. Система інтегрована з Cloudflare R2 для зберігання відео та синхронізує підготовлений контент із мобільним застосунком.
Основна задача проєкту — спростити додавання нових тренувань у мобільний додаток без ручної роботи з Excel-таблицями, назвами файлів, відеоархівами та складними структурами даних. Адміністратор отримує зручний dashboard, де можна створювати категорії, додавати вправи, прикріплювати відео, налаштовувати описи, таймінги, рівні складності та інші параметри.
Що було реалізовано
Розроблено кастомну адмін-панель на Django
Реалізовано керування категоріями тренувань
Додано модулі для створення та редагування тренувань
Реалізовано базу вправ із описами, параметрами та прив’язкою до категорій
Налаштовано роботу з відеоконтентом через Cloudflare R2
Додано можливість підтягувати відео з R2-бакету
Реалізовано прив’язку відео до вправ і тренувань
Додано архів для прихованих або неактивних елементів
Реалізовано статистичну панель із кількістю категорій, тренувань, вправ і відео
Додано швидкі дії для переходу до основних розділів
Підготовлено структуру даних для передачі в мобільний фітнес-додаток
Реалізовано логіку активації/деактивації контенту
Опрацьовано сценарій, коли частина контенту приховується від мобільного застосунку
Основний функціонал
Адміністратор може створювати категорії тренувань, додавати до них тренування, формувати список вправ, прикріплювати відео з Cloudflare R2, редагувати описи, сортування, активність і додаткові параметри.
Після заповнення даних у dashboard контент стає готовим для використання у мобільному фітнес-додатку. Це дозволяє швидко оновлювати бібліотеку тренувань без прямого втручання в код застосунку або ручного редагування складних таблиць.
Розділи адмін-панелі
Каталог тренувань — керування категоріями, тренуваннями та вправами
Медіа-бібліотека — робота з відео з Cloudflare R2
Архів — прихований або неактивний контент
Доступи — керування адміністративним доступом
Dashboard — загальна статистика по контенту
Швидкі дії — швидкий перехід до ключових модулів
Технології
Backend: Python, Django, Django Admin / Custom Admin, Django ORM
Storage: Cloudflare R2, S3-compatible storage
Database: PostgreSQL / SQLite залежно від середовища
Frontend адмінки: кастомний dashboard-інтерфейс
Інтеграції: Cloudflare R2, mobile app content API
DevOps: Docker, environment-based configuration
Результат
У результаті було створено зручну систему керування контентом для мобільного фітнес-додатку. Dashboard прибрав залежність від ручної синхронізації Excel-таблиць і відеофайлів, зменшив ризик помилок у назвах та структурах, а також дозволив швидко додавати нові тренування, вправи й відео через єдину адміністративну панель.
Проєкт став внутрішнім інструментом для масштабування фітнес-контенту: адміністратор може керувати всією бібліотекою тренувань, а мобільний додаток отримує вже структуровані та готові до відображення дані.
Workout Dashboard — це адміністративна панель для мобільного фітнес-додатку, яка дозволяє централізовано керувати тренуваннями, категоріями, вправами та відеоконтентом. Система інтегрована з Cloudflare R2 для зберігання відео та синхронізує підготовлений контент із мобільним застосунком.
Основна задача проєкту — спростити додавання нових тренувань у мобільний додаток без ручної роботи з Excel-таблицями, назвами файлів, відеоархівами та складними структурами даних. Адміністратор отримує зручний dashboard, де можна створювати категорії, додавати вправи, прикріплювати відео, налаштовувати описи, таймінги, рівні складності та інші параметри.
Що було реалізовано
Розроблено кастомну адмін-панель на Django
Реалізовано керування категоріями тренувань
Додано модулі для створення та редагування тренувань
Реалізовано базу вправ із описами, параметрами та прив’язкою до категорій
Налаштовано роботу з відеоконтентом через Cloudflare R2
Додано можливість підтягувати відео з R2-бакету
Реалізовано прив’язку відео до вправ і тренувань
Додано архів для прихованих або неактивних елементів
Реалізовано статистичну панель із кількістю категорій, тренувань, вправ і відео
Додано швидкі дії для переходу до основних розділів
Підготовлено структуру даних для передачі в мобільний фітнес-додаток
Реалізовано логіку активації/деактивації контенту
Опрацьовано сценарій, коли частина контенту приховується від мобільного застосунку
Основний функціонал
Адміністратор може створювати категорії тренувань, додавати до них тренування, формувати список вправ, прикріплювати відео з Cloudflare R2, редагувати описи, сортування, активність і додаткові параметри.
Після заповнення даних у dashboard контент стає готовим для використання у мобільному фітнес-додатку. Це дозволяє швидко оновлювати бібліотеку тренувань без прямого втручання в код застосунку або ручного редагування складних таблиць.
Розділи адмін-панелі
Каталог тренувань — керування категоріями, тренуваннями та вправами
Медіа-бібліотека — робота з відео з Cloudflare R2
Архів — прихований або неактивний контент
Доступи — керування адміністративним доступом
Dashboard — загальна статистика по контенту
Швидкі дії — швидкий перехід до ключових модулів
Технології
Backend: Python, Django, Django Admin / Custom Admin, Django ORM
Storage: Cloudflare R2, S3-compatible storage
Database: PostgreSQL / SQLite залежно від середовища
Frontend адмінки: кастомний dashboard-інтерфейс
Інтеграції: Cloudflare R2, mobile app content API
DevOps: Docker, environment-based configuration
Результат
У результаті було створено зручну систему керування контентом для мобільного фітнес-додатку. Dashboard прибрав залежність від ручної синхронізації Excel-таблиць і відеофайлів, зменшив ризик помилок у назвах та структурах, а також дозволив швидко додавати нові тренування, вправи й відео через єдину адміністративну панель.
Проєкт став внутрішнім інструментом для масштабування фітнес-контенту: адміністратор може керувати всією бібліотекою тренувань, а мобільний додаток отримує вже структуровані та готові до відображення дані.