AlexSKuznetsov / control-app

The POC showcases a containerized application using Docker, combining frontend, backend, and process orchestration Camunda BPM 7.
MIT License
1 stars 0 forks source link
camunda docker docker-compose expressjs mongodb nginx nodejs react

React.js + Camunda BPM 7 + REST API (Node.js) Integration POC

This repository contains a proof of concept (POC) demonstrating the integration of React.js, Camunda BPM, and a REST API built with Node.js. The POC showcases a containerized application using Docker, combining frontend, backend, and process orchestration capabilities.

About

The purpose of this POC is to showcase how React.js, Camunda BPM, and a Node.js REST API can be seamlessly integrated to build a full-stack application. It demonstrates the coordination between the user interface, backend services, and process orchestration using BPMN workflows. The combination of these technologies enables efficient business process automation, task management, and data storage.

Key Features

Quick start

Note: Make sure you have the following dependencies installed: git, docker, docker-compose.

To start the application, follow these steps::

  1. Clone the repository:

    git clone https://github.com/AlexSKuznetsov/control-app.git
  2. Navigate to the project directory:

    cd control-app
  3. Run the application using Docker Compose:

    docker-compose up

    To run the application in detached mode, use the following command instead:

    docker-compose up -d
  4. Upload the BPMN model from the camunda directory to the Camunda Engine using the Camunda Modeler. You can download the modeler from here

Links to different parts:

Here are the links to access different parts of the application:

Tech stack **1. Frontend:** - React - Typescript - Vite - React Router - React Query - Material UI **2. Backend Rest API:** - Node.js - Express.js **3. Mongo DB:** - Storing Process Data correlated with Process ID **4. Camunda BPM 7:** - Process Orchestrator with BPMN support

That's it! You now have the application up and running with the various components integrated.