This code is part of a bigger project: Silex v3 which aims to be a free/libre alternative to webflow
For bugs and support please start a discussion here
This plugin is a connector to integrate Silex with Directus, enabling users to store their websites and assets in their Directus account.
Silex prompt for login with directus:
Login to Silex with directus credentials:
User website is saved in a directus collection:
Note that the login screen will include a
host
filed if you do not set thedirectusUrl
in the options
-
Installation: Install the Directus connector for Silex.
npm install @silexlabs/silex-directus-storage
-
Configuration:- In your Silex configuration file, require and configure the Directus connector as shown below:
// In config.js const DirectusStorage = require('@silexlabs/silex-directus-storage') module.exports = (config, opts) => { config.addStorageConnector(new DirectusStorage(config, { collection: 'silex', useHistory: false, directusUrl: 'http://localhost:8085', })) }
For more details on configuring Silex, refer to the official Silex documentation.
- Start Silex:
silex --config='path/to/config.js`
- Open Silex and use it with Directus Go to http://localhost:6805 and click "login with Directus"
These options allow you to tailor the Directus connector to best fit your workflow with Silex.
-
collection
:- Description: Specifies the collection name within Directus where Silex websites will be stored.
- Default:
silex
-
useHistory
:- Description: Determines how Silex saves website versions.
- Default:
true
.- When
true
: Silex saves the website within the same item, enabling the use of the "Revisions panel". This allows for easy reversion to previous versions. - When
false
: Each "save" in Silex creates a new item. This approach offers a clear view of all versions and facilitates their individual editing or deletion. However, reverting to a previous version requires deleting newer revisions, unlike the straightforward revert process with the revisions panel.
- When
-
directusUrl
:- Description: Defines the URL of the Directus instance.
- Default: None. If not provided, the user will be prompted to enter one.