GithubHelp home page GithubHelp logo

luboterifaj / kie-tools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from apache/incubator-kie-tools

0.0 1.0 0.0 531.3 MB

Tooling for Kogito http://kogito.kie.org

License: Apache License 2.0

TypeScript 15.20% JavaScript 1.23% HTML 0.63% CSS 0.47% SCSS 0.06% Groovy 0.04% Shell 0.01% Dockerfile 0.03% Java 80.95% Less 0.14% FreeMarker 0.08% Makefile 0.01% Go 1.00% MDX 0.12% ANTLR 0.02% PowerShell 0.01% Smarty 0.01%

kie-tools's Introduction


The KIE Community is a home for leading Open Source projects that play a role in delivering solutions around Business Automation and Artificial Intelligence in the Cloud.

GitHub Stars GitHub Forks GitHub Issues Pull Requests Contributors License Twitter Follow

This repository contains tooling applications and libraries for KIE projects.

Contribute

  • Work in progress 🔨

Build from source

To start building the Apache KIE Tools project, you're going to need:

ℹ️ NOTE: Some packages will require that make is available as well.

ℹ️ NOTE: *nix users will also need:

  • lib-gtk-3-dev
  • appindicator3-0.1 (libayatana-appindicator3-dev or libappindicator-gtk3-devel and gir1.2-appindicator3-0.1)

ℹ️ NOTE: Users of Fedora or RHEL will need to add a repository:

sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

After installing the tools above, you'll need to download the dependencies and link the packages locally. Simply run:

  • pnpm bootstrap

To install only the dependencies that are relevant to the package called [pkg-name].

  • pnpm bootstrap -F [pkg-name]...

    ⚠️ NOTE: Here, ... is actually necessary! They're part of a pnpm filter.

After dependencies are installed, you'll be able to build. To do so, you'll have two choices - dev, or prod.

Note that it is recommended that you specify which package you want to build, so replace [pkg-name] with the name of the desired package on one of the commands below:

  • pnpm -F [pkg-name]... build:dev - This is fast, but not as strict. It skips tests, linters, and some type checks. Be prepared for the CI to fail on your PRs.
  • pnpm -F [pkg-name]... build:prod - The default command to build production-ready packages. Use that to make sure your changes are correct.

⚠️ NOTE: Here, ... is actually necessary! They're part of a pnpm filter.

ℹ️ NOTE: If you want to build everything, run pnpm -r build:dev or pnpm -r build:prod. It's going to take a while, though :)

ℹ️ NOTE: The Apache KIE Tools build is parameterized by several Environment Variables. For an extensive list of these variables, please see the list printed by the bootstrap script.

