# @silexlabs/silex-directus-storage

> Directus storage connector for Silex website builder

Latest version **0.0.10** (published 2023-08-09) · AGPL-3.0-or-later license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install @silexlabs/silex-directus-storage
pnpm add @silexlabs/silex-directus-storage
yarn add @silexlabs/silex-directus-storage
bun add @silexlabs/silex-directus-storage
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 0.0.10 |
| Published | 2023-08-09 |
| First published | 2023-08-07 |
| Weekly downloads | 0 |
| License | AGPL-3.0-or-later |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 20.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | lexoyo |
| Maintainers | jbips, lexoyo |
| Keywords | silex, plugin, foss |

## Links

- npm: https://www.npmjs.com/package/@silexlabs/silex-directus-storage
- Repository: https://github.com/lexoyo/silex-directus-storage
- Homepage: https://github.com/lexoyo/silex-directus-storage#readme
- Issues: https://github.com/lexoyo/silex-directus-storage/issues
- npm.io page: https://npm.io/package/@silexlabs/silex-directus-storage

## Dependencies (3)

- [form-data](https://npm.io/package/form-data.md) ^4.0.0
- [node-fetch](https://npm.io/package/node-fetch.md) ^2.6.12
- [@directus/sdk](https://npm.io/package/@directus/sdk.md) ^11.0.1

## Recent versions

- 0.0.10 (latest) — 2023-08-09
- 0.0.9 — 2023-08-09
- 0.0.8 — 2023-08-08
- 0.0.7 — 2023-08-08
- 0.0.6 — 2023-08-08
- 0.0.5 — 2023-08-08
- 0.0.4 — 2023-08-07

## README

# Directus plugin for Silex website builder

> This code is part of a bigger project: [Silex v3](https://www.silex.me/) which aims to be a free/libre alternative to webflow
> For bugs and support please [start a discussion here](https://community.silex.me)

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:

![Silex prompt for login with directus](https://github.com/silexlabs/Silex/assets/715377/358bdf58-e5fb-4245-9130-856ad34ae7df)

Login to Silex with directus credentials:

![Login to Silex with directus credentials](https://github.com/silexlabs/Silex/assets/715377/5f58e396-0b66-4b47-adc6-165561a2c056)

User website is saved in a directus collection:

![User website is saved in a directus collection](https://github.com/silexlabs/Silex/assets/715377/5831ae1a-ad66-4939-bd89-9c4930019776)

> Note that the login screen will include a `host` filed if you do not set the `directusUrl` in the options

## **Setup**

1. **Installation**: 
   Install the Directus connector for Silex.
   ```
   npm install @silexlabs/silex-directus-storage
   ```

2. **Configuration**:-
   In your Silex configuration file, require and configure the Directus connector as shown below:

   ```javascript
   // 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](https://docs.silex.me/en/dev/config).

3. **Start Silex**:
  ```
  silex --config='path/to/config.js`
  ```

4. **Open Silex and use it with Directus**
  Go to http://localhost:6805 and click "login with Directus"


Certainly! Here's a refined version:

## **Configuration Options for Directus Connector**

These options allow you to tailor the Directus connector to best fit your workflow with Silex.

1. **`collection`**: 
   - **Description**: Specifies the collection name within Directus where Silex websites will be stored.
   - **Default**: `silex`

2. **`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.

3. **`directusUrl`**: 
   - **Description**: Defines the URL of the Directus instance.
   - **Default**: None. If not provided, the user will be prompted to enter one.

---
_Source: https://npm.io/package/@silexlabs/silex-directus-storage · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
