Skip to content
84

Awesome Nim

A curated list of awesome Nim frameworks, libraries, software and resources.

1.5k stars91 forks418 entriesLast push Sep 21, 2026 (8 days ago)License CC0-1.0

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

General

Nim

is a statically typed compiled systems programming language. Good for everything from shell scripting to web front & backend, to ML, HPC, and embedded.

In 2 lists

Language Features >Implementations

Nim

Nim (formerly known as "Nimrod") is a compiled, garbage-collected systems programming language which has an excellent productivity/performance ratio. Nim's design focuses on efficiency, expressiveness, elegance (in the order of priority).

nlvm

LLVM backend for Nim.

Language Features >Standard Libraries

cpython

Python standard library for Nim.

Node.js

Node.js standard library for Nim.

pylib

Pure Nim implementation for Python builtins, libraries and sugars.

Language Features >Package Repositories

Nim packages

List of packages for Nimble.

Nim package directory

Explore Nim packages known to Nimble.

Language Features >Editors

moe

A vim-like editor made with Nim, also supports C, Rust, Javascript, etc.

Nev

A keyboard focused GUI and terminal text editor.

Nim Playground

Code and run Nim online.

DoongJohn's Nim playground

An alternative implementation of the Nim playground.

Language Features >Async IO

std/async

Async/await implementation in Nim's stdlib (aka asyncdispatch).

chronos

An efficient library for asynchronous programming.

cps

Continuation-Passing Style for Nim.

Language Features >Threading

malebolgia

A powerful library in Nim that simplifies the implementation of concurrent and parallel programming.

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

Language Features >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.

Language Features >Contracts

contracts

Used to make contracts - elegant promises that pieces of code will fulfill certain conditions.

contra

Lightweight and fast self-documenting design by contract programming.

Language Features >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.

Language Features >Functional Programming

cascade

Method & assignment cascades for Nim, inspired by Smalltalk & Dart.

nimfp

Nim functional programming library.

nim-pipexp

Expression-based pipe operators with placeholder argument for Nim.

pipe

Pipe operator for Nim, as seen in functional languages.

zero-functional

A library providing (almost) zero-cost chaining for functional abstractions in Nim.

Language Features >Pattern Matching

razaberi

Pattern matching library, 2000+ test cases, exhaustiveness checking, deep destructuring support.

regex

Pure Nim regex engine with linear time match.

npeg

PEGs for Nim, another take.

patty

A pattern matching library for Nim.

gara

Macro-based pattern matching library.

glob

Pure library for matching file paths against Unix style glob patterns.

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.

Language Features >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.

Language Features >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 >System API

winim

Nim's Windows API and COM Library.

serial

A Nim library for accessing serial ports.

tempdir

A Nim library to create and manage temporary directories.

nimbluez

Nim modules for access to system Bluetooth resources.

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.

Operating System >Processes

psutil

A port of Python's psutil to Nim.

shell

A mini Nim DSL to execute shell commands more conveniently.

schedules

A Nim scheduler library that lets you kick off jobs at regular intervals.

daemon

Cross-platform process daemonization library for the Nim language.

Operating System >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.

Operating System >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.

Operating System >Scripting

nimcr

Running Nim code with Shebangs.

nimr

Run Nim programs like scripts.

nimbang

Running Nim programs as scripts with shebang.

System Tools >Backups

norg

A portable wrapper for borg and restic.

System Tools >Prometheus exporters

node-exporter-lite

An ultra‑light node_exporter replacement.

unbound-exporter-lite

An ultra‑light unbound_exporter replacement.

Hardware

nimvisa

Wrapper for NI-VISA instrument control library.

ftd2xx

Wrapper for FTDI ftd2xx library (USB to JTAG/SPI/I2C/Bitbang etc.).

Hardware >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.

avr_io

Nim register bindings and utilities for AVR microcontrollers.

avrman

A tool for managing Nim and C projects targetting AVR microcontrollers.

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

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.

Data >Database

amysql

Async MySQL Connector write in pure Nim.

anonimongo

Another Nim pure Mongo DB driver.

asyncmysql

Asynchronous MySQL connector written in pure Nim.

asyncpg

Asynchronous PostgreSQL driver for Nim.

db_connector

Unified db connector in Nim.

kuzu

Wrapper for Kuzu - an embedded graph database built for query speed and scalability.

limdb

Very high performance, persistent and safe key-value store based on LMDB with Nim table-like interface.

litestore

A lightweight, self-contained, RESTful, searchable, multi-format NoSQL document store.

mycouch

Multisync CouchDB driver for Nim.

nimongo

Pure Nim lang MongoDB driver.

redis

Official redis wrapper for Nim.

KoutenDB

Locality-aware NoSQL document/vector database built around rings and orbit-inspired retrieval.

