96 Resources
Golang lsm-tree Libraries
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
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
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
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
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
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
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
🍬 Pretty Treemaps
🍬 Pretty Treemaps $ go install github.com/nikolaydubina/treemap/cmd/treemap@latest $ echo ' Africa/Algeria,33333216,72 Africa/Angola,12420476,42 Afr
Distributed disk storage database based on Raft and Redis protocol.
IceFireDB Distributed disk storage system based on Raft and RESP protocol. High performance Distributed consistency Reliable LSM disk storage Cold and
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
Distributed disk storage database based on Raft and Redis protocol.
IceFireDB Distributed disk storage system based on Raft and RESP protocol. High performance Distributed consistency Reliable LSM disk storage Cold and
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
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
Golang k-d tree implementation with duplicate coordinate support
Golang k-d tree implementation with duplicate coordinate support
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
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
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
📸 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
IceFireDB - Distributed disk storage system based on Raft and RESP protocol.
Distributed disk storage database based on Raft and Redis protocol.
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
rosedb is an embedded and fast k-v database based on LSM + WAL
A simple k-v database in pure Golang, supports string, list, hash, set, sorted set.
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
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
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
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
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
Just an itsy bitsy b-tree in Go
tinybtree Just an itsy bitsy b-tree. Usage Keys are strings, values are interfaces. Functions Get(key string) (value interface{}, gotten bool) Set(key
An R-tree implementation for Go
rtree This package provides an in-memory R-Tree implementation for Go. It's designed for Tile38 and is optimized for fast rect inserts and replacement
Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph, concept analysis, api tree, design patterns suggest. Coca 是一个用于系统重构、系统迁移和系统分析的瑞士军刀。它可以分析代码中的测试坏味道、模块化分析、行数统计、分析调用与依赖、Git 分析以及自动化重构等。
Coca - toolbox for system refactoring and analysis Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph,
Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph, concept analysis, api tree, design patterns suggest. Coca 是一个用于系统重构、系统迁移和系统分析的瑞士军刀。它可以分析代码中的测试坏味道、模块化分析、行数统计、分析调用与依赖、Git 分析以及自动化重构等。
Coca - toolbox for system refactoring and analysis Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph,
Tool that can parse Go files into an abstract syntax tree and translate it to several programming languages.
GoDMT GoDMT, the one and only Go Data Model Translator. The goal of this project is to provide a tool that can parse Go files that include var, const,
🎄 A Christmas tree right from your terminal!
ctree 🎄 A Christmas tree right from your terminal! 👀 Demo ⌛ No Refresh Don't want the tree to refresh every 2 seconds? Easy! Just add the --no-refre
[TOOL, CLI] - Filter and examine Go type structures, interfaces and their transitive dependencies and relationships. Export structural types as TypeScript value object or bare type representations.
typex Examine Go types and their transitive dependencies. Export results as TypeScript value objects (or types) declaration. Installation go get -u gi
depth is tool to retrieve and visualize Go source code dependency trees.
depth is tool to retrieve and visualize Go source code dependency trees. Install Download the appropriate binary for your platform from the Rele
Watches for changes in a directory tree and reruns a command in an acme win or just on the terminal.
Watch Usage: Watch [-v] [-t] [-p path] [-x regexp] command Watches for changes in a directory tree, and runs a command when something changed. B
Pure is a fast radix-tree based HTTP router
package pure Pure is a fast radix-tree based HTTP router that sticks to the native implementations of Go's "net/http" package; in essence, keeping the
High-speed, flexible tree-based HTTP router for Go.
httptreemux High-speed, flexible, tree-based HTTP router for Go. This is inspired by Julien Schmidt's httprouter, in that it uses a patricia tree, but
:evergreen_tree: Parses indented code and returns a tree structure.
codetree Parses indented code (Python, Pug, Stylus, Pixy, codetree, etc.) and returns a tree structure. Installation go get github.com/aerogo/codetree
Context Tree Weighting
Context Tree Weighting Documentation Package ctw provides an implementation of the Context Tree Weighting algorithm. Also contained is an implementati
Native Go (golang) Graphical Interface system (2D and 3D), built on GoKi tree framework
GoGi is part of the GoKi Go language (golang) full strength tree structure system (ki = 木 = tree in Japanese) package gi is a scenegraph-based 2D and
Powerful and versatile MIME sniffing package using pre-compiled glob patterns, magic number signatures, XML document namespaces, and tree magic for mounted volumes, generated from the XDG shared-mime-info database.
mimemagic Powerful and versatile MIME sniffing package using pre-compiled glob patterns, magic number signatures, xml document namespaces, and tree ma
immudb - world’s fastest immutable database
immudb Note: The master branch is the joint point for all ongoing development efforts. Thus it may be in an unstable state and should not be used in p
🔑A high performance Key/Value store written in Go with a predictable read/write performance and high throughput. Uses a Bitcask on-disk layout (LSM+WAL) similar to Riak.
bitcask A high performance Key/Value store written in Go with a predictable read/write performance and high throughput. Uses a Bitcask on-disk layout
an R-Tree library for Go
rtreego A library for efficiently storing and querying spatial data in the Go programming language. About The R-tree is a popular data structure for e
An yet-another red-black tree implementation, with a C++ STL-like API.
A red-black tree with an API similar to C++ STL's. INSTALLATION go get github.com/yasushi-saito/rbtree EXAMPLE More examples can be fou
AVL tree with some useful extensions written in Go
gocover An AVL tree (Adel'son-Vel'skii & Landis) is a binary search tree in which the heights of the left and right subtrees of the root differ by at
Go datastructures.
Go Data Structures by Tim Henderson ([email protected]) Copyright 2013, Licensed under the GPL version 2. Please reach out to me directly if you requ
A prefix tree implementation in go
Trie (Prefix tree) This library is compatible with Go 1.11+ Please refer to CHANGELOG.md if you encounter breaking changes. Motivation Introduction Us
A Merkle Tree implementation written in Go.
Merkle Tree in Golang An implementation of a Merkle Tree written in Go. A Merkle Tree is a hash tree that provides an efficient way to verify the cont
GoDS (Go Data Structures). Containers (Sets, Lists, Stacks, Maps, Trees), Sets (HashSet, TreeSet, LinkedHashSet), Lists (ArrayList, SinglyLinkedList, DoublyLinkedList), Stacks (LinkedListStack, ArrayStack), Maps (HashMap, TreeMap, HashBidiMap, TreeBidiMap, LinkedHashMap), Trees (RedBlackTree, AVLTree, BTree, BinaryHeap), Comparators, Iterators, Enumerables, Sort, JSON
GoDS (Go Data Structures) Implementation of various data structures and algorithms in Go. Data Structures Containers Lists ArrayList SinglyLinkedList
Adaptive Radix Trees implemented in Go
An Adaptive Radix Tree Implementation in Go This library provides a Go implementation of the Adaptive Radix Tree (ART). Features: Lookup performance s
CLRS study. Codes are written with golang.
algorithms CLRS study. Codes are written with golang. go version: 1.11 Heap BinaryHeap on array BinaryHeap on linkedlist LeftistHeap FibonacciHeap Tre
A tree like tool help you to explore data structures in your redis server
Redis-view is a tree like tool help you explore data structures in your redis server
Go helpers to manage environment variables
Envh This library is made up of two parts : Env object : it wraps your environments variables in an object and provides convenient helpers. Env tree o