/symphony-wdk

Symphony Workflow Developer Kit (WDK), a bot capable of running workflows

Primary LanguageJavaApache License 2.0Apache-2.0

FINOS - Incubating License

Symphony Workflow Developer Kit (WDK) - Beta

📺 Video introduction of the WDK

The Symphony Workflow Developer Kit (WDK) is a way to build bots on the Symphony platform with minimal coding efforts. A standard execution engine, provided as a bot is running workflows written in a declarative manner.

The WDK is provided as an experimental beta-test

Workflow executions are triggered by events (such Real-Time Events) and run activities. Activities are small building blocks often calling REST API endpoints of the Symphony platform or can even be custom-made to tailor your needs.

  • Getting started: a beginner's guide to run your first workflow
  • Concepts: high-level view of the key concepts behind workflows
  • Architecture: technical bits on the execution of workflows
  • Deployment: how to run and configure the workflow bot
  • Custom activities: step-by-step guide on how to implement your own activities
  • Examples: learning about workflows through examples
  • Concrete and advanced examples in the gallery
  • SWADL Reference: syntax reference for the language used to write workflows

Usage example

For more examples and usage, please refer to the docs/examples.

Development setup

Build

Java (JDK) 11 is required and Gradle is used to build the project.

./gradlew build

Tests run

./gradlew check

Contributing

In order to get in touch with the project team, please open a GitHub Issue. Alternatively, you can email/subscribe to symphony@finos.org.

  1. Fork it (https://github.com/finos/symphony-wdk)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Read our contribution guidelines and Community Code of Conduct
  4. Check your code quality (./gradlew check)
  5. Commit your changes (git commit -am 'Add some fooBar')
  6. Push to the branch (git push origin feature/fooBar)
  7. Create a new Pull Request

NOTE: Commits and pull requests to FINOS repositories will only be accepted from those contributors with an active, executed Individual Contributor License Agreement (ICLA) with FINOS OR who are covered under an existing and active Corporate Contribution License Agreement (CCLA) executed with FINOS. Commits from individuals not covered under an ICLA or CCLA will be flagged and blocked by the FINOS Clabot tool (or EasyCLA). Please note that some CCLAs require individuals/employees to be explicitly named on the CCLA.

Need an ICLA? Unsure if you are covered under an existing CCLA? Email help@finos.org

Thanks to all the people who have contributed

contributors

Roadmap

Checkout the open issues.

License

Copyright 2022 Symphony LLC

Distributed under the Apache License, Version 2.0.

SPDX-License-Identifier: Apache-2.0