Go Community Linklog

Made a library? Written a blog post? Found a useful tutorial? Share it with the Go community here or just enjoy what everyone else has found!


txeh: Go library and CLI utilty for /etc/hosts management. @cjimti

txeh is a golang library and command line utility for working with /etc/hosts.

A computer's /etc/hosts file is a powerful utility for developers and system administrators to create localized, custom DNS entries. This small go library and utility were developed to encapsulate the complexity of working with /etc/hosts directly by providing a simple interface for adding and removing entries in a /etc/hosts file.

https://github.com/txn2/txeh

 Craig Johnston


Manage test dependencies with Go

Analogue to testing that a window can be opened in a house, you don't want to spend time building the house first. Instead you want to say: I need a house with a window and then you test the opening functionality. This is the approach we took with our framework for setting up objects to be tested using recipes, ingredients and special preparation (if needed).

https://developers.redhat.com/blog/2017/09/19/manage-test-dependencies-go/

 Konrad Kleine


Store and interact with go structs efficiently in Redis using go-rejson #redis #go #json

https://github.com/nitishm/go-rejson

Instead of saving structs as json strings, use redislabs' ReJSON module with Redis Server to interact natively with JSON objects

ReJSON is a Redis module that implements ECMA-404 The JSON Data Interchange Standard as a native data type. It allows storing, updating and fetching JSON values from Redis keys (documents).

Go-ReJSON is the only go client library that supports both redigo and go-redis clients, and plans to support more redis Go clients in the future.

PRs are welcome !

 Nitish Malhotra


An HTTP server implementation of vegeta, a load-testing tool, written in Go. #golang #load-testing #programming

I am looking for contributors to help me out with my latest project.

I am creating an HTTP server implementation, driven by a REST API, for the https://github.com/tsenart/vegeta load testing tool. Currently it is only available as a CLI tool. However, there is an excellent library provided by the author, which is used by the CLI tool.

The idea is to create a tool, using vegeta, which is similar to https://github.com/loadimpact/k6 or https://github.com/locustio/locust complete with a UI (frontend). This makes it possible to use this tool in a more distributed manner, and possibly introduce it as a kubernetes native load-testing tool.

The project is available at https://github.com/nitishm/vegeta-server and currently supports submitting/viewing/canceling attacks (all options are not implemented, yet) and viewing the attack reports.

Issues are tagged with appropriate labels.

 Nitish Malhotra


Terminal color rendering tool library by Golang

gookit/color - command-line color library with true color support, universal API methods and Windows support.

Features

  • Simple to use, zero dependencies
  • Supports rich color output: 16-color, 256-color, true color (24-bit)
    • 16-color output is the most commonly used and most widely supported, working on any Windows version
    • See this gist for information on true color support
  • Generic API methods: Print, Printf, Println, Sprint, Sprintf
  • Supports HTML tag-style color rendering, such as <green>message</>
  • Basic colors: Bold, Black, White, Gray, Red, Green, Yellow, Blue, Magenta, Cyan
  • Additional styles: Info, Note, Light, Error, Danger, Notice, Success, Comment, Primary, Warning, Question, Secondary
 Inhere


A flexible and configurable captcha image generate package

https://github.com/yujiahaol68/captchy

Still in DEV. Any issue and feature request is welcomed! Please star if you think it is helpful.

 Tecker.Yu


Koazee

Benchmark comparison between frameworks that provided a stream like API to deal with slices.

https://medium.com/@ivan.corrales.solera/koazee-vs-go-funk-vs-go-linq-caf8ef18584e

If you want to know more about koazee, have a look at https://github.com/wesovilabs/koazee

 Iván Corrales Solera