Local storage might be a lifesaver here. Just in case someone forgets to save offer auto recovery. This can be done client side with no server costs.
In the case of auto-save, there's a lot of unsettled design trade-offs, and other needs keep coming up. But if you're curious, you're welcome to check out the GitHub: snap-cloud/snapCloud is the backend, and jmoenig/snap is the main IDE.