I needed a dirty and fast physics simulation at work, so I made one. The idea was simply to simulate crates and to optimise the whole deal using a hash map (my take on the hash map is a bit different to most, but easier to debug and move things within it). I basically needed lots and lots of crates.
In this quick demo, you can click to drop a new crate in. If you click on an existing crate you can drag it about. If the new crate is overlapping it will float to the top.
Press space bar (when it's focused) to create a shockwave and knock some crates about.
You can also use w,a,s,d to move the last crate spawned around (this was for debugging).
The source is all up on github.