Description
Suggestion: Allow users to define custom JavaScript commands in the interface, allowing for a wide range of functionality to be developed and shared.
Current problem: I have a number of features I would like to see in the interface, such as being able to easily see the changes of a given snapshot, or browsing the history of a given file. Other users have other needs.
We can run commands, yes, but many people like UIs. We could implement such features in JavaScript quite easily.
We can imagine two levels of complexity:
1) On the simplest level, this would be an additional "Run custom script" button next to "Backup now / Run Command / Unclock Repo / Clear Error History".
Pressing this button opens a text field for typing in JavaScript to be executed. There will be a is a well-defined JavaScript function for running Restic commands and receiving the output, and a well-defined function for outputting results to the user. This would make it trivial to - for example - share a script that shows the changes in the latest snapshot.
2) On the next level, UI hooks would allow for making a UI for registering custom scripts that can be activated - for example - with their own button next to a file when browsing a snapshot. This would make it easy to develop a file version functionality, for example.
In short, this is a modest undertaking that complements the existing post-script hook functionality and allows users to easily develop and share the UI functionality that they need.
Thanks for a great program!