Корпоративный сайт и CMS-платформа
KURSPRO - корпоративный сайт и CMS-платформа
KURSPRO - это корпоративный веб-проект для компании, работающей в сфере электромонтажа, слаботочных систем, видеонаблюдения и противодымной защиты.

Проект прошёл полный цикл трансформации: от статического прототипа до production-ready решения на базе Laravel с собственной CMS, системой обработки заявок и продуманной DevOps-инфраструктурой.

Задача
Клиенту требовалось не просто обновить сайт, а превратить его в управляемый инструмент для бизнеса:
- отказаться от статической структуры в пользу динамической системы управления контентом
- упростить публикацию материалов без участия разработчиков
- автоматизировать сбор и обработку заявок
- обеспечить стабильный деплой и обновления без простоев

Решение
Мы разработали полноценную CMS-платформу с административной панелью и гибкой архитектурой, которая закрывает как маркетинговые, так и операционные задачи бизнеса.
Публичная часть
Реализованы все ключевые разделы сайта:
- главная страница
- услуги
- кейсы
- новости
- FAQ
- контакты
- страница «о компании»
Дополнительно внедрены динамические страницы с SEO-дружественными URL (slug) для:
- новостей
- кейсов
- услуг
Система обработки заявок (Lead Management)
В проекте реализована полноценная система лидогенерации:
- форма заявок с серверной валидацией
- защита от спама (honeypot)
- ограничение частоты запросов
- сбор технических данных (IP, User-Agent)
- уведомление менеджера по email

Поддержаны два сценария работы:
- классическая форма (redirect)
- AJAX/API (JSON-ответы)
Административная панель (CMS)
Админка разработана как полноценный рабочий инструмент контент-команды:
- управление заявками с возможностью экспорта
- редактирование страниц и секций сайта
- управление SEO-мета по каждому маршруту
- CRUD для: новостей \ кейсов \ FAQ (группы и вопросы) \ услуг

Особенности
- авторизация через отдельный защищённый контур
- защита от brute-force (лимиты попыток входа)
- проверка безопасности конфигурации в production
- управление контентом без необходимости релиза кода
SEO-инфраструктура
Проект изначально проектировался с учётом требований поисковых систем:
- автоматическая генерация
robots.txt - динамический
sitemap.xml - HTML-карта сайта
- управление meta title и description через CMS
- контроль индексируемости страниц

Архитектура и логика
Приложение построено на Laravel MVC с чётким разделением ответственности:
- контент управляется через CMS, а не через шаблоны
- публикационная логика: отображение только
is_published = trueи поддержка отложенной публикации (published_at)
Middleware-слой
- защита админ-зоны
- security headers
- rate limiting для критичных операций

Технологический стек
Backend:
- PHP 8.3
- Laravel 13
Frontend:
- Vite
- Tailwind CSS 4
- Axios
База данных:
- SQLite (по умолчанию)
- поддержка MySQL / PostgreSQL
Инфраструктура:
- Nginx + PHP-FPM
- Docker Compose

DevOps и эксплуатация
Реализованы два сценария развертывания:
1. Классический
- Nginx + PHP-FPM
- Composer
- artisan cache pipeline
2. Контейнерный (Docker)
- сборка через Dockerfile
- управление через Docker Compose
- автообновление контейнера из GHCR
- перезапуск без ручного вмешательства

Дополнительно
- persistent storage для БД и медиа
- backup-политика (sqlite, media, .env)
- rollback-процедуры
- smoke-check перед релизами
Этапы реализации
Sprint 1: Быстрый запуск статического прототипа и визуальная адаптация
Этап 2: Перенос на Laravel + внедрение CMS и логики заявок
Production-этап:
- усиление безопасности (hardening)
- настройка CI/CD
- внедрение Docker-инфраструктуры
- подготовка эксплуатационной документации

Результат
- сайт стал полноценным управляемым продуктом
- контент-команда получила автономность
- лиды централизованы и обрабатываются автоматически
- внедрён стабильный DevOps-контур

Кратко
KURSPRO — это не просто сайт, а полноценная CMS-платформа на Laravel, объединяющая управление контентом, SEO, лидогенерацию и DevOps-инфраструктуру в одном решении.