Nim nim-lang

Open-source Nim projects categorized as nim-lang

Top 23 Nim nim-lang Projects

  • mosdepth

    fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing

  • Project mention: Calculating Average Coverage or Read Depth for a Sequence (WES) | /r/bioinformatics | 2023-06-24
  • INim

    Interactive Nim Shell / REPL / Playground

  • Project mention: Nim | news.ycombinator.com | 2023-12-06

    - `nim secret`[0]: code is interpreted with Nim's vm, it is limited to compile-time (e.g. no C/C++).

    - `nlvm r`[1]: nlvm backend supports JIT compilation and repl-like interface was added in latest release.

    - `inim`[2]: supports all nim code, but it's not really a true repl. It adds code to a file and recompiles it (you can see the source file with `ctrl+x`). I'd recommend to use it with clang compiler, because it's a bit faster than gcc in my experience. It's the best option right now. And I use it almost daily.

    First two options have rudimentary input system. But you can get command history and left-right navigation by wrapping them with rlwrap (should be preinstalled on most *nixes): `rlwrap nim secret`, `rlwrap nlvm r`.

    There are plans to support incremental compilation for the next Nim release (it is currently broken). That would improve inim and other repls experience significantly.

    [0]: https://nim-lang.org/docs/manual.html#restrictions-on-compil...

    [1]: https://forum.nim-lang.org/t/10697

    [2]: https://github.com/inim-repl/INim

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • moe

    A command line based editor inspired by Vim. Written in Nim.

  • nimbus-eth1

    Nimbus: an Ethereum Execution Client for Resource-Restricted Devices

  • illwill

    A curses inspired simple cross-platform console library for Nim

  • Project mention: How to detect and even save key presses | /r/nim | 2023-05-18

    smth more advanced than getch: https://github.com/johnnovak/illwill https://forum.nim-lang.org/t/6919

  • norm

    A Nim ORM for SQLite and Postgres (by moigagoo)

  • Project mention: Nim v2.0 Released | news.ycombinator.com | 2023-08-01

    Congratulations to everyone involved and the entire Nim community!

    Nim has been my language of choice for the past decade and I'm really happy with the new features in Nim 2.0. Some of them are real gamechangers for my projects. For example, default values for objects theoretically allow me to make Norm[1] work with object types along with object instances. And the new overloadable enums is something Karkas [2] wouldn't be possible at all (it's still WIP though).

    [1] https://norm.nim.town

    [2] https://karkas.nim.town

  • gintro

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

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Neel

    A Nim library for making Electron-like HTML/JS GUI apps, with full access to Nim capabilities.

  • nodejs

    Alternative StdLib for Nim for NodeJS/JavaScript targets, hijacks NodeJS StdLib for Nim (by juancarlospaco)

  • nimpylib

    Some python standard library functions ported to Nim

  • ggplotnim

    A port of ggplot2 for Nim

  • Project mention: Chinchilla Scaling: A Replication Attempt | news.ycombinator.com | 2024-04-19

    That is certainly true (and why added a general "embed plot data as bitmap into SVG/PDF" option to https://github.com/Vindaar/ggplotnim that works not only for raster heatmaps). But realistically such plots are often not ideal anyway (too many data points in a plot is often a sign that a different type of plot would be better; typically one that aggregates in some way) and it's just another argument to make the data for plots available as well.

  • nimja

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

  • Project mention: nimja VS happyx - a user suggested alternative | libhunt.com/r/nimja | 2023-05-24
  • nim-plotly

    plotly wrapper for nim-lang

  • naylib

    Yet another raylib Nim wrapper

  • nimview

    A Nim/Webview based helper to create Desktop/Server applications with Nim/C/C++ and HTML/CSS

  • itertools

    Nim rewrite of a very popular Python module of the same name. (by narimiran)

  • webgui

    Web Technologies based Crossplatform GUI Framework with Dark theme (by juancarlospaco)

  • Datamancer

    A dataframe library with a dplyr like API

  • cosmonim

    A Nim template to compile your code with the Cosmopolitan libc

  • Project mention: D Programming Language | news.ycombinator.com | 2023-12-03

    In a word, yes.

    In more words: You should be able to use Cosmopolitan libc: https://github.com/Yardanico/cosmonim

    If something does not work for you, Yardanico is super duper helpful in all things Nim.

    Nim also compiles to Javascript (nim js) and C++ for integration with legacy codebases, but that is probably more to the side of your interests.

  • npainter

    fast and simple digital painting software

  • Unchained

    A fully type safe, compile time only units library. (by SciNim)

  • Project mention: GNU Units | news.ycombinator.com | 2023-08-03

    Anything with a finite (200 is small even) number of units misses the algebraic structure of the problem mentioned in https://news.ycombinator.com/item?id=36988497 wherein multiplying|dividing two things gives you a (potentially) new unit which implies an open ended "space" of units.

    To be concrete (hah!), in C++ a template meta-type with 12 signed integer parameters (6 numerators & 6 denominators for rational exponents of SI base units) might be one way to model it.

    Unlike C++ template stuff, Nim macros (like Lisp macros) makes metaprogramming more like procedural programming - just against abstract syntax trees. I think that helps to shield some of this type complexity from users, but the documentation README https://github.com/SciNim/Unchained does better job than I can in an HN comment.

    Of course, for unit system conversion, the number of dimensions (6 in SI, 3 in CGS/Gaussian) changes. So, for full generality you need compile-time (if you want static type integration/CT errors) linear algebra over a rational field (at least & conventionally) to project|inverse project. That might be theoretically possible in C++. I would think it very un-fun and unlikely to ever have been done. There's probably a Mathematica package, though.

  • nim-webui

    Use any web browser as GUI, with Nim in the backend and HTML5 in the frontend.

  • domainim

    A fast and comprehensive tool for organizational network scanning

  • Project mention: Domainim: A fast and comprehensive tool for organizational network scanning | news.ycombinator.com | 2023-12-28
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-04-19.

Nim nim-lang related posts

Index

What are some of the best open-source nim-lang projects in Nim? This list will help you:

Project Stars
1 mosdepth 652
2 INim 625
3 moe 600
4 nimbus-eth1 551
5 illwill 371
6 norm 366
7 gintro 289
8 Neel 220
9 nodejs 194
10 nimpylib 182
11 ggplotnim 175
12 nimja 168
13 nim-plotly 168
14 naylib 154
15 nimview 149
16 itertools 131
17 webgui 130
18 Datamancer 122
19 cosmonim 116
20 npainter 115
21 Unchained 104
22 nim-webui 104
23 domainim 82
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com