DoSoapCalc/CHANGELOG.md
dosai 281fc94838 docs: Обновлена документация по настройке Git credentials
- Добавлена информация в CHANGELOG о настройке credential helper
- Обновлён README с инструкциями по автоматической отправке
- Создан .git_setup.md с подробными инструкциями
2025-11-01 19:44:20 +03:00

85 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog
Все значимые изменения в проекте DoSoapCalc документируются в этом файле.
Формат основан на [Keep a Changelog](https://keepachangelog.com/ru/1.0.0/),
и проект следует [Semantic Versioning](https://semver.org/lang/ru/).
## [2.0.0] - 2024-11-01
### Добавлено
- **Модульная архитектура калькуляторов**: Система поддержки множества калькуляторов с единой логикой
- **Система регистрации калькуляторов**: Плагинная архитектура для backend и frontend
- **Универсальный компонент DynamicCalculator**: Автоматическая генерация форм из схемы полей
- **Пример нового калькулятора**: Калькулятор свечей (candle) как пример добавления новых калькуляторов
- **Динамические роуты**: Поддержка `/[calculatorType]` для любых зарегистрированных калькуляторов
- **Переменные окружения**: Использование `.env` файлов вместо хардкода
- **Валидация данных**: Проверка обязательных и числовых полей на backend
- **Улучшенная обработка ошибок**: Детальное логирование и обработка ошибок Telegram API
- **PM2 конфигурация**: Файл `ecosystem.config.js` для управления процессами
- **Конфигурация CORS**: Настройка разрешённых доменов через переменные окружения
- **Документация**:
- `PROJECT_INFO.md` - сводная информация о проекте для быстрого понимания
- `CALCULATOR_GUIDE.md` - руководство по добавлению новых калькуляторов
- `README.md` - обновлённая документация проекта
- `CHANGELOG.md` - этот файл для отслеживания изменений
- `.git_setup.md` - инструкции по настройке Git credentials
### Изменено
- **Рефакторинг backend**: Разделение на модули (calculators, lib, routes, config)
- **Рефакторинг frontend**: Переход на модульную систему с TypeScript типами
- **API маршруты**: Изменён с `/api/submit` на `/api/submit/:calculatorType`
- **Компонент SoapCalculator**: Заменён на универсальный DynamicCalculator
- **Структура проекта**: Реорганизована для масштабируемости
### Улучшено
- **Безопасность**: Токены и URL вынесены в переменные окружения
- **Масштабируемость**: Легко добавлять новые калькуляторы без изменения основной логики
- **Типизация**: Добавлены TypeScript типы для калькуляторов
- **Код-организация**: Разделение ответственности между модулями
### Настроено
- **Git Credential Helper**: Настроено автоматическое сохранение credentials для push без запроса пароля
- Credential helper: `store` (постоянное сохранение)
- Файл credentials: `~/.git-credentials` (права доступа 600)
- При первом push вводятся логин и пароль, далее - автоматически
### Технические детали
#### Backend структура:
- `backend/config/env.js` - загрузка переменных окружения
- `backend/lib/telegram.js` - общая логика отправки в Telegram
- `backend/lib/validator.js` - валидация данных
- `backend/calculators/` - модули калькуляторов
- `backend/routes/api.js` - динамические API маршруты
#### Frontend структура:
- `frontend/types/calculator.ts` - TypeScript типы
- `frontend/lib/calculators/` - модули калькуляторов (frontend)
- `frontend/components/DynamicCalculator.tsx` - универсальный компонент
- `frontend/app/[calculator]/page.tsx` - динамические роуты
### Зависимости
- **Добавлено**: `dotenv@^16.4.5` для работы с переменными окружения
## [1.0.0] - 2024-10-XX
### Добавлено
- Базовый функционал калькулятора мыла
- Интеграция с Telegram ботом
- Веб-интерфейс на Next.js
- Отправка результатов расчёта в Telegram
- Поддержка загрузки фото
---
[2.0.0]: https://github.com/yourusername/DoSoapCalc/compare/v1.0.0...v2.0.0
[1.0.0]: https://github.com/yourusername/DoSoapCalc/releases/tag/v1.0.0