modd
overmind
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
modd
-
Hot reloading in Go applications
Modd is a library that makes hot reloading possible in Go applications. To use it, install it on your machine using the command below:
- Implement auto-reload after update
-
Ask HN: Can I see your scripts?
There's also modd[0] which allows for many file watch pattern -> command combos to easily be defined & run simultaneously from a modd.conf file.
[0]https://github.com/cortesi/modd
-
Hot reload in golang
i was using cortesi/modd for this while using docker. Since I change to Rancher with dockerd i wasn’t able to get live reloading working again, i also tried air but no luck.. out of curiosity did anyone have a similar issue?
-
Live Reload in Go with Air
Interesting. I've been using https://github.com/cortesi/modd for this for a while but I'll check this project out.
- Ask HN: What developer tools would you like to see?
- Live previewing LaTeX document?
- docker-compose without dockers
-
Live Reloading in Golang using Air
me likes: https://github.com/cortesi/modd A little more flexible for various files
-
We don’t use a staging environment
I use a somewhat similar approach for Pirsch [0]. It's build so that I can run it locally, basically as a fully fledged staging environment. Databases run in Docker, everything else is started using modd [1]. This has proven to be a good setup for quick iterations and testing. I can quickly run all tests on my laptop (Go and TypeScript) and even import data from production to see if the statistics are correct for real data. Of course, there are some things that need to be mocked, like automated backups, but so fare it turns out to work really well.
You can find more on our blog [2] if you would like to know more.
[0] https://pirsch.io
[1] https://github.com/cortesi/modd
[2] https://pirsch.io/blog/techstack/
overmind
-
Connecting Debugger to Rails Applications
Another solution is to use a different tool to drive the Procfile. The one I'm most familiar with is a tool called overmind. If you run your Procfile with overmind, you'll be able to open up a new terminal window and individually connect to any of the processes that are running. So if you want to connect to the web process to debug, you can open up a new window and run overmind connect web, and you'll have a window where you can work with the debugger's prompt.
-
Overmind, a better foreman or bin/dev for your Procfile
I recently wrote about Overmind (https://github.com/DarthSim/overmind), a drop in replacement for foreman.
If you've ever used Forman or another local Procfile/process manager, I think you'll love Overmind.
It's basically a more customisable foreman that runs in tmux - which means you can do cool things like tmux into a process and attach a debugger (which is nearly impossible with foreman).
Hope you enjoy the article!
-
Procfile.dev, bin/dev, and Rails 7 — how they work, and why (I think) they're great.
We switched to overmind and it's been great.
Hey, thanks for the comment u/sjieg! I don't have anything to add here, apart from suggesting the Overmind gem (https://github.com/DarthSim/overmind), which I just learnt about from another comment.
-
Show HN: Localias, securely manage local devserver aliases
I run an app with a bunch of separate processes managed in a Procfile invoked by Overmind (https://github.com/DarthSim/overmind):
```
app-web: cd app && poetry run invoke server
app-vite: cd app && pnpm dev
app-storybook: cd app && pnpm story:dev
api: cd api && poetry run invoke server
docs: cd docs && npm run dev
marketing: cd marketing && source .env && npm run dev
```
Maybe it's my getting older, but I've found it _infuriating_ to remember which process is bound to 3003 vs 3002 vs 3001 and so on. Very grateful for this project so I can save myself a couple seconds of frustration every day — t/y OP for building it!
-
Yew + Actix project
Use Overmind or cargo-runcc to run multiple commands in a single terminal, instead of running the server and the client in separate terminals
- Scaling Mastodon with systemd template units
-
Fly.io and Tailscale Saved Notado
FYI: Your link for Overmind is to the wrong project. The process manager is https://github.com/DarthSim/overmind
The article currently links to a deprecated Angular.js project with the same name (https://github.com/geddski/overmind)
-
Run multiple discord.py from main.py
However, as you might expect, managing that becomes a bit of a chore in the long run, this is where my recommendation of Overmind comes in.
- docker-compose without dockers
What are some alternatives?
air - ☁️ Live reload for Go apps
Foreman - Manage Procfile-based applications
reflex - Run a command when files change
docker-slim - Slim Rails images, Rails/Sidekiq/ActionCable-standalone/Nginx with Docker-Compose & Kubernetes (StatefulSet Postgres & Redis)
entr - Run arbitrary commands when files change
exo - A process manager & log viewer for dev
golang-docker-cache - Improved docker Golang module dependency cache for faster builds.
process-compose - Process Compose is a simple and flexible scheduler and orchestrator to manage non-containerized applications.
gin - Live reload utility for Go web servers
dip - The dip is a CLI dev–tool that provides native-like interaction with a Dockerized application.
gow - Missing watch mode for Go commands. Watch Go files and execute a command like "go run" or "go test"
runner - Runner is a structured command executer that monitor file changes to trigger process restarts.