Nox

Tutorial

11. Next steps

You now know the shape of Nox: static types with Python's syntax, functions and classes, collections, errors, modules, tasks and a web server. Where to go from here depends on what you want to build.

Read the reference#

Build something#

  • Command-line tools: nox.os (arguments, environment), nox.fs, nox.path, nox.process, nox.console, nox.log.
  • Web services: nox.http, nox.router, nox.json, nox.validate, nox.template, databases, and the Nyx framework.
  • Data processing: nox.collections, nox.regex, nox.csv, nox.yaml, nox.toml, nox.binary.
  • Systems work: fixed-width integers, ptr[T], lowlevel, freestanding builds for kernels, and extern def to call C.

Extend Nox itself#

Nox has three stable ways to connect with the outside world, described in The three APIs:

  • the Nox API — what library and framework authors can rely on in Nox source code;
  • the Nox Native Interface — a C ABI for native extensions in C, C++, Rust or Zig;
  • the Plugin API — manifests, versioning and capability consent on top of NNI.

Tools#

noxc does everything: check, build, run, test, fmt, init, add, fetch, publish, upgrade. There is an LSP server and editor support (Editors), and a package registry at noxpkg.

Get involved#

The compiler and runtime are written in Zig and open source. Contributing explains the layout, the test suites and how a change reaches a release; Architecture describes how the compiler works.