awesome-mojo
A curated list of awesome Mojo π₯ frameworks, libraries, software and resources
https://github.com/mojicians/awesome-mojo
Last synced: 10 days ago
JSON representation
π₯οΈ Applications
Bioinformatics
- mojomics - A collection of Jupyter notebooks and resources to empower bioinformatics researchers with the tools and insights they need to accelerate their projects.
- MojoFastTrim - Experimental 'FASTQ' parser and quality trimmer written in mojo.
π₯οΈ Applications<a id='applications'></a>
AI
- Stable-Diffusion.mojo - A Mojo implementation of a mini Stable Diffusion model.
Audio / Sound / Music
- mojo-wav - Native wav file loading for the Mojoπ₯
Bioinformatics
- mojomics - A collection of Jupyter notebooks and resources to empower bioinformatics researchers with the tools and insights they need to accelerate their projects.
- MojoFastTrim - Experimental 'FASTQ' parser and quality trimmer written in mojo.
Database
- firedis - An implementation of Redis in the Mojo programming language.
- MojoVec - Vector Database (HNSW)
Games
- chess.mojo - The first UCI chess engine in Mojo.
- Larecsπ² - A performance-oriented archetype-based entity component system (ECS) for Mojoπ₯.
Math
- mojo-prefix-sum - Implementation of prefix sum as a scalar operation and with SIMD.
- quine-mccluskey-mojo - Implementation of Quine-McCluskey with Petrick's Method
Physics
- Quojo - A Quantum Computing Machine written in Mojo
- Ember - A Quantum Computing Platform implemented in Mojo π₯.
Serverless
- mojojojo - Serverless Python execution with per-millisecond billing; numeric loops are transpiled to Mojo and cached. Hosted at mojojojo.cc.
Sorting
- mojo-sort - Implementation of different sorting algorithms in Mojo.
- sort-networks-mojo - Highly optimized sorting networks for small datasets (0-64 elements).
Wireless Communication
- mocodes - An error correction (de)coding library in pure Mojo.
π₯ Code Contests<a id='code-contests'></a>
Advent of Code 2023
- advent-of-code - By isuckatcs
- aoc2023 - By p88h
π οΈ Development Tools<a id='development-tools'></a>
Advent of Code 2023
- arch-mojo - Script to install Mojo on ArchLinux.
- py2mojo - Automated Python to Mojo code translation.
- MojoPkgWorkflow - Packaging Mojoπ₯ via GitHub Action Script.
- menv - Mojo venv.
- mojo-pytest - Mojo test runner, pytest plugin (aka pytest-mojo).
- mojo-syntax - Mojoπ₯ syntax highlighting extension for vim/neovim.
- Modoπ§― - Markdown documentation generator (DocGen) for Mojoπ₯.
- c-mojo-bridge - A powerful CLI tool to generate Mojo bindings from C API headers.
- mojosub - Compile a subset of Python to Mojo, cache by content hash, and dispatch native kernels from CPython.
- mojojojo-compiler - Mojo-native hybrid compiler for arbitrary Python used by the mojojojo runtime.
-
mojo-factory
- Autonomous pipeline that ports Python libraries to Mojo and publishes each port as an open-source
mojo-*repository.
ποΈ Libraries
AI
- Modular Engine - Modular's AI inference engine.
- Endia - compilation with MAX.
- EasyDeL - An OpenSource Library to make your training faster and more Optimized With cool Options for training and serving Both in Python And Mojoπ₯.
FFI / Interop
- mojo-libc - Mojo's libc support.
Logging
- stump - WIP Logger! Inspired by charmbracelet's log package and the Python structlog package.
ποΈ Libraries<a id='libraries'></a>
2D/3D Graphics
Advent of Code 2023
- Mojo_community-lib - Community based effort to create libraries/utilities in Mojoπ₯.
- Mojo Shims - Utils for Mojo projects.
- mojo-hash - A collection of hash functions implemented in Mojo.
- mojo-console-style-print - Style the output of the console.
- gojo - Experiments in porting over Golang stdlib into Mojo.
AI
- Basalt - A Machine Learning framework from scratch in Pure Mojo.
- llama2.mojo - Implementation of llama2.c in Mojo.
- mojograd
- Micro-Mojograd - Implementation of Karpathy's micrograd in Mojo.
- gradi-mojo - Implementation of a simple gradient descent problem in Python, Numpy, JAX, C++ (binding with Python) and Mojo.
- momograd - A Learning Journey: Micrograd in Mojo.
- Mojmelo - Machine Learning algorithms in pure Mojo π₯
- Endia - compilation with MAX.
- mojojojo-agent - Open-source coding agent with native search and execution against the mojojojo runtime.
- Mojo-Arrays - Vectorized N-Dimensional Arrays in native Mojo.
- EasyDeL - An OpenSource Library to make your training faster and more Optimized With cool Options for training and serving Both in Python And Mojoπ₯.
- Strata - Machine Learning with Scikit-Learn ergonomics written in Mojo for Mojo. Strict traits, static polymorphism, and generic SIMD types make it extremely fast.
CLI
- prism - Mojo CLI Library modeled after Cobra.
- mog - Style definitions for nice terminal layouts.
-
ArgMojo
- A command-line argument parser library for Mojo, inspired by Python's
argparse, Rust'sclap, and Go'scobra, and other popular libraries.
Data Structures
- Mojo-Types - Some useful types and functions for use in Mojo code.
- mojo-trees - Experimental Tree data structures in Mojo.
- mojo-magiclist - Multi-type list using mojo builtin object, with type checking.
- mojoDataStructures - Array based data structures with types in Mojo
- compact-dict - A fast and compact Dict implementation in Mojo π₯
- deque - Deque (double-ended queue) implementation in Mojo.
Date & Time
- mo-time - It's time for a time pkg in Mojoπ₯.
- morrow.mojo - Morrow is a Mojo library that provides human-friendly method for managing, formatting, and transforming dates, times, and timestamps.
FFI / Interop
- mojo-ffi - Notes and recipes about how to call C functions from Mojo and other tricks.
- mojo-libc - Mojo's libc support.
Image Processing
- Jpeg-Decoder - A compact JPEG image decoder implemented in Mojoπ₯.
- mimage - An image decoding library implemented in Mojo π₯.
- Jpeg-Decoder - A compact JPEG image decoder implemented in Mojoπ₯.
Logging
- stump - WIP Logger! Inspired by charmbracelet's log package and the Python structlog package.
Math
- NuMojo - A library for numerical computing in Mojo π₯ similar to NumPy, SciPy in Python.
- Infrared - Geometric Algebra for Mojoπ₯.
- Specials - Special functions with hardware acceleration.
-
DeciMojo
- An arbitrary-precision decimal and integer mathematics library for Mojo, supporting
BigIntandBigDecimaltypes. - SciJo - A high-performance scientific computing library for Mojo, offering SciPy-like functionality.
-
Decimo
- (formerly DeciMojo) An arbitrary-precision integer and decimal library for Mojo, inspired by Python's
intandDecimal. -
StaMojo
- A statistical computing library for Mojo, inspired by
scipy.statsandstatsmodelsin Python. - dsplib-mojo - A digital signal processing library for Mojo, aiming to be an educational resource.
System
- mojo-stdlib-extensions - A replica of Python's stdlib in Mojo.
-
mojo-dotenv
- Load environment variables from
.envfiles. 98%+ compatible with python-dotenv. Features variable expansion, multiline values, escape sequences, and auto-discovery. 42 comprehensive tests. - mojo-toml - TOML 1.0 parser and writer for Mojo. Complete implementation with array-of-tables, alternative number bases, and partial TOML 1.1 support. 168 comprehensive tests.
- mojo-kafka - Apache Kafka client for Mojo β librdkafka bindings with a Pythonic producer / consumer / admin API.
- mojo-tar - A tar archive reader and writer in pure Mojo, supporting ustar, GNU, and pax formats.
- mojo-redis - A RESP2 Redis client in pure Mojo, with a redis-py-shaped API.
Text & Parsing
- mojo-xml - General-purpose XML parsing in pure Mojo, with an ElementTree-shaped DOM.
- mojo-html - Liberal HTML parsing and readability article extraction in pure Mojo.
- mojo-markdown - CommonMark parser and HTML renderer in pure Mojo, at 98.6% spec conformance.
- mojo-feed - RSS, Atom, and JSON Feed parsing in pure Mojo, with no dependencies.
- mojo-url - URL parsing, building, and query-string encoding in pure Mojo.
- mojo-captions - SRT and WebVTT subtitle parsing in pure Mojo, with speaker and voice-span support.
- mojo-template - A Jinja-flavored template engine in pure Mojo.
- mojo-diff - Myers text diff and unified-diff output in pure Mojo.
- mojo-unicodedata - Unicode normalization (NFC/NFD/NFKC/NFKD) and casefold in pure Mojo.
- safetensors.mojo - Independent Safetensors format implementation in pure Mojo.
UI
- mojo-qt - Demo of integrating Qt6 UI with Mojoπ₯.
- CombustUI - CombustUI is a GUI library for Mojo, building on from C++'s FLTK (Fast Light Toolkit)
- CombustUI - CombustUI is a GUI library for Mojo, building on from C++'s FLTK (Fast Light Toolkit)
Web
π License<a id='license'></a>
Benchmarks
π Resources
Interviews
- Chris Lattner at Lex Fridman - Chris Lattner discussing the Future of Programming and AI with Lex Fridman.
Newsletters
- Modverse - Official newsletter by Modular where you can discover the latest updates across the Modverse.
Official
Podcasts
- Chris Lattner at StackOverflow - Mojo: The usability of Python with the performance of C.
Social Media
Tutorials
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.
- A high level introduction to FibyTree - By Maxim Zaks.
- π₯ FibyTree vs. π Set and SortedSet - By Maxim Zaks.