https://github.com/bptlab/ark_automate

An open source RPA tool which uses BPMN to create bots.

https://github.com/bptlab/ark_automate

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 11 committers (9.1%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.9%) to scientific vocabulary

Keywords

bpmn robotframework robotic-process-automation rpa rpaframework

Keywords from Contributors

interactive archival projection generic sequences observability autograding hacking shellcodes modular
Last synced: 9 months ago · JSON representation

Repository

An open source RPA tool which uses BPMN to create bots.

Basic Info
  • Host: GitHub
  • Owner: bptlab
  • License: mit
  • Language: JavaScript
  • Default Branch: DEV
  • Homepage:
  • Size: 39.2 MB
Statistics
  • Stars: 18
  • Watchers: 2
  • Forks: 8
  • Open Issues: 72
  • Releases: 0
Topics
bpmn robotframework robotic-process-automation rpa rpaframework
Created over 5 years ago · Last pushed about 3 years ago
Metadata Files
Readme Contributing License Code of conduct

README.md

Ark Automate

GitHub stars GitHub open issues GitHub open pull requests GitHub open pull requests heroku

Ark-Automate is a platform that allows office users and software developers to automate business or everyday processes by simply sketching the steps of their process. By using simple flowcharts or powerful BPMN in their process outlines, users can create small software solutions using RPA that finish their tasks much faster and more reliably.

Quick Links

Wiki | Tutorial | Screencast

Installation using Docker

The easiest way to run a local instance of Ark is using the provided Docker images.

  1. Make sure you have Docker installed and running.
  2. Download the latest docker-compose file.
  3. In your console, navigate to the directory of the downloaded file and run docker-compose up. You can add a -d to run Ark in the background.
  4. Install and run the local client.
  5. Navigate to http://localhost:3000/ to access the front-end and to start modeling RPA bots!
  6. Do you already know our tutorial? It will guide you through the creation of your first RPA bot using Ark Automate!

What is the local client for?

Ark Automate consists of two main components: The software responsible for managing bots, divided in a web-based front-end for modeling and starting bots, as well as a back-end. The lightweight local client however runs on your computer in the background and listens for new RPA jobs to execute.

You can skip the step for installing the local client, however, you will then not be able to run bots.

Product Demo

Watch the video


Local Setup for Development

If you want to contribute to Ark, you can set up a local development environment as follows. Please install:

  1. Node.js (at least v10.19) using the installer
  2. npm (at least v6.14) which is normally installed with Node.js
  3. nodemon(at least v2) using npm install nodemon -g

Then to complete the repository setup:

  1. Clone this repository using git clone https://github.com/bptlab/ark_automate.git
  2. Change into the repository folder using cd ark_automate
  3. Install all dependencies by running npm install in the server and frontend directory. You can easily do this by running cd server/ && npm install && cd .. && cd frontend/ && npm install && cd .. in the projects root directory

Set up Heroku

For this step, an invitation to our Heroku project is necessary. Please create yourself a Heroku account, which you link to your Github profile. Then write a short mail to our team mailing list to be added to the project.

  1. Run in the server directory npm install -g heroku
  2. Login to Heroku by running heroku login and than login to your heroku account
  3. Create a new .env file in the server directory
  4. Add the MongoDb URI to your .env file by running the following command in the server directory heroku config:get MONGODB_URI -s -a ark-automate >> .env

Setup development tools

Tools being used in this project are EsLint and Prettier. For information on how to configure them see our coding standards

Run application

Before running, please always make sure to have the most recent module versions installed using npm install in the server, as well as the frontend directory. To run a development preview of the app, navigate to the server directory and run npm run local to start the API server, navigate into the frontend folder and run npm start again to also start the frontend. Now check http://localhost:3000/ to have a look at the app.

To run the local client, follow the steps in the Readme of the local client.

Contribute

Contribution and feedback are encouraged and always welcome. For more information about how to contribute, the project structure, as well as additional contribution information, see our Contribution Guidelines. By participating in this project, you agree to abide by its Code of Conduct at all times.

Contributors

The main contributors to the project are the four members of the 2020/21 Bachelor Project of Professor Weske's BPT Chair at the Hasso Plattner Institute:

These four participants will push the project forward as part of their bachelor's degree until the summer of 2021.
At the same time our commitment to open source means that we are enabling -in fact encouraging- all interested parties to contribute and become part of its developer community. Regarding Open Source, this project underlays a MIT license which you can find here

Project documentation

Our architecture, as well as our current vision of the project can be found in our wiki. Please also see the code documentation on its own website including examples.

Owner

  • Name: Business Process Technology
  • Login: bptlab
  • Kind: organization
  • Location: Potsdam, Germany

Business Process Technology @ Hasso Plattner Institute, University of Potsdam

GitHub Events

