API Reference
Core Packages
Below you’ll find links to the complete API documentation for all components of the Bappa Framework. All documentation is generated using Go’s standard documentation tool and hosted on pkg.go.dev.
Blueprint
Blueprint is the core component definition package for the Bappa Framework.
Sub-packages
- blueprint/client - Client-side rendering and asset management
- blueprint/input - Input handling and management
- blueprint/motion - Physics and movement components
- blueprint/spatial - Positioning and collision components
- blueprint/vector - Vector mathematics utilities
Coldbrew
Coldbrew is the main client-side engine package, handling rendering, input, scene management, and camera control.
Sub-packages
- coldbrew/clientsystems - Common client-side systems
- coldbrew/rendersystems - Rendering systems
Warehouse
Warehouse provides entity storage, archetype management, and query functionality for the ECS architecture.
Tteokbokki
Tteokbokki implements physics and collision detection systems.
Sub-packages
- tteokbokki/motion - Physics simulation
- tteokbokki/spatial - Collision detection
- tteokbokki/coresystems - Integration systems for physics
Infrastructure Packages
These packages provide low-level functionality used by the core Bappa packages:
- Table - Efficient data storage optimized for game objects
- Mask - Bitmasking utilities for component filtering
Tools
BappaCreate
BappaCreate is a template generator tool for quickly bootstrapping new Bappa game projects. For installation and usage instructions, see the Getting Started Guide.
API Usage Examples
For practical examples of how to use these APIs in different contexts, visit the Examples section of this documentation.
Version Compatibility
The Bappa Framework maintains compatibility between all its core packages within the same version range. When updating one package, it’s recommended to update all Bappa packages to the same version to ensure compatibility.