Saltcorn 0.1.2 - Portable, Historical, Backed-up, Contained and Searchable

3 months ago

Saltcorn 0.1.2 contains a whole bunch of goodies:

Mac and Windows with SQLite: SQLite can now serve as the underlying database, which means that Saltcorn can easily be installed on almost any platform that supports nodejs and npm including macOS and Windows. As a pleasant side-effect, we also now support nodejs versions below 14. When you run `saltcorn setup` you will be asked whether you want a development or a server mode installation. Development mode will work almost anywhere. Server mode will only install on Debian and Ubuntu Linux. Other flavours of GNU/Linux may work but you have to set up the configuration file to connect to PostgreSQL. SQLite installations do not support multi-tenancy mode; this is the only known limitation as of now.

Row History can now be enabled for any table. This means that when a row is edited, a copy of the old row is stored. You can time-travel by restoring any previous copy. For instance, this is how Wikipedia can safely revert spam or inappropriate edits to individual pages. History browsing and restoration is currently limited to admins only and can be accessed through editing the table in the admin's view of the table. I'm still thinking of a good way to expose this functionality in a configurable way to non-admin users.

You can now Backup and restore a site - this is available to admin users under the Admin option under the settings menu. The backup format tries to be maximally useful in its own. It stores all data as CSV files inside a zip file, which also contains a JSON file for the site pack (`pack.json`) which you can use on its own to restore these site structure without the underlying data.

The page builder has a new widget, Containers. This is a flexible component which you can use to set image backgrounds and control height, border and alignment.

Users can now perform Global Full-text Searches, that is, search for a keyword across multiple tables. Admin users can configure which views are used to display the search results and in this way also control how links appear to the resources in the search results.