Silex Developer Guide
This document is a work in progress, we need your help, ask questions in the issues and add info here please
Here you will find useful documentation and links for customizing and extending Silex. It is the reference for those who host their own instance of Silex, integrated or not in their infrastructure. Interesting for web agencies or hosting companies or people willing to provide Silex to their community.
- How to Host An Instance of Silex
- How To Add Silex To Your Node.js Project
- Create templates for Silex
- Create Silex components
- Integrate Silex with your infrastructure
See the page How to Host An Instance of Silex for that
You will want to do that when you need to customize Silex a lot. If you want simple customizations, simply install Silex and use the env vars
Step by step guide: How To Add Silex To Your Node.js Project
Please refer to Create Silex components
Please refer to Create templates for Silex
Please refer to Integrate Silex with your infrastructure
Let's discuss it beforehand in the issues please, we will definitely help you get started.
These are the projects used in Silex and maintained by the same team:
- unifile, a nodejs library which provides a unified access to cloud services
- Stage, a stage component to add a drag and drop to your project
- Prodotype, Build components and generate a UI to make them editable in your app
- Resonsize, preview websites at different sizes
CloudExplorer, unifile and Prodotype are separate projects maintained by the same team. Force Silex to use your local local clones of these projects, use
$ cd path/to/CloudExplorer/ $ npm link $ cd path/to/Silex/ $ npm link CloudExplorer
Responsize is another project used by Silex and maintained by us. It is hosted on its own server and acts like a third-party service. When you will do a pull request and it gets merged, it will deploy on the server.
This API is available in the editor, you can add Silex to a new project and use Silex editor's API to create new features or customize Silex editor.
See Silex Editor API for more info on this topic
Usually you will want to customize Silex backend in order to add "cloud services" or "unifile services" which give your users the ability to read/write their site and assets from/to your servers. Or you may want your users to publish to your servers. Please read more about this in the page Silex for hosting providers.
Also you can add code to Silex server app which is a nodejs app and has many hooks. Unfortunately this is not documented yet, please ask the forum and help make a doc. In order to get you started, you can look at the stastic project which add routes, loads custom script on the front end etc.
Please create an issue when you start working and let us a chance to discuss it before hand
You need to manually test the behavior of your feature and its effect on the user's website
- In the editor
- Outside the editor in preview
- In the final published website