This directory contains complete API references for all NanoLang modules, automatically generated from the module source code using the compiler's reflection capabilities.
Standard Library
- log - Structured logging with log levels (TRACE, DEBUG, INFO, WARN, ERROR, FATAL)
- coverage - Code coverage tracking and reporting
- StringBuilder - Efficient string building and manipulation
- ~~regex~~ - Regular expression support *(documentation pending)*
SDL Family (Graphics & Audio)
- sdl - SDL2 bindings for window management, rendering, and input
- sdl_image - SDL_image for loading various image formats
- sdl_mixer - SDL_mixer for audio playback
- sdl_ttf - SDL_ttf for TrueType font rendering
Terminal
- ncurses - Terminal UI library for creating text-based interfaces
Network
- curl - HTTP client using libcurl
- http_server - Simple HTTP server
- uv - libuv bindings for async I/O and event loop
Data
- sqlite - SQLite database bindings
Graphics
- opengl - OpenGL bindings for 3D graphics
- glew - GLEW for OpenGL extension loading
- glfw - GLFW for window and input management
- glut - GLUT for simple OpenGL applications
Physics
- bullet - Bullet Physics engine bindings
Utilities
- filesystem - File system operations
- preferences - User preferences management
- event - Event handling system
- vector2d - 2D vector math
- proptest - Property-based testing framework
---
About This Documentation
These API references are generated automatically using the NanoLang compiler's --reflect flag and a **NanoLang-based generator**, which extracts complete module metadata including:
- Function signatures with parameter types
- Struct definitions with field information
- Enum variants
- Union types with variants
- Opaque types (C pointer types)
- Module constants
To regenerate this documentation:
perl -e 'alarm 60; exec @ARGV' ./bin/nanoc scripts/generate_module_api_docs.nano -o build/userguide/generate_module_api_docs
bash scripts/generate_all_api_docs.sh
Last updated: 2026-01-18