Fork me on GitHub

Efficient and expressive programming.

Nim is a systems and applications programming language. Statically typed and compiled, it provides unparalleled performance in an elegant package.

  • High-performance garbage-collected language
  • Compiles to C, C++ or JavaScript
  • Produces dependency-free binaries
  • Runs on Windows, macOS, Linux, and more
# Compute average line length
var
  sum = 0
  count = 0

for line in stdin.lines:
  sum += line.len
  count += 1

echo("Average line length: ",
     if count > 0: sum / count else: 0)

Recent articles

Advent of Nim

Saturday December 1st at 5 a.m. UTC will mark the start of the fourth incarnation of Advent of Code, popular programming contest started back in 2015. The author describes Advent of Code (AoC) as “a series of small programming puzzles for a variety of skill sets and skill levels in any programming language you like”.

Nim Community Survey 2018 Results

We have recently closed the 2018 Nim Community Survey. I am happy to say that we have received exactly 771 responses, huge thanks to all the people that took the time to respond. We’re incredibly thankful for this very valuable feedback.

All articles

Featured projects

Karax

SPA framework

Karax is a framework for developing single page applications in Nim. Leverage Nim's macro system to produce a framework that allows for the development of applications that are boilerplate free.

Reel Valley

Game

Reel Valley is a unique and highly entertaining game with gorgeous graphics. It mixes Slots with a City Builder.

Nimbus

Ethereum client

Nimbus aims to be a sharding client for Ethereum 2.0 Blockchain. Ethereum will potentially be on embedded systems, Nimbus will be designed to perform well on IoT and personal mobile devices.

Looking for the GitHub repository?

The Nim compiler and tools are all written in Nim and licensed under the MIT license, with most development taking place on GitHub. Be sure to watch the repository to get updates on Nim's development, or star it to give us some brownie points.

Now available.

The first Nim book, Nim in Action, is now available for purchase as an eBook or printed soft cover book.* Learn the basics such as Nim's syntax and advanced features including macros, and gain practical experience with the language by being led through multiple application development examples.

  • Teaches the basics including the syntax of Nim.
  • Explains how to use the Nimble package manager.
  • Includes step-by-step instructions and explanations of how to develop various applications, including a chat program, a Twitter clone and more.

* Printed soft cover book is out now!

Learn more

Support Nim

Join the 100+ companies and individuals that support Nim

The Nim project is developed globally by a group of volunteers. We welcome recurring donations, which enable us to spend more time working on Nim.

Top sponsors

See more

Community

Forum

Threaded communication

forum.nim-lang.org

GitHub issues

Bug reports

nim-lang/Nim

Twitter

Announcements

@nim_lang

Learn Nim today

Build command-line applications, games, web servers, kernels and everything else in between. Nim has a low barrier to entry and offers powerful features you won't find in many mainstream programming languages.