Awesome Lists

awesome-nim

by ringabout

awesome listNimpushed almost 2 years ago

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

AI summary

Nim framework directory

A curated collection of notable Nim language frameworks, libraries, and resources.

stars
1.2K
forks
71
watching
33
awesome list
1
entries
385
View on GitHub

Embed the badge

Show how many awesome lists link to your project. The count updates automatically.

Awesome Lists badge
Markdown
[![Awesome Lists Badge](https://awesome.facts.dev/shield/ringabout/awesome-nim/links.svg)](https://awesome.facts.dev/awesome/ringabout/awesome-nim)
HTML
<a href="https://awesome.facts.dev/awesome/ringabout/awesome-nim"><img src="https://awesome.facts.dev/shield/ringabout/awesome-nim/links.svg" alt="Awesome Lists Badge" /></a>
Image URL
https://awesome.facts.dev/shield/ringabout/awesome-nim/links.svg

What's in the list

385 links in 70 sections, with live GitHub stats.activeno commit in 2y

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

Language Features / Package Repositories

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

  • 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

  • mangle

    Attempt at a streaming library

Language Features / Macros

  • macroutils

    A package that makes creating macros easier

  • nimacros

    Documentation for Nim macros

  • unpack

    Sequence/object unpacking/destructuring

  • with

    The 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

System Tools / Backups

  • norg

    A portable wrapper for borg and restic

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

  • 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

  • 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

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

  • 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

  • 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

Data / Serialization

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

  • nesm

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

  • bingo

    Binary serialization framework for Nim

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

  • nimcrypto

    Nim cryptographic library

  • hashlib

    Hash library that contains almost all the hash functions for Nim

  • 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

  • xxhash.nim

    A wrapper for the xxhash hashing library in Nim

  • 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

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

  • NimCx

    Color and utilities for the Linux terminal

  • pager

    A simple command line pager library, written in Nim

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

  • NiGui

    A cross-platform, desktop GUI toolkit

  • 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

  • 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

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

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

HTML Parsers

  • Nimquery

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

HTTP Servers

  • httpbeast

    A highly performant, multi-threaded HTTP 1.1 server ( )

  • 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

Gemini Servers

  • Geminim

    A Gemini server

  • Nemini

    A very simple Gemini server for serving static gemtext files

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

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

Authentication

  • httpauth

    HTTP Authentication library for Nim

  • oauth

    OAuth library for Nim

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 Development / 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

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

  • 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

Development Tools / REPL

  • INim

    Interactive Nim Shell

  • jupyternim

    A Jupyter kernel for Nim

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

  • 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

Development Tools / Logging

  • chronicles

    A crafty implementation of structured logging for Nim

  • morelogging

    Logging library for Nim

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

  • 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

  • docopt.nim

    Command-line args parser

  • argparse

    Argument parsing for Nim

  • clapfn

    Argument parsing similar to Python's argparse

  • 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

Resources / Books

Resources / Blogs

Resources / Community

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

  • 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

  • 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

More related projects

Add a GitHub project

Missing a project or an awesome list? Paste its GitHub URL and we fetch it right away.