237 Resources
Golang go-generics-the-hard-way Libraries
Go package simplifies nullable fields handling using Go Generics.
Go Nullable with Generics Go package simplifies nullable fields handling with Go Generics. Package gonull provides a generic Nullable type for handlin
๐ฅฌ validate. simply.
๐ฅฌ validate. simply. no reflection. no gencode. hierarchical and extendable. fast. ~100LOC. generics. This is convenient when you have custom validati
A zero-dependency cache library for storing data in memory with generics.
Memory Cache A zero-dependency cache library for storing data in memory with generics. Requirements Golang 1.18+ Installation go get -u github.com/rod
Golang ergonomic declarative generics module inspired by Rust, including Result, Option, and more.
gust Golang ergonomic declarative generics module inspired by Rust. Go Version goโฅ1.18 Features Result Avoid if err != nil, handle result with chain m
An experiment which attempts to create streams similar to what is available in Java now that we have generics in Go.
go-streams An experiment which attempts to create streams similar to what is available in Java now that we have generics. Should I use this library? N
A simple generic in-memory caching layer
sc sc is a simple in-memory caching layer for golang. Usage Wrap your function with sc - it will automatically cache the values for specified amount o
๐ Enjoy a slice! A utility library for dealing with slices and maps that focuses on type safety and performance.
๐ github.com/elliotchance/pie Enjoy a slice! pie is a library of utility functions for common operations on slices and maps. Quick Start FAQ What are
Type-safe, DRY, flexible test fixture factory based on Go 1.18+ Generics
Fixtory is a test fixture factory which initializes type-safe, DRY, flexible fixtures with the power of Generics. By using Fixtory... No more redundan
Juniper is an extension to the Go standard library using generics, including containers, iterators, and streams.
Juniper Juniper is a library of extensions to the Go standard library using generics, including containers, iterators, and streams. container/tree con
๐โโ๏ธ A new way to execute commands and manipulate command output in Go
๐โโ๏ธ A new way to execute commands and manipulate command output in Go
Higher Order Functions using Golang Generics (Hack Days 2022)
hoff: Higher Order Functions (and Friends) Golang 1.18+ implementations of common methods/data structures using Go Generics Requirements Go 1.18 or ne
Generic-based collection tools
go-collection go collection is a tool implemented using generic, it can help you process slice/map data quickly and easily convert between them. Note:
Somewhat idiomatic and easy-to-glance-at Go pipelines
A simple and somewhat idiomatic way of constructing easy-to-glance-at pipes for sequential processes. Inspired by Elixir's pipe operator. Refer to my
This library implements the pub/sub pattern in a generic way. It uses Go's generic types to declare the type of the event.
observer This library implements the pub/sub pattern in a generic way. It uses Go's generic types to declare the type of the event. Usage go get githu
Golang 1.18+ Generics implementation of Set methods
Golang Generics: Set A golang 1.18+ implementation of Set using Go generics Installation $ go get -u github.com/chrispappas/golang-generics-set Quick
๐ GoDI: Generic based DI in Go
๐ GoDI: Generic based DI in Go Installation DI: go get -u github.com/MaximZayats/godi/ import "github.com/MaximZayats/godi/di" CMD: go get -u github.
Go-generics option module inspired by rust.
option Go-generics option module inspired by rust. Avoid nil value, handle value with Option type, will you choose her? Note: Migrated to gust. Go Ver
Type-safe assertion helpers for Go
attest attest is a small package of type-safe assertion helpers. Under the hood, it uses cmp for equality testing and diffing. You may enjoy attest if
azqlite is a lightweight wrapper around Azure's SDK to interact with the Azure Storage Queue service in a simpler and more idiomatic way.
azqlite azqlite is a lightweight wrapper around github.com/Azure/azure-storage-queue-go to interact with the Azure Storage Queue service in a simpler
A Go package providing a generic data type to track maximum and minimum peak values.
go-peak Overview go-peak is a Go package providing a generic data type that tracks the maximum and minimum peak values within a specific period of tim
(Probably) The easiest way to clone your base Go project repository
GoStrap GoStrap probably will going to be the easiest way for you to create new Go project using your existing project template. This CLI actually onl
Batch processing library for Go supports generics & values returning
Aggregator Aggregator is a batch processing library for Go supports returning values. You can group up and process batch of tasks with keys in a singl
Ghdl - A much more convenient way to download GitHub release binaries on the command line, works on Win & Unix-like systems
ghdl Memorize ghdl as github download ghdl is a fast and simple program (and als
Optinator - Idiomatic way to fill structs with options logic
optinator Go packages are generally start with a main struct and the package ini
Config-loader - Minimal and safe way to load in configuration files without any extra boilerplate, made for my own personal usage
๐ config-loader Minimal and safe way to load in configuration files without any
JSON Spanner - A Go package that provides a fast and simple way to filter or transform a json document
JSON SPANNER JSON Spanner is a Go package that provides a fast and simple way to
This small Docker project is the easiest way to send notifications directly via .txt files to services like: Gotify, Telegram, SMTP (Email) or Webhook.
This small Docker project is the easiest way to send notifications directly via .txt files to services like: Gotify, Telegram, SMTP (Email) or Webhook.
A new way to create web applications using go and sdf framework.
SDF GO A new way to create web applications using go and sdf framework Explore the docs ยป View Demo ยท Report Bug ยท Request Feature Table of Contents A
Redisq is a queue-over-redis that provides simple way to works with queues stored in Redis.
Redisq is a queue-over-redis that provides simple way to works with queues stored in Redis.
An easy, fluent way of building URLs via chainable methods written in Go(lang)
Burl - a fluent URL builder Burl provides an easy, fluent way of building URLs via chainable methods. How to install go get github.com/mr-cryka/burl Q
Generic-list-go - Go container/list but with generics
generic-list-go Go container/list but with generics. The code is based on contai
This is just a repository to play around with Generics and Fuzzing, two big things coming with go 1.18!
This is just a repository to play around with Generics and Fuzzing, two big things coming with go 1.18!
Go-komoot - An easy way to communicate your user with Komoot
Go Komoot library This is an easy way to communicate your user with Komoot. Via
Di - A (very) WIP Go 1.18+ generic dependency injection package based on type reflection
di A (very) WIP Go 1.18+ generic dependency injection package based on type refl
Admission webhooks the easy way
admission-webhooks-the-easy-way Goals controller-runtime simple and simpler type
A clean, safe, user-friendly implementation of GraphQL's Dataloader, written with generics in go
go-dataloader A clean, safe, user-friendly implementation of GraphQL's Dataloader, written with generics in go (go1.18beta1). Features written in gene
Helper functions for common scenarios, using Go generics.
zeroflucs generics When writing Go code for Go 1.17 or below, we've all written more than our fair share of methods to check "does this slice contain
Terraform-operator - The Terraform Operator provides support to run Terraform modules in Kubernetes in a declaritive way as a Kubernetes manifest
Terraform Operator The Terraform Operator provides support to run Terraform modu
A (very) simple graph package that utilizes the Generics features in Go 1.18
A (very) simple graph package that utilizes the Generics features in Go 1.18
Golang implementation of JSON-RPC 2.0 server with generics
JSON-RPC 2.0 Golang implementation of JSON-RPC 2.0 server with generics. Go 1.18+ required Features: Batch request and responses WebSockets Usage Crea
Fab - fabricate a new project from a template... in a fabulous way
fab fabricate a new project from a template... in a fabulous way :-) setup The f
Imagine a simple, beautiful, secure, and freaking fast way to broadcast your events throw the internet
Event Superintendent Imagine a simple, beautiful, secure, and freaking fast way to broadcast your events throw the internet. That's exactly why you sh
Goety - Generics based Go utilities
goety General purpose Go utilities. Package channel Utilities to work with chann
Use is a go utility library using go1.18 generics
use use is a go utility library using go1.18 generics created by halpdesk 2022-01-22 use/slice Map updates a slice by applying a function to all membe
Virsas-mod-db - Quick way to init mysql, postgres and redis connection from multiple services without duplicating the code
Quick way to init mysql, postgres and redis connection from multiple services without duplicating the code.
Go-generic - A collection of experiments using Go Generics coming out in Go 1.18
Go Generic - experiments with Go 1.18 beta Data structures: iter.Iter[T any] - l
Turtorial - A Hard Fork Of Icexin's Great Gocraft Project Aimed At Learning Basic Programming Tasks Through Turtles
TURTORIAL A voxel sandbox-survival game aimed at teaching the basics of programm
KubeOrbit is an open-source abstraction layer library that turns easy apps testing&debuging on Kubernetes in a new way
KubeOrbit is an open-source abstraction layer library that turns easy apps testing&debuging on Kubernetes in a new way
Portapps is not affiliated, associated, authorized, endorsed by, or in any way officially connected with IntelliJ IDEA
Portapps is not affiliated, associated, authorized, endorsed by, or in any way officially connected with IntelliJ IDEA
๐๏ธ Marker is the easiest way to match and mark strings for colorful terminal outputs!
Marker is the easiest way to match and mark strings for colorful terminal outputs. marker Marker is built for easily match and mark strings for colorf
Implementation of external merge sort with 2-way merge.
External merge sort An implementation of external merge sort algorithm (with 2-way merge) written in Go. This particular implementation sorts strings.
A CLI tool to find the absolute path of any folder in your local file system.
Table of Contents What is this? How to use this Examples of usage How to compile it What am I looking at It's a CLI tool that I made for finding the a
Optional type using Go 1.18 generics.
go.eth-p.dev/goptional Generic Optional (or Go Optional, if you prefer) goptional is a package that provides an implementation of an Optional[T] monad
A go1.18+ package to (maybe) simplify performing operations on slices in a fluent-like style.
sop โจ W.I.P. โจ sop (slices operation) is a go1.18+ package to (maybe) simplify performing operations on slices in a fluent-like style with common oper
A concurrent toolkit to help execute funcs concurrently in an efficient and safe way
conexec is a concurrent toolkit to help execute functions concurrently in an efficient and safe way. It supports specifying the overall timeout to avoid blocking.
Netkit - A type parameter(generics) net kit, support tcp kcp, customize packet
Netkit Netkit is a type parameter(generics) golang package Get Started Need Go i
Solver for wordle hard mode - achieves 5 attempts or less 100% of the time
wordier Solver for wordle hard mode - achieves 5 attempts or less 100% of the time Example - Spoiler โ wordier git:(master) โ go run main.go scamp โ
Tink is a multi-language, cross-platform, open source library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.
Tink A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse. https:/
A Go package that provides a simple way of accessing nested properties in maps and slices.
and you shall receive. Ask provides a simple way of accessing nested properties in maps and slices. Works great in combination with encoding/json and
skr: The lightweight and powerful web framework using the new way for Go.Another go the way.
skr Overview Introduction Documents Features Install Quickstart Releases Todo Pull Request Issues Thanks Introduction The lightweight and powerful web
Lru - A simple LRU cache using go generics
LRU Cache A simple LRU cache using go generics. Examples Basic usage. func main(
Kubeswitch - Easier way to switch your kubernetes context
Switch Kubectl Context Easier way to switch your kubernetes context Set PATH Dow
Golang Transliterator provides one-way string transliteration.
Golang text Transliterator Golang Transliterator provides one-way string transliteration. It takes Unicode text and converts to ASCII characters. Exam
A transparent and secure way to look up public keys.
Key Transparency Key Transparency provides a lookup service for generic records and a public, tamper-proof audit log of all record changes. While bein
The easy way to build Golang command-line application.
gcli gcli generates a skeleton (codes and its directory structure) you need to start building Command Line Interface (CLI) tool by Golang right out of
A hands-on approach for getting started with Go generics.
Go Generics the Hard Way This repository is a hands-on approach for getting started with Go generics: Prerequisites: how to install the prerequisites
WhatsAppExpenseTracker - Way to track expenses using whatsapp group
WhatsAppExpenseTracker Way to track expenses using whatsapp group One needs to c
Natural-deploy - A natural and simple way to deploy workloads or anything on other machines.
Natural Deploy Its Go way of doing Ansibles: Motivation: Have you ever felt when using ansible or any declarative type of program that is used for dep
Go-generics-simple-doubly-linked-list - A simple doubly linked list implemented using generics (Golang)
Welcome to Go-Generics-Simple-Doubly-Linked-List! Hi, This repository contains a
F - Experimenting with Go 1.18 generics to write more functional Go code
f f is a simple library that leverages the new generics in Golang to create a tools for functional style of code. Pipe like '|' in Elixir or Elm. inp
Chesscode - Chesscode: a way of encoding messages using a chess board and the starting set of chess pieces
chesscode Are you a spy that needs to leave an urgent top secret message for an
Chesscode - a way of encoding messages using a chess board and the starting set of chess pieces
chesscode Are you a spy that needs to leave an urgent top secret message for an
UcodeQrTelebot ver2 - Easy way to get QR and U-code using Utopia API in telegram bot
UcodeQrTelebot Easy way to get QR and U-code using Utopia API in telegram bot Us
V2 because I wasn't happy with the way things were going in V1
Pokerchips V2 A client/server app that simulates poker chips so you and your friends can play poke without physical chips! Client The client is writte
Generic Code for Go
goreuse A tool for reuse Go code, that bundles a whole package inside a single file. It allows to rename certain identifiers and keep the changed defi
A faster way to change directory and improve command line productivity.
Shonenjump shonenjump is a lightweight autojump clone written in Go. What does it do? Quote from the description of autojump: autojump is a faster way
Genetic algorithms using Golang Generics
Package genetic Package genetic implements genetic algorithms using Golang's Gen
The ultimate way to move between folders in the CLI
goto-command The ultimate way to move between folders in the command line Goto is a command that can be used like cd, and also allows you to add speci
Go 1.18 generics based slice and sorts.
genfuncs import "github.com/nwillc/genfuncs" Package genfuncs implements various functions utilizing Go's Generics to help avoid writing boilerplate c
Collections for Golang using generics. Currently containing Hash Set.
Implementation of missing colections for Golang using Generics. Free of dependencies. Curently in early development phase. Requirements Go 1.18+ Insta
The fastest way to build a restful API with golang and echo framework.
The fastest way to build a restful API with golang and echo framework. Includes common required features for modern web applications. A boilerplate project with golang and Echo.
The fastest way to deploy a restful api's with Gin Framework with a structured project that defaults to PostgreSQL database and JWT authentication middleware stored in Redis
Welcome to Golang Gin boilerplate v2 The fastest way to deploy a restful api's with Gin Framework with a structured project that defaults to PostgreSQ
Building event-driven applications the easy way in Go.
Watermill Watermill is a Go library for working efficiently with message streams. It is intended for building event driven applications, enabling even
Genetic algorithm for machine learning in Go.
ฮผ8 Genetic algorithm for machine learning. Inspired by CodeBullets amazing video on the subject. This is a work in progress Steps Natural selection. M
An experimental package that rely on go generics to implement collection functions utilities
go-underscore go-underscore is a utility-belt library for Golang that provides s
CDN-like in-memory cache with shielding, and Go 1.18 Generics
cache CDN-like, middleware memory cache for Go applications with integrated shielding and Go 1.18 Generics. Usage package main import ( "context" "
Generic Free List implementation to reuse memory and avoid allocations
gofl GOFL provides a Generic Free List implementation for Go. Installation This
This package provides the way to get the previous timestamp or the next timestamp that satisfies the cron expression.
Cron expression parser Given a cron expression, you can get the previous timestamp or the next timestamp that satisfies the cron expression. I have us
Multi producer and multi-reader lockless ring buffer in go using generics from the go 1.18beta release
LocklessGenericRingBuffer This is an implementation of a multi producer, multi r
Quick and easy way to load config files based on a simple set of rules.
config Quick and easy way to load config files based on a simple set of rules. Project inspired by https://github.com/lorenwest/node-config Important
Advent of Code 2021 solutions using Go 1.18 Generics
advent-of-code-2021 Here are my solutions for Advent of Code 2021. This year, I chose to write my solutions using Go 1.18 with generics (by building t
Starting my way through learning Golang by setting up an HTTP server.
Lets-Go Setting up an HTTP server with Golang. Building a simple server with "net/http" library in Golang. This is a simpe server with two routes, the
This project is aimed at illustrating how to build a fully functioning kubernetes admission webhook in the simplest way possible.
simple-kubernetes-webhook This is a simple Kubernetes admission webhook. It is meant to be used as a validating and mutating admission webhook only an
gophig is an easy-to-use library to marshal structs into files, or the other way around, unmarshal files into structs!
Getting Started Gophig may be imported using go get: go get github.com/RestartFU/gophig Usage You may create a new *Gophig: type foo struct{ foo s
HCio is a straightforward way to ping Healthchecks.io checks directly from a Go application
HCio HCio is a straightforward way to ping Healthchecks.io checks directly from a Go application. Getting Started Create a simple Check: check := hcio
Extensible auto-tagger for your IaC files. The ultimate way to link entities in the cloud back to the codified resource which created it.
Yor is an open-source tool that helps add informative and consistent tags across infrastructure-as-code frameworks such as Terraform, CloudFormation,
Utility library that uses Go generics mechanism
golang-generics-util Utility library that explores Go generics (1.18) xsync Sync
A go1.18 wrapper to provide simple generics based API for defining command line flags.
gflag A go1.18 wrapper to provide simple generics based API for defining command line flags. Example package main import ( "flag" "fmt" "time" "
Some utility functions for generic types in Go.
GOUF - Utility Functions for generic types Go team released Go 1.18 beta recently with support for Generics(a.k.a type parameters). This package provi