Coolest Open Source Go Projects in the Wild

· Read in about 4 min · (724 Words)
go

This post is based on a section of the “Everything You Need to Know to Start with Go” post. Since than I realised that this post will be my own personal version of Awesome-Go, I will regularly update that post but as the Go communinity is booming, the interesting projects would just take over the rest of the material there, so I decided to create a separate post for cool, interesting projects being done in Go. Only projects which have an open source component will make this list.

Frameworks and other tool kits

Go kit - toolkit for microservices (MIT, pre-stable, 0.4.0)

Echo - High performance, extensible, minimalist Go web framework (MIT, stable, v3.1.0)

Containers

Docker Moby - container ecosystem

Kubernetes - Container Scheduling and Management (Apache-2.0, stable, v1.6.4)

Consul - Service Discovery and Configuration (MPL-2.0, pre-stable, v0.8.3)

Terraform - (MPL-2.0, pre-stable, v0.9.6)

Nomad - Distributed, Highly Available, Datacenter-Aware Scheduler (MPL-2.0, pre-stable, v0.5.6)

Logging, alerting, metrics

Prometheus - monitoring system and time series database (Apache-2.0, stable, 1.6.3)

InfluxDB - scalable datastore for metrics, events, and real-time analytics (MIT, stable, v1.2.4)

Grafana - beautiful monitoring and metric analytics & dashboards (Apache-2.0, stable, v4.3.1)

OKLog - distributed and coördination-free log management system (Apache-2.0, pre-stable, v0.2.1)

Telegraf - plugin-driven server agent for collecting & reporting metrics (MIT, stable, 1.3.0)

Bosun - Time Series Alerting Framework (MIT, pre-stable, 0.5.0)

Zap - structured, leveled logging (MIT, stable, v1.4.0)

Servers

Traefik - reverse proxy (MIT, stable, v1.2.3)

Caddy - Fast, cross-platform HTTP/2 web server with automatic HTTPS (Apache-2.0, pre-stable, 0.10.3)

Websocketd - Turn any program that uses STDIN/STDOUT into a WebSocket server (BSD-2-clause, pre-stable, v0.2.12)

Other DevOps

Functions as a Service (MIT, alpha, 0.5.5-alpha)

Apex - Build, deploy, and manage AWS Lambda functions (MIT, pre-stable, v0.14.0)

Flynn - Platform as a service (???, pre-stable)

syncthing - Continuous File Synchronization (MPL 2.0, pre-stable, v0.14.28)

Drone - Continuous Delivery platform built on Docker (Apache-2.0, pre-stable, v0.7.1)

Teleport - Modern SSH server for clusters and teams (Apache-2.0, stable, v2.0.6)

Minio - Minio is an open source object storage server compatible with Amazon S3 APIs (Apache-2.0, pre-stable, ???)

Testing

k6 - Load Testing tool (AGPL-3.0, pre-stable, v0.15.0)

wuzz - Interactive cli tool for HTTP inspection (AGPL-3.0, pre-stable, v0.3.0)

Databases

CockroachDB - the scalable, survivable, strongly-consistent SQL database (custom, stable, v1.0.1)

TiDB - distributed NewSQL database compatible with MySQL protocol (Apache-2.0, pre-stable, rc)

dgraph - graph database (AGPL-3.0, alpha, 0.7.7)

tile38 - geospatial database (MIT, stable, 1.9.0)

etcd - key-value store (Apache-2.0, stable, v3.1.8)

cayley - graph database (Apache-2.0, pre-stable, v0.6.1)

Database tools

Kallax - PostgreSQL typesafe ORM (MIT, stable, v1.2.5)

Frontend

GopherJs - compiler from Go to JavaScript for running Go code in a browser (BSD-2-clause, pre-stable, none)

CMSs and other project shortcuts

Ponzu - CMS (BSD-3-clause, pre-stable, 0.9.2)

Hugo - static website engine (Apache-2.0, pre-stable, v0.21)

Source code

Gogs - painless self-hosted Git service (MIT, pre-stable, 0.11.4)

Grumpy is a Python to Go source code transcompiler and runtime (Apache-2.0, pre-stable, ???)

Security

Vault - A tool for managing secrets (MPL-2.0, pre-stable, v0.7.2)