A long-term client of mine will retire next year. He doesn’t want to maintain the site anymore, but wants some kind of archive of his site that will be compatible for as long as possible. The site won’t change from that point in time anymore. He basically won’t have the funds anymore when he’ll be retired. Is there something I can do to guarantee a long-term compatibility or can I just leave the site as is?
The Ember / in-browser parts are very likely to keep working for the long term. The only thing that would break them is if browser vendors deliberately choose to “break the web”, a thing they generally don’t do (although there have been some controversial exceptions). You will want to make sure you have backed up your actual deployed files, so that you don’t ever need to rebuild them. Alternatively, if you do want to be able to rebuild them in the far future, you’ll need to back up all the NPM packages yourself, and back up the version of Node, etc. It’s more complicated, and so it’s easier to just save the built files.
If you have an API server that returns JSON, you can just save all that json as files and put them in
/public, and have the Ember app load them from there.
Thank you very much for the extensive answer. I was also thinking about the lines of creating some kind of static version of the site, but didn’t even know where to start. I pretty much like the idea with a disabled backend that gets replaced by JSON files, and to keep the frontend as it is. If there will be some incompatible changes in either JS or HTML in the future in about a decade or so, then it will be how it will be.
Oh, one last idea: if you want entirely static HTML you can get that too with prember. Whether that is worth doing depends on how fastboot-compatible your existing app already is.