# Настройка переменных окружения Этот проект использует переменные окружения для хранения секретных данных и конфигурации. ## Установка 1. Скопируйте файл `env.example` в `.env`: ```bash cp env.example .env ``` 2. Отредактируйте файл `.env` и замените значения на ваши собственные секреты. ## Переменные окружения ### API URLs - `BASE_URL` - основной URL API (по умолчанию: https://eatvio.ru) - `DEV_BASE_URL` - URL API для разработки (по умолчанию: https://dev2.eatvio.com) ### Sentry Configuration - `SENTRY_DSN` - DSN для Sentry мониторинга ### Firebase Configuration - `FIREBASE_PROJECT_ID` - ID проекта Firebase - `FIREBASE_DATABASE_URL` - URL базы данных Firebase - `FIREBASE_STORAGE_BUCKET` - bucket для хранения файлов - `FIREBASE_MESSAGING_SENDER_ID` - ID отправителя сообщений ### Firebase Android Configuration - `FIREBASE_ANDROID_API_KEY` - API ключ для Android - `FIREBASE_ANDROID_APP_ID` - ID приложения для Android ### Firebase iOS Configuration - `FIREBASE_IOS_API_KEY` - API ключ для iOS - `FIREBASE_IOS_APP_ID` - ID приложения для iOS - `FIREBASE_IOS_BUNDLE_ID` - Bundle ID для iOS ### App Store URLs - `APP_STORE_URL` - URL App Store - `RUSTORE_URL` - URL RuStore ### Support URLs - `TELEGRAM_SUPPORT_URL` - URL поддержки в Telegram - `SUPPORT_EMAIL` - email для поддержки ### Test Credentials (только для разработки) - `TEST_EMAIL` - тестовый email - `TEST_PASSWORD` - тестовый пароль ### Email Validation API - `EMAIL_VALIDATION_API_URL` - URL API для валидации email ### Connection Check URLs - `GOOGLE_CHECK_URL` - URL для проверки соединения (Google) - `YANDEX_CHECK_URL` - URL для проверки соединения (Yandex) ### VK ID Configuration - `VK_CLIENT_ID` - ID приложения VK (числовой) - **Примечание**: VK_CLIENT_ID - это числовой "ID приложения" из консоли VK ID, НЕ "Защищённый ключ" или "Сервисный ключ доступа" ### Yandex ID Configuration - `YANDEX_CLIENT_ID` - ID приложения Yandex OAuth - `YANDEX_CLIENT_SECRET` - секретный ключ приложения Yandex OAuth - `YANDEX_REDIRECT_URI` - URI для перенаправления (должен совпадать с настройками в Yandex OAuth приложении) ## Безопасность ⚠️ **ВАЖНО**: Файл `.env` добавлен в `.gitignore` и не должен попадать в репозиторий. Все секретные данные должны храниться только в этом файле. ## Использование в коде Для доступа к переменным окружения используйте класс `EnvConfig`: ```dart import 'package:eatvio_app/core/env_config.dart'; String baseUrl = EnvConfig.baseUrl; String sentryDsn = EnvConfig.sentryDsn; ``` ## Миграция Все секреты были перенесены из кода в переменные окружения: 1. **Sentry DSN** - из `main.dart` 2. **Firebase конфигурация** - из `firebase_options.dart` 3. **API URLs** - из `const.dart` 4. **URL для проверки соединения** - из `internet_connection_checker_screen.dart` 5. **URL для обновления приложения** - из `update_screen.dart` 6. **URL поддержки Telegram** - из `support_screen.dart` 7. **API для валидации email** - из `registration_repository.dart` 8. **Тестовые учетные данные** - из `test_cases.dart` 9. **Email поддержки** - из `support_screen.dart`