// personal

This Portfolio, in Laravel

The site you're on: a Laravel 13 application with a database, a validated contact form, automated tests and a Docker deployment.

Company
XLANT SOFT · Self-employed
Role
Solo developer
Period
2023 – present
Platform
Web (PHP)

What I built

  • Eloquent models and migrations: project groups with their projects, work experience and contact messages, using JSON casts, query scopes and computed attributes.
  • An idempotent seeder that loads all content from a single JSON file, so it can be rerun safely.
  • Clean URLs with route model binding, plus permanent 301 redirects from the old static-site addresses.
  • A contact form with a FormRequest, a honeypot against bots, CSRF protection and rate limiting. Messages are stored and emailed with a Markdown Mailable.
  • Progressive enhancement: the form posts with fetch and gets JSON back, and still works as a normal form without JavaScript.
  • 12 PHPUnit feature tests covering pages, redirects, validation, mail and rate limiting, with Laravel Pint for code style.
  • A multi-stage Docker image (PHP 8.4, Apache, SQLite) that migrates, seeds and caches on startup.

Built solo. The static version of this portfolio is plain HTML; this one shows how I structure a PHP application.