A WebGL-based game engine and editor ecosystem for creating pixel-art games.
This monorepo contains the following packages:
| Package | Description |
|---|---|
pixospritz-core |
Core WebGL game engine |
pixoscript |
Lua-inspired scripting language |
pixospritz-math |
Math utilities (vectors, matrices) |
pixospritz-editor |
Visual development tools |
pixospritz-console |
Web game player |
pixospritz-server |
WebSocket multiplayer server |
pixospritz-website |
Documentation website |
pixospritz-assets |
Shared game assets |
- Node.js >= 18.0.0
- npm >= 9.0.0
# Clone the repository
git clone https://github.com/ConflictingTheories/calliope-pixos.git
cd calliope-pixos
# Install all dependencies
npm install# Start the editor
npm run dev:editor
# Start the console player
npm run dev:console
# Start the multiplayer server
npm run start:server# Build all packages
npm run build
# Build individual packages
npm run build:core
npm run build:script
npm run build:editor
npm run build:consolecalliope-pixos/
├── packages/
│ ├── core/ # pixospritz-core - Game engine
│ ├── script/ # pixoscript - Scripting language
│ ├── math/ # pixospritz-math - Math utilities
│ ├── editor/ # pixospritz-editor - Development tools
│ ├── console/ # pixospritz-console - Game player
│ ├── server/ # pixospritz-server - Multiplayer server
│ ├── website/ # pixospritz-website - Documentation
│ └── assets/ # pixospritz-assets - Shared assets
├── package.json # Root workspace configuration
└── README.md
- WebGL2 rendering with custom shaders
- Sprite and tileset management
- Isometric and 2D map support
- Entity/Actor system with pathfinding
- Event system (keyboard, mouse, touch, gamepad)
- Audio engine with BPM analysis
- Cutscene player with DSL
- Sprite Editor with animation support
- Tile Editor with collision data
- Map Editor with multiple layers
- Cutscene scripting tools
- 3D model viewer (OBJ/MTL)
- Monaco-based script editor
- Lua-compatible syntax
- Game-specific extensions
- Hot-reloading support
CC-BY-NC-SA-4.0