Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-motoko
A curated list of Motoko code and resources.
https://github.com/ic123-xyz/awesome-motoko
Last synced: 1 day ago
JSON representation
-
Applications
-
Cryptocurrencies
- motoko-token - This package implements a simple ERC-20 style token.
- Appic - A canister for automatically buying and selling tokens at specific times or intervals.
- extendable-token - This token standard provides a ERC1155/multi-token-like approach with extensions that can add additional functionality based on the purpose of the token.
- extendable token standard - Extendable Token Standard.
- icrc30-mo - A Class+ ICRC-30 Library for providing Approve/TransferFrom to ICRC-7 NFT Canisters.
- icrc3-mo - A Class+ ICRC-3 Library for adding transaction logs and archives to your canister.
- icrc7_motoko - An ICRC-7 standard implementation in Motoko.
- icrc7-mo - A Class+ ICRC-7 Library for building NFT Canisters.
- icrc-nft-mo - A Sample NFT combining icrc7-mo, icrc30-mo, icrc3-mo.
- ic-nft - A NFT standard implementation for the Internet Computer, the interfaces mainly follow the ERC721 standard.
- ic-token - An ERC-20 style token standard implements for Motoko.
- non-fungible-token - The goal for this project is to develop a non-fungible token standard which leverages the unique properties of the IC and enables builders to create entire experiences from a single contract.
- token faucet - A token faucet for [ic-token](https://github.com/rocklabs-io/ic-toke).
-
Realestate
- ber - Blockchain estate register with IC
-
Canister tools
- candid-spaces - A general-purpose candid data lake for canisters' data on the IC.
- Canister Tip Jar - Donate cycles to your favorite canisters on the Internet Computer and keep them live and healthy.
- iCAN - A Canister Management Platform, which helps you create canisters in random subnet and manage canisters status efficiently and conveniently.
- ic-blackhole - Once a canister sets its only controller to a black hole, it becomes immutable.
- motoko_top_up_canister - Implementation of a canister called periodically by a Node.js service; that top-up automatically user-defined canisters with cycles.
-
Decentralized Finance
- BrownFi - Simple AMM Dex with high Capital Effifiency
-
Games
- reversi - Multiplayer Reversi Game on Internet Computer.
- superheroes - A simple example that demonstrates how to build a CRUD application on the Internet Computer using Motoko and React.
- revo - A drawing game on Internet Computer.
-
Mining Platform
- loka - Trustless Non-Custodial Bitcoin Mining Platform built on IC
-
Social
- LinkedUp - An open professional network on Internet Computer.
-
Storage
- motoko-cdn - A simple storage auto-scaling solution across multiple canisters. Ie: mini-bigmap.
- motoko-dht - This canister implements a distributed hash table.
- motoko-document-db
- motoko-ICSP - Internet Computer Storage Protocol. This lib supports many features, such as auto-scale storage, HTTP Redirect, cycle monitor and top up self automatically.
-
Utilities
- cleansheets - A spreadsheet-like application for the Internet Computer, written in Motoko.
- IC Payroll - Human Resource and Payroll App hosted fully on-chain on the internet Computer. Users can hold and send ckbtc and other icrc2 compliant tokens .Allows user to send a single payment or bulk payment. Vue/Tailwindcss Frontend with Motoko Backend.
- motoko-certified-http - A motoko canister that does HTTP asset certification.
- relay - Managed events infrastructure by Departure Labs.
- SecureGuard Escrow - Revolutionizing secure transactions with a blockchain-based escrow platform , ensuring safe exchanges of high-value goods and services with immutable smart contracts.
-
Video
- cancan - A scalable video-sharing service.
-
-
Development tools
-
Build system
- dfx - The DFINITY command-line execution environment (dfx) is the primary tool for creating, deploying, and managing the dapps you develop for the Internet Computer blockchain.
- Vessel package manager - Add and manage packages, libraries, and dependencies for your Motoko programs.
-
IDEs
- Visual Studio Code
- Motoko - Motoko language support maintained by official.
- Blocks - An open source visual Motoko smart contract editor.
- IntelliJ IDEA Motoko support - Adds support for the Motoko language from Dfinity.
- motoko-playground - A playground for the Internet Computer's native Motoko language.
-
Testing
- motoko-bigtest - Long-running tests as/for IC services, via a Motoko-based DSL.
- motoko-color - A Motoko library for rendering color schemes and graphics to the terminal, based on the ANSI ASCII standard.
- motoko-matchers - Composable assertions for unit testing.
- ic101 - This repository demonstrates how to use the matchers library to unit test canisters on the Internet Computer.
- ic-mini-terminal - Minimal keyboard input (⌨) and graphical output (📺) for programs on the Internet Computer.
-
-
Libraries
-
Cryptography
- motoko-crc - This package implements cyclic redundancy checks for the Motoko programming language.
- ecdsa-motoko - ECDSA for Motoko.
- ecdsa_poc - Prototype implementation of ECDSA, only for learning.
- evm-txs - EVM transactions creation, encoding, and decoding library in pure Motoko.
- libsecp256k1.mo - Motoko port of libsecp256k1.
- motoko-bitcoin - Bitcoin-related libraries (Base58, RIPMED160, HMAC).
- motoko-CRC32 - Implements the 32-bit cyclic redundancy check, or CRC-32, checksum.
- motoko-sha2 - All hash functions from the SHA2 family (sha224, sha256, sha512-224, sha512-256, sha384, sha512).
- motoko-sha - This package implements secure hash algorithms for the Motoko programming language.
- motoko-SHA - SHA224 and SHA256 hash algorithms as defined in FIPS 180-4.
- motoko-sha224 - A Sha224 implements for Motoko.
- rand - Pseudo Random Number Generators.
-
Data structures
- motoko-bigsearch - A search service in Motoko, inspired by indexing and search systems like Apache Lucene.
- array - Extended Array Package for Motoko.
- motoko-base - The Motoko base library, commonly used data structures and algorithms, maintained by the official.
- motoko-BiMap - A bimap (or "bidirectional map") is a map that preserves the uniqueness of its values as well as that of its keys.
- motoko-crud - A framework for constructing CRUD services in Motoko for the Internet Computer.
- motoko_datetime - Datetime library. Support for UTC, local timezones, locales and basic datetime operations/structures
- motoko-Queue - A collection of elements that are maintained in a sequence, a FIFO Queue.
- motoko-sequence - Cache-friendly, persistent sequential data for Motoko.
- motoko-StableMap - Stable Map for the Motoko.
- MotokoStableBTree
- motoko-text-map - A Motoko Hashmap that fixes its key type to Text.
- mutable-queue.mo - Motoko module of a mutable queue data structure.
- Principal - Provides a wrapper around the [base principal module](https://github.com/dfinity/motoko-base/blob/master/src/Principal.mo).
- Stable BTree Map - Stable (Heap-based) BTreeMaps in Motoko.
- Stable Buffers - Stable (Heap-based) Buffers in Motoko.
- Stable Data Struct - Stable (Heap-based) Hashmap implements.
- Stable HashMaps - Functional & Class-Based (Heap-based) stable Hashmaps in Motoko.
- Stable LinkedList - (Heap-based) Stable, mutable singly & doubly linked lists in Motoko.
- Stable Red-Black Trees - (Heap-based) Stable Red-Black Trees in Motoko.
-
Encoding
- Account.mo
- motoko-hex - This package implements hexadecimal encoding and decoding routines for the Motoko programming language.
- json package - JSON for Motoko.
- lexicographic-encoding - Lexicographic (string sortable) integer encoding in Motoko.
- motoko-base32 - Base32 coding/decoding for Motoko.
- motoko_candid - CANDID encoding/decoding library
- motoko_cbor - CBOR encoding/decoding library
- motoko-Encode - Base32, Hex and Binary Library for the Motoko.
- motoko-json - Json parser in Motoko.
- motoko-UUID - Generation of UUIDs based on RFC 4122.
- motoko_xml - XML encoding/decoding library
-
Storage
- motoko-GraphQL - GraphQL is a query language designed to build client applications and system for describing their data requirements and interactions.
- Asset Storage - Interface of the Asset Storage Canister.
- Bucket - A data bucket library that use stable memory to store files bytes and assist developers to build http response.
- A site about Motoko databases and related software
-
Misc
- Gitcoin Passport Client - A sample app to securely copy Gitcoin Passport scores to ICP databases.
-
Algorithms
- chronosphere - A time library for the Motoko programming language.
- motoko-adapton - Dynamic dependence graph and memoization techniques in Motoko.
- motoko-qr - A QR-code generator for the Motoko programming language.
- motoko-scc - A Strongly Connected Component library for Motoko.
- motoko-splay - The splaying algorithm for Motoko.
- mo-parsec - A [Parsec](https://hackage.haskell.org/package/parsec)-based parser combinator library for Motoko.
- Parser Combinators - Based on Monadic Parser Combinators by Graham Hutton and Erik Meijer.
- Sorted - Data structures in which each element is sorted in numerical, alphabetical, or some other order.
-
Graphics
- motoko-graph - Graphical data models for Motoko.
- motoko-redraw - 2D graphics and layout algorithms for Motoko.
- motoko-SVG Generator - A SVG generator for the Motoko.
-
Logging
- ic-logger - Motoko library to help create an append-only logger actor.
- motoko-pretty - A pretty printer library for Motoko.
-
Templates
- motoko-library-template - A template for creating Motoko libraries.
-
Text processing
- Format - Implements conversions to and from textual representations of basic data types.
- motoko-regex - Simple regex matching for Motoko Text.
-
Web Programming
- Http Request Parser - A http request parser for parsing url, search query, headers and form data.
-
Payment
- IC-PayPortal - Module for Motoko is a library that provides developers with a set of functions for managing fiat payments (Stripe, PayPal) on the Internet Computer Protocol (ICP).
-
-
Registries
-
Web Programming
- MOPS - A package manager for Motoko with on-chain package registry.
- io package - Basic Interfaces for I/O Primitives.
- Package Set - Aviate-labs package-set for Motoko libraries to use with vessel.
- Vessel Package Set - The official package-set for Motoko libraries to use with vessel.
-
-
Resources
-
Web Programming
- AgorApp - AgorApp is an online interactive coding platform that provides courses and coding challenges on all-things-web3 engineering and Internet Computer development.
- DFINITY Education - Lessons about blockchain, cryptocurrencies and protocol of Internet Computer.
- Introducing the Internet Computer - A comprehensive series of documents that introduce Internet Computer.
- motoko by example - An officially maintained collection of short Motoko examples.
- The Motoko Programming Language Book - A guide for writing Web3 Software on the Internet Computer.
- Motoko Bootcamp - Lectures and resources from the Motoko Bootcamp.
-
Programming Languages
Sub Categories
Data structures
19
Cryptocurrencies
13
Web Programming
12
Cryptography
12
Encoding
11
Algorithms
8
Storage
8
IDEs
5
Utilities
5
Testing
5
Canister tools
5
Games
3
Graphics
3
Logging
2
Text processing
2
Build system
2
Payment
1
Templates
1
Decentralized Finance
1
Misc
1
Mining Platform
1
Video
1
Realestate
1
Social
1
Keywords
motoko
13
internet-computer
9
icp
7
motoko-language
3
dfinity
3
canister
2
internetcomputer
2
secp256k1
2
ic
2
react
2
hmac
2
defi
2
encode-club
1
internet-computer-protocol
1
on-chain
1
tailwind
1
tailwindcss
1
vue
1
dfx
1
package-manager
1
blockchain
1
dashboard
1
ckbtc
1
reversi
1
othello
1
game
1
token
1
nft
1
transaction-log
1
donation
1
cycles
1
ic-repl
1
rust
1
http
1
hex
1
base64
1
base32
1
sequential-data
1
modules
1
library
1
sha256
1
sha224
1
hash
1
aes
1
ripemd160
1
cryptography
1
bitcoin
1
base58
1
evm
1
ethereum
1