DEV Community

Matthias Andrasch
Matthias Andrasch

Posted on

A quick way to show off a DDEV project: Quick DDEV Previews (selfhosted)

Building on the fantastic groundwork laid by Samuel Reichör with his knecht.works project, I’ve been able to realise a little dream of mine:

A self-hosted service that lets you quickly deploy and host DDEV project previews.

For example, to show a friend a new hobby project, or to quickly demonstrate the current status of a project to testers or project managers.

Demo of Quick DDEV Previews (proof of concept):

GitHub: https://github.com/mandrasch/quick-ddev-previews

Most recently, I’ve added the option to choose the subdomain slug yourself – and to set projects to ‘private’, ‘password-protected’ or ‘public’.

Background: Ever since I tried Coolify, I’ve always wanted a service like this for DDEV projects. After all, everything is already specified in the .ddev/config.yaml file – PHP version, database type, etc. Personally, I found it very tedious to have to convert this to Docker Compose or similar first.

With ddev share, there’s already a quick way to temporarily make projects publicly accessible. But, for one thing, the laptop has to stay open – and you can’t carry on working on that project. That’s why I’ve always wanted a self-hosted service like Coolify, but specifically for DDEV.

This is particularly useful for professional CMSs and frameworks such as Craft CMS, Drupal, TYPO3 and the like, which can be configured via a .env file, as it allows for quick previews.

Of course, this isn’t a genuine, realistic staging environment – because that should resemble the production system. But for me, it’s a quick and pragmatic solution.

Technical implementation: Samuel Reichör’s Knecht-Cloud was the perfect reference for adapting his approach to a simple preview system for DDEV projects. Instead of a sysbox approach, which would have run each preview in a completely isolated environment, Samuel implemented an efficient solution. He describes this in detail here: https://knecht.works/updates/sandbox-rollback.

The fork was created with the kind permission of Samuel Reichör. Be sure to follow him on LinkedIn so you don’t miss out on any of his projects. Or hire him as a freelancer to give your projects an extra boost. 🚀

AI Tools: I tried GLM 5.2 for the first time for planning and used DeepSeeks v4 Flash (new) for implementation – both via Open Code Desktop and the Open Code Go subscription. Some of the new UI elements were a bit tricky to implement on the first attempt, but I’d hardly provided any guidelines either. I was amazed at how robust and straightforward the implementation was otherwise.

Thanks to Tobias Möritz for recommending that I give Open Code Go a go! You can try it out here too (referral link from Tobias; I don’t receive any commission or similar).

**What do you think of “Quick DDEV previews”?

I’d love to hear your feedback and feature ideas – and would like to develop this further as a community project that you can host yourself.
**
Other interesting projects / approaches:

https://knecht.works/ – Boot. Fix. Test. Fully automated. Project by Samuel Reichör (in development)

https://ddev.com/blog/coder-ddev-com-announcement/– official project by DDEV, self-hosted https://coder.com/-IDE in the browser/cloud

https://mayfly.live/ – ephemeral preview environments (beta)

Other deployment services for QA (DDEV support unclear): https://www.tugboatqa.com/, https://diffy.website/

Docs: Hosting with DDEV https://docs.ddev.com/en/stable/users/topics/hosting/

Top comments (0)