Top 50 Awesome List

avelino/awesome-go

Programming Languages  22 hours ago  82.8k
A curated list of awesome Go frameworks, libraries and software
View byDAY/WEEK/README
View on Github

Yesterday

Logging

  • slogstars90 Lightweight, configurable, extensible logger for Go.
  • Websites

    Tutorials

  • CodeCrafters Golang Track — Achieve mastery in advanced Go by building your own Redis, Docker, Git, and SQLite. Featuring goroutines, systems programming, file I/O, and more.
  • Third-party APIs

  • goagistars5 - Go library to build Asterisk PBX agi/fastagi applications.
  • Jun 16th

    Email

  • go-email-normalizerstars46 - Golang library for providing a canonical representation of email address.
  • Go Tools

  • gotemplate.io - Online tool to preview text/template templates live.
  • Jun 15th

    Utilities

  • EaseProbestars782 - A simple, standalone, and lightWeight tool that can do health/status checking daemon, support HTTP/TCP/SSH/Shell/Client/... probes, and Slack/Discord/Telegram/SMS... notification.
  • Jun 10th

    Conferences

  • GopherCon Europe - Berlin, Germany.
  • E-Books

    Free e-books

  • Network Programming With Go
  • Jun 9th

    Game Development

  • Ebitenginestars6.6k - dead simple 2D game library in Go.
  • Jun 6th

    Messaging

  • Quaminastars194 - Fast pattern-matching for filtering messages and events.
  • Jun 5th

    Utilities

  • lonchastars4 - A high-performance slice Utilities.
  • Go Compilers

  • c2gostars167 - Convert C code to Go code.
  • Jun 3rd

    Testing

    Markup Languages

  • goldmarkstars2.2k - A Markdown parser written in Go. Easy to extend, standard (CommonMark) compliant, well structured.
  • Utilities

  • wifiqrstars206 - Wi-Fi QR Code Generator.
  • Jun 2nd

    GUI

  • gio - Gio is a library for writing cross-platform immediate mode GUI-s in Go. Gio supports all the major platforms: Linux, macOS, Windows, Android, iOS, FreeBSD, OpenBSD and WebAssembly.
  • Jun 1st

    Testing

    Parsers/Encoders/Decoders

  • tokenizerstars11 — Parse any string, slice or infinite buffer to any tokens.
  • Websites

  • Code with Mukesh - Software Engineer and Blogs @ codewithmukesh.com.
  • Stream Processing

  • goiostars36 - An implementation of IO, Stream, Fiber for Golang, inspired by awesome Scala libraries cats and fs2.
  • May 31st

    Miscellaneous

    Dependency Injection

  • dostars123 - A dependency injection framework based on Generics.
  • Configuration

  • configstars20 - configure you app using file, environment variables, or flags in two lines of code
  • Financial

  • fpdecimalstars10 - Fast and precise serialization and arithmetic for small fixed-point decimals
  • Functional

  • mostars549 - Monads and popular FP abstractions, based on Go 1.18+ Generics (Option, Result, Either...).
  • Miscellaneous

    Translation

  • spreakstars4 - Flexible translation and humanization library for Go, based on the concepts behind gettext.
  • May 30th

    Error Handling

  • exceptionstars10 - A simple utility package for exception handling with try-catch in Golang.
  • May 22nd

    Goroutines

  • async-jobstars1 - AsyncJob is an asynchronous queue job manager with light code, clear and speed.
  • Functional

  • valorstars4 - Generic option and result types that optionally contain a value.
  • Command Line

    Standard CLI

  • carapace-specstars2 - Define simple completions using a spec file.
  • May 21st

    Geographic

  • H3GeoDiststars0 - Distribution of Uber H3geo cells by virtual nodes.
  • [h3-go] - Go bindings for H3, a hierarchical hexagonal geospatial indexing system.
  • H3 GeoJSONstars1 - Conversion utilities between H3 indexes and GeoJSON.
  • Go Tools

    Other Software

  • Gokapistars309 - Lightweight server to share files, which expire after a set amount of downloads or days. Similar to Firefox Send, but without public upload.
  • Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • go-rampartstars80 - Determine how intervals relate to each other.
  • Bot Building

  • waybackstars284 - A bot for Telegram, Mastodon, Slack, and other messaging platforms archives webpages.
  • May 18th

    Job Scheduler

  • Dagustars132 - No-code workflow executor. it executes DAGs defined in a simple YAML format.
  • May 9th

    Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • genfuncsstars14 - Go 1.18+ generics package inspired by Kotlin's Sequence and Map.
  • May 8th

    Third-party APIs

  • go-hibpstars4 - Simple Go binding to the "Have I Been Pwned" APIs.
  • May 7th

    Email

  • go-mailstars24 - A simple Go library for sending mails in Go.
  • Apr 29th

    Database

    Database Schema Migration

  • libschemastars3 - Define your migrations separately in each libary. Migrations for open source libraries. MySQL & PostgreSQL.
  • Apr 28th

    Database

    Database Tools

  • dynagostars2 - Simplify working with AWS DynamoDB.
  • Apr 27th

    Testing

    Parsers/Encoders/Decoders

  • encdecstars7 - Package provides a generic interface to encoders and decoders.
  • go-fasttldstars5 - High performance top level domains (TLD) extraction module.
  • Logging

  • slf4gstars1 - Simple Logging Facade for Golang: Simple structured logging; but powerful, extendable and customizable, with huge amount of learnings from decades of past logging frameworks.
  • Database

    SQL Query Builders

  • sgstars1 - A SQL Gen for generating standard SQLs(supports: CRUD) written in Go.
  • Microsoft Office

    Microsoft Excel

  • exlstars7 - Excel binding to struct written in Go.(Only supports Go1.18+)
  • Data Structures and Algorithms

    Maps

  • goradd/mapsstars5 - Go 1.18+ generic map interface for maps; safe maps; ordered maps; ordered, safe maps; etc.
  • Apr 26th

    Configuration

  • GoLobby/Configstars284 - GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language.
  • nfigurestars1 - Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML
  • Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • slicesstars5 - Pure, generic functions for slices.
  • Generators

  • copygenstars139 - Generate type-to-type code without reflection.
  • Miscellaneous

    Dependency Injection

  • GoLobby/Container - GoLobby Container is a lightweight yet powerful IoC dependency injection container for the Go programming language.
  • ORM

  • golobby/ormstars91 - Simple, fast, type-safe, generic orm for developer happiness.
  • Web Frameworks

    Routers

  • GoLobby/Routerstars16 - GoLobby Router is a lightweight yet powerful HTTP router for the Go programming language.
  • Go Tools

    DevOps Tools

  • go-rocket-updatestars64 - A simple way to make self updating Go applications - Supports Github and Gitlab.
  • Functional

  • fp-gostars68 - Collection of Functional Programming helpers powered by Golang 1.18+ generics.
  • Miscellaneous

    Morphological Analyzers

  • govader-backendstars2 - Microservice implementation of GoVaderstars25.
  • Query Language

  • govenstars33 - A drop-in query language for any database schema.
  • Web Frameworks

  • golambstars3 - Golamb makes it easier to write API endpoints for use with AWS Lambda and API Gateway.
  • Third-party APIs

  • fasapay-sdk-gostars0 - Unofficial Fasapay payment gateway XML API Client for Golang.
  • Apr 9th

    Go Tools

    DevOps Tools

  • wait-forstars2 - Wait for something to happen (from the command line) before continuing. Easy orchestration of Docker services and other things.
  • Apr 5th

    Data Structures and Algorithms

    Bit-packing and Compression

  • crunchstars59 - Go package implementing buffers for handling various datatypes easily.
  • go-efstars20 - A Go implementation of the Elias-Fano encoding.
  • roaringstars1.7k - Go package implementing compressed bitsets.
  • Data Structures and Algorithms

    Bloom and Cuckoo Filters

  • cuckoo-filterstars218 - Cuckoo filter: a comprehensive cuckoo filter, which is configurable and space optimized compared with other implements, and all features mentioned in original paper is available.
  • cuckoofilterstars912 - Cuckoo filter: a good alternative to a counting bloom filter implemented in Go.
  • ringstars126 - Go implementation of a high performance, thread safe bloom filter.
  • Data Structures and Algorithms

    Data Structure and Algorithm Collections

  • algorithmsstars645 - Algorithms and data structures.CLRS study.
  • go-datastructuresstars6.5k - Collection of useful, performant, and thread-safe data structures.
  • godsstars11.7k - Go Data Structures. Containers, Sets, Lists, Stacks, Maps, BidiMaps, Trees, HashSet etc.
  • gostlstars667 - Data structure and algorithm library for go, designed to provide functions similar to C++ STL.
  • Data Structures and Algorithms

    Iterators

  • goteratorstars8 - Iterator implementation to provide map and reduce functionalities.
  • iterstars157 - Go implementation of C++ STL iterators and algorithms.
  • Data Structures and Algorithms

    Maps

  • dictstars25 - Python-like dictionaries (dict) for Go.
  • Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • slicesstars7 - Functions that operate on slices; like package strings but adapted to work with slices.
  • Data Structures and Algorithms

    Nullable Types

  • nanstars52 - Zero allocation Nullable structures in one library with handy conversion functions, marshallers and unmarshallers.
  • nullstars25 - Nullable Go types that can be marshalled/unmarshalled to/from JSON.
  • typstars32 - Null Types, Safe primitive type conversion and fetching value from complex structures.
  • Data Structures and Algorithms

    Queues

  • dequestars48 - A highly optimized double-ended queue.
  • dequestars348 - Fast ring-buffer deque (double-ended queue).
  • goconcurrentqueuestars188 - Concurrent FIFO queue.
  • memlogstars55 - An easy to use, lightweight, thread-safe and append-only in-memory data structure inspired by Apache Kafka.
  • Data Structures and Algorithms

    Sets

  • dsustars6 - Disjoint Set data structure implementation in Go.
  • golang-setstars2.5k - Thread-Safe and Non-Thread-Safe high-performance sets for Go.
  • gosetstars46 - A useful Set collection implementation for Go.
  • setstars21 - Simple set data structure implementation in Go using LinkedHashMap.
  • Data Structures and Algorithms

    Text Analysis

  • blevestars8.5k - Modern text indexing library for go.
  • go-adaptive-radix-treestars233 - Go implementation of Adaptive Radix Tree.
  • go-edlibstars329 - Go string comparison and edit distance algorithms library (Levenshtein, LCS, Hamming, Damerau levenshtein, Jaro-Winkler, etc.) compatible with Unicode.
  • triestars592 - Trie implementation in Go.
  • Data Structures and Algorithms

    Trees

  • hashsplitstars8 - Split byte streams into chunks, and arrange chunks into trees, with boundaries determined by content, not position.
  • merklestars2 - Space-efficient computation of Merkle root hashes and inclusion proofs.
  • Data Structures and Algorithms

    Pipes

  • ordered-concurrentlystars15 - Go module that processes work concurrently and returns output in a channel in the order of input.
  • parapipestars19 - FIFO Pipeline which parallels execution on each stage while maintaining the order of messages and results.
  • pipelinestars39 - An implementation of pipelines with fan-in and fan-out.
  • Database

    Caches

  • 2qstars10 - 2Q in-memory cache implementation.
  • cachegostars176 - Golang Cache component for multiple drivers.
  • couchcachestars57 - RESTful caching micro-service backed by Couchbase server.
  • fastcachestars1.5k - fast thread-safe inmemory cache for big number of entries. Minimizes GC overhead.
  • GCachestars2k - Cache library with support for expirable Cache, LFU, LRU and ARC.
  • gdcachestars9 - A pure non-intrusive cache library implemented by golang, you can use it to implement your own distributed cache.
  • go-mcachestars82 - Fast in-memory key:value store/cache library. Pointer caches.
  • gocachestars1.4k - A complete Go cache library with mutiple stores (memory, memcache, redis, ...), chainable, loadable, metrics cache and more.
  • groupcachestars11.5k - Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.
  • remember-gostars113 - A universal interface for caching slow database queries (backed by redis, memcached, ristretto, or in-memory).
  • timedmapstars42 - Map with expiring key-value pairs.
  • ttlcachestars441 - An in-memory cache with item expiration and generics.
  • ttlcachestars5 - In-memory key value storage with TTL for each record.
  • Database

    Databases Implemented in Go

  • badgerstars11k - Fast key-value store in Go.
  • bboltstars5.6k - An embedded key/value database for Go.
  • Bitcask - Bitcask is an embeddable, persistent and fast key-value (KV) database written in pure Go with predictable read/write performance, low latency and high throughput thanks to the bitcask on-disk layout (LSM+WAL).
  • buntdbstars3.8k - Fast, embeddable, in-memory key/value database for Go with custom indexing and spatial support.
  • cloverstars220 - A lightweight document-oriented NoSQL database written in pure Golang.
  • pudgestars321 - Fast and simple key/value store written using Go's standard library.
  • Database

    Database Tools

  • clickhouse-bulkstars364 - Collects small inserts and sends big requests to ClickHouse servers.
  • Database Drivers

    Interfaces to Multiple Backends

  • cayleystars14.2k - Graph database with support for multiple backends.
  • dscstars25 - Datastore connectivity for SQL, NoSQL, structured files.
  • gokvstars439 - Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more).
  • Database Drivers

    Relational Database Drivers

  • avaticastars96 - Apache Avatica/Phoenix SQL driver for database/sql.
  • bgcstars16 - Datastore Connectivity for BigQuery for go.
  • firebirdsqlstars171 - Firebird RDBMS SQL driver for Go.
  • go-adodbstars128 - Microsoft ActiveX Object DataBase driver for go that uses database/sql.
  • go-mssqldbstars1.6k - Microsoft MSSQL driver for Go.
  • go-oci8stars593 - Oracle driver for go that uses database/sql.
  • go-sql-driver/mysqlstars12.4k - MySQL driver for Go.
  • go-sqlite3stars5.8k - SQLite3 driver for go that uses database/sql.
  • godrorstars367 - Oracle driver for Go, using the ODPI-C driver.
  • gofreetdsstars106 - Microsoft MSSQL driver. Go wrapper over FreeTDS.
  • Kivikstars239 - Kivik provides a common Go and GopherJS client library for CouchDB, PouchDB, and similar databases.
  • pgxstars5.6k - PostgreSQL driver supporting features beyond those exposed by database/sql.
  • pigstars9 - Simple pgxstars5.6k wrapper to execute and scanstars590 query results easily.
  • pqstars7.4k - Pure Go Postgres driver for database/sql.
  • Sqinn-Gostars123 - SQLite with pure Go.
  • sqlhooksstars551 - Attach hooks to any database/sql driver.
  • Database Drivers

    NoSQL Database Drivers

  • aerospike-client-gostars393 - Aerospike client in Go language.
  • arangolitestars72 - Lightweight golang driver for ArangoDB.
  • ascstars8 - Datastore Connectivity for Aerospike for go.
  • forestdbstars32 - Go bindings for ForestDB.
  • go-couchbasestars317 - Couchbase client in Go.
  • go-pilosastars53 - Go client library for Pilosa.
  • go-rejsonstars268 - Golang client for redislabs' ReJSON module using Redigo golang client. Store and manipulate structs as JSON objects in redis with ease.
  • gocbstars336 - Official Couchbase Go SDK.
  • gocosmosstars8 - REST client and standard database/sql driver for Azure Cosmos DB.
  • gocql - Go language driver for Apache Cassandra.
  • godisstars104 - redis client implement by golang, inspired by jedis.
  • godscachestars10 - A wrapper for the Google Cloud Platform Go Datastore package that adds caching using memcached.
  • gomemcachestars1.5k - memcache client library for the Go programming language.
  • gorethinkstars1.6k - Go language driver for RethinkDB.
  • goriakstars27 - Go language driver for Riak KV.
  • mgmstars512 - MongoDB model-based ODM for Go (based on official MongoDB driver).
  • mgostars1.9k - (unmaintained) MongoDB driver for the Go language that implements a rich and well tested selection of features under a very simple API following standard Go idioms.
  • mongo-go-driverstars6.8k - Official MongoDB driver for the Go language.
  • neo4jstars27 - Neo4j Rest API Bindings for Golang.
  • Neo4j-GOstars76 - Neo4j REST Client in golang.
  • neoismstars386 - Neo4j client for Golang.
  • qmgostars914 - The MongoDB driver for Go. It‘s based on official MongoDB driver but easier to use like Mgo.
  • redeostars414 - Redis-protocol compatible TCP servers/services.
  • redigostars9.2k - Redigo is a Go client for the Redis database.
  • redisstars14.7k - Redis client for Golang.
  • rueidisstars399 - Fast Redis RESP3 client with auto pipelining and server-assisted client side caching.
  • xredisstars18 - Typesafe, customizable, clean & easy to use Redis client.
  • Database Drivers

    Search and Analytic Databases

  • elasticstars6.9k - Elasticsearch client for Go.
  • elasticsqlstars920 - Convert sql to elasticsearch dsl in Go.
  • elastigostars949 - Elasticsearch client library.
  • go-elasticsearchstars4.2k - Official Elasticsearch client for Go.
  • goesstars28 - Library to interact with Elasticsearch.
  • skizzestars85 - probabilistic data-structures service and storage.
  • Apr 4th

    Database

    Caches

  • bcachestars88 - Eventually consistent distributed in-memory cache Go library.
  • Database

    Databases Implemented in Go

  • nutsdbstars2.3k - Nutsdb is a simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as list, set, sorted set.
  • unitdbstars91 - Fast timeseries database for IoT, realtime messaging applications. Access unitdb with pubsub over tcp or websocket using github.com/unit-io/unitd application.
  • File Handling

  • stl - Modules to read and write STL (stereolithography) files. Concurrent algorithm for reading.
  • Logging

  • sqldb-loggerstars220 - A logger for Go SQL database driver without modify existing *sql.DB stdlib usage.
  • Miscellaneous

    Tokenizers

  • sentencesstars321 - Sentence tokenizer: converts text into a list of sentences.
  • Security

  • secretstars11 - Prevent your secrets from leaking into logs, std* etc.
  • Utilities

  • mongo-go-paginationstars98 - Mongodb Pagination for official mongodb/mongo-go-driver package which supports both normal queries and Aggregation pipelines.
  • Websites

  • justforfunc - Youtube channel dedicated to Go programming language tips and tricks, hosted by Francesc Campoy @francesc.
  • Apr 2nd

    Utilities

  • reflectutilsstars2 - Helpers for working with reflection: struct tag parsing; recursive walking; fill value from string.
  • pointerstars29 - Package pointer contains helper routines for simplifying the creation of optional fields of basic type.
  • Miscellaneous

    Dependency Injection

  • njectstars12 - A type safe, reflective framework for libraries, tests, http endpoints, and service startup.
  • Web Frameworks

    Routers

  • nchistars3 - chi-like router built on httprouter with dependency injection based middleware wrappers
  • Geographic

  • Web-Mercator-Projectionstars0 A project to easily use and convert LonLat, Point and Tile to display info, markers, etc, in a map using the Web Mercator Projection.
  • Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • go-tuplestars28 - Generic tuple implementation for Go 1.18+.
  • GUI

  • goradd/html5tagstars3 - Library for outputting HTML5 tags.
  • Database

    SQL Query Builders

  • sqlcstars5.8k - Generate type-safe code from SQL.
  • Apr 1st

    Web Frameworks

  • anowebstars3 - The lightweight and powerful web framework using the new way for Go.Another go the way.
  • Mar 31st

    Go Tools

    DevOps Tools

  • kostars4.6k - Command line tool for building and deploying Go applications on Kubernetes
  • Security

  • Corazastars541 - Enterprise-ready, modsecurity and OWASP CRS compatible WAF library.
  • Mar 30th

    Networking

    HTTP Clients

  • go-otelroundtripperstars20 - Go http.RoundTripper that emits open telemetry metrics for HTTP requests.
  • Database

    Database Tools

  • rdbstars149 - Redis RDB file parser for secondary development and memory analysis.
  • Mar 27th

    Data Structures and Algorithms

    Miscellaneous Data Structures and Algorithms

  • go18dsstars13 - Go Data Structures using Go 1.18 generics.
  • Mar 26th

    Third-party APIs

  • dusupay-sdk-gostars1 - Unofficial Dusupay payment gateway API Client for Go
  • newsapi-gostars2 - Go client for NewsAPI.
  • Functional

  • underscorestars52 - Functional programming helpers for Go 1.18 and beyond.
  • Mar 24th

    Database

    Databases Implemented in Go

  • dtfstars242 - A distributed transaction manager. Support XA, TCC, SAGA, Reliable Messages.
  • Mar 23rd

    Data Structures and Algorithms

    Bloom and Cuckoo Filters

  • bloomstars1.6k - Go package implementing Bloom filters.
  • Data Structures and Algorithms

    Bit Sets

  • bitsetstars895 - Go package implementing bitsets.
  • Mar 22nd

    Miscellaneous

    Morphological Analyzers

  • spelling-correctorstars0 - A spelling corrector for the Spanish language or create your own.
  • Job Scheduler

  • cdulestars7 - Job scheduler library with database support
  • Mar 20th

    Networking

  • gldapstars69 - gldap provides an ldap server implementation and you provide handlers for its ldap operations.
  • E-Books

    E-books for purchase

  • Know Go: Generics - A guide to understanding and using generics in Go.
  • Mar 17th

    Validation

  • Validatorstars2 - A lightweight model validator written in Go.Contains VFs:Min, Max, MinLength, MaxLength, Length, Enum, Regex.
  • Mar 15th

    Go Tools

    DevOps Tools

  • Mantilstars72 - Go specific framework for building serverless applications on AWS that enables you to focus on pure Go code while Mantil takes care of the infrastructure.
  • Go Tools

    Other Software

  • goblin - Golang binaries in a curl, built by goblins.
  • Mar 14th

    Miscellaneous

    Language Detection

  • guesslanguagestars54 - Functions to determine the natural language of a unicode text.
  • whatlanggostars543 - Natural language detection package for Go. Supports 84 languages and 24 scripts (writing systems e.g. Latin, Cyrillic, etc).
  • Miscellaneous

    Morphological Analyzers

  • snowballstars31 - Snowball stemmer port (cgo wrapper) for Go. Provides word stem extraction functionality Snowball native.
  • spaGOstars1.2k - Self-contained Machine Learning and Natural Language Processing library in Go.
  • Miscellaneous

    Slugifiers

  • go-slugifystars78 - Make pretty slug with multiple languages support.
  • slugstars826 - URL-friendly slugify with multiple languages support.
  • Slugifystars31 - Go slugify application that handles string.
  • Miscellaneous

    Tokenizers

  • gojiebastars1.9k - This is a Go implementation of jiebastars28.8k which a Chinese word splitting algorithm.
  • gotokenizerstars14 - A tokenizer based on the dictionary and Bigram language models for Golang. (Now only support chinese segmentation)
  • gsestars1.9k - Go efficient text segmentation; support english, chinese, japanese and other.
  • MMSEGOstars61 - This is a GO implementation of MMSEG which a Chinese word splitting algorithm.
  • prosestars2.9k - Library for text processing that supports tokenization, part-of-speech tagging, named-entity extraction, and more. English only.
  • Miscellaneous

    Translation

  • go-i18nstars2k - Package and an accompanying tool to work with localized text.
  • go-localizestars35 - Simple and easy to use i18n (Internationalization and localization) engine - used for translating locale strings.
  • go-mystemstars28 - CGo bindings to Yandex.Mystem - russian morphology analyzer.
  • go-pinyinstars1.2k - CN Hanzi to Hanyu Pinyin converter.
  • gotextstars340 - GNU gettext utilities for Go.
  • icustars20 - Cgo binding for icu4c C library detection and conversion functions. Guaranteed compatibility with version 50.1.
  • iuliia-gostars30 - Transliterate Cyrillic → Latin in every possible way.
  • tstars11 - Another i18n pkg for golang, which follows GNU gettext style and supports .po/.mo files: t.T (gettext), t.N (ngettext), etc. And it contains a cmd tool xtemplate, which can extract messages as a pot file from text/html template.
  • Miscellaneous

    Transliteration

  • encastars11 - Minimal cgo bindings for libenca, which detects character encodings.
  • go-unidecodestars92 - ASCII transliterations of Unicode text.
  • gounidecodestars75 - Unicode transliterator (also known as unidecode) for Go.
  • Testing

    Formatters

  • addressstars48 - Handles address representation, validation and formatting.
  • alignstars75 - A general purpose application that aligns text.
  • bytes - Formats and parses numeric byte values (10K, 2M, 3G, etc.).
  • go-fixedwidthstars63 - Fixed-width text formatting (encoder/decoder with reflection).
  • go-humanizestars3.2k - Formatters for time, numbers, and memory size to human readable format.
  • gotabulatestars281 - Easily pretty-print your tabular data with Go.
  • textwrapstars2 - Wraps text at end of lines. Implementation of textwrap module from Python.
  • Testing

    Markup Languages

  • bafistars57 - Universal JSON, BSON, YAML, XML translator to ANY format using templates.
  • bbConvertstars6 - Converts bbCode to HTML that allows you to add support for custom bbCode tags.
  • blackfridaystars5k - Markdown processor in Go.
  • github_flavored_markdown - GitHub Flavored Markdown renderer (using blackfriday) with fenced code block highlighting, clickable header anchor links.
  • go-output-formatstars7 - Output go structures into multiple formats (YAML/JSON/etc) in your command line app.
  • go-tomlstars1.3k - Go library for the TOML format with query support and handy cli tools.
  • goq - Declarative unmarshaling of HTML using struct tags with jQuery syntax (uses GoQuery).
  • html-to-markdownstars366 - Convert HTML to Markdown. Even works with entire websites and can be extended through rules.
  • htmlquerystars491 - An XPath query package for HTML, lets you extract data or evaluate from HTML documents by an XPath expression.
  • mxjstars520 - Encode / decode XML as JSON or map[string]interface{}; extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages.
  • tomlstars3.9k - TOML configuration format (encoder/decoder with reflection).
  • Testing

    Parsers/Encoders/Decoders

  • allotstars55 - Placeholder and wildcard text parsing for CLI tools and bots.
  • codetreestars20 - Parses indented code (python, pixy, scarlet, etc.) and returns a tree structure.
  • commonregexstars816 - A collection of common regular expressions for Go.
  • didstars60 - DID (Decentralized Identifiers) Parser and Stringer in Go.
  • dois