We had some discussions at my work where which stack we should use to develop our projects. At the time we didn’t have much experience with containers and Docker and we needed to rapidly have a solution to develop websites, having the same dev environments and quickly launch projects.
Choosing your dev creation and environment tools is sometimes quite daunting. Are you gonna do a website which needs an Apache server and a MySQL database? A modern JAMstack application based on NodeJS? Or maybe a Django project in Python.
If you are on Windows, you may know the trouble on setting up everything, even if today, Microsoft made huge improvements to facilitate development on Windows. That is good, web development experience in Windows is in my opinion is as quite good as macOS or Linux. this is also made easy with technologies such as Docker where you don’t have to install everything on your computer.
but if you haven’t dived in Docker yet and your looking to keep to have a traditional stack with easy access interfaces and no brain config, you might to look at Laragon. Similar to WAMPP and XAMPP, it offers neat features to customize your different projects and tweak your environments without messing your system.
When we tried containers, the first experience with them was quite horrible. To launch a WordPress project, the main issue we faced was the permissions on the files which seemed weird, not able to edit the files. This is not a rant about Docker as I found the technology is very interesting and we should have used that but when working in a team of 2 and having to manage 15 websites, we don’t have time to debug, we just need solutions that work out of the box. In this context, Laragon gain us time to plan, build and launch websites.
Maybe the nicest feature is to create an application in one click. From WordPress to Symfony, the quick add command let you setup a project with configured host and the database instantly. This is actually something very nice if you want to rapidly work on projects and test a solution. The config file allows you to add different versions of different solutions and even add ones that are not listed. Quite convenient.
For technologies, sames applies. Laragon comes with preconfigured technologies (Node, Python, Java, Ruby, etc…) and you can install them locally in your Laragon installation and use them directly in your project you’re setting up. No need for complex containers configuration.
The last neat feature I can relate is the integration of ngrok, where you can share your website to your client without setting up a preprod environment. Ideal for reassuring client and have him check your advance on a project.
You can download Laragon here