spago
A Machine Learning library written in pure Go designed to support relevant neural architectures in Natural Language Processing.https://github.com/nlpodyssey/spago
Spago is self-contained, in that it uses its own lightweight computational graph both for training and inference, easy to understand from start to finish.
sftpgo
Fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support. Several storage backends are supported: local filesystem, encrypted local filesystem, S3 (compatible) Object Storage, Google Cloud Storage, Azure Blob Storage, SFTP.https://github.com/drakkan/sftpgo
go-callvis
go-callvis is a development tool to help visualize call graph of a Go program using interactive view.https://github.com/ofabry/go-callvis
TIL: Go Response Body MUST be closed, even if you don’t read it
https://manishrjain.com/must-close-golang-http-response
https://manishrjain.com/must-close-golang-http-response
vale
Vale is a command-line tool that brings code-like linting to prose. It's fast, cross-platform (Windows, macOS, and Linux), and highly customizable.https://github.com/errata-ai/vale
etree
The etree package is a lightweight, pure go package that expresses XML in the form of an element tree. Its design was inspired by the Python ElementTree module.https://github.com/beevik/etree
memphis
Memphis enables building modern queue-based applications that require large volumes of streamed and enriched data, modern protocols, zero ops, up to x9 faster development, up to x46 fewer costs, and significantly lower dev time for data-oriented developers and data engineers.https://github.com/memphisdev/memphis
How Much Memory Do You Need to Run 1 Million Concurrent Tasks?
https://pkolaczk.github.io/memory-consumption-of-async
https://pkolaczk.github.io/memory-consumption-of-async
go-datastructures
A collection of useful, performant, and threadsafe Go datastructures.https://github.com/Workiva/go-datastructures
gain
Gain is a high-performance io_uring networking framework written entirely in Go.https://github.com/pawelgaczynski/gain
lancet
Lancet is a comprehensive, efficient, and reusable util function library of go. Inspired by the java apache common package and lodash.js.https://github.com/duke-git/lancet
dnscontrol
DNSControl is a system for maintaining DNS zones. It has two parts: a domain specific language (DSL) for describing DNS zones plus software that processes the DSL and pushes the resulting zones to DNS providers such as Route53, Cloudflare, and Gandi. It can send the same DNS records to multiple providers. It even generates the most beautiful BIND zone files ever. It runs anywhere Go runs (Linux, macOS, Windows). The provider model is extensible, so more providers can be added.https://github.com/StackExchange/dnscontrol
openfga
A high-performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar.https://github.com/openfga/openfga
Implementing a distributed key-value store on top of implementing Raft in Go
https://notes.eatonphil.com/2023-05-25-raft.html
https://notes.eatonphil.com/2023-05-25-raft.html
Finding The Best Go Project Structure
Part 1: https://avivcarmi.com/finding-the-best-go-project-structure-part-1
Part 2: https://avivcarmi.com/finding-the-best-go-project-structure-part-2
Part 1: https://avivcarmi.com/finding-the-best-go-project-structure-part-1
Part 2: https://avivcarmi.com/finding-the-best-go-project-structure-part-2
Unlocking the Power of JunoDB: PayPal’s Key-Value Store Goes Open-Source
https://medium.com/paypal-tech/unlocking-the-power-of-junodb-paypals-key-value-store-goes-open-source-ee85f935bdc1
https://medium.com/paypal-tech/unlocking-the-power-of-junodb-paypals-key-value-store-goes-open-source-ee85f935bdc1
grank.io helps you navigate in the golang world
Choosing the right dependencies is more of an art than a science. People usually apply different heuristics, like checking github star counts, commit frequency, issue counts, number of contributors, etc. After one of these discussion why i have chosen library A instead of B or C i came to an idea that is presented here.https://www.grank.io
Luckily most of the golang dependencies (libraries, frameworks) are open-source and located in one place, github.com. Golang's package import convention tells us how to actually find the source code of the dependencies, so we can check easily the dependency graph of go packages. If we wanna compare packages we could check which packages are used by more "important" packages/projects that sounds similar to idea od PageRank how importance of web pages can be computed. Even more we have additional useful information put together manually by the members of the community for example the star counts on a repo which could be used as weight in the computation.
grank.io is showing a rank list based on this weighted PageRank value of github repos and for each analysed repositories, packages it shows the packages that are dependent on it or it depends on. The source code is available on github.
How to include Git version information in Go
TL;DR: Just import github.com/carlmjohnson/versioninfo and use versioninfo.Revision to automatically include a Git hash in your Go application.https://blog.carlmjohnson.net/post/2023/golang-git-hash-how-to
Curious how it works? Want to make your own version info package? Read on.