SOUP is a web application that enables users to create an Event Knowledge Graph (EKG) from their own event logs.
Starting from a .csv
file containing object-centric event data, the tool guides the user through the EKG creation process, with the goal of supporting object-centric process mining analysis in an intuitive and efficient way.
Role in SOUP | Useful Links |
---|---|
Graph database used to store and query the EKG | Memgraph Cypher Query Language |
Backend logic and API layer | Python Flask Neo4j Python Driver |
Frontend and graph rendering | Angular Dagre-d3 |
Other supporting libraries and tools | See package.json for full list |
First, ensure Git is installed on your machine. Then, open your terminal and run:
git clone https://github.com/soup-ocpm/soup.git
Make sure Git is installed on your computer. If Git is not installed, you’ll see an error — install it from the link above before proceeding.
First, install Docker on your computer: Download Docker
Once Docker is installed, open your terminal in the root directory of the cloned project and run:
docker-compose -p soup-tool up --build
💡 Mac users (and newer Docker versions) may need to run:
docker compose -p soup-tool up --build
Docker Compose will spin up the following containers:
Container | Description | Access Point |
---|---|---|
Angular | Frontend WebApp | http://localhost:4200 |
Python/Flask | Backend logic and API engine | http://localhost:8080 |
Memgraph | Graph DB for storing and querying EKGs | http://localhost:3000 (Memgraph Lab) |
You’re now ready to start using SOUP! 🎉
SOUP is a user-friendly web application to work with object-centric event data in .csv
format. It allows you to:
- Upload your event log file.
- Filter and map columns to the appropriate event attributes.
- Automatically generate an Event Knowledge Graph (EKG) using the Memgraph database.
- Explore and manipulate the graph through:
- Filtering (e.g., timestamps, frequency, performance)
- Aggregating nodes into classes
- Exporting to
.svg
or.json
- Deleting graphs when no longer needed
Tip
Please refer to the project wiki for all the details additionally you can download some event logs here.
Warning
Make sure your .csv
file does not contain spaces in the column headers to avoid parsing issues.
Note
Timestamp Format Requirements: Memgraph accepts the following timestamp formats (with optional milliseconds): YYYY-MM-DDThh:mm:ss
or YYYY-MM-DDThh:mm
or YYYYMMDDThhmmss
or YYYYMMDDThhmm
or YYYYMMDDThh
.
💭 Our tool is called Soup, with a logo showcasing a mix of rainbow noodles, symbolizing the dynamic and interconnected flow of object-centric process mining, much like the iconic image of rainbow spaghetti.
-
Development support: Alessio Giacché ✉️ [email protected]
-
Research activities: Sara Pettinari ✉️ [email protected] & Lorenzo Rossi ✉️ [email protected]
We'd love to hear from you! Please share your feedback by filling out our form ➡️ here
More exciting features coming soon...🫕