Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge. Learn more →
Top 23 Go Utility Projects
:cherry_blossom: A command-line fuzzy finderProject mention: A Practical Guide to fzf: Vim Integration | /r/commandline | 2023-11-29
There are two plugins allowing us to use fzf in Vim: the native fzf plugin directly installed with fzf, and fzf.vim. The second plugin is built on the first one.
A tool for exploring each layer in a docker imageProject mention: Dive – A tool for exploring each layer in a Docker image | news.ycombinator.com | 2023-10-19
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
Introspected tunnels to localhost
A command-line tool that makes git easier to use with GitHub.
Delve is a debugger for the Go programming language.Project mention: The worst thing about Jenkins is that it works | news.ycombinator.com | 2023-12-03
At a recent job, we had slightly different containers for local dev; our backend containers (for a Go app) had Air  installed for live reloading, plus Delve  running inside the container for VS Code's debugger to connect to. We also had a frontend container for local dev, which didn't get deployed as a container, just as static files.
Go language library for reading and writing Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) spreadsheetsProject mention: Recommend a powerful excel processing library, @zurmokeeper/exceljs, which supports encryption and decryption of xlsx files and flexible setting of multiple table headers when exporting, etc. | /r/node | 2023-07-01
Then I found out that WPS only supports ecma376 standard encrytion for xlsx files. Then I referred to the official documentation and libraries in other languages, such as msoffcrypto-tool written in python. msoffcrypto-tool) and go's excelize. Since I don't know much about encryption and decryption, the process of implementation is also a bit of a twist.
Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.
Top-like interface for container metrics
Get JSON values quickly - JSON parser for GoProject mention: Rob Pike: Gobs of data (2011) | news.ycombinator.com | 2023-12-04
Someone made a benchmark of serialization libraries in go , and I was surprised to see gobs is one of the slowest ones, specially for decoding. I suspect part of the reason is that the API doesn't not allow reusing decoders . From my explorations it seems like both JSON , message-pack  and CBOR  are better alternatives.
By the way, in Go there are a like a million JSON encoders because a lot of things in the std library are not really coded for maximum performance but more for easy of usage, it seems. Perhaps this is the right balance for certain things (ex: the http library, see ).
There are also a bunch of libraries that allow you to modify a JSON file "in place", without having to fully deserialize into structs (ex: GJSON/SJSON  ). This sounds very convenient and more efficient that fully de/serializing if we just need to change the data a little.
Deliver Go binaries as fast and easily as possibleProject mention: Distribuindo uma aplicação Go sem o Docker | dev.to | 2023-10-27
Interactive cli tool for HTTP inspection
A task runner / simpler Make alternative written in GoProject mention: Go Development with Hot Reload Using Taskfile | dev.to | 2023-11-11
That's when I came across taskfile.dev. Task is an automation tool designed to be more accessible than other options, such as GNU Make.
Universal command-line interface for SQL databasesProject mention: xo/usql: Universal command-line interface for SQL databases | /r/devel | 2023-06-08
Simplistic interactive filtering tool
A Go port of Ruby's dotenv library (Loads environment variables from .env files)Project mention: Tools besides Go for a newbie | /r/golang | 2023-03-26
IDE: use whatever make you productive. I personally use vscode. VCS: git, as golang communities use github heavily as base for many libraries. AFAIK Linter: use staticcheck for linting as it looks like mostly used linting tool in go, supported by many also. In Vscode it will be recommended once you install go plugin. Libraries/Framework: actually the standard libraries already included many things you need, decent enough for your day-to-day development cycles(e.g. `net/http`). But here are things for extra: - Struct fields validator: validator - Http server lib: chi router , httprouter , fasthttp (for non standard http implementations, but fast) - Web Framework: echo , gin , fiber , beego , etc - Http client lib: most already covered by stdlib(net/http), so you rarely need extra lib for this, but if you really need some are: resty - CLI: cobra - Config: godotenv , viper - DB Drivers: sqlx , postgre , sqlite , mysql - nosql: redis , mongodb , elasticsearch - ORM: gorm , entgo , sqlc(codegen) - JS Transpiler: gopherjs - GUI: fyne - grpc: grpc - logging: zerolog - test: testify , gomock , dockertest - and many others you can find here
Go library for reading and writing XLSX files.
Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression and data deduplication. CLI and GUI included.Project mention: Kopia: Open-Source, Fast and Secure Open-Source Backup Software | news.ycombinator.com | 2023-09-15
Kopia is great, though it's worth noting for folks on Linux: non-UTF-8 paths aren't stored correctly  and xattrs aren't stored . While most folks probably won't care about the former, the latter can could cause issues (eg. losing SELinux labels makes it difficult to restore a backup of the root filesystem on distros that use SELinux).
A modern Go utility library which provides helpers (map, find, contains, filter, ...)
Common libraries for writing Go services/applications.
Netflix's Hystrix latency and fault tolerance library, for GoProject mention: Choosing dependencies using deps.dev | dev.to | 2023-04-21
Go minifiers for web formats (by tdewolff)Project mention: Including .so file in a lua rock | /r/lua | 2023-02-28
I want to write the lua bindings for tdewolff/minify the appropriate way. It already has python and js bindings but I can't figure out how to do that. The python bindings seems to use the shared object file, but the js doesn't work like that. What options do I have?
Crash your app in style (Golang)
GoRequest -- Simplified HTTP client ( inspired by nodejs SuperAgent )
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Go Utilities related posts
A Practical Guide to fzf: Vim Integration
2 projects | /r/commandline | 29 Nov 2023
Go Development with Hot Reload Using Taskfile
2 projects | dev.to | 11 Nov 2023
Delve v1.21.2 is out now
1 project | /r/golang | 1 Nov 2023
ltag: A little CLI tool for tagged text searching
2 projects | dev.to | 27 Oct 2023
Dive – A tool for exploring each layer in a Docker image
1 project | news.ycombinator.com | 19 Oct 2023
Poetry (Packaging) in motion
2 projects | dev.to | 27 Sep 2023
Kopia: Open-Source Backup Software
1 project | news.ycombinator.com | 14 Sep 2023
A note from our sponsor - InfluxDB
www.influxdata.com | 6 Dec 2023
What are some of the best open-source Utility projects in Go? This list will help you: