updated README
This commit is contained in:
parent
e028344b97
commit
d63b3f212e
17
README.md
17
README.md
|
@ -8,13 +8,20 @@ It uses a javascript loader file, which loads plugins over the internet. This me
|
||||||
just serving static files, but we implemented our server code, which does one more trick. The plugin is loaded at the touch of "edit" button
|
just serving static files, but we implemented our server code, which does one more trick. The plugin is loaded at the touch of "edit" button
|
||||||
and that is it.
|
and that is it.
|
||||||
|
|
||||||
|
## Running
|
||||||
|
Set the linked volume in `docker-compose.yml` to where you have your plugins directory. Then run the following command.
|
||||||
|
```bash
|
||||||
|
docker-compose -f docker-compose.yml up -d
|
||||||
|
```
|
||||||
|
This will make the application available on `0.0.0.0:8085`.
|
||||||
|
|
||||||
## Plugin
|
## Plugin
|
||||||
|
|
||||||
Every plugin is a folder which is located where the server code is run from. A plugin consists of config.json file and any other file
|
Every plugin is a folder which is located where the server code is run from. A plugin consists of config.json file and any other file
|
||||||
you want. config.json instructs plugin loader which files to load. Currently we support three keys in config.json:
|
you want. config.json instructs plugin loader which files to load. Currently we support three keys in config.json:
|
||||||
|
|
||||||
1. javascript: list of javascript files, local files have to be written as: `"$LOCATION$/file.js"
|
1. javascript: list of javascript files, local files have to be written as: `"$LOCATION$/file.js"`
|
||||||
2. css: list of css stylesheets, local css have to be written as: `"$LOCATION$/file.js"
|
2. css: list of css stylesheets, local css have to be written as: `"$LOCATION$/file.js"`
|
||||||
3. global: key-value list of `{'name': file}` - content of a file is stored in global variable name in browser javacsript. Same rule as above applies to local files.
|
3. global: key-value list of `{'name': file}` - content of a file is stored in global variable name in browser javacsript. Same rule as above applies to local files.
|
||||||
|
|
||||||
Everytime you want to access local plugin files in javascript, css or wherever, you prepend `$LOCATION$/` to the url. The plugin server takes care, that correct url is generated. This settings is found in `URL` value in server python code.
|
Everytime you want to access local plugin files in javascript, css or wherever, you prepend `$LOCATION$/` to the url. The plugin server takes care, that correct url is generated. This settings is found in `URL` value in server python code.
|
||||||
|
@ -27,14 +34,14 @@ plugin_render(div, entry)
|
||||||
plugin_save(div)
|
plugin_save(div)
|
||||||
```
|
```
|
||||||
|
|
||||||
# Usage
|
## Lexonomy Entry Editor Settings
|
||||||
|
|
||||||
To use it, you must first paste the [javascript loader](plugin-loader.js) into custom entry editor section of Lexonomy configuration.
|
To use it, you must first paste the [javascript loader](plugin.js) into custom entry editor section of Lexonomy configuration.
|
||||||
Next, set correct url of your plugin. In order to work, the plugin must be accessible over HTTPS, if Lexonomy already runs on https.
|
Next, set correct url of your plugin. In order to work, the plugin must be accessible over HTTPS, if Lexonomy already runs on https.
|
||||||
In order to run a server, you need to run a default redis server and have these python packages installed: flask and redis.
|
In order to run a server, you need to run a default redis server and have these python packages installed: flask and redis.
|
||||||
Then you can run [flask server](plugin-server.py) on a server.
|
Then you can run [flask server](plugin-server.py) on a server.
|
||||||
|
|
||||||
## Example
|
### Example
|
||||||
|
|
||||||
Let's say you are hosting plugins on lexonomyplugins.example.com and that there is a plugin (a folder) called myplugin in `CWD/plugins/` of the server python process. You need to set:
|
Let's say you are hosting plugins on lexonomyplugins.example.com and that there is a plugin (a folder) called myplugin in `CWD/plugins/` of the server python process. You need to set:
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
{
|
{
|
||||||
plugin: 'vsms',
|
plugin: 'vsms-py-v4.1',
|
||||||
url: '//plugins.lexonomy.cjvt.si',
|
url: '//plugins.lexonomy.cjvt.si',
|
||||||
editor: function(div, entry, uneditable) {
|
ske_gdex: ["Hungarian-bilingual-v1", 300],
|
||||||
|
editor: function(div, entry, uneditable) {
|
||||||
$(div).append('<p><span id="load-pre-status">INIT</span><span id="load-status"></span></p>');
|
$(div).append('<p><span id="load-pre-status">INIT</span><span id="load-status"></span></p>');
|
||||||
var progress_ctr = 2, config = null;
|
var progress_ctr = 2, config = null;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user