Here is a list of all topics with brief descriptions:
| Base | Base functionality |
| World | These functions allow you to create a simulation world |
| Recording | These functions allow you to record a simulation for later playback |
| Snapshot | Save and restore the full simulation state of a world as a byte image |
| Body | This is the body API |
| Shape | Functions to create, destroy, and access shapes |
| Chain | Chain shapes allow you to create a polygonal chain that is resistant to ghost collisions |
| Joint | Joints allow you to connect rigid bodies together while allowing various forms of relative motion |
| Distance Joint | Functions for the distance joint |
| Filter Joint | Functions for the filter joint |
| Motor Joint | Functions for the motor joint |
| Mover Joint | Functions for the mover joint |
| Pogo Joint | Functions for the pogo joint |
| Prismatic Joint | A prismatic joint allows for translation along a single axis with no rotation |
| Revolute Joint | A revolute joint allows for relative rotation in the 2D plane with no relative translation |
| Weld Joint | A weld joint fully constrains the relative transform between two bodies while allowing for springiness |
| Wheel Joint | The wheel joint can be used to simulate wheels on vehicles |
| Contact | Access to contacts |
| Replay | These functions allow you to replay a recorded simulation |
| Geometry | Geometry types and algorithms |
| Distance | Functions for computing the distance between shapes |
| Collision | Functions for colliding pairs of shapes |
| Dynamic Tree | The dynamic tree is a binary AABB tree to organize and query large numbers of geometric objects |
| Character mover | Character movement solver |
| Constants | Constants |
| Ids | These ids serve as handles to internal Box2D objects |
| Math | Vector math types and functions |
| Events | World event types |
| Debug Draw | |