one emitter, many short lives
A particle system spawns many short-lived sprites from one emitter and a handful of numbers: emission rate, lifetime, direction spread, speed, gravity and drag. Each particle also changes size and opacity over its own life. The sparks, smoke and confetti here are the same code with different numbers.
Build this as a particle system: one emitter with tunable emission rate, lifetime range, direction spread, initial speed range, gravity and drag, size and opacity curves over each particle's life, and particles taken from a fixed preallocated pool.