While working in local development, we should have the best tools available to build fast and scalable applications.
In this article, we will review these useful tools that enhance rapid and efficient local development.
Every time I start to work on an exciting project, I write down on paper or Notion a list of the tools and resources I’ll need to bring an idea into reality.
First of all, I make a quick mock-up of the idea I’ll try to build. Then I choose the programming language, framework, or library I’ll use. But the thing that most people don’t care about is the local environment (Not referring to 🌳), and the right tools for building the project as quickly as possible.
The following tools cover most of the needs of any networked or web development project, from an application to create local servers accessible worldwide to packages that let you test your APIs through HTTP.
The best part is that most of these tools are open source. That means that its use is totally free, or often with an optional paid subscription.
Without further delay, let’s get into it 😀.
Ngrok is a cross-platform application (Windows, Mac, Linux), that uses tunnels to expose a local server to the internet. It is a handy tool to test your networked programs, run a website demo for a client, or expose your backend API to the internet.
At the start, it seems quite complicated, but after a couple of uses, you’ll be amazed at how simple it is. In fact, I’ve used it with Django, and I found it really convenient when building OAuth authentication systems.
Let you create a public Internet HTTP URL, to test out your local development server.
Support for both HTTP and HTTP(s)
Works for any networked program
To install Ngrok, download the most recent version on its official website. As a quick assertion to see if everything is working, run the following command in your terminal.
ngrok http 80
DevKinsta from Kinsta is a complete suite for local WordPress development I’ve found. Its huge amount of tools combined with the easy UI gives you the ability to build themes, plugins, and custom sites for your clients.
This complete set of tools is available for the three major platforms, Windows, Linux, and Mac. Docker powers it. And the best part is that DevKinsta is totally free.
A must-have tool for a WordPress developer.
Accessible in 10 languages
Modern WordPress stack (Nginx, MariaDB, etc.)
PHP 7.x-8.x support
Local email testing
Includes a lightweight yet powerful database manager
Do you work on Kubernetes? Why don’t you give Telepresence a try?
Telepresence is a CLI (Command-line interface) tool that lets you run services locally while connecting to a remote Kubernetes cluster. This tool enhances your productivity by allowing you to swap from local development to a deployment set up rapidly.
Look for your operative system reference here, and download the corresponding package. If you find useful telepresence, take a look at amazing Kubernetes tools.
HTTPie is one of the most useful CLI tools I’ve ever used to work with APIs. It gives you a clean and friendly interface to interact with HTTP verbs. You can use both for testing your local APIs or to play around with Internet-facing APIs.
Designed to work with JSON
Extremely simple to learn interface
Cross-platform support and easy installation through pip.
$-> http https://zen-of-python.info/
Web page content ............
Tunnelto is another CLI with a really close functionality to Ngrok. It allows you to expose your local server to the internet and counts with beginner’s friendly flags. Tunnelto really solves the problem of creating a public URL, where you can test your local development server or even show up a demo to a client.
Free random domains
Custom domains for 2$/month
This tool has a different package for each platform. For Linux, you have to download the .tar.gz file, extract it and run the binary.
Then extract the file with your file manager.
Then open your terminal and run the tunnelto binary.
If you want to install it in your local binaries, run the following command from the directory you extracted the tunnelto binary.
mv tunnelto ~/.local/bin/
For mac install Tunnelto with brew.
$ brew install agrinman/tap/tunnelto
Or do the same process as for Linux.
For Windows systems, download the .exe file available on the releases page.
Mkcert is a simple CLI tool written in Go that accomplishes making a locally valid SSL certificate. If you want to test out applications that need a local CA (Certification authority), this is the right tool.
Note: This tool should be used only in local development
Tmate is the simplest solution for terminal sharing. It is a fork of Tmux, but they can coexist in the same system. So don’t be afraid of using them at the same time.
With this tool, you can start sharing your terminal session by just running a simple command. And the cherry on the cake is that it has two modes: read-only and full access, and two ways to share terminal sessions: Web interface and SSH session.
A perfect when you need to show your code to someone.
MailCatcher is an app written in Ruby, and as its name suggests, catches all of the messages sent to the specified SMTP (Simple Mail Transfer Protocol) port. Then it displays the messages in a simple web interface.
I found it particularly useful while testing email services locally because I only have to change a couple of settings to get Django connected with MailCatcher.
DDEV is an open-source containerization tool that empowers you to set up or change CMS (content management system) environments in minutes. You won’t have to spend a lot of your time switching docker containers again 😀.
With this tool, you’ll be able to deploy your favorite CMS like Drupal, WordPress, TYPO3, Magento, Backdrop, and PHP-based sites extremely fast and enhance your productivity while working with different containers.
If you are a PHP developer, this is a life-saver where you can work on multiple projects without risking the application configuration mess.
Hoppscotch is one of the most intuitive API development ecosystems. Although its uses in local development aren’t that meaningful, you can use it in staging phases to polish your API system.
The Hoppscotch app is minimalistic yet powerful and makes you enjoy the experience of examining your API in development.
Tip: You can use Ngrok or Tunnelto to expose your API and Hoppscotch to perform requests and test out that everything is working fine.
When a user opens a website, one of the first things they notice is the header. A website header is the top section of a webpage, which contains elements such as a site’s logo, navigation menu, and functionalities such as searching and logging in.
Financial charting libraries help you to add stock market and digital asset market movement charts in any app. You will find both HTML5 charting libraries and JS libraries for app development projects.