A concise 2D implementation of Müller's "Particle-Based Fluid Simulation for Interactive Applications" (SPH) paper in C++
See here for a more recent implementation in Rust including a parallel solver
Please see the accompanying tutorial for more information.