Angular · SAP UI5 Web Components Java 26 · Spring Boot 4 Docker Compose ready

SIPOCs

An application for managing SIPOC diagrams (Supplier, Input, Process, Output, Customer) — also called "LIPOK" in the project (German: Lieferant, Input, Prozess, Output, Kunde) — for process improvement and business analysis.

What is a SIPOC?

A SIPOC captures a business process across five columns — from the suppliers who feed it, to the customers who receive its result. SIPOCs digitizes that structure and makes it searchable, linkable, and exportable.

S
Supplier
I
Input
P
Process
O
Output
C
Customer

From process knowledge to a SIPOC

SIPOCs turns structured process data — entered by hand, imported via CSV seeding, or pushed through the REST API — into a diagram your team can actually read and share.

1

Capture the data

Suppliers, inputs, process steps, outputs, and customers are created as business partners and attached to a Lipok — by hand in the UI, via the REST API, or seeded in bulk from CSV mock data.

2

Model the relationships

Beyond the flat SIPOC columns, entries can be linked to each other — an input to the supplier/process step it comes from, an output to the process step and customer(s) it goes to — capturing the real flow, not just five parallel lists.

3

See it in the app

The frontend renders the Lipok as an interactive SIPOC diagram — reorderable via drag & drop, filterable, and exportable to Markdown for sharing outside the app.

Features

From creating individual SIPOCs to exporting them as Markdown — the core building blocks of the application.

🗂️

SIPOC management

Create and edit SIPOC instances ("Lipoks") and populate them with ordered lists of suppliers, inputs, process steps, outputs, and customers.

🔗

Fine-grained links

Optionally link inputs to a supplier/process step and outputs to a process step/customer — beyond the flat column lists.

🏢

Business partners

A single shared partner directory instead of fixed supplier/customer types — the same partner can play both roles on a given Lipok.

🌳

Business objects (Go)

A hierarchical, parent/child taxonomy of business objects that can be attached to a SIPOC.

📤

Markdown export

Export a single SIPOC, or all of them at once (as a ZIP), as structured Markdown files — via a UI button or the REST API.

📊

Dashboard

An overview and statistics across all SIPOCs and business partners at a glance.

🖱️

Drag & drop

Reorder SIPOC tiles and column entries via drag & drop.

🌐

Multilingual

UI available in German and English via ngx-translate; domain content is typically maintained in German.

📘

REST API with Swagger

A fully documented REST API (springdoc-openapi) for driving the backend directly.

Quickstart

Two ways to run the application locally.

Requires Java 26 and Node.js/npm.

./sipoc.sh start   # start backend + frontend, wait until both are up, seed mock data
./sipoc.sh status  # check what's currently running
./sipoc.sh stop    # stop backend + frontend

No local Java/Node toolchain required — just Docker.

docker compose up --build   # build and start backend + frontend
docker compose down         # stop and remove the containers

Tech stack

Area Technology
Backend Java 26, Spring Boot 4.1.0, Spring Data JPA, H2 (in-memory), springdoc-openapi
Frontend Angular (standalone components), SAP UI5 Web Components, Tailwind CSS, ngx-translate
Build/Deploy Maven Wrapper, npm, Docker Compose