rocksdb

Nim wrapper for RocksDB, a persistent key-value store for flash and RAM Storage.

sqlcipher

SQLCipher wrapper.

SQLiteral

A high level SQLite API for Nim.

surrealdb.nim

SurrealDB driver for Nim.

tiny_sqlite

Very lightweight and safe SQLite library.

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.

Data >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.

In 2 lists

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 >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.

Data >Parsing

beautifulparser

Simple library for parsing HTML documents inspired by beautifulsoup4.

Binarylang

Extensible Nim DSL for creating binary parsers/encoders in a symmetric fashion.

iniplus

Extended INI parser with support for arrays and tables.

Marvdown

A stupid simple Markdown parser.

NimYAML

YAML implementation for Nim.

parsetoml

A Nim library to parse TOML files.

Data >Serialization

bingo

Binary serialization framework for Nim.

flatty

Tools and serializer for plain flat binary files.

frosty

Marshal native Nim objects via streams, sockets.

json-serialization

Flexible JSON serialization not relying on run-time type information.

nesm

NESM is a tool that generates serialization and deserialization code for a given object.

protobuf-nim

Protobuf implementation in pure Nim that leverages the power of the macro system to not depend on any external tools.

protobuf-serialization

The nim-protobuf-serialization.

serialization

A modern and extensible serialization framework for Nim.

ssz-serialization

Nim implementation of Simple Serialize (SSZ) serialization and merkleization.

tnetstring

Parsing and serializing for the TNetstring format.

toml-serialization

Flexible TOML serialization not relying on run-time type information.

Data >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)

Text >String Types

ssostrings

Small String Optimized (SSO) string implementation.

cowstrings

Copy-On-Write string implementation according to nim-lang/RFCs#221.

Text >Translation

tinyslation

Text string translation from free online crowdsourced API.

Text >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

paramidi

A Nim library for making MIDI music.

omni

A DSL for low-level audio programming.

wave

A tiny WAV sound module.

parasound

A library to provide Nim bindings for miniaudio and dr_wav.

jacket

A Nim wrapper for the libjack C library to write clients for the JACK audio server.

Multimedia >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.

Multimedia >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.

Algorithms >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.

Algorithms >Bigints

bigints

Bigints for Nim.

stint

Stack-based arbitrary-precision integers. Fast and portable with natural syntax for resource-restricted devices.

theo

An optimized bigint and number theory library for Nim.

Algorithms >Cryptography

bcryptrocks

Nim wrapper of Solar Designer's crypt_blowfish library

bncurve

Nim implementation of Barreto-Naehrig pairing-friendly elliptic curve.

bslcurve

Nim implementation of BLS signature scheme (Boneh-Lynn-Shacham) over Barreto-Lynn-Scott (BLS) curve BLS12-381.

constantine

Constant time pairing-based of elliptic curve based cryptography and digital signatures.

crc32

CRC32 for Nim. Just pass the thing you want to do CRC.

des

DES/3DES, DUKPT and MAC in Nim.

hashlib

Hash library that contains almost all the hash functions for Nim.

murmurhash

Pure Nim implementation of MurmerHash

nimaes

Advanced Encryption Standard, Rinjdael Algorithm written in Nim.

nimcrypto

Nim cryptographic library.

NiMPC

A secure multi-party computation (MPC) library for the Nim programming language.

rollinghash

High performance Nim implementation of a Cyclic Polynomial Hash, aka BuzHash, and the Rabin-Karp algorithm.

shimsham

A collection of hash functions, including JH, SHA-2, SHA-3, SipHash, Tiger, and Whirlpool.

xxhash.nim

A wrapper for the xxhash hashing library in Nim.

xxtea

XXTEA encryption algorithm library.

Algorithms >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.

Algorithms >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.

User Interface >Terminal

illwill

Simple cross-platform terminal library inspired by (n)curses.

niffler

Command line AI assistant written in Nim.

Nimmm

A terminal file manager for Linux.

pager

A simple command line pager library, written in Nim.

pnimrp

Stream your favorite radio stations at the comfort of your terminal.

prettyterm

Library for creating beautiful terminal interfaces in Nim.

jn

A CLI note taker and task manager.

User Interface >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.

User Interface >GUI

nimx

Desktop, Mobile & Web GUI framework in Nim.

In 2 lists

NiGui

A cross-platform, desktop GUI toolkit.

In 2 lists

ui

Wrapper for libui. Beginnings of what might become Nim's official UI library.

In 2 lists

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.

In 2 lists

SDL2

Official wrapper for SDL 2.x.

In 2 lists

SDL2

A wrapper for SDL 2.

In 2 lists

Owlkettle

Declarative user interface framework based on GTK.

In 2 lists

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.

In 2 lists

gintro

