awesome-nim
A curated list of awesome Nim frameworks, libraries, software and resources.
https://github.com/ringabout/awesome-nim
Last synced: 16 days ago
JSON representation
-
Language Features
-
Package Repositories
- Nim package directory - Explore Nim packages known to Nimble.
- Nim packages - List of packages for Nimble.
-
Editors
- Nim Playground - Code and run Nim online.
- moe - A vim-like editor made with Nim, also supports C, Rust, Javascript, etc.
- DoongJohn's Nim playground - An alternative implementation of the Nim playground.
- Nev - A keyboard focused GUI and terminal text editor.
-
Async IO
-
Functional Programming
- cascade - Method & assignment cascades for Nim, inspired by Smalltalk & Dart.
- pipe - Pipe operator for Nim, as seen in functional languages.
- nimfp - Nim functional programming library.
- nim-pipexp - Expression-based pipe operators with placeholder argument for Nim.
- zero-functional - A library providing (almost) zero-cost chaining for functional abstractions in Nim.
-
Pattern Matching
- gara - Macro-based pattern matching library.
- glob - Pure library for matching file paths against Unix style glob patterns.
- glob - Pure library for matching file paths against Unix style glob patterns.
- regex - Pure Nim regex engine with linear time match.
- npeg - PEGs for Nim, another take.
- patty - A pattern matching library for Nim.
- ast_pattern_match - A library to do pattern matching on the AST.
- awk - A library of awk functions in Nim.
- tinyre - A tiny regex engine based on Rob Pike's VM implementation.
-
Implementations
-
Standard Libraries
-
Threading
- weave - A state-of-the-art multithreading runtime: message-passing based, fast, scalable, ultra-low overhead.
- timerpool - Threadsafe timerpool implementation for event purposes.
- taskpools - Lightweight, energy-efficient, easily auditable threadpools.
- shared - A Nim library for shared types.
- synthesis - A compiletime, procedure-based, low-overhead, no-allocation, state-machine generator optimized for communicating processes and threads.
- sync - Useful synchronization primitives.
- threadlogging - A thread safe logging library using Nim's own logging module
- malebolgia - A powerful library in Nim that simplifies the implementation of concurrent and parallel programming.
-
Error Handling
- result - Friendly, exception-free value-or-error returns, similar to Option[T].
- questionable - Elegant optional types for Nim.
- optionsutils - Utility macros for easier handling of options in Nim.
- questionable - Elegant optional types for Nim.
- result - Friendly, exception-free value-or-error returns, similar to Option[T].
-
Contracts
-
Object-Oriented Programming
- oop_utils - Nim macros for building OOP class hierarchies.
- interfaced - Interfaces for Nim.
- traitor - A macro heavy trait library made from boredom.
- classes - Python-style class system for Nim.
- classy - Haskell-style typeclasses for Nim.
-
Iteration
- iterrr - Macros-based functional-style, lazy-like, extensible iterator library.
- itertools - Nim rewrite of a very popular Python module of the same name.
- loopfusion - Iterate efficiently over a variadic number of containers.
- looper - For loop macros for Nim.
- mangle - Attempt at a streaming library.
- loopfusion - Iterate efficiently over a variadic number of containers.
-
Macros
- macroutils - A package that makes creating macros easier.
- nimacros - Documentation for Nim macros.
- unpack - Sequence/object unpacking/destructuring.
- with - The `with` macro for Nim.
- memo - Memoization for Nim.
-
-
Operating System
-
IO
- std/selectors - Epoll/Kqueue/Select implementation in Nim's stdlib.
- ioselectors - The ioselectors plus for Nim.
- wepoll - Windows epoll wrapper for Nim.
- faststreams - Nearly zero-overhead input/output streams for Nim.
- lockfreequeues - Lock-free queue implementations for Nim.
- wepoll - Windows epoll wrapper for Nim.
-
System API
-
Processes
-
Date and Time
- datetime2human - Calculate date & time with precision from seconds to millenniums. Human friendly date time as string. ISO-8601.
- timezones - Nim timezone library compatible with the standard library.
- chrono - A timestamps, calendars, and timezones library.
-
Randomization
- random - Random number generation library for Nim, inspired by Python's "random" module.
- sysrandom.nim - A Nim library to generate random numbers and random ranges of bytes using the system's PRNG.
- alea - Define and compose random variables.
- drand48 - Nim implementation of the standard Unix drand48 random number generator.
-
Scripting
-
-
Data
-
Serialization
- nesm - NESM is a tool that generates serialization and deserialization code for a given object.
- serialization - A modern and extensible serialization framework for Nim.
- json-serialization - Flexible JSON serialization not relying on run-time type information.
- protobuf-serialization - The nim-protobuf-serialization.
- ssz-serialization - Nim implementation of Simple Serialize (SSZ) serialization and merkleization.
- toml-serialization - Flexible TOML serialization `not` relying on run-time type information.
- frosty - Marshal native Nim objects via streams, sockets.
- protobuf-nim - Protobuf implementation in pure Nim that leverages the power of the macro system to not depend on any external tools.
- flatty - Tools and serializer for plain flat binary files.
- bingo - Binary serialization framework for Nim.
-
Database
- nimongo - Pure Nim lang MongoDB driver.
- asyncpg - Asynchronous PostgreSQL driver for Nim.
- anonimongo - Another Nim pure Mongo DB driver.
- redis - Official redis wrapper for Nim.
- amysql - Async MySQL Connector write in pure Nim.
- mycouch - Multisync CouchDB driver for Nim.
- SQLiteral - A high level SQLite API for Nim.
- asyncmysql - Asynchronous MySQL connector written in pure Nim.
- sqlcipher - SQLCipher wrapper.
- litestore - A lightweight, self-contained, RESTful, searchable, multi-format NoSQL document store.
- rocksdb - Nim wrapper for RocksDB, a persistent key-value store for flash and RAM Storage.
- ormin - Prepared SQL statement generator , A lightweight ORM.
- allographer - A query_builder/ORM library inspired by Laravel/PHP and Orator/Python for Nim.
- gatabase - Connection-Pooling Compile-Time ORM for Nim.
- norm - Norm is an object-oriented, framework-agnostic ORM for Nim that supports SQLite and PostgreSQL.
- tiny_sqlite - Very lightweight and safe SQLite library.
- limdb - Very high performance, persistent and safe key-value store based on LMDB with Nim table-like interface.
-
Data Structures
- BitVector - A high-performance Nim implementation of BitVectors.
- rbtree - A Red/Black tree implementation in Nim.
- quadtree - A Quadtree library for Nim.
- kdtree - A pure Nim k-d tree implementation for efficient spatial querying of point data.
- RTree - Generic R-tree implementation for Nim.
- sorta - SortedTables in Nim, based on B-trees.
- minmaxheap - A Nim implementation of a Minimum-Maximum heap.
- BipBuffer - A Nim implementation of Simon Cooke's Bib Buffer
- bloom - Bloom filter implementation in Nim.
- binaryheap - Simple binary heap implementation in Nim.
- faststack - Dynamically resizable data structure for fast iteration over large arrays of similar elements.
- StashTable - Concurrent hash tables for Nim.
-
Data Processing
- NimData - DataFrame API written in Nim, enabling fast out-of-core data processing.
- Datamancer - A dataframe library with a dplyr like API.
- nimdataframe - Dataframe for Nim.
- nimhdf5 - Wrapper and some simple high-level bindings for the HDF5 library for Nim.
- mpfit - A wrapper for the cMPFIT library for Nim.
-
Parsing
- parsetoml - A Nim library to parse TOML files.
- NimYAML - YAML implementation for Nim.
- Binarylang - Extensible Nim DSL for creating binary parsers/encoders in a symmetric fashion.
- iniplus - INI parser with support for arrays and tables.
-
Standards
- isocodes - ISO codes for Nim (ISO 3166-1, ISO 3166-2, ISO 3166-3, ISO 15924, ISO 15924, ISO 639-2, ISO 639-5)
-
-
User Interface
-
Terminal
-
GUI
- NiGui - A cross-platform, desktop GUI toolkit.
- nimx - Desktop, Mobile & Web GUI framework in Nim.
- ui - Wrapper for libui. Beginnings of what might become Nim's official UI library.
- uing - Wrapper & bindings for libui-ng, an updated and maintained fork of libui.
- iup - Wrapper for IUP. Beginnings of what might become Nim's official UI library.
- SDL2 - Official wrapper for SDL 2.x.
- SDL2 - A wrapper for SDL 2.
- Owlkettle - Declarative user interface framework based on GTK.
- libtray - Nim wrapper for Tray (dmikushin's fork), a library to create system tray/menu bar icon with a popup menu.
- wNim - Nim's Windows GUI Framework.
- gintro - High-level GObject-Introspection based GTK3/GTK4 bindings for Nim.
- nimqml - Qt QML bindings for the Nim programming language.
- Neel - A library for making Electron-like HTML/JS GUI apps.
- nimview - A Nim/Webview based helper to create desktop/server applications with Nim and HTML/CSS.
- webgui - Web technologies based cross-platform GUI Framework with a dark theme.
- fidget - Figma based UI library for Nim, with HTML and OpenGL backends.
- nsciter - High-level and low-level Nim wrapper for https://sciter.com.
- webview - Nim bindings and wrapper for Webview.
- webui - Nim bindings and wrapper for WebUI.
- imgui - ImGui bindings for Nim via cimgui.
- nimAntTweakBar - Wrapper for AntTweakBar.
- NiGui - A cross-platform, desktop GUI toolkit.
-
Design
- chroma - Everything you want to do with colors, in Nim.
- typography - Fonts, typesetting and rasterization.
- trick - Library for GBA/NDS image conversion, and more!
- HexToAnsi - Convert hexadecimal colors to ANSI colors.
-
Plotting
- ggplotnim - A port of ggplot2 for Nim.
- plotly - A plotly wrapper for Nim.
- graph - A basic plotting library in Nim.
- nimetry - Simple plotting in pure Nim.
- nimgraphviz - A Nim library for making graphs with GraphViz and DOT.
-
-
Web
-
Protocols
- jswebsockets - WebSockets optimized for JavaScript targets.
- http-utils - HTTP helper procedures.
- puppy - Puppy fetches HTML pages for Nim.
- netty - Reliable UDP connection library for games in Nim.
- json-rpc - Nim library for implementing JSON-RPC clients and servers.
- nmqtt - Native Nim MQTT client library.
- libp2p - A Nim implementation of the libp2p networking stack.
- libp2p-dht - DHT based on the libp2p kademlia spec.
- webdavclient - WebDAV client for Nim.
- stomp - A pure-Nim client library for interacting with Stomp compliant message brokers.
- presto - An efficient REST API framework.
- gemini - Building blocks for creating Gemini servers and clients.
- yahttp - Awesome simple HTTP client.
- ndns - A pure Nim Domain Name System (DNS) client.
- dnsprotocol - Domain Name System (DNS) protocol for Nim programming language.
- quic - QUIC for Nim. This is very much a work in progress, and not yet in a usable state.
- ngtcp2 - A wrapper around ngtcp2: an effort to implement IETF QUIC protocol.
- ws - Simple WebSocket library for Nim.
- websocket.nim - WebSockets for Nim.
- news - Nim Easy WebSocket. Based on ws.
- websock - An implementation of the WebSocket protocol for Nim.
- telebot.nim - Async client for Telegram Bot API in pure Nim.
- dimscord - A Discord Bot & REST Library for Nim.
- nwaku - Implementation of the Waku v1 and v2 protocols.
- status - Nim implementation of the Status protocol.
- nimMulticast - UDP Multicast made simple.
- libp2p - A Nim implementation of the libp2p networking stack.
- libp2p-dht - DHT based on the libp2p kademlia spec.
- quic - QUIC for Nim. This is very much a work in progress, and not yet in a usable state.
- ngtcp2 - A wrapper around ngtcp2: an effort to implement IETF QUIC protocol.
- nwaku - Implementation of the Waku v1 and v2 protocols.
-
HTTP Servers
- jshttp2 - Async HTTPS 2.0 web server.
- httpbeast - A highly performant, multi-threaded HTTP 1.1 server ([top 10 in FrameworkBenchmarks](https://www.techempower.com/benchmarks/#section=data-r18&test=json)).
- httpx - Cross platform web server for Nim. A fork of httpbeast adding Windows support.
- GuildenStern - Genuinely multithreading integrated HTTP/1.1 + WebSocket v13 Server for POSIX-compliant OSes.
- Mummy - A multi-threaded HTTP 1.1 server with first-class support for WebSockets.
- netkit - Out-of-the-box, stable and secure network facilities and utilities written in pure Nim.
-
Gemini Servers
-
Template Engines
- Nim Source Code filters - Nim's powerful built-in feature which can be used as a templating system or a preprocessor.
- smalte - It is a dead simple and lightweight template engine. Specially designed for configure application before start in Docker.
- html-dsl - Nim HTML DSL.
- templates - A simple string templating library for Nim.
- nimja - Typed and compiled template engine inspired by jinja2, twig and onionhammer/nim-templates for Nim.
- mustache - A full implementation of v1.2.1 of the Mustache spec.
- Tim - A high-performance template engine & markup language.
-
HTML Parsers
- Nimquery - Library for querying HTML using CSS selectors, like JavaScript's `document.querySelector`.
-
Frameworks
- Jester - The sinatra-like web framework for Nim. Jester provides a DSL for quickly creating web applications in Nim.
- prologue - A fullstack web framework written in Nim.
- whip - Simple and fast HTTP server for Nim based on httpbeast and nest for high performance routing.
- basolato - A fullstack web framework for Nim based on Jester.
- karax - A framework for developing single page applications in Nim.
- happyx - A macro-oriented full stack asynchronous web framework written in Nim.
- scorper - A micro and elegant web framework written in Nim.
- starlight - Flask-like web framework written in Nim.
- rosencrantz - DSL to write web servers, inspired by Spray and its successor Akka HTTP.
- nim_websitecreator - Nim fullstack website framework - deploy a website within minutes.
- nim-palladian - Palladian is a Nim front-end framework based on and wrapped around Preact.
-
Authentication
-
-
Development Tools
-
Editor Integration
- Editor Support - Official list of editor plugins for Nim.
- nimlsp - The Language Server Protocol implementation for Nim.
- nim.nvim - Nim plugin for NeoVim.
- vscode-nim - Language support for the Nim programming language for VS Code.
-
REPL
- INim - Interactive Nim Shell.
- jupyternim - A Jupyter kernel for Nim.
- INim - Interactive Nim Shell.
-
Binding Generators
- c2nim - c2nim is a tool to translate Ansi C code to Nim.
- nimgen - nimgen is a helper for c2nim to simplify and automate the wrapping of C libraries. Superseded by nimterop.
- nimterop - A Nim package that leverages tree-sitter to make C/C++ interop seamless. Superseded by Futhark.
- Futhark - Automatic wrapping of C headers in Nim with libclang.
- nimpy - Generate Python wrappers and call Python from Nim.
- jnim - Nim - Java bridge.
- rnim - A bridge between R and Nim. Currently this is a barely working prototype. -->
-
Build Systems / Package Management
- ChooseNim - Installing and switching between Nim versions (à la rustup, pyenv).
- Nake - Describe your Nim builds as tasks.
- Nawabs - A build system that throws away version numbering in favor of git hashes.
- Nimble - Nimble can be used as a build system.
- nimph - Nim package hierarchy manager from the future.
- nimby - A very simple and unofficial package manager for Nim.
- nifty - A decentralized pseudo package manager and script runner.
- nsis - Nim programming language setup tool.
- nim-windows-container - A Windows Container with a complete Nim build environment.
-
Logging
- chronicles - A crafty implementation of structured logging for Nim.
- morelogging - Logging library for Nim.
-
Testing
- faker - A Nim package that generates fake data for you.
- balls - A unittest macro to save the world, or at least your Sunday.
- einheit - A Nim unit testing library inspired by Python's unit tests.
- asynctest - Complements the standard unittest module in Nim to allow testing of asynchronous code.
- unittest2 - Fork of the "unittest" Nim module focusing on parallel test execution, test-level scoping and strict exception handling.
- asynctest - Complements the standard unittest module in Nim to allow testing of asynchronous code.
-
Fuzzing
-
Benchmarking
-
Command-Line Interface Automation
- cligen - Infer & generate command-line interace/option/argument parsers.
- docopt.nim - Command-line args parser.
- argparse - Argument parsing for Nim.
- cliche - AutoMagic CLI argument parsing is so cliché.
- loki - A small library for writing line-oriented command interpreters in Nim.
- confutils - Simplified handling of command line options and config files
- Cmdos - A simple way to process cli arguments and help messages.
- clapfn - Argument parsing similar to Python's argparse.
-
-
Resources
-
Books
- Nim in Action - Book in Manning's "in Action" series, teaching Nim through 3 practical projects including CLI chat apps, web apps and parsers.
- Computer Programming with Nim - A gentle introduction to the Nim programming language.
- Mastering Nim - A complete guide to the programming language.
- Nim Basics - Tutorial for beginners and people just starting with Nim.
- Nim Style Guide - Status style guide for the Nim language.
-
Blogs
- Nim Blog - Official Nim blog.
- Goran Krampe - Wrapping C, Arduino, performance, links.
- HookRace - Blog with multiple articles on Nim.
- Rants from the Ballmer Peak - Posts on Nim and other languages.
- Yuriy Glukhov's blog - Making and shipping a game in Nim.
- Araq's Musings - Blog on Nim from the creator himself.
- Nim on dev.to - Nim blogs on `dev.to`.
-
Community
-
Tutorials
- How I start - Great guide going from 0 to a bf interpreter and then a bf to Nim compiler.
- Learn Nim in Y minutes - Whirlwind tour.
- Nim by Example - Series of pages and examples for learning the Nim programming language.
- Nim for Python programmers - Guide to Nim for people with experience in Python.
- Nim on Rosetta Code - Thousands of solutions for various tasks using Nim.
- Nim Memory - A small tutorial explaining how Nim stores data in memory.
- Nim ARC - A friendly explanation of ARC and its implications for the programmer.
-
Videos
- Nim's Official Channel - Official videos introduce the powerful and interesting part in Nim language.
- Nim for Beginners - This is a video series meant to teach people programming in Nim to people who have never programmed before, or are new to Nim.
- Make a website with Nim - This is a video series meant to teach people make a website with Nim using `jester`.
- Learning Nim - Tutorial video series on learning Nim showcasing various features of the language and its libraries.
- araq twitch - The live broadcast regarding Nim language.
- alehander42 twitch - The live broadcast regarding Nim language.
- clyybber twitch - The live broadcast regarding Nim language.
- d0m96 twitch - The live broadcast regarding Nim language.
- disruptek twitch - The live broadcast regarding Nim language.
- yardanico twitch - The live broadcast regarding Nim language.
- zachary_carter twitch - The live broadcast regarding Nim language.
- Nim Tutorials - YouTube video series that teaches how to program in Nim and goes over various standared libraries.
-
-
Hardware
-
Backups
-
Embedded
- ratel - Next-generation, zero-cost abstraction microconroller programming in Nim.
- ardunimo - Nim wrapper for Arduino + LinkIt ONE SDK by Mediatek.
- ardunimesp - Nim wrapper for Arduino ESP8266 framework + A tool for flashing, compiling and making a Nim project into an Arduino project.
- msp430f5510 - Run Nim on MSP430f5510 micro-controller (6KB of RAM).
- Nesper - Program the ESP32 using Nim. Library on top of esp-idf.
- stm32f3 - Run Nim on STM32F3 micro-controller (16KB of RAM).
- boneIO - GPIO implementation for the BeagleBone Black for Nim.
-
-
Science
-
Embedded
- units - Statically-typed quantity units library for the Nim language.
- unchained - A fully type safe, compile time only units library.
- metric - A small library providing type-level dimensional analysis.
- orbits - Orbital mechanics library for Nim.
- qex - High-level framework for lattice field operations.
-
-
Text
-
String Types
- ssostrings - Small String Optimized (SSO) string implementation.
- cowstrings - Copy-On-Write string implementation according to nim-lang/RFCs#221.
-
Translation
- tinyslation - Text string translation from free online crowdsourced API.
-
Markdown
- HastyScribe - Self-contained markdown compiler generating self-contained HTML documents.
- markdown - A beautiful Markdown Parser in the Nim world.
- lester - Create quick documents out of Markdown, into HTML.
-
-
Multimedia
-
Audio
-
Images
- pixie - A full-featured 2D graphics library for Nim.
- nimpng - PNG (Portable Network Graphics) decoder and encoder written in Nim.
- nimbmp - BMP decoder and encoder written in Nim.
- nimsvg - A Nim-based DSL allowing generation of SVG files and GIF animations.
- pnm - Library for PNM (Portable Anymap) in Nim.
-
Documents
- nimpdf - PDF document writer, written in Nim.
-
-
Algorithms
-
Math
- symbolicnim - A symbolic library written purely in Nim.
- impulse - Impulse will be a collection of primitives for signal processing (FFT, Convolutions).
- vectorize - SIMD vectorization backend.
- vmath - Math vector library for graphical things.
- neo - A matrix library.
- manu - Nim MAtrix NUmeric package - a port of JAMA, adapted to Nim.
- nlopt - A wrapper for the nonlinear optimization library Nlopt.
-
Deep Learning
- Arraymancer - A fast, ergonomic and portable tensor library in Nim with a deep learning focus for CPU, GPU, OpenCL and embedded devices.
- NimTorch - PyTorch - Python + Nim. A Nim front-end to PyTorch's native backend, combining Nim's speed, productivity and portability with PyTorch's latest implementations.
- laser - Carefully-tuned primitives for running tensor and image-processing code on CPU, GPUs and accelerators.
- flambeau - Nim bindings to libtorch. -->
-
Bigints
-
Cryptography
- nimcrypto - Nim cryptographic library.
- nimaes - Advanced Encryption Standard, Rinjdael Algorithm written in Nim.
- constantine - Constant time pairing-based of elliptic curve based cryptography and digital signatures.
- bslcurve - Nim implementation of BLS signature scheme (Boneh-Lynn-Shacham) over Barreto-Lynn-Scott (BLS) curve BLS12-381.
- bncurve - Nim implementation of Barreto-Naehrig pairing-friendly elliptic curve.
- xxtea - XXTEA encryption algorithm library.
- crc32 - CRC32 for Nim. Just pass the thing you want to do CRC.
- rollinghash - High performance Nim implementation of a Cyclic Polynomial Hash, aka BuzHash, and the Rabin-Karp algorithm.
- murmurhash - Pure Nim implementation of MurmerHash
- des - DES/3DES, DUKPT and MAC in Nim.
- shimsham - A collection of hash functions, including JH, SHA-2, SHA-3, SipHash, Tiger, and Whirlpool.
- NiMPC - A secure multi-party computation (MPC) library for the Nim programming language.
- hashlib - Hash library that contains almost all the hash functions for Nim.
- xxhash.nim - A wrapper for the xxhash hashing library in Nim.
-
Blockchain
- eth - Common utilities for Ethereum.
- nimbus-eth1 - An Ethereum 1.0 and 2.0 client for resource-restricted devices.
- nimbus-eth2 - Efficient implementation of the Ethereum 2.0 blockchain.
- evmc - Ethereum VM binary compatible interface.
- ethash - A pure-Nim implementation of Ethash, the Ethereum proof of work.
- contract-abi - Implements encoding of parameters according to the Ethereum Contract ABI specification.
- web3 - The humble beginnings of a Nim library similar to web3.[js|py]. -->
- abc - Experimental asynchronous blockchain. -->
- nitro - Highly experimental implementation of the Nitro statechannels protocol in Nim. -->
- contract-abi - Implements encoding of parameters according to the Ethereum Contract ABI specification.
- nitro - Highly experimental implementation of the Nitro statechannels protocol in Nim. -->
-
Compression
- zippy - Pure Nim implementation of deflate, zlib, gzip and zip.
- supersnappy - Dependency-free and performant Nim Snappy implementation.
- snappy - Nim implementation of Snappy compression algorithm.
- zip - Wrapper for the zip library.
-
-
Game Development
-
Game Libraries
- nimgl - NimGL is a Nim library that offers bindings for popular libraries used in computer graphics.
- glm - Port of the popular glm C++ library to Nim.
- GLAD - Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs.
- enu - 3D live coding with a Logo-like DSL for Godot, implemented in Nim.
-
Game Frameworks
- nico - Nim Game Framework based on Pico-8.
- natu - Toolkit for writing Game Boy Advance games in Nim.
- naylib - safe Raylib wrapper.
- c4 - Modular and extensible 2D and 3D game framework for Nim.
- paranim - A game library based around carefully chosen abstractions.
- c4 - Modular and extensible 2D and 3D game framework for Nim.
-
Game Engines
- NimForUE - Nim plugin for UE5 with native performance, hot reloading and full interop that sits between C++ and Blueprints.
- nimgame2 - A simple 2D game engine for Nim.
- norx - A complete wrapper of the ORX 2.5D cross platform game engine library.
- godot-nim - Nim bindings for Godot Engine.
- rod - Cross-platform 2D and 3D game engine.
- frag - Cross-platform 2D/3D game engine.
- semicongine - Cross-platform, (almost) dependency-free game engine.
- saohime - An extensible 2D game engine for Nim, inspired by Bevy Engine.
- alasgar - Pure nim 3D game engine based on OpenGL.
-
Rules Engines
- turn_based_game - A game rules engine for simulating or playing turn-based games.
- pararules - A RETE-based rules engine made for games.
-
-
System Tools
-
Backups
- norg - A portable wrapper for borg and restic.
-
Programming Languages
Categories
Sub Categories
Protocols
31
GUI
22
Database
17
Cryptography
14
Videos
12
Data Structures
12
Embedded
12
Frameworks
11
Blockchain
11
Serialization
10
Game Engines
9
Build Systems / Package Management
9
Pattern Matching
9
Community
9
Threading
8
Command-Line Interface Automation
8
Blogs
7
Math
7
Tutorials
7
Binding Generators
7
Template Engines
7
HTTP Servers
6
Game Frameworks
6
Testing
6
Iteration
6
IO
6
Object-Oriented Programming
5
Functional Programming
5
Benchmarking
5
Books
5
Error Handling
5
Macros
5
Data Processing
5
Plotting
5
Images
5
Audio
5
Game Libraries
4
Design
4
Editors
4
Parsing
4
Deep Learning
4
System API
4
Compression
4
Randomization
4
Processes
4
Editor Integration
4
Bigints
3
Backups
3
Terminal
3
Date and Time
3
Standard Libraries
3
REPL
3
Markdown
3
Async IO
3
Implementations
2
Gemini Servers
2
Authentication
2
Contracts
2
Rules Engines
2
Logging
2
Fuzzing
2
Package Repositories
2
String Types
2
Scripting
2
HTML Parsers
1
Standards
1
Documents
1
Translation
1
Keywords
nim
159
nim-lang
55
nim-language
12
web
8
http
7
nimble
7
wrapper
7
game-engine
6
gui
6
html
6
javascript
6
python
6
bindings
6
parser
5
game-development
5
dsl
5
async
5
library
5
ethereum
4
server
4
ui
4
postgresql
4
gamedev
4
serialization
4
template
4
sqlite
3
compile-time
3
database
3
orm
3
sqlite3
3
plot
3
cross-platform
3
lib
3
language
3
vulkan
3
high-performance
3
template-engine
3
compression
3
linear-algebra
3
webframework
3
multithreading
3
openmp
3
websockets
3
string
3
cryptography
3
client
3
gtk
3
linux
3
http-server
3
gtk4
2