Awesome Go

Search

Find Go libraries and tools by name, category, or popularity.

2,739 results

bonk

Fast, stealth-first browser automation library using Chrome DevTools Protocol over WebSocket with no external dependencies

TestingSelenium and browser control tools
cdp

Type-safe bindings for the Chrome Debugging Protocol that can be used with browsers or other debug targets that implement it

TestingSelenium and browser control tools
chromedp

a way to drive/test Chrome, Safari, Edge, Android Webviews, and other browsers supporting the Chrome Debugging Protocol

TestingSelenium and browser control tools
playwright-go

browser automation library to control Chromium, Firefox and WebKit with a single API

TestingSelenium and browser control tools
rod

A Devtools driver to make web automation and scraping easy

TestingSelenium and browser control tools
failpoint

An implementation of [failpoints](https://www.freebsd.org/cgi/man.cgi?query=fail) for Golang

TestingFail injection
address

Handles address representation, validation and formatting

Text ProcessingFormatters
align

A general purpose application that aligns text

Text ProcessingFormatters
bytes

Formats and parses numeric byte values (10K, 2M, 3G, etc.)

Text ProcessingFormatters
go-fixedwidth

Fixed-width text formatting (encoder/decoder with reflection)

Text ProcessingFormatters
go-humanize

Formatters for time, numbers, and memory size to human readable format

Text ProcessingFormatters
gotabulate

Easily pretty-print your tabular data with Go

Text ProcessingFormatters
sq

Convert data from SQL databases or document formats like CSV or Excel into formats such as JSON, Excel, CSV, HTML, Markdown, XML, and YAML

Text ProcessingFormatters
textwrap

Wraps text at end of lines. Implementation of `textwrap` module from Python

Text ProcessingFormatters
bafi

Universal JSON, BSON, YAML, XML translator to ANY format using templates

Text ProcessingMarkup Languages
bbConvert

Converts bbCode to HTML that allows you to add support for custom bbCode tags

Text ProcessingMarkup Languages
blackfriday

Markdown processor in Go

Text ProcessingMarkup Languages
go-output-format

Output go structures into multiple formats (YAML/JSON/etc) in your command line app

Text ProcessingMarkup Languages
go-toml

Go library for the TOML format with query support and handy cli tools

Text ProcessingMarkup Languages
goldmark

A Markdown parser written in Go. Easy to extend, standard (CommonMark) compliant, well structured

Text ProcessingMarkup Languages
goq

Declarative unmarshalling of HTML using struct tags with jQuery syntax (uses GoQuery)

Text ProcessingMarkup Languages
html-to-markdown

Convert HTML to Markdown. Even works with entire websites and can be extended through rules

Text ProcessingMarkup Languages
htmlquery

An XPath query package for HTML, lets you extract data or evaluate from HTML documents by an XPath expression

Text ProcessingMarkup Languages
htmlyaml

Rich rendering of YAML as HTML in Go

Text ProcessingMarkup Languages
htree

Traverse, navigate, filter, and otherwise process trees of [html.Node](https://pkg.go.dev/golang.org/x/net/html#Node) objects

Text ProcessingMarkup Languages
mxj

Encode / decode XML as JSON or map[string]interface{}; extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages

Text ProcessingMarkup Languages
toml

TOML configuration format (encoder/decoder with reflection)

Text ProcessingMarkup Languages
allot

Placeholder and wildcard text parsing for CLI tools and bots

Text ProcessingParsers/Encoders/Decoders
codetree

Parses indented code (python, pixy, scarlet, etc.) and returns a tree structure

Text ProcessingParsers/Encoders/Decoders
commonregex

A collection of common regular expressions for Go

Text ProcessingParsers/Encoders/Decoders
did

DID (Decentralized Identifiers) Parser and Stringer in Go

Text ProcessingParsers/Encoders/Decoders
doi

Document object identifier (doi) parser in Go

Text ProcessingParsers/Encoders/Decoders
editorconfig-core-go

Editorconfig file parser and manipulator for Go

Text ProcessingParsers/Encoders/Decoders
go-fasttld

High performance effective top level domains (eTLD) extraction module

Text ProcessingParsers/Encoders/Decoders
go-nmea

NMEA parser library for the Go language

Text ProcessingParsers/Encoders/Decoders
go-querystring

Go library for encoding structs into URL query parameters

Text ProcessingParsers/Encoders/Decoders
go-vcard

Parse and format vCard

Text ProcessingParsers/Encoders/Decoders
godump

Pretty print any GO variable with ease, an alternative to Go's `fmt.Printf("%#v")`

Text ProcessingParsers/Encoders/Decoders
godump (goforj)

Pretty-print Go structs with Laravel/Symfony-style dumps, full type info, colorized CLI output, cycle detection, and private field access

Text ProcessingParsers/Encoders/Decoders
gofeed

Parse RSS and Atom feeds in Go

Text ProcessingParsers/Encoders/Decoders
gographviz

Parses the Graphviz DOT language

Text ProcessingParsers/Encoders/Decoders
gonameparts

Parses human names into individual name parts

Text ProcessingParsers/Encoders/Decoders
ltsv

High performance [LTSV (Labeled Tab Separated Value)](http://ltsv.org/) reader for Go

Text ProcessingParsers/Encoders/Decoders
normalize

Sanitize, normalize and compare fuzzy text

Text ProcessingParsers/Encoders/Decoders
parseargs-go

string argument parser that understands quotes and backslashes

Text ProcessingParsers/Encoders/Decoders
prattle

Scan and parse LL(1) grammars simply and efficiently

Text ProcessingParsers/Encoders/Decoders
vdf

A Lexer and Parser for Valves Data Format (known as vdf) written in Go

Text ProcessingParsers/Encoders/Decoders
when

Natural EN and RU language date/time parser with pluggable rules

Text ProcessingParsers/Encoders/Decoders
xj2go

Convert xml or json to go struct

Text ProcessingParsers/Encoders/Decoders
coregex

Production regex engine with Rust regex-crate architecture: multi-engine DFA/NFA, SIMD prefilters, drop-in stdlib replacement

Text ProcessingRegular Expressions