High-level GObject-Introspection based GTK3/GTK4 bindings for Nim.

In 2 lists

nimqml

Qt QML bindings for the Nim programming language.

In 2 lists

Neel

A library for making Electron-like HTML/JS GUI apps.

In 2 lists

nimview

A Nim/Webview based helper to create desktop/server applications with Nim and HTML/CSS.

In 2 lists

webgui

Web technologies based cross-platform GUI Framework with a dark theme.

In 2 lists

fidget2

Library for natively compiled cross platform UIs - Web with HTML5 (WASM), Windows, macOS, Linux with OpenGL.

webview

Nim bindings and wrapper for Webview.

webui

Nim bindings and wrapper for WebUI.

imgui

ImGui bindings for Nim via cimgui.

In 2 lists

koi

Immediate mode UI for Nim.

nimAntTweakBar

Wrapper for AntTweakBar.

In 2 lists

User Interface >Plotting

ggplotnim

A port of ggplot2 for Nim.

In 2 lists

plotly

A plotly wrapper for Nim.

In 2 lists

graph

A basic plotting library in Nim.

In 2 lists

nimetry

Simple plotting in pure Nim.

In 2 lists

nimgraphviz

A Nim library for making graphs with GraphViz and DOT.

In 2 lists

nimgnuplot

A simple gnuplot interface for Nim, compatible with Datamancer dataframes.

Mobile

react-native-nim

A react-native template which demonstrates nim interop with iOS/Android mobile client from react-native.

Web >Protocols

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.

jswebsockets

WebSockets optimized for JavaScript targets.

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.

Web >HTML Parsers

Nimquery

Library for querying HTML using CSS selectors, like JavaScript's document.querySelector.

Web >HTTP Servers

httpbeast

A highly performant, multi-threaded HTTP 1.1 server (top 10 in FrameworkBenchmarks).

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.

jshttp2

Async HTTPS 2.0 web server.

Web >Gemini Servers

Geminim

A Gemini server.

In 2 lists

Nemini

A very simple Gemini server for serving static gemtext files.

Web >Frameworks

basolato

A fullstack web framework for Nim based on Jester.

happyx

A macro-oriented full stack asynchronous web framework written in Nim.

Jazzy

The Productive Framework. Developer-friendly, lightning fast, and designed for rapid development.

Jester

The sinatra-like web framework for Nim. Jester provides a DSL for quickly creating web applications in Nim.

karax

A framework for developing single page applications in Nim.

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.

prologue

A fullstack web framework written in Nim.

rosencrantz

DSL to write web servers, inspired by Spray and its successor Akka HTTP.

scorper

A micro and elegant web framework written in Nim.

starlight

Flask-like web framework written in Nim.

Supranim

A simple web framework for creating REST APIs and beautiful web apps. Model View Controller structure and other cool things.

whip

Simple and fast HTTP server for Nim based on httpbeast and nest for high performance routing.

Web >Template Engines

html-dsl

Nim HTML DSL.

mustache

A full implementation of v1.2.1 of the Mustache spec.

nimja

Typed and compiled template engine inspired by jinja2, twig and onionhammer/nim-templates for Nim.

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.

In 2 lists

templates

A simple string templating library for Nim.

temple

Simple run-time templating library for Nim.

Tim

A high-performance template engine & markup language.

Web >Authentication

oauth

OAuth library for Nim.

Game Development >Game Libraries

bgfxim

Complete, low-level Nim bindings for the bgfx C99 API [BSD-2-Clause].

enu

3D live coding with a Logo-like DSL for Godot, implemented in Nim.

GLAD

Multi-Language Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specs.

In 3 lists

glm

Port of the popular glm C++ library to Nim.

jolt-nim

Native Nim bindings for Jolt Physics 5.6.0 with raw and ownership-safe high-level APIs [MIT].

nimgl

NimGL is a Nim library that offers bindings for popular libraries used in computer graphics.

Game Development >Game Frameworks

nico

Nim Game Framework based on Pico-8.

natu

Toolkit for writing Game Boy Advance games in Nim.

In 2 lists

naylib

safe Raylib wrapper.

c4

Modular and extensible 2D and 3D game framework for Nim.

paranim

A game library based around carefully chosen abstractions.

Game Development >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.

Game Development >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.

Development Tools >Editor Integration

Nim

Nim (formerly known as "Nimrod") is a compiled, garbage-collected systems programming language which has an excellent productivity/performance ratio. Nim's design focuses on efficiency, expressiveness, elegance (in the order of priority).

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.

Development Tools >REPL

INim

Interactive Nim Shell.

jupyternim

A Jupyter kernel for Nim.

Reploid

A Nim REPL running on top of a nim c or a nimscript VM, import [anything].

Development Tools >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.

Development Tools >Build Systems / Package Management

