{"id":16489814,"url":"https://github.com/aarkue/rust4pm_demos","last_synced_at":"2026-06-09T08:31:53.777Z","repository":{"id":247101854,"uuid":"821350499","full_name":"aarkue/rust4pm_demos","owner":"aarkue","description":"See also the main Rust4PM project: https://github.com/aarkue/rust4pm","archived":false,"fork":false,"pushed_at":"2024-07-09T20:43:44.000Z","size":3375,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-01T04:26:57.526Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://aarkue.github.io/rust4pm_demos/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aarkue.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-28T10:46:40.000Z","updated_at":"2024-07-10T14:06:11.000Z","dependencies_parsed_at":"2025-03-01T04:35:55.070Z","dependency_job_id":null,"html_url":"https://github.com/aarkue/rust4pm_demos","commit_stats":null,"previous_names":["aarkue/process_mining_demos","aarkue/rust4pm_demos"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/aarkue/rust4pm_demos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aarkue%2Frust4pm_demos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aarkue%2Frust4pm_demos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aarkue%2Frust4pm_demos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aarkue%2Frust4pm_demos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aarkue","download_url":"https://codeload.github.com/aarkue/rust4pm_demos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aarkue%2Frust4pm_demos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34098892,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-11T13:45:30.659Z","updated_at":"2026-06-09T08:31:53.763Z","avatar_url":"https://github.com/aarkue.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rust4PM Demos\n\n## Video\n\n\nhttps://github.com/aarkue/rust4pm_demos/assets/20766652/141017ed-7c93-46ff-a234-befbb04309ab\n\n\n\n\n\n\n## Overview\nThis repository contains the following software projects, which are all based on the Rust crate `process_mining` (See https://crates.io/crates/process_mining and https://github.com/aarkue/rust4pm/).\n\n- `log_strip`: CLI for Stripping XES Attributes\n- `event_hours_analyzer`: Python Script for Data Visualization\n- `ocel_graph`: Web Service for Constructing Graphs from OCED\n- `petri_net_wasm`: Petri Net Editor with PNML Support via WASM\n\nSee below for instructions on how to run or use each projects.\nFor some of the projects, pre-built versions are available for convenience.\n\nTo build any of these projects yourself, you need to have Rust (see https://www.rust-lang.org/tools/install) installed.\nTo build the frontends of `ocel_graph` and `petri_net_wasm` you will additionally need to have [Node.js](https://nodejs.org/en/download/) installed.\n\nFor convenience, binary builds for Linux and Windows are available for the `log_strip` CLI and the backend of `ocel_graph` at https://github.com/aarkue/rust4pm_demos/releases/latest.\nSimply download the corresponding file (e.g., `log_strip-linux.zip`) extract it and run the contained binary.\nAdditionally, the frontends for `petri_net_wasm` and `ocel_graph` are available online (see https://aarkue.github.io/rust4pm_demos/).\nWhile the `petri_net_wasm` is self-contained, the `ocel_graph` expects a backend running locally on your machine that provides the backend API at `localhost:3000`.\n\nFor building any of the demo applications, first navigate to the corresponding folder.\n\n## `log_strip`\n![log_stripper](https://github.com/aarkue/rust4pm_demos/assets/20766652/a0c7cca1-4b1e-4b3c-9aae-5a23a57be24e)\n### Provided Binary\n1. Download the corresponding `log_strip-XZY.zip`file from https://github.com/aarkue/rust4pm_demos/releases/latest and extract it.\n2. The resulting file can be ran like this: `log_strip -i \u003cinput-file\u003e -o \u003coutput-file\u003e` (or  `log_strip.exe -i \u003cinput-file\u003e -o \u003coutput-file\u003e` on Windows)\n### Manual Build\n1. `cargo run --release -- -i \u003cinput-file\u003e -o \u003coutput-file\u003e`\n\n## `event_hours_analyzer`\n![hour_plotter](https://github.com/aarkue/rust4pm_demos/assets/20766652/2e1302a6-4a92-4da6-8b48-9f99d0176303)\n\n### Manual Build\n1. Create and activate a virtual Python environment (e.g., `python -m venv venv` and `source ./venv/bin/activate`)\n2. Install [maturin](https://www.maturin.rs/) `pip install maturin`\n3. `maturin develop --release`\n4. Execute the Jupyter notebook `event_hours_analyzer.ipynb` using the same Python environment\n\n## `ocel_graph`\n![ocel_graph](https://github.com/aarkue/rust4pm_demos/assets/20766652/426d9dc9-0a2b-487e-b49b-b349c68fc348)\n### Provided Binary + Frontend\n1. Download the corresponding `ocel_graph_backend-XZY.zip` file from https://github.com/aarkue/rust4pm_demos/releases/latest and extract it.\n2. Run the resulting `ocel_graph_backend[.exe]` file in a console\n3. Head over to https://aarkue.github.io/rust4pm_demos/ocel_graph/ and select an OCEL2.0 XML/JSON file (see for example files)\n4. After an OCEL2.0 was loaded, choose the wanted options on the right and click _Apply_ to view the resulting graph\n### Manual Build\n1. Start the backend (`cd backend` and `cargo run --release`)\n2. Start the frontend (`cd frontend`, `npm i`, and run `npm run dev`)\n3. Open the specified URL in the browser\n\n## `petri_net_wasm`\n![petri_net_wasm](https://github.com/aarkue/rust4pm_demos/assets/20766652/4932884d-4255-4f27-841e-5eec3ebf5931)\n\n### Provided Frontend\n1. Head over to https://aarkue.github.io/rust4pm_demos/petri_net_wasm/ and use it :)\n\nSee https://www.processmining.org/event-data.html for some example XES files to use for discovery. Notice, that as the tool runs completely in the browser very large XES file with many activities might not work well.\n### Manual Build\n1. Build the WASM library (`wasm-pack build --target web --release`)\n2. Run the frontend (`npm i` and `npm run dev`)\n3. Open the specified URL in the browser\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faarkue%2Frust4pm_demos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faarkue%2Frust4pm_demos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faarkue%2Frust4pm_demos/lists"}