.. | ||
main.js | ||
package.json | ||
README.md |
Simple Enso Library Server
A simple server for hosting custom Enso library repositories.
Usage
You need Node.JS to use this version of the server.
To install the dependencies, run npm install
in the root directory of the
application. Then you can run the main.js
file to start the server. See
./main.js --help
for available commandline options.
Repository structure
When launching the server, you need to provide it with a directory that is the
root of the server. This directory should contain a libraries
directory or
editions
directory (or both). Each of them should have the directory structure
as described in the Enso documentation.
For example, the root directory may look like this:
root
├── libraries
│ ├── Foo
│ │ └── Bar
│ │ ├── 1.2.3
│ │ │ ├── meta
│ │ │ │ ├── preview.png
│ │ │ │ └── icon.png
│ │ │ ├── main.tgz
│ │ │ ├── tests.tgz
│ │ │ ├── LICENSE.md
│ │ │ ├── package.yaml
│ │ │ └── manifest.yaml
│ │ └── 1.2.4-SNAPSHOT.2021-06-24
│ │ └── ... # Truncated for clarity
│ └── Standard
│ ├── Base
│ │ └── 1.0.0
│ │ └── ...
│ └── Table
│ └── 1.0.0
│ └── ...
└── editions
├── manifest.yaml
├── 2021.1.yaml
├── foo.yaml
└── bar.yaml
Then to add this repository as an edition provider you can append
http://hostname:port/editions
to the edition-providers
field in
global-config.yaml
.
To use libraries from this repository, the editions should define the repository
with URL http://hostname:port/libraries
.