KURSPRO — corporate website and CMS platform
KURSPRO is a corporate web project for a company working in electrical installation, low-voltage systems, video surveillance and smoke protection.

The project went through a full transformation cycle: from a static prototype to a production-ready Laravel solution with its own CMS, a lead processing system and a well-designed DevOps infrastructure.

Solution
We built a complete CMS platform with an admin panel and flexible architecture that covers both marketing and operational business needs.
Public website
All the key sections were implemented:
- homepage
- services
- case studies
- news
- FAQ
- contacts
- about page
We also added dynamic pages with SEO-friendly URLs (slugs) for:
- news
- case studies
- services
Lead management system
The project includes a complete lead generation system:
- enquiry form with server-side validation
- spam protection (honeypot)
- request rate limiting
- technical data collection (IP, User-Agent)
- manager notifications by email

Two workflows are supported:
- classic form submission (redirect)
- AJAX/API (JSON responses)
Admin panel (CMS)
The admin panel was designed as a real working tool for the content team:
- lead management with export
- editing pages and site sections
- managing SEO meta for every route
- CRUD for: news \ case studies \ FAQ (groups and questions) \ services

Highlights
- authentication through a separate protected zone
- brute-force protection (login attempt limits)
- production configuration security checks
- content management without code releases
SEO infrastructure
The project was designed with search engines in mind from day one:
- automatic
robots.txt generation
- dynamic
sitemap.xml
- HTML sitemap
- meta title and description management through the CMS
- page indexability control

Architecture and logic
The application is built on Laravel MVC with a clear separation of responsibilities:
- content is managed through the CMS, not in templates
- publishing logic: only
is_published = true records are displayed, with support for scheduled publishing (published_at)

Middleware layer
- admin zone protection
- security headers
- rate limiting for critical operations

Technology stack
Backend:
Frontend:
- Vite
- Tailwind CSS 4
- Axios
Database:
- SQLite (default)
- MySQL / PostgreSQL support
Infrastructure:
- Nginx + PHP-FPM
- Docker Compose

DevOps and operations
Two deployment scenarios were implemented:
1. Classic
- Nginx + PHP-FPM
- Composer
- artisan cache pipeline
2. Containerised (Docker)
- builds via Dockerfile
- managed with Docker Compose
- automatic container updates from GHCR
- restarts without manual intervention

Additionally
- persistent storage for the database and media
- backup policy (sqlite, media, .env)
- rollback procedures
- smoke checks before releases
Implementation stages
Sprint 1:
Rapid launch of a static prototype and visual adaptation
Stage 2:
Migration to Laravel + CMS and lead processing logic
Production stage:
- security hardening
- CI/CD setup
- Docker infrastructure rollout
- operations documentation

In short
KURSPRO is not just a website but a complete Laravel CMS platform combining content management, SEO, lead generation and DevOps infrastructure in a single solution.