Veo que actualmente el progreso se guarda en localStorage, lo cual ya persiste entre sesiones del navegador. Sin embargo, si quieres que los datos se guarden en una base de datos real (para acceder desde otros dispositivos o no perderlos si se borra el cache), necesitarias conectar una base de datos.