Package: webviz-config
This package will be deprecated - we move instead all collaboration focus to the reusable React and Dash components in:https://github.com/equinor/webviz-subsurface-componentshttps://github.com/equinor/webviz-core-componentsDemocratizing Python web applicationsWriting aDash web applicationgives a lot of flexibility, however, it also requires :snake: Python knowledge from the person setting it up.Webviz™is a MIT-licensed configuration layer on top of Dash, which encourages making reusable components and dashboards, which can then be added/removed when creating an application using a shortyamlconfiguration file.This Python package,webviz-config, is the core plugin framework. For a real example repository using this plugin system, see e.g.webviz-subsurface.These are the main user groups targeted byWebviz™:You do not know Python, and only want to add different predefined dashboards or visualizations/components in a certain order and/or on different pages in the application. Optionally with some text and mathematical equations (that you provide) inbetween the  dashboards, explaining what the user is looking at.You knowPython, and want to create generic or specialized dashboards you or other users can reuse by simply asking for it in the Webviz™ configuration file. This can be done without knowing JavaScript (see alsoDashfor more information).You knowReact, and want to create highly specialized visualization which Python or pure config-file users can reuse.Webviz™will create web applications with very :lock: strict security headers and CSP settings, giving an rating ofA+on e.g.Mozilla observatory. It also facilitates a :whale: Docker setup, where the Python code can be ran completely unpriviliged in a sandbox (both with respect to file system access and network communication).Example configuration file and information about the standard plugins can be seen inthe documentation.The workflow can be summarized as this:The user provides a :book: configuration file following theyamlstandard.Webviz™reads the configuration file and automatically writes the corresponding :snake: Python code.The created application can be viewed locally, or deployed using :whale: Docker to a cloud provider. Both out of the box.InstallationThe recommended and simplest way of installingwebviz-configis to runpipinstallwebviz-configIf you want to developwebviz-configand install the latest source code manually you
can do something along the lines of:gitclonegit@github.com:equinor/webviz-config.gitcd./webviz-config
npmci--ignore-scripts# NOTE: If you are on Windows, make sure to first set `npm`'s default `script-shell` to `powershell` by running# npm config set script-shell powershellnpmrunpostinstall
pipinstall-e.After installation, there is a console script namedwebvizavailable. You can test the
installation by using the provided example configuration file,webvizbuild./examples/basic_example.yamlWithout any additional arguments, this willcreate a temporary folderwrite the Python application code to that folderstart a localhost serverWhen stopping the server (press CTRL+C at any time), the temporary folder is deleted.The optional arguments can be seen when runningwebviz--helpUsageSeethe introductionpage for information on how you
create awebvizconfiguration file and use it.Creating new pluginsIf you are interested in creating new plugins which can be configured through
the configuration file, take a look at thecontribution guide.To quickly get started, we recommend using the correspondingcookiecutter template.Licensewebviz-configis, with a few exceptions listed below,MITlicensed.Thewebviz-configlogoisCC BY-NC-ND 4.0