pjr's avatar

pjr liked a comment+100 XP

1w ago

I've been working on a side project for a while now and thought this community would appreciate it.

It's called lerd and it's a Podman-native PHP development environment for Linux, with macOS support coming very soon. The idea came from the frustration of not having something like Herd on Linux. I wanted automatic .test domains, per-project PHP and Node version isolation, one-command TLS, all without touching the system PHP or depending on Docker.

It bundles Nginx, PHP-FPM and optional services like MySQL, Redis, PostgreSQL, Meilisearch, Minio, Mailpit, Stripe Mock and Reverb as rootless Podman containers. There's also a built-in web UI you can install as a PWA, where you can manage sites, switch PHP and Node versions, toggle services, and watch live logs per project.

It's Laravel-first but supports Symfony, WordPress and any framework through YAML definitions. The project has been growing organically, already has external contributors and pull requests coming in without me reaching out to anyone, which has been encouraging.

You can check it out at github.com/geodro/lerd and the docs are at geodro.github.io/lerd . Would love to hear feedback from the community, especially from anyone running Laravel on Linux.

pjr's avatar

pjr liked a comment+100 XP

1mo ago

this site (laracasts) is built with Inertia, Laravel and Vue. All of it. The forum part, the video learning part, the account subscription part,... if your project is not much more complex than laracast, then Inertia can do just fine.

Tho if you have a mobile app, then making Laravel as an API from the beginning is a more suitable approach, in which case i would recommend Nuxt

pjr's avatar

pjr liked a comment+100 XP

1mo ago

Yes it is definitely. I am currently using it for my projects and it has made my life easier with passing data as props into Vue components. You will thank yourself in the long run for choosing Inertia.

pjr's avatar

pjr wrote a comment+100 XP

3mos ago

Posting a comment after watching the whole series. Thanks for making our lives easier, Caleb. You are a legend. Thank you!

pjr's avatar

pjr liked a comment+100 XP

3mos ago

Dude! This is awesome!

pjr's avatar

pjr liked a comment+100 XP

3mos ago

@Weasel - mmm yeah I could see that. all wire: directives have always been JS actually. We just didn't really advertise that to avoid confusion like this. Most wire: directives are actually the equivalent Alpine directives under-the-hood (just with the scope of $wire provided automatically if that makes sense)

Good feedback that wasn't obvious to me though, thanks

pjr's avatar

pjr liked a comment+100 XP

3mos ago

I think I'll stick with wire:loading, wire:target for now. Can't grasp "creepy" thing. :)