What is the coolest Go open source projects you have seen?

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/golang

Our great sponsors
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Zigi - Close all those tabs. Zigi will handle your updates.
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Truly a developer’s best friend
  • terraform

    Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

    I'm going with terraform https://github.com/hashicorp/terraform

  • Gitea

    Git with a cup of tea, painless self-hosted git service

    gitea

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Data Platform where developers build real-time applications for analytics, IoT and cloud-native services in less time with less code.

  • pocketbase

    Open Source realtime backend in 1 file

    PocketBase! https://github.com/pocketbase/pocketbase

  • lf

    Terminal file manager

    https://github.com/gokcehan/lf has a :filter command which is nicer than fzf. You can add in the config map f :filter and the hotkey f will do the "fuzzy finding" type searches.

  • snapcraft

    Package, distribute, and update any app for Linux and IoT.

  • devtron

    Tool integration platform for Kubernetes

    Devtron

  • buf

    A new way of working with Protocol Buffers.

  • Zigi

    Close all those tabs. Zigi will handle your updates.. Zigi monitors Jira and GitHub updates, pings you when PRs need approval and lets you take fast actions - all directly from Slack! Plus it reduces cycle time by up to 75%.

  • OPA (Open Policy Agent)

    An open source, general-purpose policy engine.

  • crossplane

    Cloud Native Control Planes

  • litestream

    Streaming replication for SQLite.

    Litestream

  • frp

    A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

    FRP: A fast reverse proxy.

  • milvus

    Vector database for scalable similarity search and AI applications.

    Milvus: Vector database.

  • NATS

    Golang client for NATS, the cloud native messaging system.

    nats: Golang client for NATS, the cloud native messaging system

  • bubbletea

    A powerful little TUI framework 🏗

    bubbletea: A powerful little TUI framework

  • terratest

    Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.

    or anything hashicorp, terratest from gruntwork is also sweet https://github.com/gruntwork-io/terratest

  • Pulumi

    Pulumi - Universal Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀

    About IaC i would also suggest Pulumi repo https://github.com/pulumi/pulumi

  • Centrifugo

    Scalable real-time messaging server in a language-agnostic way. Set up once and forever.

    Centrifugo https://centrifugal.dev/ https://github.com/centrifugal/centrifugo

  • proposals

    Temporal proposals (by temporalio)

    Temporali.io https://temporal.io/ https://github.com/temporalio/temporal

  • go-edlib

    📚 String comparison and edit distance algorithms library, featuring : Levenshtein, LCS, Hamming, Damerau levenshtein (OSA and Adjacent transpositions algorithms), Jaro-Winkler, Cosine, etc...

  • ristretto

    A high performance memory-bound Go cache

  • zerolog

    Zero Allocation JSON Logger

  • permify

    Permify is an open-source authorization service inspired by Google Zanzibar.

  • go-sqlmock

    Sql mock driver for golang to test database interactions

  • aws-controllers-k8s

    AWS Controllers for Kubernetes (ACK) is a project enabling you to manage AWS services from Kubernetes

    so like ack? https://github.com/aws-controllers-k8s/community

  • portal

    Portal is a quick and easy command-line file transfer utility from any computer to another 🖥️ 🌌 💻 (by SpatiumPortae)

    Portal: hassle-free CLI file transfer

  • bleve

    A modern text indexing library for go

  • syncthing-android

    Wrapper of syncthing for Android.

    https://syncthing.net : Syncthing is a continuous file synchronization program.

  • iup-go

    Cross-platform UI library with native controls

    If I may, https://github.com/gen2brain/iup-go: Cross-platform UI library with native controls.

  • chezmoi

    Manage your dotfiles across multiple diverse machines, securely.

    Chezmoi, an incredibly feature-rich dotfile manager: https://github.com/twpayne/chezmoi

  • Hugo

    The world’s fastest framework for building websites.

  • pwnagotchi

    (⌐■_■) - Deep Reinforcement Learning instrumenting bettercap for WiFi pwning.

  • KrakenD

    Ultra performant API Gateway with middlewares. A project hosted at The Linux Foundation

    https://github.com/luraproject/lura api gateway framework

  • krakend-ce

    High-performance, statless, declarative, API Gateway written in Go.

    https://github.com/krakendio/krakend-ce api gateway built using lura

  • constellation

    Constellation is the first Confidential Kubernetes. Constellation shields entire Kubernetes clusters from the (cloud) infrastructure using confidential computing.

    Putting a disclaimer that I wrote this with my company: https://github.com/edgelesssys/constellation we built an end-to-end encrypted Kubernetes, the best way to secure data you have ever seen. If you want to give some feedback it is very welcome!

  • wormhole-william

    End-to-end encrypted file transfer. A magic wormhole CLI and API in Go (golang).

    And there’s wormhole-William, but as a derivative of the Python magic wormhole it loses points for originality.

  • hcl

    HCL is the HashiCorp configuration language.

    terraform, hcl, vault

  • Vault

    A tool for secrets management, encryption as a service, and privileged access management

    terraform, hcl, vault

  • ngrok

    Introspected tunnels to localhost

    ngrok

  • TinyGo

    Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.

    tinygo

  • bimg

    Go package for fast high-level image processing powered by libvips C library

    bimg

  • cobra

    A Commander for modern Go CLI interactions

    cobra

  • Echo

    High performance, minimalist Go web framework

    echo

  • openfga

    A high performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar

    OpenFGA is similar to Permify https://github.com/openfga/openfga

  • SFTPGo

    Fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob

    sftpgo

  • kopia

    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.

    There are people, who doing backups and those who early or later will do backups (due to data loss), so my vote is going first to: kopia (a second choice - restic)

  • filemanager

    📂 Web File Browser

    filebrowser

  • Gokapi

    Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported.

  • rclone

    "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Yandex Files

    rclone

  • gotop

    A terminal based graphical activity monitor inspired by gtop and vtop

    gotop

  • go-mtree

    File systems verification utility and library, in likeness of mtree(8)

    go-mtree # Integrity

  • duf

    Disk Usage/Free Utility - a better 'df' alternative

    duf

  • dnscrypt-proxy

    dnscrypt-proxy 2 - A flexible DNS proxy, with support for encrypted DNS protocols.

    dnscrypt-proxy

  • jackal

    💬 Instant messaging server for the Extensible Messaging and Presence Protocol (XMPP).

    jackal

  • dasel

    Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.

    dasel # most common human readable configs(json, yaml, xml...)

  • FerretDB

    A truly Open Source MongoDB alternative

    FerretDB-aka-mongoDB-but-without-leagal-trap

  • InfluxDB

    Scalable datastore for metrics, events, and real-time analytics

    InfluxDB

  • Redis

    Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps.

    redis

  • aperture

    Flow control and reliability management for modern cloud applications (by fluxninja)

    Biased because I worked on this for the last year - apeture, open-source flow control and reliability management platform

  • trayscale

    An unofficial GUI wrapper around the Tailscale CLI client.

    Yep. I was using manual WireGuard tunnels for that, but everytime I added a machine I had to configurations from both sides with manual key swaps, plus the fact that it I wanted direct connections between each machine the configuration would literally have increased exponentially. Tailscale handles all of that for me. Literally. It's primarily an automatic WireGuard tunnel coordinator. I just have to install it and log in and voila, it just works. I like it so much that I've actually got a project that wraps a GUI around Tailscale for Linux.

  • nmage

    Go 3D Game Engine from (almost) scratch

    Well I am working on a 3D game engine in Go: https://github.com/bloeys/nmage

  • nset

    Super fast and memory efficient set implementation for unsigned integers

    I also did a suuper fast (faster than map), and compressed, set implementation for numbers: https://github.com/bloeys/nset

  • phalanx

    Phalanx is a cloud-native distributed search engine that provides endpoints through gRPC and traditional RESTful API.

    Don’t forget about Phalanx if you like Bleve/Bluge.

  • syncthing

    Open Source Continuous File Synchronization

  • cue

    The new home of the CUE language! Validate and define text-based and dynamic configuration

  • Redis

    Type-safe Redis client for Golang (by go-redis)

    Sorry, wrong link, I meant Go client for redis. Corrected.

  • seaweedfs

    SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding.

    I am biased: SeaweedFS https://github.com/seaweedfs/seaweedfs

  • micro-editor

    A modern and intuitive terminal-based text editor

  • croc

    Easily and securely send things from one computer to another :crocodile: :package:

    this has always helped me as an alternative to scp https://github.com/schollz/croc

  • Wails

    Create beautiful applications using Go

    wails is pretty cool for building desktop applications. v2 for it is in beta and improves on vq but it's still, imo, preferable to electron

  • Gopher2600

    Gopher2600 is an Atari 2600/VCS Emulator.

    My Atari2600 emulator has been called "cool". I like to think it's cool too :-) https://github.com/JetSetIlly/Gopher2600.

  • PhotoPrism

    AI-Powered Photos App for the Decentralized Web 🌈💎✨

  • dendrite

    Dendrite is a second-generation Matrix homeserver written in Go!

  • images3

    Image similarity in Golang. Version 3

  • voidrice

    My dotfiles (deployed by LARBS)

    If you really want to rice it insanely you can add the stuff from https://www.youtube.com/watch?v=XOMj7JSGR78 https://github.com/LukeSmithxyz/voidrice

  • surrealdb

    A scalable, distributed, collaborative, document-graph database, for the realtime web

    There are several db projects in Go but none really seem that ambitious. https://surrealdb.com/ (not in Go) is easily the most ambitious system in last decade or more. For this reason cockroach, influx, and all the others are pretty dead to look at

  • lxd

    Powerful system container and virtual machine manager

  • cli

    GitHub’s official command line tool

  • ddev

    Docker-based local PHP+Node.js web development environments

  • snapd

    The snapd and snap tools enable systems to work with .snap files.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts