Welcome to BambooBasic!
BambooBasic is a modern BASIC programming language inspired by BlitzBasic. It provides a simple yet powerful environment for creating applications, games, and utilities.
Getting Started
To create your first program:
- File > New - Create a new BambooBasic file
- Write your code in the editor
- Build > Build and Run (F5) - Compile and run your program
Windows Users: To prevent false positives from Windows Defender, see
Windows Defender Exclusions for setup instructions.
Documentation
- Making Your First Game - Step-by-step tutorial building a complete game
- Language Reference - Variables, functions, control flow, and more
- Runtime Commands - Graphics, audio, input, networking, and file I/O
- BGI Designer - Visual GUI designer and automatic event dispatching
- IGI, the In-Game GUI - Menus, HUDs and debug panels drawn over your game, styled your way (Dear ImGui)
- Custom Shaders - Image shaders, screen shaders, and the shader compiler
- Palette Cycling - Indexed colour and self-animating images, explained from scratch
- Building for the Web - Compiling to WebGPU, the web loop, and desktop vs web differences
- 3D in 2D - Render real 3D with the 2D commands (depth buffer + quads), with a spinning-cube example
- Debugger - Using the integrated debugger
- AI Assistant - Ask Claude about your code, fix build errors, and let it edit your files
- Examples - Browse the example programs
Note: The runtime reference was created using AI, it scanned the entire library, but, if you do spot any oddities, then please let me know.
Resources
Features
- Modern BASIC syntax with classes and custom types
- Import system for DLL integration
- DirectX 12 2D graphics engine with a per-pixel depth buffer for real 3D-in-2D
- 2D overlay system with sprites, animations, and text rendering
- Palette cycling and indexed-colour images
- Custom HLSL shader support (image, text, and screen shaders)
- Built-in audio playback (WAV, OGG, MP3)
- Network support (TCP/UDP)
- File operations and string handling
- Visual GUI designer (BGI) with automatic event dispatching
- Integrated debugger with breakpoints and variable inspection
- Syntax highlighting and auto-completion in the editor
- Fast compilation to native executables
Third-Party Libraries
BambooBasic uses the following excellent open-source libraries:
- SoLoud Audio Engine - Easy to use, free, portable audio engine (zlib/libpng license)
- miniz - Single C source file zlib-replacement library (MIT license)
- wxWidgets - Cross-platform GUI toolkit (wxWindows Library Licence)
BambooBasic © 2026 Michael Denathorn