Atlas

The Atlas Package cloner. It manages an isolated workspace that contains projects and dependencies.

ChooseNim

Installing and switching between Nim versions (à la rustup, pyenv).

GrabNim

Install and switch between multiple Nim compiler versions. (Alternative to ChooseNim).

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.

nim-agent-template

Scaffolding generator and template featuring AI agent skills, MCP tooling, and multi-toolchain build profiles.

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.

Development Tools >Logging

chronicles

A crafty implementation of structured logging for Nim.

kslog

Minimalistic Kernel-Syslogd For Linux in Nim.

threadlogging

A thread safe logging library using Nim's own logging module

Development Tools >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.

Development Tools >Fuzzing

drchaos

A powerful and easy-to-use fuzzing framework in Nim for C/C++/Obj-C targets.

libfuzzer

LibFuzzer's interface bindings.

Development Tools >Benchmarking

benchy

Simple benchmarking to time your code.

golden

A benchmark for compile-time and/or runtime Nim.

timeit

Measuring execution times written by Nim.

criterion

Statistic-driven micro-benchmark framework.

stopwatch

A fork of rbmz's stopwatch that adds extra features.

nimbench

A micro benchmark module for Nim.

Development Tools >Command-Line Interface Automation

cligen

Infer & generate command-line interace/option/argument parsers.

In 2 lists

docopt.nim

Command-line args parser.

In 2 lists

argparse

Argument parsing for Nim.

In 2 lists

clapfn

Argument parsing similar to Python's argparse.

cliche

AutoMagic CLI argument parsing is so cliché.

In 2 lists

loki

A small library for writing line-oriented command interpreters in Nim.

In 2 lists

confutils

Simplified handling of command line options and config files

In 2 lists

Cmdos

A simple way to process cli arguments and help messages.

cozycliparser

Lean, feature-rich, DSL-free CLI parser based on std/parseopt. Docs.

Cliquet

A CLI args and config file parser merging both into a single object, with automatic help generation.

easyargs

Dead simple data-oriented argument parsing for Nim.

Development Tools >Static Analysis

DrNim

Combines the Nim frontend with the Z3 proof engine, in order to allow verify/validate software.

In 2 lists

nimalyzer

Static code analyzer for Nim, inspired by AdaControl.

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.

Nim Basics

Tutorial for beginners and people just starting with Nim.

Nim Style Guide

Status style guide for the Nim language.

Mastering Nim

A complete guide to the programming language.

Resources >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.

Resources >Community

The Nim forum

The Nim IRC channel

The Nim Gitter channel

The Nim Discord channel

The Nim mailing list (forum archive)

The Nim subreddit

The Nim Telegram

The Nim Telegram in Spanish

The Nim Matrix room

The official Matrix channel, where you can ask questions and get help from the community.

In 14 listsDetails

Resources >Tutorials

Nim Days

A project to document my journey with Nim with mini applications, libraries documented from A to Z and also to provide new Nim users with some extra in depth information.

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

Nim (formerly known as "Nimrod") is a compiled, garbage-collected systems programming language which has an excellent productivity/performance ratio. Nim's design focuses on efficiency, expressiveness, elegance (in the order of priority).

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.

nimNx

A Nintendo Switch Homebrew example project, written in Nim.

nimNxStatic

A static library example aiming to help integrate Nim code into the current Homebrew C projects for Nintendo Switch

Resources >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.

Nim Tutorials

YouTube video series that teaches how to program in Nim and goes over various standared libraries.

See category
94

Awesome OpenClaw Skills

VoltAgent/awesome-openclaw-skills

The awesome collection of OpenClaw skills. 5,400+ skills filtered and categorized from the official OpenClaw Skills Registry.🦞

Fresh★ 53k830 entriesPushed today
92

Awesome DeepSeek Harness (DSH) Plugin

awesome-dsh-plugin/awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Fresh★ 17k1654 entriesPushed today
91

Awesome Guidelines

Kristories/awesome-guidelines

Programming style, best practices, and coding conventions.

Fresh★ 11k166 entriesPushed 2 days ago
90

Awesome

sindresorhus/awesome

😎 Awesome lists about all kinds of interesting topics [NOTE: Pull requests are temporarily disabled until I have a chance to catch up with the existing ones]

Fresh★ 513k51 entriesPushed 28 days ago
90

Awesome Prompts

ai-boost/awesome-prompts

Curated list of chatgpt prompts from the top-rated GPTs in the GPTs Store. Prompt Engineering, prompt attack & prompt protect. Advanced Prompt Engineering papers.

Fresh★ 9k288 entriesPushed yesterday
90

Awesome README

matiassingers/awesome-readme

A curated list of awesome READMEs

Fresh★ 22k143 entriesPushed yesterday