A collection of tools, public APIs, and libraries written and for working with Go programming language.

This library is released every month, usually at the first week of month.

Public APIs

Telegram bot

Package bot implement the Telegram Bot API.

Command Line Interface

epoch

Program epoch print the current date and time (Unix seconds, milliseconds, nanoseconds, local time, and UTC time) or the date and time based on the epoch on first parameter.

gofmtcomment

Program to convert multi lines "//" comments into single line "//" format.

ini

Program ini provide a command line interface to get and set values in the INI file format.

smtpcli

Command line interface to SMTP client protocol.

xtrk

Program xtrk is command line interface to uncompress and/or unarchive a file. Supported format: bzip2, gzip, tar, zip, tar.bz2, tar.gz.

totp

Program to generate Time-based One-time Password using secret key.

Libraries

ascii

A library for working with ASCII characters.

bytes

A library for working with slice of bytes.

clise

Package clise implements circular slice.

contact

A library to import contact from Google, Microsoft, or Yahoo.

crypto

Package crypto provide a wrapper to simplify working with standard crypto package.

debug

Package debug provide global debug variable, initialized through environment variable "DEBUG" or directly.

dns

A library for working with Domain Name System (DNS) protocol.

dsv

A library for working with delimited separated value (DSV).

email

A library for working with Internet Message Format, as defined in RFC 5322.

email/dkim

A library to parse and create DKIM-Signature header field value, as defined in RFC 6376.

email/maildir

A library to manage email using maildir format.

errors

Package errors provide an error type with Code, Message, and Name.

floats64

A library for working with slice of float64.

git

A wrapper for git command line interface.

http

Package http extends the standard http package with simplified routing handler and builtin memory file system.

hunspell

A library to parse the Hunspell file format.

ini

A library for reading and writing INI configuration as defined by Git configuration file syntax.

ints

A library for working with slice of integer.

ints64

A library for working with slice of int64.

io

A library for simplify reading and watching files.

json

Package json extends the capabilities of standard json package.

math

Package math provide generic functions working with math.

math/big

Package big extends the capabilities of standard "math/big" package by adding custom global precision to Float, Int, and Rat, global rounding mode, and custom bits precision to Float.

memfs

A library for mapping file system into memory and to generate an embedded Go file from it.

mining

A mini library for data mining.

classifier/cart

An implementation of the Classification and Regression Tree by Breiman, et al.

classififer/crf

An implementation of the Cascaded Random Forest (CRF) algorithm, by Baumann, Florian, et al.

classifier/rf

An implementation of ensemble of classifiers using random forest algorithm by Breiman and Cutler.

gain/gini

A library to calculate Gini gain.

knn

An implementation of the K Nearest Neighbor (KNN) using Euclidian to compute the distance between samples.

resampling/lnsmote

An implementation of the Local-Neighborhood algorithm from the paper of Maciejewski, Tomasz, and Jerzy Stefanowski.

resampling/smote

An implementation of the Synthetic Minority Oversampling TEchnique (SMOTE).

tree/binary

An implementation of binary tree.

net

Constants and library for networking.

html

Package html extends the golang.org/x/net/html by providing simplified methods for working with Node.

numbers

A library for working with integer, float, slice of integer, and slice of floats.

os/exec

Package exec wrap the standar package "os/exec" to simplify calling Run with stdout and stderr.

parser

Package parser provide a common text parser, using delimiters.

paseto

A simple, ready to use, implementation of Platform-Agnostic SEcurity TOkens (PASETO).

reflect

Package reflect extends the standard reflect package.

runes

A library for working with slice of rune.

smtp

A library for building SMTP server or client. This package is working in progress.

spf

Package spf implement Sender Policy Framework (SPF) per RFC 7208.

sql

Package sql extends the standard library "database/sql.DB" that provide common functionality across DBMS.

ssh

Package ssh provide a wrapper for golang.org/x/crypto/ssh and a parser for SSH client configuration specification ssh_config(5).

ssh/sftp

Package sftp implement native SSH File Transport Protocol v3.

strings

A library for working with slice of string.

tabula

A library for working with rows, columns, or matrix (table), or in another terms working with data set.

test

A library for helping with testing.

text

A library for working with text.

text/diff

Package diff implement text comparison.

time

A library for working with time.

totp

Package totp implement Time-Based One-Time Password Algorithm based on RFC 6238.

websocket

The WebSocket library for server and client. This websocket library has been tested with autobahn testsuite with 100% success rate. the status reports.

xmlrpc

Package xmlrpc provide an implementation of XML-RPC specification.

Changelog

Latest and full CHANGELOG.

Credits

That’s it! Happy hacking!