IDE for WDL
This project aims to provide a "batteries-included" environment
for developing WDL workflows.
Please note: it is currently under active development,
and is not yet feature-complete.
Editor-agnostic WDL support
We will provide a WDL Language Server plugin, based on
Language Server Protocol (LSP),
cromwell-tools,
pygls,
and miniwdl.
This protocol is supported by many code editors, and
enables universal support for language features.
More specifically, our plugin will enable you to:
You can find the following published extensions based on this plugin:
Other editors are supported via their respective LSP plugins.
Examples on how to connect them are in the client directory.
Browser IDE
Additionally, we provide an Integrated Development Environment (IDE),
which runs in a web browser and is based on Theia.
It bundles WDL extensions for Visual Studio Code -
WDL DevTools and
WDL Syntax Highlighter -
along with a "local" instance of Cromwell.
The bundle consists of Docker containers,
which you can set up with a single
Docker Compose command.
This approach is used to
- develop workflows locally, with an ultra-fast feedback loop
- run workflows in the cloud from developer machine - no need for a Cromwell server
- create reproducible setup - it works on any OS with Docker Compose
- run the same setup on a remote server - think Notebooks, but for WDL!
- simplify local development - it just works™
Deployment
To deploy the IDE:
The first time you run the Docker compose command, it will take ~5 minutes to compile the IDE from sources and bring up the environment. Later on, we will provide a Docker image to speed that up.
When you no longer see the log messages, the IDE is running and you can navigate
to it in a browser at this address: localhost:3000.