docs: translate README to Russian

This commit is contained in:
Mikhail Kiselev
2026-02-10 04:05:13 +03:00
parent 0bf188082c
commit dc9fae3a04

197
README.md
View File

@@ -1,171 +1,174 @@
# Daily Timer
A desktop application for managing daily standup meetings with time tracking, participant management, and statistics.
Десктопное приложение для проведения daily standup митингов с отслеживанием времени, управлением участниками и статистикой.
## Features
## Возможности
- ⏱️ **Timer Display** - Large, visible timer for current speaker with progress bar
- 👥 **Participant Management** - Predefined list with configurable time limits per person
- 🔄 **Speaking Queue** - Visual queue with ability to reorder, skip, or move speakers
- ⏭️ **Skip Function** - Move unprepared participants to end of queue
-**Attendance Tracking** - Mark participants as present/absent before meeting
- ⚠️ **Time Warnings** - Visual and audio alerts when time is running out
- 📊 **Statistics** - Track meeting duration, overtime, and individual performance
- 📈 **History** - View past meetings with detailed breakdowns
- 💾 **Export** - Export data in JSON or CSV format
- 🔊 **Sound Notifications** - Configurable audio alerts
- ⏱️ **Таймер** — крупный таймер текущего спикера с прогресс-баром
- 👥 **Управление участниками** — список с настраиваемым лимитом времени для каждого
- 🔄 **Очередь выступлений** — визуальная очередь, можно менять порядок
- ⏭️ **Пропуск** — переместить неготового участника в конец очереди
-**Отметка присутствия** — пометить кто есть/отсутствует перед митингом
- ⚠️ **Предупреждения** — визуальные и звуковые оповещения когда время заканчивается
- 📊 **Статистика** — длительность митингов, превышения, показатели участников
- 📈 **История** — просмотр прошлых митингов с детальной разбивкой
- 💾 **Экспорт** — экспорт данных в JSON или CSV
- 🔊 **Звуковые уведомления** — настраиваемые звуковые оповещения
## Screenshots
## Скриншоты
_(Coming soon)_
_(Скоро)_
## Requirements
## Требования
- macOS 10.15+ (Catalina or later)
- macOS 10.15+ (Catalina и выше)
- Go 1.21+
- Node.js 18+
- Wails CLI v2
## Installation
## Установка
### Install Wails CLI
### Установка Wails CLI
```bash
go install github.com/wailsapp/wails/v2/cmd/wails@latest
```
### Clone and Build
### Клонирование и сборка
```bash
git clone https://github.com/your-username/daily-timer.git
git clone https://git.movida.biz/bell/daily-timer.git
cd daily-timer
# Initialize project
# Инициализация проекта
make init
# Development mode
# Режим разработки
make dev
# Build for production
# Сборка для production
make build
```
The built application will be in `build/bin/`.
Собранное приложение будет в `build/bin/`.
### macOS Gatekeeper
Since the app is not signed with an Apple Developer certificate, macOS may show "app is damaged" error. To fix:
Приложение не подписано Apple Developer сертификатом, поэтому macOS может показать ошибку "приложение повреждено". Исправление:
```bash
# Remove quarantine attribute
# Убрать атрибут карантина
xattr -cr "Daily Timer.app"
```
Or right-click the app → Open → Open (first launch only).
Или: правый клик → Открыть → Открыть (только при первом запуске).
## Usage
## Использование
### Setup Meeting
### Подготовка митинга
1. **Add Participants** - Enter names and set individual time limits
2. **Set Meeting Limit** - Configure total meeting duration (default: 15 minutes)
3. **Arrange Order** - Drag to reorder speaking sequence
4. **Mark Attendance** - Toggle present/absent status
1. **Добавить участников** — ввести имена и установить лимиты времени
2. **Установить общий лимит** — настроить длительность митинга (по умолчанию: 15 минут)
3. **Упорядочить** — перетащить для изменения порядка выступлений
4. **Отметить присутствие** — переключить статус присутствия/отсутствия
### During Meeting
### Во время митинга
1. Click **Start Meeting** to begin
2. Timer shows current speaker with countdown
3. Click **Next Speaker** to advance (or press ⌘N)
4. Click **Skip** to move current speaker to end of queue
5. Use **Pause/Resume** for interruptions
6. Click **Stop** to end meeting early
1. Нажать **Начать митинг**
2. Таймер показывает текущего спикера с обратным отсчётом
3. Нажать **Следующий** для перехода (или ⌘N)
4. Нажать **Пропустить** чтобы переместить спикера в конец очереди
5. Использовать **Пауза/Продолжить** для прерываний
6. Нажать **Стоп** для досрочного завершения
### Keyboard Shortcuts
### Горячие клавиши
| Key | Action |
| ----- | ------------ |
| ⌘N | Next Speaker |
| ⌘S | Skip Speaker |
| Space | Pause/Resume |
| ⌘Q | Stop Meeting |
| Клавиша | Действие |
| ------- | ----------------- |
| ⌘N | Следующий спикер |
| ⌘S | Пропустить |
| Space | Пауза/Продолжить |
| ⌘Q | Остановить митинг |
### Statistics
### Статистика
- View historical meeting data in the **History** tab
- Filter by date range
- Export to JSON or CSV for external analysis
- Track participant overtime frequency and average speaking time
- Просмотр истории в вкладке **История**
- Фильтрация по датам
- Экспорт в JSON или CSV для анализа
- Отслеживание превышений и среднего времени выступлений
## Configuration
## Конфигурация
Settings are stored in `~/Library/Application Support/DailyTimer/`:
Настройки хранятся в `~/Library/Application Support/DailyTimer/`:
- `daily-timer.db` - SQLite database with all data
- `sounds/` - Custom sound files (optional)
- `daily-timer.db` SQLite база данных со всеми данными
- `sounds/` — кастомные звуковые файлы (опционально)
### Custom Sounds
### Кастомные звуки
Place custom MP3 files in the sounds directory:
Положить MP3 файлы в директорию sounds:
- `warning.mp3` - Plays when time is running low
- `timeup.mp3` - Plays when speaker time expires
- `meeting_end.mp3` - Plays when meeting ends
- `warning.mp3` — воспроизводится когда время заканчивается
- `timeup.mp3` — воспроизводится когда время спикера истекло
- `meeting_end.mp3` — воспроизводится при завершении митинга
## Development
## Разработка
### Project Structure
### Структура проекта
```
daily-timer/
├── main.go # Wails application entry point
├── main.go # Точка входа Wails приложения
├── internal/
│ ├── app/ # Application logic and Wails bindings
│ ├── models/ # Data models
│ ├── storage/ # SQLite database layer
│ └── timer/ # Timer logic with events
│ ├── app/ # Логика приложения и Wails bindings
│ ├── models/ # Модели данных
│ ├── storage/ # Слой работы с SQLite
│ └── timer/ # Логика таймера с событиями
├── frontend/
│ ├── src/
│ │ ├── App.svelte # Main application
│ │ └── components/ # UI components
│ └── wailsjs/ # Generated Go bindings
├── wails.json # Wails configuration
├── Makefile # Build commands
│ │ ├── App.svelte # Главный компонент
│ │ └── components/ # UI компоненты
│ └── wailsjs/ # Сгенерированные Go bindings
├── wails.json # Конфигурация Wails
├── Makefile # Команды сборки
└── README.md
```
### Commands
### Команды
```bash
make dev # Start development with hot reload
make build # Build production binary
make test # Run tests
make fmt # Format code
make lint # Run linters
make clean # Clean build artifacts
make dev # Запуск разработки с hot reload
make build # Сборка production бинарника
make test # Запуск тестов
make fmt # Форматирование кода
make lint # Запуск линтеров
make clean # Очистка артефактов сборки
```
## Roadmap
### Релиз
- [ ] Drag-and-drop participant reordering
- [ ] Telegram integration (send meeting summary)
- [ ] Calendar integration (auto-schedule)
- [ ] Team templates
- [ ] Cloud sync
- [ ] Windows/Linux support
```bash
# 1. Создать тег версии
git tag -a v0.2.0 -m "Описание релиза"
git push origin v0.2.0
## License
# 2. Собрать и опубликовать
GITEA_TOKEN=<token> make release-publish
```
MIT License - see [LICENSE](LICENSE) for details.
## Планы
## Contributing
- [ ] Drag-and-drop для порядка участников
- [ ] Интеграция с Telegram (отправка сводки митинга)
- [ ] Интеграция с календарём (авто-расписание)
- [ ] Шаблоны команд
- [ ] Облачная синхронизация
- [ ] Поддержка Windows/Linux
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Run tests and linting
5. Submit a pull request
## Лицензия
## Support
MIT License — см. [LICENSE](LICENSE).
For issues and feature requests, please use GitHub Issues.
## Поддержка
Для багов и запросов функций используйте GitHub Issues.