Full Stack Software Engineering
The completed work is a public marketing and lead-generation site for a non-emergency medical transport service, together with an admin control panel for managing all customer-facing content. The server side is built with PHP on the Yii 2 Advanced application template: a frontend application serves the public website, and a backend application powers the CMS at /admin. MariaDB (MySQL-compatible) is used as the database; schema and seed data ship with a db.sql dump for reproducible local and Docker setups. The stack is containerized with Docker Compose (Nginx, PHP 8.1-FPM, MariaDB), so the whole environment can be brought up with a single compose command for demos and development.
The system effectively has two audiences. Administrators sign into the backend (AdminLTE-based UI) and manage advantages, vehicle fleet, price list, customer reviews, contact blocks (phones, email, address, hours, etc.), and social network links. Content is stored in the database and surfaced on the landing page with caching where appropriate. Visitors do not run a full e-commerce checkout; instead they use the consultation request flow and can submit reviews, while the homepage presents services, team copy, pricing, reviews, and an embedded Google Map tied to configurable coordinates and API keys.
On the public site, the layout includes navigation, hero, service blocks, advantages, workflow, team, prices, reviews, contacts, map, and modals for consultation and feedback. Forms validate on the server; consultation flow can notify staff by email depending on configuration. The admin uses Yii’s MVC pattern, ActiveRecord models shared from common/entities, and rich editing where widgets (e.g. Imperavi) are integrated for HTML fields.
The frontend presentation layer is implemented with PHP views (Yii view files), Bootstrap 3, and assets registered through Yii’s asset system. Styles are authored in SCSS and compiled with Gulp; JavaScript sources under js_all/ are concatenated and minified into js/all.min.js (with Babel for broader browser support where configured). Images, sprites, and WebP outputs are also produced by the Gulp pipeline so the public pages stay fast and consistent.
The backend uses Yii’s ORM, modules, and controllers for each content type; SwiftMailer is available for outbound mail. Composer manages PHP dependencies (with a named Docker volume for vendor/ where useful on Windows). Google Maps is loaded asynchronously with recommended script parameters; map centre and optional Map ID for advanced markers are driven from application parameters and environment variables.
Overall, the deliverable is a coherent product site for explaining the transport service and capturing leads, plus a practical admin CMS to keep that site up to date without touching code. The UI is built with Bootstrap and SCSS, the interactive layer with Gulp-built JavaScript, and the server with Yii 2 and MariaDB, packaged for Docker-based local runs and presentations.