147 Resources
Golang tree-structure Libraries
Library of generic data structures for Go.
gods Library of generic data structures for Go. priority queue sorted list priority queue unsorted list priority queue heap priority queue adaptable h
A merkle tree (with proofs) in Go as per RFC6962
merkletree An implementation of a merkle tree based on the specification provided for Certificate Transparency Usage package main import ( "fmt" "
go-fasttld is a high performance top level domains (TLD) extraction module.
go-fasttld go-fasttld is a high performance top level domains (TLD) extraction module implemented with compressed tries. This module is a port of the
An app with Trie tree and Breve search Implementation CLI and HTTP both 🥳
Introduction LifeLongLearner project consists of two different parts. My English Vocabulary My Technical Book Notes All of them provided by me within
Data Structure Series: Heaps and heap applications
heaps Data Structure Series: Heaps and heap applications Current Updates: GO: heaps.go: max-heap implementation standard add, remove, and restore func
ZSet is an in-memory Redis like sorted set datastructure
zset Getting Started Installing To start using hash, install Go and run go get: $ go get -u github.com/arriqaaq/zset This will retrieve the library. U
Timeboundmap - A Map data structure with expiration cleanup
timeboundmap A Map data structure with expiration cleanup Benchmark goos: darwin
A Go implementation of a radix tree, that uses binary searches to speed up insert, retrieve and delete operations on dense trees
radixs A Go implementation of a radix tree, that uses binary searches to speed up insert, retrieve and delete operations on dense trees. This implemen
LotsusDB is a fast k/v database compatible with LSM tree and B+ tree
LotusDB LotsusDB is a fast k/v database compatible with LSM tree and B+ tree. Key features: Combine the advantages of LSM and B+ tree Fast read/write
Using NFP (Number Format Parser) you can get an Abstract Syntax Tree (AST) from Excel number format expression
NFP (Number Format Parser) Using NFP (Number Format Parser) you can get an Abstract Syntax Tree (AST) from Excel number format expression. Installatio
Go-merkle - Merkle tree implementation in Golang
go-merkle go-merkle implements a simple merkle tree in Golang. It allows to obta
A bloom filter is a probabilistic data structure that is used to determine if an element is present in a set
A Go implementation of a bloom filter, with support for boltdb and badgerdb as optional in-memory persistent storage.
Cleanv - Golang SDK for Vue Projects. It is able to structure a clean code/arch pattern
Cleanv - Golang SDK for Vue Projects Why? This project is part of my personal portfolio, so, I'll be happy if you could provide me any feedback about
Generates a simple skeleton directory structure for go/gin/bootstrap web apps
Gin Bootstrap Initializer Generates a simple skeleton directory structure for go/gin/bootstrap web apps Description This package handles building a co
Yet Another Go Project Structure Propsal
Go 项目结构实践 本仓库采用了目前社区中较为流行的 Gin, Gorm, Dig, Go-Resty 等第三方库作为使用案例,但理论上可以结合各种具有良好设计规范的工具包使用。
Ordered-concurrently a library for parallel processing with ordered output in Go
Ordered-concurrently a library for parallel processing with ordered output in Go. Process work concurrently / in parallel and returns output in a channel in the order of input. It is useful in concurrently / parallelly processing items in a queue, and get output in the order provided by the queue.
Package treap implements an immutabe sorted set datastructure using a combination tree/heap or treap.
treap Package treap implements an immutabe sorted set datastructure using a combination tree/heap or treap. The algorithms are mostly based on Fast Se
Golang package for MPTT (Modified Preorder Tree Traversal) - materialized path realisation.
mpath-go Golang realisation of MPTT (or modified preorder tree traversal) in materialized path way. About It provides interfaces which yor database ob
watch for file changes (matching a suffix whitelist) in a directory tree and run a command when they change
watchspawn what is it? Watches for file creates and writes in and below the current directory and when any of them (matching a suffix list) change, ru
GoMerkle: A merkle-tree implementation in Go
GoMerkle A merkle-tree implementation in Go. Motivation: Learning Go Merkle trees are great Usage package main import ( "fmt" "github.com/anishsuja
Scan your project tree for tag comments.
TagSpot TagSpot is a small programm that scans a project tree for tag comments like TODO or FIXME (full list of supported tags). Usage From the comman
B-tree implementation for Go
btree An efficient B-tree implementation in Go. Features Support for Generics (Go 1.18). Map and Set types for ordered key-value maps and sets, Fast b
Golang Dynamic Decision Tree
DDT Dynamic decision tree DDT allows building custom decision trees based in a set of defined rules, programmatically or from json. When making a deci
My understanding of how to structure a golang project.
Go Project Layout This is my understanding of how to structure Go project layout. The most important part is how to organize your Go code into package
Solong - The solong program prints out all the files in the tree rooted at . whose average line lengths are greater than some long threshold like 1000
Solong The solong program prints out the paths of all files in the tree rooted a
Mmpxmas-go - ModMyPi Programmable Christmas Tree examples written in Go with go-rpio
ModMyPi Programmable Christmas Tree examples in Go This small program contains examples similar to the examples provided by ModMyPi for interacting wi
Memlog - A Kafka log structure inspired in-memory and append-only data structure
Benchmark with log size 1000 go test -bench=. -cpu 1,2,4,8,16 -benchmem goos: darwin goarch: amd64 pkg: github.com/embano1/memlog cpu: Intel(R) Core(T
Gap-buffer - A Go implementation of the Gap Buffer data structure.
Gap Buffer Implementation in Go Overview This package provides a Gap Buffer data structure implementation for Go. Gap Buffer data structure allows eff
At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable
Learning Golang Language In Clean Structure At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable, nice
Expression language(EL) to navigate/manipulate in golang structure data
go-el Expression language(EL) to manipulate Golang structure data. Its main purpose is to find reflect.Value by Expression, then do some reading and w
Bitcoin Core integration/staging tree
Bitcoin Core integration/staging tree https://bitcoincore.org For an immediately usable, binary version of the Bitcoin Core software, see https://bitc
Learning Golang Language In Clean Structure
Learning Golang Language In Clean Structure At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable, nice
Berkeley Tree Database (BTrDB) server
BTrDB The Berkeley TRee DataBase is a high performance time series database designed to support high density data storage applications. We are now doi
Search for HCL(v2) using syntax tree
hclgrep Search for HCL(v2) using syntax tree. The idea is heavily inspired by ht
How to structure Golang applications
How to structure Golang applications This is the repository for my article on how to structure Golang applications. It can be found here. The purpose
General purpose proving framework for certifying digital assets to public blockchains
Proofable Proofable is a general purpose proving framework for certifying digital assets to public blockchains. Overall, it consists: CLI (proofable-c
Go HTTP routing tree based on HttpRouter. Inspired by Roda and Cuba.
Medeina Medeina is a Go routing tree based on HttpRouter and inspired by Ruby's Roda and Cuba. It allows to define the HTTP routes of your web applica
stash a file or a tree of files for later reuse - a bit like git stash
fstash Stash a file or a tree of files for later reuse - a bit like git stash. Prebuilt binaries are available for Linux, Windows and Darwin. Just ext
Simple and high-performance data structures and algorithms library
The Great Way is Simple Simple and high-performance data structures and algorithms library Benchmark goos: windows goarch: amd64 pkg: github.com/lxzan
A festive Christmas tree GIF generator implemented using only Golang standard library code
Christmas Tree GIF Generator A festive Christmas tree GIF generator implemented
Generate tree🌳 from Markdown or Programmatically. Provide CLI and Package for Go, output is JSON/YAML/TOML/tree command.
gtree Generate tree 🌳 from Markdown or Programmatically. Provide CLI and Package for Go, output is JSON or YAML or TOML or tree command. ## Descripti
publish a tree-like data structure from a backend to a front-end
tree-publish publish a tree-like data structure from a backend to a front-end. It needs to be a tree in order to publish the data as JSON document. If
Exp-tree: go library for parsing expression tree
Vinshop expression tree Exp-tree is go library for parsing expression tree Installation go get -u github.com/vinshop/exp-tree Quick start Format Expre
High performance golang HTTP Router using Radix tree-based routing algorithm with zero memory allocation.
High performance golang HTTP Router using Radix tree-based routing algorithm with zero memory allocation. Example Benchmark func ServeHTTP: package hh
A mutable radix tree that uses byte slices for keys.
go-radixtree An implementation of a mutable radix tree that uses byte slices for keys. Insertion, deletion and searching operations all have a worst c
convert JSON of a specific format to a type structure(Typescript type or more)
json2type convert JSON of a specific format to a type structure(Typescript type or more) Quick Start CLI Install use go tool install go install github
A curated list of awesome articles and resources for learning and practicing Go and its related technologies.
🎨 Awesome Go Education A curated list of awesome articles and resources for learning and practicing Golang and its related technologies. This reposit
A structure generating tool for Minecraft Bedrock Edition that supporting various platforms
FastBuilder Phoenix Description FastBuilder is a structure generating tool for Minecraft Bedrock Edition that supporting various platforms. The Phoeni
An opinionated guideline to structure & develop a Go web application/service
Goapp This is an opinionated guideline to structure a Go web application/service (or could be extended for any application). My opinions were formed o
A probabilistic data structure service and storage
Skizze ([ˈskɪt͡sə]: german for sketch) is a sketch data store to deal with all problems around counting and sketching using probabilistic data-structu
🍬 Pretty Treemaps
🍬 Pretty Treemaps $ go install github.com/nikolaydubina/treemap/cmd/treemap@latest $ echo ' Africa/Algeria,33333216,72 Africa/Angola,12420476,42 Afr
A mapper of ENVironment variables to Structure for Go
envs a mapper of ENVironment variables to a Structure for Go. This library maps the environment variables to the struct according to the fields' types
Clone a directory (including permissions) into S3 for File Gateway usage
s3-tree-clone Clone a filesystem tree to S3 (including metadata), skipping over files that are already synced, in a manner compatible with AWS File Ga
Goket (Golang Keyboard Event Tree) is a proof-of-concept code for using keyboard events trees for performing operations.
Goket Goket (Golang Keyboard Event Tree) is a proof-of-concept code for using keyboard events trees for performing operations. Its main goal is to all
Small application to convert my music library folder structure to 'crates' in the open-source DJ software Mixxx
Small application to convert my music library folder structure to 'crates' in the open-source DJ software Mixxx
A versioned, snapshottable (immutable) AVL+ tree for persistent data.
IAVL+ Tree Note: Requires Go 1.13+ A versioned, snapshottable (immutable) AVL+ tree for persistent data. The purpose of this data structure is to prov
Tree style (files) explorer for p9p acme.
xplor, a tree-style (file) explorer for (plan9port) Acme screenshot, regular screenshot, monospaced Xplor is written for Acme, the Plan 9 text editing
A versioned, snapshottable (immutable) AVL+ tree for persistent data.
IAVL+ Tree Note: Requires Go 1.13+ A versioned, snapshottable (immutable) AVL+ tree for persistent data. The purpose of this data structure is to prov
Opinionated tool for database structure management and migrations
trek Requirements At least version 13 of postgres is needed. Installation go install . Setup Create config.yaml: model_name: model_name db_name: db
Golang k-d tree implementation with duplicate coordinate support
Golang k-d tree implementation with duplicate coordinate support
Implementation of the MaxStack Data Structure in Go
MaxStack-Golang Implementation of the MaxStack Data Structure in Go This repository contains the design of a max stack data structure that supports th
Tool for printing a directory tree and indicating the space it occupies.
Tool for printing a directory tree and indicating the space it occupies.
A project that deals with implementations of a binary tree
Binary Search Tree This is a project that deals with implementations of a binary tree and the following functions. Print Prints the entire tree. Argum
Provides the radix package that implements a radix tree.
go-radix Provides the radix package that implements a radix tree. The package only provides a single Tree implementation, optimized for sparse nodes.
Segment tree for bytes in Go
bsegtree Segment tree for bytes in Go Based on Thomas Oberndörfer's int range segment tree with fixing/optimization/modification for bytes ranges. For
HTTP based Tree-shaped Peer2Peer blob transfer proxy, distributing images or blob data.
DadiP2P DadiP2P is an accelerator that uses P2P protocol to speed up HTTP file download, usually use for docker image layer download. The key features
Recursively searches a map[string]interface{} structure for another map[string]interface{} structure
msirecurse Recursively searches a map[string]interface{} structure for existence of a map[string]interface{} structure Motivation I wrote this package
Golang channel example with equivalent binary tree
golang_channel_example_with_equivalent_binary_tree Exercise: Equivalent Binary Trees There can be many different binary trees with the same sequence o
FSManager - Tree view Simple util to displays the directory structure of a path or of the disk in a drive graphically.
FSManager - Tree view Simple util to displays the directory structure of a path or of the disk in a drive graphically. If you don't specify a drive or
app-services-go-linter plugin analyze source tree of Go files and validates the availability of i18n strings in *.toml files
app-services-go-linter app-services-go-linter plugin analyze source tree of Go files and validates the availability of i18n strings in *.toml files. A
Simple code just to try out and Binary Tree on Golang.
Character counter | ▮▮▮▮▮▮▮▮ Simple code just to try out and Binary Tree on Golang. Count characters to train openning a file and reading it, as well
CUE utilities and helpers for working with tree based objects in any combination of CUE, Yaml, and JSON.
Cuetils CUE utilities and helpers for working with tree based objects in any combination of CUE, Yaml, and JSON. Using As a command line binary The cu
Shows your recent browser history in tree style. 树状展示浏览器历史 (For Edge / Chromium / Chrome)
Tree Style Histyle This extension shows your recent browser history in tree style. When you browser pages from internet, you always jump from one page
Example go clean architecture folder pattern
Golang Clean Architecture (Maintenance) Berikut ini adalah folder structure pattern yang biasa saya gunakan, walaupun tidak semua nya saya terapkan di
Demo repository for Infrastructure as Code testing tools and frameworks.
Testing Infrastructure as Code Demo repository for Infrastructure as Code testing tools and frameworks. Maintainer M.-Leander Reimer (@lreimer), mario
Tree algorithms in Golang
Tree Algorithms in Golang This is my humble attempt to share some of the tree algorithms in Golang. Pull requests are always welcome! :) Contents Tree
Go implementation of the van Emde Boas tree data structure: Priority queue for positive whole numbers in O(log log u) time.
vEB Go implementation of the van Emde Boas tree data structure: Priority queue for positive whole numbers in O(log log u) time. Supports the following
Data structure,Algorithms implemented in Go (for education)
Data structure,Algorithms implemented in Go (for education) List of Content : 1. Math - 2. String - 3. Conversions - 4. Sort - 5. Search - 6. Data str
B-tree implementation for Go
btree btree is a Go implementation of a B-Tree. This project is intended for learning purposes so the code is relatively small (500LOC) and highly do
A faster RWLock primitive in Go, 2-3 times faster than RWMutex. A Go implementation of concurrency control algorithm in paper Left-Right - A Concurrency Control Technique with Wait-Free Population Oblivious Reads
Go Left Right Concurrency A Go implementation of the left-right concurrency control algorithm in paper Left-Right - A Concurrency Control Technique w
📸 Clean your image folder using perceptual hashing and BK-trees using Go!
Image Cleaner 🏞 🏞 ➡ 🏞 This tool can take your image gallery and create a new folder with image-alike-cluster folders. It uses a perceptual image ha
simple golang event bus structure
super simple and small event bus structure for golang that allows emissions as go routines.
Redwood is a highly-configurable, distributed, realtime database that manages a state tree shared among many peers
Redwood is a highly-configurable, distributed, realtime database that manages a state tree shared among many peers. Imagine something like a Redux store, but distributed across all users of an application, that offers offline editing and is resilient to poor connectivity.
radix: a go radix tree with nearest matching
radix implements a radix tree. The package only provides a single Tree implementation, optimized for sparse nodes.
Gochain is a Blockchain written in go
gochain gochain is a proof-of-work blockchain written in go. Features Proof-Of-Work Persistence CLI Transactions Addresses Merkle Tree Network How to
A Lisp-dialect written in Go
Lispy ✏️ Intro Lispy is a programming language that is inspired by Scheme and Clojure. It's a simple Lisp-dialect I built to better understand Lisp an
Disjoint Set data structure implementation in Go
dsu Implementation of the Disjoint-Set data structure. The Disjoint-Set, Also called a Union-Find or Merge-Find set, is a data structure that stores a
Basic Implementation of Data-structures in Go
Data structures in Go v1.15.6 This repo consists the implementation of the following: Stacks Queues Linked Lists (Singly) Binary Search Trees Heaps (M
🌳 📂 The utility displays a tree of directories and files(symlinks in future).
dirTree The utility displays a tree of directories and files. usage: dirTree [-f] How it works with directory, where I wrote this project for example
Surprisingly space efficient trie in Golang(11 bits/key; 100 ns/get).
Slim - surprisingly space efficient data types in Golang Slim is collection of surprisingly space efficient data types, with corresponding serializati
A command line utility for generating language-specific project structure.
hydra hydra is a command line utility for generating language-specific project structures. ⏬ ✨ Features Build project templates with just one command
An immutable radix tree implementation in Golang
go-immutable-radix Provides the iradix package that implements an immutable radix tree. The package only provides a single Tree implementation, optimi
Standard Go Project Layout
This is a basic layout for Go application projects. It's not an official standard defined by the core Go dev team; however, it is a set of common historical and emerging project layout patterns in the Go ecosystem. Some of these patterns are more popular than others. It also has a number of small enhancements along with several supporting directories common to any large enough real world application.
A fully-featured AWS Athena database driver (+ athenareader https://github.com/uber/athenadriver/tree/master/athenareader)
📦 athenadriver - A fully-featured AWS Athena database driver for Go 🐚 athenareader - A moneywise command line utililty to query athena in command li
A program that generates a folder structure with challenges and projects for mastering a programming language.
Challenge Generator A program that generates a folder structure with challenges and projects for mastering a programming language. Explore the docs »
create boilerplate structure for neovim plugins
boilit Boil yourself a sweet plugin Installation • Usage Ain't nobody got time to create plugin directories: boilit yourself! boilit creates boilerpla
Fast directory traversal for Golang
godirwalk godirwalk is a library for traversing a directory tree on a file system. In short, why do I use this library? It's faster than filepath.Walk
golang sorting algorithm and data construction.
data-structures-questions 算法和程序结构是我们学习编程的基础,但是很多的时候,我们很多都是只是在应用,而没有深入的去研究这些,所以自己也在不断的思考和探索,然后分析,学习,总结自己学习的过程,希望可以和大家一起学习和交流下算法! 目录 网络协议 数据结构 算法 数据库 Go
Trie data structure implementation in Golang 🌳
Gotri Gotri is an Unicode character based Trie/prefix tree implementation in Go, with the suggestion/auto-complete feature for character searching. Si
Decorated Syntax Tree - manipulate Go source with perfect fidelity.
Decorated Syntax Tree The dst package enables manipulation of a Go syntax tree with high fidelity. Decorations (e.g. comments and line spacing) remain