golang
a fast golang HTML sanitizer (inspired by the OWASP Java HTML Sanitizer) to scrub user generated content of XSS.
bluemonday takes untrusted user generated content as an input, and will return HTML that has been sanitised against an allowlist of approved HTML elements and attributes so that you can safely include the content in your web page.
Related contents:
Blocky is a DNS proxy and ad-blocker for the local network written in Go.
Easy web analytics. No tracking of personal data. GoatCounter is an open source web analytics platform available as a (free) hosted service or self-hosted app. It aims to offer easy to use and meaningful privacy-friendly web analytics as an alternative to Google Analytics or Matomo.
Mage is a make/rake-like build tool using Go. You write plain-old go functions, and Mage automatically uses them as Makefile-like runnable targets.
Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
Related contents:
Simple Web Analytics. Web Analytics made simple and therefore privacy-friendly.
Patterns and techniques for writing high-performance applications with Go.
Up to 100x faster strings for C, C++, CUDA, Python, Rust, Swift, JS, & Go, leveraging NEON, AVX2, AVX-512, SVE, GPGPU, & SWAR to accelerate search, hashing, sorting, edit distances, sketches, and memory ops 🦖
Related contents:
Fast key-value DB in Go. BadgerDB is an embeddable, persistent and fast key-value (KV) database written in pure Go. It is the underlying database for Dgraph, a fast, distributed graph database. It's meant to be a performant alternative to non-Go-based key-value stores like RocksDB.
Receive notifications when an image is updated on a Docker registry
A Model Context Protocol server for Go developers.
GoDoctor is an intelligent, AI-powered companion for the modern Go developer. It integrates seamlessly with AI-powered IDEs and other development tools through the Model Context Protocol (MCP), providing a suite of powerful features to enhance your workflow.
pflag is a drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
pflag is compatible with the GNU extensions to the POSIX recommendations for command-line options. For a more precise description, see the "Command-line flag syntax" section below.
Cross-platform filesystem notifications for Go.
fsnotify is a Go library to provide cross-platform filesystem notifications on Windows, Linux, macOS, BSD, and illumos.
Understand. Improve. Code.
AST Metrics is a blazing-fast static code analyzer that works across programming languages.. It empowers you to gain deep insights into your code structure, identify potential problems early on, and improve code quality. Leveraging the efficiency of Go, AST Metrics delivers exceptional performance for large codebases.
Related contents:
FalconHound is a blue team multi-tool. It allows you to utilize and enhance the power of BloodHound in a more automated fashion. It is designed to be used in conjunction with a SIEM or other log aggregation tool.
RDAP command line client. OpenRDAP is a command line client for the Registration Data Access Protocol, written in Go.
RDAP is a replacement for WHOIS, which provides domain name & IP address registration information in JSON format over HTTP.
ar-go-tools (Argot) is a collection of analysis tools for Go
The Distributed Application Runtime (Dapr) provides APIs that simplify microservice connectivity. Whether your communication pattern is service to service invocation or pub/sub messaging, Dapr helps you write resilient and secured microservices.
Dapr is a portable, event-driven, runtime for building distributed applications across cloud and edge.
Related contents:
Compile shell scripts to static binaries.
Bunster transforms your shell scripts into efficient, standalone binaries that are easy to distribute and deploy across platforms (only unix is supported at the moment).
Technically speaking, Bunster is a shell-to-Go Transpiler that generates Go source out of your scripts. Then, optionally uses the Go Toolchain to compile the code to an executable program.
Fabric is an open-source framework for augmenting humans using AI. It provides a modular system for solving specific problems using a crowdsourced set of AI prompts that can be used anywhere.
dagobah is an awesome RSS feed aggregator & reader written in Go inspired by planet.
OpenDAL represents Open Data Access Layer. Our vision is One Layer, All Storage.
OpenDAL (/ˈoʊ.pən.dæl/, pronounced "OH-puhn-dal") is an Open Data Access Layer that enables seamless interaction with diverse storage services.
OpenDAL's development is guided by its vision of One Layer, All Storage and its core principles: Open Community, Solid Foundation, Fast Access, Object Storage First, and Extensible Architecture.
Related contents:
Golangci-lint is a fast linters runner for Go
It runs linters in parallel, uses caching, supports YAML configuration, integrates with all major IDEs, and includes over a hundred linters.
Related contents:
Write Go, online, with LLMs.
sketch.dev is a new kind of Go playground that lets you write and run Go code in your browser, in a real editor. Build packages and modules, import dependencies, run tests, code with chat, and use a lightweight unix sandbox.
Related contents:
an open source, serverless framework for building intelligent functions and APIs, powered by WebAssembly.
You write your app logic in Go or AssemblyScript, and Modus provides additional features to easily integrate models, data, and external services.
build HTML with Go. An HTML templating language for Go that has great developer tooling.
Create components that render fragments of HTML and compose them to create screens, pages, documents, or apps.
A fast TCP/UDP tunnel over HTTP.
Chisel is a fast TCP/UDP tunnel, transported over HTTP, secured via SSH. Single executable including both client and server. Written in Go (golang). Chisel is mainly useful for passing through firewalls, though it can also be used to provide a secure endpoint into your network.
Go library and CLIs for working with container registries.
Parallel S3 and local filesystem execution tool.
s5cmd is a very fast S3 and local filesystem execution tool. It comes with support for a multitude of operations including tab completion and wildcard support for files, which can be very handy for your object storage workflow while working with large number of files.
🎩 simple, fun and transparent SSH (and telnet) bastion server.
Jump host/Jump server without the jump, a.k.a Transparent SSH bastion.
A MySQL-compatible relational database with a storage agnostic query engine. Implemented in pure Go.
go-mysql-server is a data-source agnostic SQL engine and server which runs queries on data sources you provide, using the MySQL dialect and wire protocol. A simple in-memory database implementation is included, and you can query any data source you want by implementing your own backend.
Related contents:
test your system with real data.
GoReplay is an innovative open-source solution which allows you to capture your existing users activity and re-use it for testing your application. With GoReplay you can perform shadowing, load testing, or detailed analysis and monitoring.
Gor is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.
Laragon is a portable, isolated, fast & powerful universal development environment for PHP, Node.js, Python, Java, Go, Ruby. It is fast, lightweight, easy-to-use and easy-to-extend. Laragon is great for building and managing modern web applications. It is focused on performance - designed around stability, simplicity, flexibility and freedom.
HTTP microservice for QR Code generation.
An implementation of a simple HTTP microservice that generates QR Code upon request. All the QR heavy lifting is done by the qrcode Go package.
Avast, ye landlubbers CaptainHook is a bloody flexible and easy to use git hook manager.
CaptainHook is a very flexible git hook manager for software developers that makes sharing git hooks with your team a breeze.
yarr (yet another rss reader) is a web-based feed aggregator which can be used both as a desktop application and a personal self-hosted server.
It is written in Go with the frontend in Vue.js. The storage is backed by SQLite.
golang TUI music player.
Gomu is intuitive, powerful CLI music player. It has embedded scripting language and event hook to enable user to customize their config extensively.
A CLI tool and Go library for generating a Software Bill of Materials (SBOM) from container images and filesystems. Exceptional for vulnerability detection when used with a scanner like Grype.
Related contents:
An API for asynchronous programming with observable streams.
ReactiveX is a combination of the best ideas from the Observer pattern, the Iterator pattern, and functional programming.
Go language library for reading and writing Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) spreadsheets. Excelize is a library written in pure Go providing a set of functions that allow you to write to and read from XLAM / XLSM / XLSX / XLTM / XLTX files. Supports reading and writing spreadsheet documents generated by Microsoft Excel™ 2007 and later. Supports complex components by high compatibility, and provided streaming API for generating or reading data from a worksheet with huge amounts of data. This library needs Go version 1.16 or later. The full docs can be seen using go's built-in documentation tool, or online at go.dev and docs reference.
beego is an open-source, high-performance web framework for the Go programming language.
Beego is used for rapid development of enterprise application in Go, including RESTful APIs, web apps and backend services.
It is inspired by Tornado, Sinatra and Flask. beego has some Go-specific features such as interfaces and struct embedding.
A lightweight, idiomatic and composable router for building Go HTTP services.
chi is a lightweight, idiomatic and composable router for building Go HTTP services. It's especially good at helping you write large REST API services that are kept maintainable as your project grows and changes. chi is built on the new context package introduced in Go 1.7 to handle signaling, cancelation and request-scoped values across a handler chain.
10x faster dynamic Protobuf parsing in Go that’s even 3x faster than generated code.
hyperpb is a highly optimized dynamic message library for Protobuf or read-only workloads. It is designed to be a drop-in replacement for dynamicpb, protobuf-go's canonical solution for working with completely dynamic messages.
Related contents:
Capture is a reverse proxy that takes an incoming HTTP request and sends it to another server, proxying the response back to the client, while showing them in a dashboard.
Go Web Framework. A flexible web framework for the Go language. A high productivity, full-stack web framework for the Go language.
Go Backend Generator.
Create Go projects faster → Auth, DB, gRPC, Docker, Swagger, and monitoring included.
GoCraft is a powerful, production-ready Go backend generator that helps developers quickly scaffold modern microservices with their preferred frameworks, databases, and features. Generate complete, well-structured Go applications in seconds with built-in best practices, security features, and comprehensive documentation.
GoCrack is a management frontend for password cracking tools written in Go.
GoCrack provides APIs to manage password cracking tasks across supported cracking engines.
Get Infrastructure from Code. Effortless backends with infrastructure from code. Nitric is a multi-language framework for cloud applications with infrastructure from code.
Nitric is a multi-language framework, with concise inline infrastructure from code. Modern applications should be robust, productive and a joy to build. Nitric solves common problems building for modern platforms:
Related contents:
A high performance, open source universal RPC framework. gRPC is a modern open source high performance Remote Procedure Call (RPC) framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking and authentication. It is also applicable in last mile of distributed computing to connect devices, mobile applications and browsers to backend services.
Related contents:
Tools to bootstrap CAs, certificate requests, and signed certificates.
A simple certificate manager written in Go, to bootstrap your own certificate authority and public key infrastructure. Adapted from etcd-ca.
Build simple, secure, scalable systems with Go
Related contents:
- Go Optimization Guide.
- Go monk @ GitHub.
- Le Go : décryptage du langage et premiers retours d'expérience @ AXOPEN :fr:.
- Idiomatic Go @ Dmitri Shuralyov.
- Why Go's Error Handling is Awesome @ rauljordan::blog.
- Were multiple return values Go's biggest mistake? @ MOND←TECH MAGAZINE.
- Episode #3: The Go Programming Language from Google @ Changelog Interviews.
- Testing Frameworks and Mini-Languages @ MatttProud.com (Blog).
- A JavaScript Developer's Guide to Go @ Prateek's digital home.
- Why Go is a good fit for agents @ hatchet.
- Modern (Go) application design @ Office Hours.
- Gist of Go: Race conditions @ Anton Zhiyanov.
- Go is 80/20 language @ Krzysztof Kowalczyk.
- Go should be more opinionated @ My name is Elton Minetto.
- The Evolution of Caching Libraries in Go @ Otter.
- What's //go:nosplit for? @ mcyoung.
- A deep dive into deeply recursive Go @ Mattermost.
- How Go 1.24's Swiss Tables saved us hundreds of gigabytes @ Datadog Engineering Blog.
- Go features by version @ Anton Zhiyanov.
- Making Games in Go: 3 Months Without LLMs vs 3 Days With LLMs! @ Mariano Gappa's Blog.
- From Python to Go: Why We Rewrote Our Ingest Pipeline at Telemetry Harbor @ Telemetry Harbor.
- Understanding Go Error Types: Pointer vs. Value @ Fillmore Labs Blog.
- A practical guide to error handling in Go @ Datadog.
- Default Methods in Go @ mcyoung.
- Rust is easy? Go is… hard? @ Bryan Hyland's Medium.
- We tried Go's experimental Green Tea garbage collector and it didn't help performance @ DoltHub.
- Mastering Go’s Network I/O: Build Scalable, High-Performance Apps @ Jones Charles' dev.to.
Go Managed File Transfer.
GoMFT is a web-based managed file transfer application built with Go, leveraging rclone for robust file transfer capabilities. It provides a user-friendly interface for configuring, scheduling, and monitoring file transfers across various storage providers.
If you're new to a part of Go, take a look at the tutorials linked below.
A programming language designed to fix Go’s frustrating design choices — without sacrificing its strengths 👾
Gauntlet is a programming language designed to address many of Golang’s shortcomings. It transpiles exclusively to Go code, fully supports all of its features, and integrates seamlessly with its entire ecosystem — without the need for bindings.
Open-source database schema management tool. manage your database schema as code.
Atlas is a language-agnostic tool for managing and migrating database schemas using modern DevOps principles.
Related contents:
Pigo is a pure Go face detection, pupil/eyes localization and facial landmark points detection library based on the Pixel Intensity Comparison-based Object detection paper.
One command. 25 languages. Universal multi-language runner and smart REPL written in Rust.
A universal code runner and stateful REPL written in Rust. Execute Python, JavaScript, TypeScript, Go, Rust, C, C++, Java, Kotlin, Swift, and 15 more languages with a single command.