Skip to content

Nuwa Logo

Welcome to Nuwa

Nuwa is the open source toolkit for building Python extensions in Nim. It handles the code (SDK), the compilation (Build), and the distribution (CI/CD) so you don't have to.

Live docs: this site. Source: nuwa-build. Support matrix: tested platforms and versions.

Why Nim?

Nim combines the performance of C with the elegance of Python. It's perfect for building high-performance Python extensions:

  • C-like performance without the complexity
  • Python-like syntax that's easy to write and read
  • Zero-cost abstractions and efficient memory management
  • Easy Python interop via nimpy

Projects

Nuwa Build

Zero-configuration build system for compiling Nim code into Python extensions.

Nuwa SDK

Python interoperability utilities for building high-performance extensions.

Nuwa Build Action

GitHub Action for automated wheel building across platforms.

Examples

The clone-and-build starter is nuwa-example. A larger library (Featuristic) is being ported on a GitHub nim branch and is not released.

Quick Start

# Install
pip install nuwa-build
# CPython 3.10+ and a Nim compiler on PATH

# Create a new project
nuwa new my_project
cd my_project

# Build and run
nuwa develop
python example.py

Getting Started

Select a project from the navigation menu or visit the Nuwa Build documentation to get started.