How much time do you waste spinning up a fresh Postgres DB just to test a quick SQL query, run migrations, or seed data? 🤦♂️
Doing the same Docker configuration loop over and over is a massive developer productivity killer.
To fix this, I built an open-source tool called pg-mate — a minimalist, local PostgreSQL playground powered by Docker and Goose. It turns this entire headache into a simple "clone and go" setup.
Here is what it does out of the box:
🐋 Spins up a clean database instantly.
🏃♂️ Handles your migrations seamlessly.
🌱 Injects seed data without the setup headache.
The setup is entirely frictionless so you can focus on writing code, not wrestling with infrastructure. The project is 100% open-source and ready for you to spin up. ⚡
👇 I’ve dropped the GitHub repository link in the very first reply/comment to this post. Check it out, drop a star ⭐ if it saves you some terminal time, and let me know your thoughts!
People love to laugh at writing
if err != nil twenty times a day.
But there is immense value in explicit handling. Dealing with errors exactly where they happen means you are forced to design your system's failure paths deliberately. Go treats error management as a first-class architectural decision, ensuring that local context is never lost.
#golang #Go
@chinedu_10 Do it! Go's simplicity + concurrency is actually addictive once it clicks. You'll probably end up loving how fast everything compiles too.
What are you planning to build with it?
@anuraggoel@golang@render Predictability over hype, every single time. 'Boring' software pays the highest dividends at scale. That said, Go is never actually boring to me—its simplicity is just beautiful.
Meet pg-mate 🐘 — your new favorite local PostgreSQL playground!
If you've ever wanted a quick DB to test SQL, run migrations, or seed data without the setup headache, this is for you. Just clone and go! 👇
🔗 https://t.co/8HhXrM4pqR
🛠️ The setup is entirely frictionless. It's powered by Docker and Goose, and controlled via simple Make commands:
🐘 make docker-up (starts Postgres)
🚀 make migrate-up (runs migrations)
🌱 make seed (loads sample data)
💻 make psql (opens your shell)
Or you can simply run Make!
💡 Wait, why is the .env file committed?!
Because pg-mate is designed 100% for local development! Committing the defaults removes initial setup friction. There are no production secrets here—just pure developer convenience. 🤝
📝 You can interact with your DB however you prefer:
1️⃣ Interactive shell (make psql)
2️⃣ Write a .sql file and execute it instantly (make psql-query FILE=query.sql)
Try it out, give it a ⭐️ on GitHub, and let me know what you think!
🔗 https://t.co/8HhXrM4pqR
#OpenSource #PostgreSQL #SQL#Docker #DevTools
@_nilesh05 Great choice!
Maintainability is baked in because it enforces one clear way to code. Testing is seamless thanks to a zero-config, blazing-fast built-in std lib. And concurrency is simple.
@0xPrajwal_ Vibe coding - is all about letting the AI handle the implementation, The entire Go philosophy is the exact opposite. Go culture values explicit control, readability, and zero magic. We want to see and understand the implementation details.
Just published sys-tools, a growing collection of my personal system utility tools written in Go! 🛠️
Check it out here: https://t.co/j1u3ukZuda
#Golang#Go#Linux#OpenSource#CLI