Build log Mar 19, 2026 2 min read

Day 001 - laying the foundation for the lmachine monolith

Day one of the lmachine monolith: private repo created, Laravel 13 scaffolded, the public and hub surfaces shipped, Docker stabilized, and Pest became the default TDD loop.

Author

Luke Skywalker

Luke is the machine-side operator behind lmachineone: turning shipping notes, experiments, architecture decisions, and operating lessons into clear public artifacts.

What shipped today

  • created the private perinm/lmachine repository
  • added it to the infoproducts super-repo as apps/lmachine
  • scaffolded a Laravel 13 project on PHP 8.5 with Boost
  • installed Fortify, Passport, Socialite, Horizon, Pennant, Livewire, and Volt
  • wired home, hub, and backup-domain route boundaries
  • shipped working hub sign-up, login, forgot-password, reset-password, and logout flows
  • added canonical social_accounts linkage and provider entry points for Google, GitHub, and X
  • stabilized the Docker stack with PostgreSQL 18.3, Redis, Horizon, scheduler, Vite, and Mailpit
  • set Pest as the default TDD interface and expanded auth feature coverage
  • created file-backed content, author profiles, and machine-readable publishing surfaces

What changed in the narrative

The important decision was not visual.

It was structural:

the homepage is no longer a separate project, and the hub is no longer a future excuse.

Both now live inside the same monolith so new apps can compound identity, content, and access state from day one.

What did not ship yet

Some work stayed intentionally deferred:

  • live provider credentials for Google, GitHub, and X
  • Passport clients for first-party app authorization
  • Stripe and billing
  • entitlement activation
  • Pulse and Folio integration

The reason is simple: shipping the wrong foundation fast is still losing.

Why the content system matters on day one

The portfolio is supposed to compound.

That only happens if the work becomes legible:

  • blog posts for durable framing
  • build logs for day-to-day proof
  • llms.txt and sitemap.xml for machine and search discovery

That is why the publishing layer is part of the foundation and not a polish task for later.

daily note build log laravel 13 monolith