Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

import "github/shuLhan/share"



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

Command Line Interface

  • gofmtcomment: Program to convert multi lines "/**/" comments into single line "//" format.

  • smtpcli: Command line interface to SMTP client protocol.

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


  • 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.

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

  • 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.

  • 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 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.

  • sanitize: A library to sanitize markup document into plain text.

  • 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 and a parser for SSH client configuration specification ssh_config(5).

  • 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. See the status reports.

  • xmlrpc: Package xmlrpc provide an implementation of XML-RPC specification.


Latest and full CHANGELOG.


That's it! Happy hacking!