# Autosaving projects

I would like if projects were allowed to autosave as in Scratch because I just lost a bunch of custom blocks because my computer randomly restarted.

Well, would you look at that.
If there's no autosave, lost code is sure to happen.

It's amazing, what autosave does. It can save code without you ever having to go through the pain of losing code.

I want scratch style autosave and also local storage autosave if possible
because sometimes i dont have internet

Why do you want scratch style autosave specifically?

Things have changed since I made that reply long ago.

We now have two different kinds of autosave. Your edits since the last time you saved are backed up on your local computer. If you accidentally load another project over the one you're editing, there will be a "Restore unsaved project" option in the file menu. Also, you have to confirm overwriting a project with unsaved edits.

The other thing is that we keep a copy of your project as of yesterday (of whenever you're editing) and also the one save one before the last save, in the cloud. To access those, choose Open from the file menu and click Recover.

This is all explained on page 28 of the manual.

Never work for me...

Another solution is:
-Autosave at every x minutes (user define parameter)
-Ask user after this delay: Do you want to save your project ? "Save" "Save as" "No"

Could you try this experiment

Open a project
Re-arrange the scripts and remember the new arrangement
Do a File - new and create new blank project
Do File - Restore unsaved project

If I do this - I get my re-arranged project back

I'm using Win10/Vivaldi (Chrome based) browser

This is a brand new feature! You shouldn't expect it to have worked in the past.

We had three design goals in implementing autosaving:

1. We don't want a constant stream of save requests to our cloud server. We can't afford Google-width pipes.

2. We don't want to bother the user about autosaving. It should "just work."

3. Autosaving for disaster recovery is fundamentally different from saving because you've reached a stopping point in your work. The version of your project saved in the cloud should be exactly the version the last time you said to save. Google Docs and (lately) Scratch have this wrong; the right thing is what every other program (e.g., Word, Photoshop, Emacs, Excel) does.

We know that even the collection of autosave features we now have (including Undrop as well as the ones I listed above) aren't perfect. But we're getting there.

A few years ago a project needed autosave and used a tiny JavaScript function that calls rawSaveProject to implement a custom block. Then using a forever and wait block implemented an autosave.

If the main goal is to recover from crashes and the like then saving to the browser's local storage seems adequate.

Yes, this seems like what I want. Since I mostly work on Snap! while I am offline that seems to be a good idea.

edit: Whoops I forgot to say, yes I want it for the same purpose.

Sorry, it seems rawSaveProject is no longer how the latest version of Snap! does this. Someone else perhaps can provide an up-to-date alternative.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.