ℹ️ NOTE: Final artifacts will be on {packages,examples}/*/dist directories.

Applications

The Apache KIE Tools project contains several applications. To develop each one of them individually, refer to the instructions below.

VS Code Extension (DMN, BPMN, SceSim, and PMML Editors)

  1. After you've successfully built the project following the instructions above, open the packages/kie-editors-dev-vscode-extension folder on VS Code. Use a new VS Code window so that the packages/kie-editors-dev-vscode-extension folder shows up as root in the VS Code explorer.
  2. From there, you can Run the extension or the end-to-end tests by using the Debug menu/section. You can also use the respective shortcuts (F5 to start debugging, for instance).
  3. NOTE: To run the VS Code extension in development mode, you need webpack and webpack-cli to be globally installed on NPM. Normally you can do that with npm install -g webpack@^5.88.2 webpack-cli@^4.10.0, but sudo may be required depending on your installation.
  4. Remember! If you make changes to any package other than packages/kie-editors-dev-vscode-extension, you have to manually rebuild them before relaunching the extension on VS Code.

VS Code Extension (Serverless Workflow Editor)

  1. After you've successfully built the project following the instructions above, open the packages/serverless-workflow-vscode-extension folder on VS Code. Use a new VS Code window so that the packages/serverless-workflow-vscode-extension folder shows up as root in the VS Code explorer.
  2. From there, you can Run the extension or the end-to-end tests by using the Debug menu/section. You can also use the respective shortcuts (F5 to start debugging, for instance).
  3. Remember! If you make changes to any package other than packages/serverless-workflow-vscode-extension, you have to manually rebuild them before relaunching the extension on VS Code.

Chrome Extension (DMN, BPMN, and SceSim Editors)

  1. After you've successfully built the project following the instructions above, open the packages/chrome-extension-pack-kogito-kie-editors folder on your favourite IDE. You can import the entire repo as well if you want to make changes to other packages.
  2. Run pnpm build:dev on packages/chrome-extension-pack-kogito-kie-editors. This will create a version of the Chrome Extension that fetches the envelope locally.
  3. Open a terminal and run pnpm start on packages/chrome-extension-pack-kogito-kie-editors. This will start a webpack serve instance with the editors and their envelope. We use that because we don't pack the Chrome Extension bundle with the editors inside. Instead, we fetch them from GitHub pages.
  4. You also have to enable invalid certificates for resources loaded from localhost in your browser. To do that, go to chrome://flags/#temporary-unexpire-flags-m118 in your Chrome browser, enable this flag and restart browser. Then go to chrome://flags/#allow-insecure-localhost in your Chrome browser and enable also this flag. Alternativelly, you can go to https://localhost:9001 and add an exception.
  5. Open Chrome and go to chrome://extensions. Enable "Developer mode" in the top-right corner and click on "Load unpacked". Choose the packages/chrome-extension-pack-kogito-kie-editors/dist folder.
  6. From now on you can use the development version of the extension. Remember! After each change, you have to rebuild the changed modules and hit the "Refresh" button of the extension card.

Chrome Extension (Serverless Workflow Editor)

  1. After you've successfully built the project following the instructions above, open the packages/chrome-extension-serverless-workflow-editor folder on your favourite IDE. You can import the entire repo as well if you want to make changes to other packages.
  2. Run pnpm build:dev on packages/chrome-extension-serverless-workflow-editor. This will create a version of the Chrome Extension that fetches the envelope locally.
  3. Open a terminal and run pnpm start on packages/chrome-extension-serverless-workflow-editor. This will start a webpack serve instance with the editors and their envelope. We use that because we don't pack the Chrome Extension bundle with the editors inside. Instead, we fetch them from GitHub pages.
  4. You also have to enable invalid certificates for resources loaded from localhost in your browser. To do that, go to chrome://flags/#temporary-unexpire-flags-m118 in your Chrome browser, enable this flag and restart browser. Then go to chrome://flags/#allow-insecure-localhost in your Chrome browser and enable also this flag. Alternativelly, you can go to https://localhost:9000 and add an exception.
  5. Open Chrome and go to chrome://extensions. Enable "Developer mode" in the top-right corner and click on "Load unpacked". Choose the packages/chrome-extension-serverless-workflow-editor/dist folder.
  6. From now on you can use the development version of the extension. Remember! After each change, you have to rebuild the changed modules and hit the "Refresh" button of the extension card.

KIE Sandbox

  1. After you've successfully built the project following the instructions above, go to packages/online-editor.
  2. Open a terminal and run pnpm start. This will start a webpack serve instance with the Online Editor resources.
  3. From now on you can use the development version of the Online Editor by accessing https://localhost:9001.
  4. Run the CORS Proxy by running pnpm start at packages/cors-proxy.

Serverless Logic Web Tools

  1. After you've successfully built the project following the instructions above, go to packages/serverless-logic-web-tools.
  2. Open a terminal and run pnpm start. This will start a webpack serve instance with the Serverless Logic Web Tools resources.
  3. From now on you can use the development version of the Serverless Logic Web Tools by accessing https://localhost:9020.
  4. Run the CORS Proxy by running pnpm start at packages/cors-proxy.

Standalone Editors (DMN and BPMN)

  1. After you've successfully built the project following the instructions above, go to packages/kie-editors-standalone.
  2. Open a terminal and run pnpm start. This will start a webpack serve instance with the Standalone Editors test page.
  3. From now on you can use the development version of the Standalone DMN Editor by accessing https://localhost:9001/resources/dmn and the Standalone BPMN Editor by accessing https://localhost:9001/resources/bpmn.

Knative Workflow plugin

Read the documentation

Libraries

Stunner Editors

The stunner-editors package contains the BPMN, DMN, and SceSim Editors that are used in many applications of Apache KIE Tools. After cloning the repo, start with a fresh build.

  • pnpm bootstrap -F @kie-tools/stunner-editors...

  • pnpm -F @kie-tools/stunner-editors... build:dev

After that, you're ready to start developing the Editors individually.

  • BPMN

    • Located at packages/stunner-editors/kie-wb-common-stunner/kie-wb-common-stunner-sets/kie-wb-common-stunner-bpmn/kie-wb-common-stunner-bpmn-kogito-runtime.
    • Run mvn clean gwt:run to start. To enable live-reloading capability, run mvn clean gwt:run -Phot-reload
  • DMN

    • Located at packages/stunner-editors/kie-wb-common-dmn/kie-wb-common-dmn-webapp-kogito-runtime.
    • Run mvn clean gwt:run to start. To enable live-reloading capability, run mvn clean gwt:run -Phot-reload
    • If you want to enable live-reloading capabilities of the React components that are part of the DMN Editor, follow these steps.
  • Test Scenario (SceSim)

    • Located at packages/stunner-editors/drools-wb-screens/drools-wb-scenario-simulation-editor/drools-wb-scenario-simulation-editor-kogito-testing.
    • Run mvn clean gwt:run to start.

kie-tools's People

Contributors

caponetto avatar cristianonicolai avatar csadilek avatar danielzhe avatar ederign avatar edewit avatar errai-gerrit avatar ginxo avatar hasys avatar heiko-braun avatar jervisliu avatar jesuino avatar jfuerth avatar jrenaat avatar karreiro avatar kiereleaseuser avatar kingsleyzissou avatar ljmotta avatar manstis avatar mbarkley avatar mbiarnes avatar mikebrock avatar paulovmr avatar pefernan avatar porcelli avatar rikkola avatar romartin avatar tiagobento avatar wmedvede avatar yesamer avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.