Wexflow is a high-performance, extensible, modular and cross-platform workflow engine. The goal of Wexflow is to automate recurring tasks without user intervention. With the help of Wexflow, building automation and workflow processes become easy. Wexflow also helps in making the long-running processes straightforward.
Wexflow aims to make automations, workflow processes, long-running processes and interactions between systems, applications and folks easy, straightforward and clean. The communication between systems or applications becomes easy through this powerful workflow engine.
Wexflow makes use of .NET Core, a cross-platform version of .NET for building websites, services, and console apps. Thus, Wexflow provides a cross-platform workflow server and a cross-platform backend for managing, designing and tracking workflows with ease and flexibility. Wexflow server and its backend run on Windows, Linux and macOS.
Wexflow also makes use of Quartz.NET open source job scheduling system that is used in large scale enterprise systems. Thus, Wexflow offers flexibility in planning workflow jobs such as cron workflows.
Furthermore, Wexflow makes use of LiteDB NoSQL Document Store database in its server and backend which enhance and improve the performance of this workflow engine.
Wexflow provides the following features:
- Free and open-source.
- Easy to install and effortless configuration.
- Straightforward and easy to use.
- Modular.
- Well documented.
- User driven.
- A cross-platform workflow server.
- A cross-platform backend.
- A cross-platform application for managing workflows.
- A cross-platform application for designing workflows.
- An Android application for managing workflows.
- User management.
- Sequential workflows.
- Flowchart workflows.
- Workflow events.
- Cron scheduling.
- Extensive logging and incident reporting.
- Real-time statistics on workflows.
- 92 built-in tasks.
- RESTful API.
- Hot reloading.
- Automation.
- Monitoring.
- Extensible.
Wexflow comes with a backend too, so you can search and filter among all your workflows, have real-time statistics on your workflows, manage your workflows with ease, design your workflows with ease, and track your workflows with ease:
Just to give you an idea of what Wexflow does, this is a screenshot from the "Designer" page. Using the "Designer" page, we get a nice visual overview of the dependency graph of the workflow. Each node represents a task which has to be run:
Discover more about the features in details.
Here are some examples of using Wexflow:
- Orchestration engine.
- Batch recording live video feeds.
- Batch transcoding audio and video files.
- Batch uploading videos and their metadata to YouTube SFTP dropbox.
- Batch encrypting and decrypting large files.
- Batch converting, resizing and cropping images.
- Creating and sending reports and invoices by email.
- Connecting systems and applications via watch folders.
- Batch downloading files over FTP/FTPS/SFTP/HTTP/HTTPS/Torrent.
- Batch uploading files over FTP/FTPS/SFTP.
- Database administration and maintenance.
- Synchronizing the content of local or remote directories.
- Batch sending tweets.
- etc.
Here are the benefits of using Wexflow:
- Gain time by automating repetitive tasks.
- Save money by avoiding re-work and corrections.
- Reduce human error.
- Become more efficient and effective in completing your tasks.
- Become more productive in what you do.
- Become consistent in what you do.
Server | Platform | Status |
---|---|---|
AppVeyor (.NET) | Windows | |
Bitrise (Android) | Linux | |
codecov.io | Windows |
Download the latest release here.
Contributions are very welcome!
To contribute to this project, proceed as follows:
- Read the documentation on how to debug Wexflow.
- Fork this repository.
- Clone your fork.
- Branch.
- Make and push your changes.
- Create a pull request.
- After your pull request has been reviewed, it can be merged into the repository.
- To run unit tests, follow these guidelines.
If you found any issues with Wexflow, please submit a bug report at the Issue Tracker. Please include the following:
- The version of Wexflow you are using.
- How to reproduce the issue (a step-by-step description).
- Expected result.
If you'd like to add a feature request please add some details how it is supposed to work.
The changelog is available in the release history.
Wexflow is licensed under the MIT License.
Wexflow contains other libraries with their individual licenses. More details about these licenses can be found in the wiki.
- Akram El Assas (Project founder and maintainer)
- Hans Meyer
- Jan Borup Coyle
- Alex Higgins
- Igor Quirino
Thanks to JetBrains for the free open source license of Resharper Ultimate.
Improved and optimized using: