https://github.com/warlikelaux/strike-v
Геймифицированный трекер привычек, созданный для победы над исполнительной дисфункцией. Проект превращает рутину в игру, где большая цель - это Скала, которую нужно разбить.
https://github.com/warlikelaux/strike-v
adhd ai gamification habit-tracker habit-tracking npm pnpm prettier pwa spa tailwind tailwindcss vite vue vue3
Last synced: 4 months ago
JSON representation
Геймифицированный трекер привычек, созданный для победы над исполнительной дисфункцией. Проект превращает рутину в игру, где большая цель - это Скала, которую нужно разбить.
- Host: GitHub
- URL: https://github.com/warlikelaux/strike-v
- Owner: WarLikeLaux
- Created: 2026-01-11T02:26:40.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-25T19:02:02.000Z (4 months ago)
- Last Synced: 2026-01-26T08:24:33.393Z (4 months ago)
- Topics: adhd, ai, gamification, habit-tracker, habit-tracking, npm, pnpm, prettier, pwa, spa, tailwind, tailwindcss, vite, vue, vue3
- Language: Vue
- Homepage: https://warlikelaux.github.io/strike-v/
- Size: 2.4 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ⚡️ Strike V


[](https://opensource.org/licenses/MIT)
[](https://vuejs.org/)
[](https://vitejs.dev/)
[](https://tailwindcss.com/)
Геймифицированный трекер привычек, созданный для победы над исполнительной дисфункцией. Strike V превращает рутину в игру, где любая большая цель — это скала, которую нужно разбить.
## 🎯 Суть проекта
Вместо бесконечных списков дел — простая и мощная механика:
- Метафора: ваша цель — это монолитная скала с определенным запасом HP.
- Правило 5 ударов: у вас есть ровно 5 слотов для задач. Это заставляет фокусироваться только на самом важном.
- Прогресс: каждый выполненный пункт — это удар киркой 🔨. Удар уменьшает здоровье скалы.
- Импульс: мгновенная визуальная и звуковая обратная связь за каждое действие.
## ✨ Основные функции
- Main & Side Quests: ведите одну глобальную цель и сколько угодно побочных квестов.
- Умные типы задач:
- Привычка: многократное выполнение в течение срока.
- Джокер: разовая задача для «разбавления» рутины.
- Замещение: временная задача на один день для гибкости.
- Режимы игры:
- 🎯 Фокус-режим: показывает только одну задачу за раз, помогая не распыляться.
- 🔥 Хардмод: блокирует доступ к сайд-квестам, пока вы не выполнили норму по основной цели.
- Предустановки (Presets): 4 готовых набора задач:
- **Путь Программиста** (90 дней) — кодинг, гиты, алгоритмы
- **Английский: Базовый** (30 дней) — слова, чтение, прослушивание
- **Осознанность** (30 дней) — медитация, йога, цифровая гигиена
- **Похудение и Здоровье** (60 дней) — фитнес, питание, восстановление
- Локальное хранилище: все данные сохраняются в браузере с поддержкой экспорта и импорта для бэкапа.
- Экспорт/импорт: сохраняйте игру как JSON файл или используйте сжатый ключ (Base64) для быстрого обмена состоянием.
- Атмосфера: динамический фон (туман), звуковые эффекты и реактивные комментарии от самой «Скалы».
## 🛠 Технологический стек
**Frontend:**
- Vue 3 (Composition API) с типизацией TypeScript
- Vite (с rolldown-vite для Rust-бандлинга) — молниеносная сборка
- Tailwind CSS 4 для стилизации
- Floating Vue для системы подсказок
**Утилиты:**
- pako — сжатие состояния игры (DEFLATE)
- Плавные анимации через CSS transitions
**Тестирование:**
- Vitest с покрытием кода
- @vue/test-utils для компонент-тестов
> [!NOTE]
> Проект использует **[rolldown-vite](docs/rolldown.md)** — экспериментальный Rust-бандлер для ускорения сборки.
## ⚙️ Настройки
- **День начинается в:** Настраивается час, с которого считается новый день (0-23)
- **Фокус-режим:** Показывает одну случайную задачу, помогает избежать перегруза
- **Хардмод:** Блокирует побочные квесты до выполнения нормы основного квеста
- **Звуки:** Включайте/отключайте звуковые эффекты
- **Подсказки:** Всплывающие описания функций интерфейса
## 📦 Экспорт и импорт
**JSON Экспорт:**
- Сохраняет полное состояние игры в читаемом формате
- Используйте для резервных копий или обмена между устройствами
- Скачивается как `rock-breaker-YYYY-MM-DD.json`
**Сжатый ключ:**
- Компактное представление состояния (Base64 + DEFLATE)
- Идеален для быстрого обмена через текст
- Копируйте и вставляйте в настройках приложения
## 🚀 Как запустить
1. Установите зависимости:
```bash
pnpm install
```
2. Запустите сервер разработки:
```bash
pnpm dev
```
3. Сборка проекта:
```bash
pnpm build
```
## 👨💻 Разработка
**Полезные команды:**
```bash
pnpm lint # Проверка кода (ESLint)
pnpm lint:fix # Автоисправление стиля
pnpm test # Запуск unit-тестов
pnpm test:watch # Интерактивный режим тестов
pnpm test:coverage # Отчет о покрытии кода
```
**Структура проекта:**
```text
src/
├── features/ # Модули функционала
│ ├── game/ # Основная игровая логика
│ ├── settings/ # Настройки и предустановки
│ ├── tasks/ # Управление задачами
│ └── help/ # Справка и информация
├── shared/ # Переиспользуемые утилиты и компоненты
│ ├── utils/ # Функции (обработка дат, сжатие)
│ ├── constants/ # Игровые константы
│ └── types/ # TypeScript интерфейсы
```
---
_Strike V — превратите «надо» в «удар»!_