Getting Started
Source Code
The source code is hosted at https://github.com/opencloud-eu/web.
Installation
To install and setup the Web client on your local machine, please refer to the development setup docs.
Configuration
Web can be configured using a configuration file in json format. This is completely optional, as default settings are used when no configuration file is provided. You need to tell the server where to find a custom configuration file via the WEB_UI_CONFIG_FILE environment variable.
Below is a detailed overview of all available configuration options.
server
Specifies the server URL, e.g. https://host.docker.internal:9200.
theme
Specifies the URL for the theme to be loaded, e.g. https://host.docker.internal:9200/themes/opencloud/theme.json.
apps
Controls the Web apps to be loaded. This is not for adding external apps, but for specifying which of the internal apps that are shipped with Web should be loaded. Expects a list of strings, e.g.:
[
"files",
"text-editor",
"pdf-viewer",
"search",
"external",
"admin-settings",
"epub-reader",
"app-store",
"preview"
]
openIdConnect
The Web client forwards all configuration options under openIdConnect to the oidc-client-ts library. Setting the following 3 options however won't have any effect, as they get discovered automatically via the /.well-known/webfinger endpoint:
client_idscopeauthority
See the oidc-client-ts documentation for information on the available configuration options for the library.
customTranslations
Specify custom translations to overwrite existing ones. Expects an array of objects that specify a url attribute, like [{url: "https://host.docker.internal:9200/customTranslations.json"}].
styles
Additional CSS files to further customize the user experience and adapt it to your specific needs. Expects an array of objects that specify a href attribute, pointing to the path/URL of your stylesheet, like [{ "href": "css/custom.css" }].
scripts
Additional JavaScript files to further customize the user experience and adapt it to your specific needs. Expects an array of objects that specify a src attribute, pointing to the path/URL of your script, and an optional async attribute (defaults to false), like [{ "src": "js/custom.js", "async": true }].
Check out the extension system docs for a more convenient way to add functionality to the Web client.