{"id":51831186,"url":"https://github.com/ionic-typing/front-tommy-temp","last_synced_at":"2026-07-22T15:31:20.973Z","repository":{"id":318601219,"uuid":"1071968770","full_name":"ionic-typing/front-tommy-temp","owner":"ionic-typing","description":null,"archived":false,"fork":false,"pushed_at":"2025-10-08T04:53:21.000Z","size":4724,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-01T10:37:27.401Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ionic-typing.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-08T04:37:03.000Z","updated_at":"2025-10-08T04:53:24.000Z","dependencies_parsed_at":"2025-10-08T06:26:43.856Z","dependency_job_id":"7ebba38e-d8c4-4c75-8a05-d4ee7c9da146","html_url":"https://github.com/ionic-typing/front-tommy-temp","commit_stats":null,"previous_names":["atlas-is-coding/front-tommy-temp","ionic-typing/front-tommy-temp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ionic-typing/front-tommy-temp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ionic-typing%2Ffront-tommy-temp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ionic-typing%2Ffront-tommy-temp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ionic-typing%2Ffront-tommy-temp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ionic-typing%2Ffront-tommy-temp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ionic-typing","download_url":"https://codeload.github.com/ionic-typing/front-tommy-temp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ionic-typing%2Ffront-tommy-temp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35768234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-22T02:00:06.236Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-07-22T15:31:20.100Z","updated_at":"2026-07-22T15:31:20.960Z","avatar_url":"https://github.com/ionic-typing.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tommy Horne Frontend Deployment\n\nЭтот проект содержит фронтенд приложение Tommy Horne с автоматизированным развертыванием на VPS сервере с nginx и SSL сертификатом.\n\n## Структура проекта\n\n```\ntommy-horne-front/\n├── index.html              # Главная страница приложения\n├── nginx.conf              # Конфигурация nginx с HTTPS\n├── deploy.py               # Основной Python скрипт развертывания\n├── quick_deploy.py         # Упрощенный скрипт для быстрого развертывания\n├── deploy.sh               # Bash скрипт развертывания (legacy)\n├── setup-ssl.sh            # Скрипт настройки SSL сертификата\n├── deploy_config.json      # Конфигурационный файл\n├── requirements.txt        # Python зависимости\n├── tommy-horne-front.service # Systemd сервис\n├── README.md               # Документация\n└── [статические файлы]     # CSS, JS, изображения и т.д.\n```\n\n## Быстрый старт\n\n### 1. Подготовка сервера\n\nУбедитесь, что у вас есть:\n- VPS сервер с Ubuntu/Debian\n- Домен, указывающий на IP сервера\n- Доступ по SSH с правами root\n\n### 2. Загрузка проекта на сервер\n\n```bash\n# Клонируйте или загрузите проект на сервер\ngit clone \u003cyour-repo-url\u003e /tmp/tommy-horne-front\ncd /tmp/tommy-horne-front\n\n# Или загрузите файлы через scp\nscp -r . root@your-server-ip:/tmp/tommy-horne-front/\n```\n\n### 3. Python развертывание (рекомендуется)\n\n#### Быстрое развертывание:\n```bash\n# Перейдите в директорию проекта\ncd /tmp/tommy-horne-front\n\n# Запустите быстрый скрипт\nsudo python3 quick_deploy.py --domain synaptrixtools.com --email your-email@example.com\n```\n\n#### Полное развертывание с конфигурацией:\n```bash\n# Отредактируйте конфигурацию (опционально)\nnano deploy_config.json\n\n# Запустите основной скрипт\nsudo python3 deploy.py --domain synaptrixtools.com --email your-email@example.com\n```\n\n#### Интерактивный режим:\n```bash\nsudo python3 deploy.py\n# Скрипт запросит домен и email\n```\n\n### 4. Bash развертывание (legacy)\n\n```bash\n# Сделайте скрипт исполняемым\nchmod +x deploy.sh setup-ssl.sh\n\n# Запустите развертывание\nsudo ./deploy.sh --domain synaptrixtools.com --email your-email@example.com\n```\n\n## Что делают скрипты развертывания\n\n### Python скрипты (рекомендуется):\n\n#### `deploy.py` - Полный скрипт развертывания:\n1. **Обновление системы** - обновляет пакеты системы\n2. **Установка зависимостей** - устанавливает nginx, certbot и другие необходимые пакеты\n3. **Создание структуры директорий** - создает необходимые папки с правильными правами\n4. **Резервное копирование** - создает бэкап существующего развертывания\n5. **Развертывание файлов** - копирует файлы фронтенда в web-директорию\n6. **Настройка nginx** - конфигурирует nginx с HTTPS\n7. **Настройка SSL** - получает SSL сертификат от Let's Encrypt\n8. **Настройка файрвола** - открывает необходимые порты\n9. **Настройка логирования** - настраивает ротацию логов\n10. **Создание сервиса** - создает systemd сервис для автозапуска\n11. **Мониторинг** - настраивает базовый мониторинг\n12. **Конфигурация** - использует JSON конфигурацию для гибкой настройки\n\n#### `quick_deploy.py` - Упрощенный скрипт:\n- Быстрое развертывание без дополнительных настроек\n- Минимальная конфигурация\n- Идеально для тестирования и простых развертываний\n\n### Bash скрипты (legacy):\n\n#### `deploy.sh` - Bash версия полного развертывания:\n- Аналогичная функциональность Python версии\n- Использует bash команды\n- Менее гибкая конфигурация\n\n## Конфигурация nginx\n\nNginx настроен с:\n- HTTP → HTTPS редиректом\n- SSL/TLS с современными настройками безопасности\n- Gzip сжатием\n- Кэшированием статических файлов\n- Безопасными заголовками\n- CORS для шрифтов\n\n## SSL сертификат\n\nИспользуется Let's Encrypt с автоматическим обновлением:\n- Сертификат обновляется автоматически через cron\n- Поддерживает wildcard домены\n- Настроена проверка обновления\n\n## Конфигурация\n\n### `deploy_config.json` - Основной конфигурационный файл:\n\n```json\n{\n    \"domain\": \"synaptrixtools.com\",\n    \"email\": \"your-email@example.com\",\n    \"server_ip\": \"your-server-ip\",\n    \"ssl_enabled\": true,\n    \"firewall_enabled\": true,\n    \"monitoring_enabled\": true,\n    \"backup_enabled\": true,\n    \"rate_limiting\": {\n        \"api_rate\": \"10r/s\",\n        \"static_rate\": \"30r/s\"\n    }\n}\n```\n\n### Командная строка Python скриптов:\n\n```bash\n# Основной скрипт с опциями\npython3 deploy.py --help\n\n# Быстрый скрипт\npython3 quick_deploy.py --help\n\n# Примеры использования\npython3 deploy.py --domain synaptrixtools.com --email admin@example.com\npython3 deploy.py --no-ssl --no-firewall\npython3 quick_deploy.py --domain synaptrixtools.com --email admin@example.com --no-ssl\n```\n\n## Управление сервисом\n\n```bash\n# Статус сервиса\nsudo systemctl status tommy-horne-front\n\n# Запуск сервиса\nsudo systemctl start tommy-horne-front\n\n# Остановка сервиса\nsudo systemctl stop tommy-horne-front\n\n# Перезапуск сервиса\nsudo systemctl restart tommy-horne-front\n\n# Включение автозапуска\nsudo systemctl enable tommy-horne-front\n\n# Отключение автозапуска\nsudo systemctl disable tommy-horne-front\n```\n\n## Управление nginx\n\n```bash\n# Проверка конфигурации\nsudo nginx -t\n\n# Перезагрузка конфигурации\nsudo systemctl reload nginx\n\n# Перезапуск nginx\nsudo systemctl restart nginx\n\n# Статус nginx\nsudo systemctl status nginx\n```\n\n## Логи\n\n```bash\n# Логи nginx\nsudo journalctl -u nginx -f\n\n# Логи приложения\nsudo journalctl -u tommy-horne-front -f\n\n# Логи доступа nginx\nsudo tail -f /var/log/nginx/access.log\n\n# Логи ошибок nginx\nsudo tail -f /var/log/nginx/error.log\n```\n\n## Мониторинг\n\nСкрипт создает базовый мониторинг:\n- Проверка доступности сайта каждые 5 минут\n- Автоматический перезапуск nginx при проблемах\n- Логирование в `/var/log/tommy-horne-front/`\n\n## Резервное копирование\n\nАвтоматические бэкапы сохраняются в `/var/backups/tommy-horne-front/`:\n- Создается перед каждым развертыванием\n- Формат: `backup-YYYYMMDD-HHMMSS.tar.gz`\n\n## Обновление SSL сертификата\n\n```bash\n# Проверка обновления (тестовый режим)\nsudo certbot renew --dry-run\n\n# Принудительное обновление\nsudo certbot renew\n\n# Проверка статуса сертификатов\nsudo certbot certificates\n```\n\n## Безопасность\n\nНастроены следующие меры безопасности:\n- UFW файрвол с открытыми портами 22, 80, 443\n- Современные SSL/TLS настройки\n- Безопасные HTTP заголовки\n- Ограничение доступа к системным файлам\n- Rate limiting для API\n\n## Устранение неполадок\n\n### Проблема: Сайт не открывается\n```bash\n# Проверьте статус nginx\nsudo systemctl status nginx\n\n# Проверьте конфигурацию\nsudo nginx -t\n\n# Проверьте логи\nsudo journalctl -u nginx -f\n```\n\n### Проблема: SSL сертификат не работает\n```bash\n# Проверьте сертификаты\nsudo certbot certificates\n\n# Обновите сертификат\nsudo certbot renew\n\n# Проверьте DNS\nnslookup your-domain.com\n```\n\n### Проблема: 502 Bad Gateway\n```bash\n# Проверьте, что nginx запущен\nsudo systemctl status nginx\n\n# Проверьте права доступа к файлам\nsudo chown -R www-data:www-data /var/www/tommy-horne-front\n```\n\n## Дополнительные настройки\n\n### Изменение домена\n1. Обновите DNS записи\n2. Отредактируйте nginx конфигурацию\n3. Получите новый SSL сертификат\n4. Перезапустите nginx\n\n### Добавление API бэкенда\nОтредактируйте `nginx.conf` и настройте upstream для вашего API сервера.\n\n## Поддержка\n\nПри возникновении проблем:\n1. Проверьте логи\n2. Убедитесь, что DNS настроен правильно\n3. Проверьте статус всех сервисов\n4. Обратитесь к документации nginx и certbot\n\n## Лицензия\n\n[Укажите вашу лицензию]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fionic-typing%2Ffront-tommy-temp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fionic-typing%2Ffront-tommy-temp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fionic-typing%2Ffront-tommy-temp/lists"}