Total
Last Year

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 856
  • Total Committers: 11
  • Avg Commits per committer: 77.818
  • Development Distribution Score (DDS): 0.736
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Sandro Speh s****h@s****e 226
Lukas Hueller l****r@s****e 223
DanielWoelki d****i@o****e 105
WolfgangDaniel 4****l 98
Kay Erik Jenss k****s@g****e 65
lukashueller 3****r 56
Kay Jenss 4****y 47
Sandro Sp 3****p 28
MaximilianV c****e@v****v 4
Maximilian Völker M****V 2
dependabot[bot] 4****] 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 131
  • Total pull requests: 60
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 2 days
  • Total issue authors: 2
  • Total pull request authors: 4
  • Average comments per issue: 0.69
  • Average comments per pull request: 0.53
  • Merged pull requests: 52
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • SanJSp (42)
  • lukashueller (28)
Pull Request Authors
  • lukashueller (15)
  • kej-jay (7)
  • WolfgangDaniel (5)
  • SanJSp (3)
Top Labels
Issue Labels
Frontend (11) Spike (10) Testing (9) Future issue (7) Ssot (6) Concept (5) Parser (5) Style / Design (5) Refactoring (5) Enhancement (4) SP: 8 (FIB) (3) SP: 2 (FIB) (3) SP: 5 (FIB) (3) Bug (3) SP: 3 (FIB) (2) Backend (2) Documentation (2) SP: 1 (FIB) (2) Optional (1) SP: 13 (FIB) (1) Duplicate (1) Database (1) SP: 21 (FIB) (1) Good first issue (1)
Pull Request Labels
Bug (1) Refactoring (1)

Dependencies

frontend/package-lock.json npm
  • 1702 dependencies
frontend/package.json npm
  • @testing-library/jest-dom ^5.11.10 development
  • @testing-library/react ^11.2.6 development
  • @testing-library/user-event ^12.8.3 development
  • better-docs ^2.3.2 development
  • eslint ^7.17.0 development
  • eslint-config-airbnb ^18.2.1 development
  • eslint-config-prettier ^7.1.0 development
  • eslint-plugin-import ^2.22.1 development
  • eslint-plugin-jsx-a11y ^6.4.1 development
  • eslint-plugin-only-warn ^1.0.2 development
  • eslint-plugin-react ^7.22.0 development
  • eslint-plugin-react-hooks ^4.2.0 development
  • jsdoc ^3.6.6 development
  • @ant-design/icons ^4.4.0
  • @craco/craco ^6.1.1
  • antd ^4.8.2
  • body-parser ^1.18.3
  • bpmn-font ^0.10.0
  • bpmn-js ^7.4.0
  • bpmn-js-cli ^2.0.2
  • bpmn-js-properties-panel ^0.37.5
  • camunda-bpmn-moddle ^4.4.1
  • craco-antd ^1.19.0
  • craco-less ^1.17.1
  • prismjs ^1.23.0
  • prop-types ^15.7.2
  • react ^17.0.1
  • react-dom ^17.0.1
  • react-router-dom ^5.2.0
  • react-scripts 4.0.0
  • react-simple-code-editor ^0.11.0
  • socket.io-client ^4.0.0
  • web-vitals ^0.2.4
  • xmljs2 ^1.0.0
server/package-lock.json npm
  • 819 dependencies
server/package.json npm
  • eslint ^7.17.0 development
  • eslint-config-airbnb ^18.2.1 development
  • eslint-config-prettier ^7.1.0 development
  • eslint-plugin-import ^2.22.1 development
  • eslint-plugin-jsx-a11y ^6.4.1 development
  • eslint-plugin-only-warn ^1.0.2 development
  • eslint-plugin-react ^7.22.0 development
  • eslint-plugin-react-hooks ^4.2.0 development
  • jest ^26.6.3 development
  • node-mocks-http ^1.10.1 development
  • supertest ^6.1.1 development
  • chai ^4.3.4
  • express ^4.16.4
  • mongodb ^3.6.5
  • mongodb-memory-server ^6.9.6
  • mongoose ^5.12.1
  • nodemon ^2.0.7
  • socket.io ^4.0.0
  • swagger-jsdoc 5.0.1
  • swagger-ui-express ^4.1.6
.github/workflows/backendTesting.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
.github/workflows/frontendTesting.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
.github/workflows/herokuDeploy.yml actions
  • actions/checkout v2 composite
  • akhileshns/heroku-deploy v3.11.10 composite
.github/workflows/linterFrontend.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v2-beta composite
.github/workflows/linterServer.yml actions
  • actions/checkout v2 composite
  • actions/setup-node v2-beta composite
.github/workflows/publishDocumentation.yml actions
  • actions/checkout v2 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/wikiPageSync.yml actions
  • actions/checkout v1 composite
  • joeizzard/action-wiki-sync master composite