158 Repositories
Rust graph-algorithm Libraries
Building a graph of the Internet, one button at a time
eightyeightthirtyone Building a graph of the Internet, one button at a time. Website available here. This project crawls the links between 88x31s on t
Pathfinding library for calculating all node pairs' shortest paths in an unweighted undirected graph.
bit_gossip bit_gossip, named after its implementation technique, is a simple pathfinding library for calculating all node pairs' shortest paths in an
A fast, non-cryptographic, minimally DoS-resistant hashing algorithm for Rust.
Foldhash This repository contains foldhash, a fast, non-cryptographic, minimally DoS-resistant hashing algorithm implemented in Rust designed for comp
implementation of an incremental compilation algorithm similar to rustc's
Incremental Query This library wasn't ever supposed to be a library. It started with me wanting to learn how rustc's query system worked, and I decide
Standing watch over the Pi Network, PiSentinel is a consensus algorithm that safeguards security, decentralization, and scalability.
pi-sentinel Standing watch over the Pi Network, PiSentinel is a consensus algorithm that safeguards security, decentralization, and scalability. Intro
A fast, lightweight and extensible implementation of a graph data structure.
fast-graph A fast, lightweight and extensible implementation of a graph data structure. Note ⚠️ There will be some breaking changes in the coming 1-2
Parks-McClellan Remez FIR design algorithm
pm-remez: Parks-McClellan Remez FIR design algorithm pm-remez is a modern Rust implementation of the Parks-McClellan Remez exchange algorithm. It can
Hindley–Milner Algorithm J implementation in Rust.
Algorithm J Hindley–Milner Algorithm J implementation in Rust. Showcase Usage To run the repl, use the following command: $ cargo run If you want to t
Theorem relational dependencies automatic extraction and visualization as a graph for Lean4.
Lean Graph Interactive visualization of dependencies for any theorem/definitions in your Lean project. How to use In your browser: lean-graph.com Or r
A* Pathfinding Visualisation in Rust
astar.rs A blazingly-fast A-Star search algorithm and visualisation written in Rust. GUI powered by egui. Allows for dynamic grid sizes and user-chose
Level up your shader game with the GPU + Rust advantage!
Gravy (WIP) Ya know, my momma always said everything's better with Gravy... Gravy is a shader programming framework and toolkit built on the union of
Implemented reverse-engineered signature algorithm to successfully register with Apple's caching server.
View as English 项目描述 本项目通过逆向得到苹果缓存服务器的签名算法,并可以成功注册缓存服务。算法分为两种运行模式。 运行模式 直接运行(x64): 效率较高,但只支持64位CPU。已测试可运行在Windows/Linux/macOS上。 模拟器运行: 兼容性极高,支持所有CPU架构
A gravitation simulation with Barnes-Hut algorithm implementation.
Gravitation Particles A Barnes-Hut implementation of n-body gravitation simulation in Rust. Running the project The video rendering feature is impleme
Y-Octo is a high-performance CRDT implementation compatible with yjs
Y-Octo Y-Octo is a high-performance CRDT implementation compatible with yjs. Introduction Y-Octo is a tiny, ultra-fast CRDT collaboration library buil
OptionCell: OnceCell but derivable from Option
OptionCell: OnceCell but derivable from Option This library provides an equivalent of OnceCell, but it guarantees layout compatibility with OptionT,
The open source distributed web search engine that searches by meaning.
DawnSearch DawnSearch is an open source distributed web search engine that searches by meaning. It uses semantic search (searching on meaning), using
A "Navie" Implementation of the Wavefront Algorithm For Sequence Alignment with Gap-Affine Scoring
A "Naive" Implementation of the Wavefront Algorithm for Sequence Alignment with Gap-Affine Scoring This repository contains some simple code that I wr
A suite of benchmarks to test e-graph extraction algorithms
Extraction Gym A suite of benchmarks to test e-graph extraction algorithms. Add your algorithm in src/extract and then add a line in src/main.rs. To r
Compact, efficient data structures in contiguous byte arrays
Sokoban Compact, efficient data structures in contiguous byte arrays. Benchmarks Based on simple benchmarks, the naive performance of Sokoban data str
A simple and secure rust command-line tool to protect your text by encrypting and decrypting it using the robust AES-256 algorithm.
Secret Keeper A simple and secure command-line tool to protect your text by encrypting and decrypting it using the robust AES-256 algorithm. Built wit
AI plays a small escape room game, written in rust
Escape AI AI learns escape a room. This is a rust based implementation of a genetic algorithm and reinforcement learning simulation that trains an AI
Nodium is an easy-to-use data analysis and automation platform built using Rust, designed to be versatile and modular.
Nodium is an easy-to-use data analysis and automation platform built using Rust, designed to be versatile and modular. Nodium aims to provide a user-friendly visual node-based interface for various tasks.
bare-bones "reactive programming" (change propogation) using a central data dependency graph
mini-rx: Tiny reactive programming change propagation a la scala.rx Cargo documentation Example use mini_rx::*; fn example() { // setup let side_ef
AI learns to play flappy bird using neuro-evolution, implemented in Rust using macroquad
Flappy Bird AI AI learns to play flappy bird. This is a neuro-evolution simulation of flappy birds implemented in rust using macroquad Demo Usage Clon
A Rust implementation of Glidesort, my stable adaptive quicksort/mergesort hybrid sorting algorithm.
Glidesort Glidesort is a novel stable sorting algorithm that combines the best-case behavior of Timsort-style merge sorts for pre-sorted data with the
A SLAM algorithm for WebAssembly 🍔
🍔 Slamburger [in-progress] This repo is meant to be an extremely teachable codebase for how to do SLAM. It's also meant to provide a library in WebAs
TopK algorithm implementation in Rust (Filtered Space-Saving)
TopK TopK algorithm implementation in Rust. This crate currently provides the Filtered Space-Saving algorithm. Version numbers follow the semver conve
A template for writing CMSIS-Pack flash algorithms in Rust
Flash Algorithm Template This is a flash algorithm template for writing CMSIS-Pack flash algorithms in Rust. It can be used to generate new flash algo
Welcome to our bird training simulator! Here you can observe the birds in real time, and use the genetic algorithm to train them to fly and eat food. Through the process of natural selection, this allows the best birds to survive and evolve over generations.
Flyoff Flyoff is a project that uses Rust and WebAssembly (WASM) to train virtual birds to get the most food using a genetic algorithm and a custom ne
Python library for embedding large graphs in 2D space, using force-directed layouts.
Graph Force A python/rust library for embedding graphs in 2D space, using force-directed layouts. Installation pip install graph_force Usage The first
Python+Rust implementation of the Probabilistic Principal Component Analysis model
Probabilistic Principal Component Analysis (PPCA) model This project implements a PPCA model implemented in Rust for Python using pyO3 and maturin. In
Huffman Encoding/Decoding
Huffman Encoding/Decoding This project is inspired by lab_huffman of CS225(2022fall) @ UIUC Team: -- Chaoqi LIU (chaoqil2@illinois.edu) -- Jiahu
🔀 Rusty flow graph processing library
flowing flowing is a flow graph processing library written in Rust. It shall serve as a general-purpose building block for all kinds of dataflow progr
rust_aads - Rust Algorithms And Data Structures
rust_aads - Rust Algorithms And Data Structures rust_aads is an open repository with algorithms and data structures, used in computer science and comp
A general-purpose, transactional, relational database that uses Datalog and focuses on graph data and algorithms
cozo A general-purpose, transactional, relational database that uses Datalog for query and focuses on graph data and algorithms. Features Relational d
Project Masterpass is a deterministic databaseless key management algorithm, aimed to help those who cannot protect their encryption keys in storage
Project Masterpass (working title) Attention! This project is still under heavy development, and SHOULD NOT be used in practice, as the algorithms cou
Simple, performant graph generator for Feynman diagrams* ⚛️
Feynman diagram generator ⚛️ A simple generator of "Feynman diagram" permutations (as defined by problem 781). Incrementally builds isomorphically uni
Command-line interface to Microsoft To Do
⚠ This is a hackathon project with no official support or quality guarantee Hackathon 2022 tdi The command-line interface, for some, is the natural wa
An ECDSA threshold signature algorithm implemented in Rust.
Open TSS This project is a Rust implementation of multi-party {t,n}-threshold signature scheme(TSS). The current version of this library supports ECDS
🚣♀️ 1kloc, well-documented Raft consensus algorithm implementation
miniraft A 1kloc, well-documented Raft consensus algorithm implementation This crate is a minimal implementation of the Raft consensus protocol with
Ferris has to escape the creepers using a modified version of Dijkstra called A*
Ferris has to escape the creepers using a modified version of Dijkstra called A*
An online pipeline for image processing.
carbaseus An online pipeline for image processing. *carbaseus (feminine carbasea, neuter carbaseum)* : first/second-declension adjective 1. made of f
🐎 A fast implementation of the Aho-Corasick algorithm using the compact double-array data structure. (Python wrapper for daachorse)
python-daachorse daachorse is a fast implementation of the Aho-Corasick algorithm using the compact double-array data structure. This is a Python wrap
An implementation of the Jump Flooding Algorithm for the Bevy engine.
bevy_jfa The Jump Flooding Algorithm (JFA) for Bevy. Features This crate provides an OutlinePlugin that can be used to add outlines to Bevy meshes. Se
Inverse kinematics plugin for Bevy implementing the FABRIK algorithm.
Inverse kinematics plugin for Bevy implementing the FABRIK algorithm.
Simple string matching with questionmark- and star-wildcard operator
wildmatch Match strings against a simple wildcard pattern. Tests a wildcard pattern p against an input string s. Returns true only when p matches the
An implementation of the Gillespie algorithm.
gillrocky An implementation of the Gillespie algorithm in Rust. Example cargo build cargo run @todo See also Animated demo of algorithm References E
A neural network model that can approximate any non-linear function by using the random search algorithm for the optimization of the loss function.
random_search A neural network model that can approximate any non-linear function by using the random search algorithm for the optimization of the los
Egui node graph is a featureful, customizable library to create node graph applications using egui
Egui node graph is a featureful, customizable library to create node graph applications using egui. The library takes care of presenting a node graph to your users, and allows customizing many aspects of the interaction, creating the semantics you want for your specific application.
An Implementation of the Context Tree Weighting (CTW) Sequence Prediction Algorithm
Context Tree Weighting (CTW) CTW is a lightweight, practical and well performing sequence prediction algorithm discovered by Frans Willems, Yuri Shtar
Site frequency spectrum estimation based on window expectation-maximisation algorithm
winsfs winsfs is a tool for inference of the site frequency spectrum ("SFS"). Quickstart Assuming SAF files have already been made, default estimation
Online algorithm for mean and variance, with support for uneven weights
welford Online algorithm for mean and variance, with support for uneven weights. This implements the Welford's online algorithm for computing mean and
Graphite is a digital content creation software package for 2D graphics
Powerful 2D vector and raster editing. Procedural and nondestructive. Graphite is a digital content creation software package for 2D graphics, merging
NEATeRS is a library for training a genetic neural net through reinforcement learning.
NEATeRS NEATeRS is a library for training a genetic neural net through reinforcement learning. It uses the NEAT algorithm developed by Ken Stanley whi
Library that implements different versions of PPMD algorithm (compress and decompress)
ppmd-rs Library that implements different versions of PPMD algorithm (compress and decompress) Dependencies Rust 1.58 or newer Cargo How to build Clon
nsga is an opinionated implementation of the NSGA-II (Non-dominated Sorting Genetic Algorithm)
nsga nsga is an opinionated implementation of the NSGA-II (Non-dominated Sorting Genetic Algorithm), a multi-objective genetic optimization algorithm.
A Graph implemented using nothing but `Vec`s in rust
VecGraph A Graph implemented using nothing but Vecs in rust. Details The graph is implemented using two Vecs: nodes and edges. nodes stores "nodes". w
hubpack is an algorithm for converting Rust values to bytes and back.
hubpack is an algorithm for converting Rust values to bytes and back. It was originally designed for encoding messages sent between embedded programs. It is designed for use with serde.
A Rust implementation of the AGCWD algorithm
AGCWD is described in the paper "Efficient Contrast Enhancement Using Adaptive Gamma Correction With Weighting Distribution".
Red-blue graph problem solver - Rust implementation
Red-blue graph problem solver - Rust implementation The problem is the following: In a directed graph, each node is colored either red or blue. Furthe
r2d2-cypher is a r2d2 connection pool for rusted-cypher
r2d2-cypher is a r2d2 connection pool for rusted-cypher
Graphical Rust program that uses a fractal algorithm to draw a tree of sorts
rusty-vegetation Graphical Rust program that uses a fractal algorithm to draw a "tree" of sorts. To Build and Run On Linux: Install build-essentials o
Michael's Compression Algorithm
mca This repository contains a compression algorithm written by me (Michael Grigoryan). The algorithm is only able to compress and decompress text fil
A simple implementation of the astar pathfinding algorithm from red blob games
A simple implementation of the astar pathfinding algorithm from red blob games. In order to use the pathfinder you must have a path map for it to navi
An implementation of Jakobsson's Fractal Hash Sequence Traversal algorithm
fractal-hash-traversal An implementation of Jakobsson's Fractal Hash Sequence Traversal algorithm. There is at least one hash traversal algorithm that
Raft distributed consensus algorithm implemented in Rust.
Raft Problem and Importance When building a distributed system one principal goal is often to build in fault-tolerance. That is, if one particular nod
Tiny Rust library to draw pretty line graphs using ascii characters.
rasciigraph Tiny Rust library to draw pretty line graphs using ascii characters. Usage Add this to your Cargo.toml [dependencies] rasciigraph = "0.1.1
Rust library for of graph ensembles
Rust library for random graph ensembles Minimal Rust version: 1.55.0 Implements simple sampling and monte carlo (or rather markov-) steps, that can be
Rust port of the extended isolation forest algorithm for anomaly detection
Extended Isolation Forest This is a rust port of the anomaly detection algorithm described in Extended Isolation Forest and implemented in https://git
k-Medoids clustering in Rust with the FasterPAM algorithm
k-Medoids Clustering in Rust with FasterPAM This Rust crate implements k-medoids clustering with PAM. It can be used with arbitrary dissimilarites, as
A naive DBSCAN implementation in Rust
DBSCAN Density-Based Spatial Clustering of Applications with Noise Wikipedia link DBSCAN is a density-based clustering algorithm: given a set of point
Rust implementation for DBSCANSD, a trajectory clustering algorithm.
DBSCANSD Rust implementation for DBSCANSD, a trajectory clustering algorithm. Brief Introduction DBSCANSD (Density-Based Spatial Clustering of Applica
A rust library inspired by kDDBSCAN clustering algorithm
kddbscan-rs Rust implementation of the kddbscan clustering algorithm. From the authors of kDDBSCAN algorithm. Due to the adoption of global parameters
A naive density-based clustering algorithm written in Rust
Density-based clustering This a pure Rust implementation of a naive density-based clustering algorithm similar to DBSCAN. Here, 50 points are located
Graph API client writen in Rust
graph-rs Now available on stable Rust at crates.io graph-rs-sdk = "0.1.0" 0.1.0 and above use stable Rust. Anything before 0.1.0 uses nightly Rust. M
An implementation of the Pair Adjacent Violators algorithm for isotonic regression in Rust
Pair Adjacent Violators for Rust Overview An implementation of the Pair Adjacent Violators algorithm for isotonic regression. Note this algorithm is a
Example of a genetic algorithm in Rust and Python
Example of a genetic algorithm in Rust and Python Monkey typewriter Finding the phrase 'To be or not to be. That is the question.' Inspired by the exa
Create, share, fetch and model Atomic Data! This project consists of a graph database + server, a CLI and a rust library.
Create, share, fetch and model Atomic Data! This repo consists of three components: A library, a server and a CLI. atomic-server Status: Beta. Breakin
Common data structures and algorithms in Rust
Contest Algorithms in Rust A collection of classic data structures and algorithms, emphasizing usability, beauty and clarity over full generality. As
This repository contains the Rust source code for the algorithms in the textbook Algorithms, 4th Edition
Overview This repository contains the Rust source code for the algorithms in the textbook Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne.
Rust-algorithm-club - Learn algorithms and data structures with Rust
Rust Algorithm Club 🚧 🚧 This repo is under construction. Most materials are written in Chinese. Check it out here if you are able to read Chinese. W
Gping - Ping, but with a graph
gping 🚀 Ping, but with a graph. Table of Contents Install 💿 Usage 🎷 Install 💿 macOS Homebrew: brew install gping MacPorts: sudo port install gping
A cargo subcommand for creating GraphViz DOT files and dependency graphs
cargo-graph Linux: A cargo subcommand for building GraphViz DOT files of dependency graphs. This subcommand was originally based off and inspired by t
Implementation of Proof of Existence consensus using Substrate Framework, Frame, Pallets, RUST
Substrate Node Template A fresh FRAME-based Substrate node, ready for hacking 🚀 Getting Started Follow the steps below to get started with the Node T
A Rust port of the password primitives used in Django Project.
Rust DjangoHashers A Rust port of the password primitives used in Django Project. Django's django.contrib.auth.models.User class has a few methods to
An efficient method of heaplessly converting numbers into their string representations, storing the representation within a reusable byte array.
NumToA #![no_std] Compatible with Zero Heap Allocations The standard library provides a convenient method of converting numbers into strings, but thes
Maximum Relevance - Minimum redundancy feature selection algorithm
mrmr Maximum Relevance - Minimum redundancy feature selection algorithm implemented in Rust. Usage CLI app. It gets input from a csv dataset with head
Reference implementation for the Poseidon Snark-friendly Hash algorithm.
Dusk-Poseidon Reference implementation for the Poseidon Hashing algorithm. Reference Starkad and Poseidon: New Hash Functions for Zero Knowledge Proof
Rust implementation of {t,n}-threshold ECDSA (elliptic curve digital signature algorithm).
Multi-party ECDSA This project is a Rust implementation of {t,n}-threshold ECDSA (elliptic curve digital signature algorithm). Threshold ECDSA include
A rust implementation of Alexey Akhunov's multiproof algorithm
multiproof.rs A rust implementation of Alexey Akhunov's multiproof algorithm. At the time of creation, multiproof is still a work in progress and this
Pure Rust implementation of the Double Ratchet algorithm
Double Ratchet A pure Rust implementation of the Double Ratchet, as specified by Trevor Perrin and Moxie Marlinspike. The Double Ratchet allows two us
A scalable, distributed, collaborative, document-graph database, for the realtime web
is the ultimate cloud database for tomorrow's applications Develop easier. Build faster. Scale quicker. What is SurrealDB? SurrealDB is an end-to-end
Common data structures and algorithms for competitive programming in Rust
algorithm-rs algorithm-rs is common data structures and algorithms for competitive programming in Rust. Contents TBA How To Contribute Contributions a
A graph crate with simplicity in mind
A graph crate with simplicity in mind. Prepona aims to be simple to use (for users of the crate) and develop further (for contributors). Nearly every
Paxakos is a pure Rust implementation of a distributed consensus algorithm
Paxakos is a pure Rust implementation of a distributed consensus algorithm based on Leslie Lamport's Paxos. It enables distributed systems to consistently modify shared state across their network, even in the presence of failures.
🔥 Unit testing framework for Subgraph development on The Graph protocol. ⚙️
👋 Welcome to Matchstick - a unit testing framework for The Graph protocol. Try out your mapping logic in a sandboxed environment and ensure your hand
Construct graphs from parsed source code
tree-sitter-graph The tree-sitter-graph library defines a DSL for constructing arbitrary graph structures from source code that has been parsed using
A library that can be used as a building block for high-performant graph algorithms.
graph A library that can be used as a building block for high-performant graph algorithms. Graph provides implementations for directed and undirected
An example repository on how to start building graph applications on streaming data. Just clone and start building 💻 💪
An example repository on how to start building graph applications on streaming data. Just clone and start building 💻 💪
A simple and elegant, pipewire graph editor
pw-viz A simple and elegant, pipewire graph editor This is still a WIP, node layouting is kinda jank at the moment. Installation A compiled binary is