We’re excited to introduce a new addition to Graphileon’s Function palette: the ShellExecute
function type. This new function unlocks a world of possibilities by connecting Graphileon applications directly to any command-line tool — bridging the gap between your graph-native interfaces and the full power of shell scripting.
In our first integration, we’ve connected ShellExecute
to a Python-based traffic assignment engine — Path4GMNS — offering data scientists and analysts a seamless way to interact with transportation models using Graphileon’s rich application and automation environment.
🧩 Why ShellExecute?
Until now, Graphileon could interact with databases, APIs, and internal data structures — but working with external programs required workarounds or middleware. With ShellExecute
, Graphileon becomes the orchestrator of any command-line script.
This means you can now:
- Run Python, R, Node.js, or any other script language directly.
- Connect with machine learning models, data processing pipelines, or system tools.
- Seamlessly integrate these operations into your Graphileon applications, using triggers, inputs, and outputs.
🧪 A Practical Use Case: Path4GMNS
To showcase the power of ShellExecute
, we’ve created a dashboard that wraps the Path4GMNS engine — a lightweight open-source tool for path-based user equilibrium traffic assignment.
This integration demonstrates how ShellExecute
can:
- Read a transportation network from CSV files.
- Execute Python logic for computing shortest paths and traffic flows.
- Return the results directly into Graphileon views for instant inspection.
📸 Configuration Overview

The configuration includes:
- A
AgGridView
that shows the available datasets in the left sidebar. - Another
AgGridView
that displays the contents of a dataset folder. - Batch triggers (that automatically generate buttons in the UI) to trigger the scripts that are stored in the new
ShellExecute
functions:- Run Shortest Path Queries.
- Launch User Equilibrium Assignments.
- Two
HtmlView
functions, one to display the script feedback to the user, the other one to display the contents of each input or result file.
⚙️ How ShellExecute Works
The ShellExecute
function type is defined with the following properties:
command
: The shell command to execute (e.g.,python3
).arguments
: An array of arguments to pass to the command.script
: The script content to execute.options
: Additional options, such as the working directory (cwd
).
For example, to run the Path-based UE traffic assignment script, the Shell Execute function is configured as follows:

This configuration executes the Path4GMNS script with the specified dataset folder, performs the traffic assignment, and outputs the results.
🔗 Seamless Integration with Function Triggers
Graphileon’s Function Trigger Infrastructure, based on the generic (Function)-[:TRIGGER]->(Function)
pattern, allows for seamless integration between functions. In this configuration:
- Selecting a dataset triggers the
Files
view to display the dataset’s files. - Clicking on a file triggers the
Read file
function to display its contents. - Executing the
Path-based UE traffic assignment
triggers theShellExecute
function, which runs the Path4GMNS script. - Upon completion, the output is displayed in the
Processing output
view.
This integration demonstrates how ShellExecute
can be seamlessly incorporated into Graphileon’s Function Trigger Infrastructure, enabling complex workflows that combine graph-native applications with external command-line processes.

🧠 Empowering Data Scientists
By integrating ShellExecute
with Python scripts, Graphileon opens up new possibilities for data scientists:
- Run data analysis scripts directly from the Graphileon interface.
- Visualize results in real-time using Graphileon’s views.
- Automate workflows that combine graph data with external computations.
This integration empowers data scientists to leverage their existing Python tools within the Graphileon ecosystem, enhancing productivity and enabling more sophisticated analyses.
For more information on configuring functions and triggers, refer to the Graphileon Documentation.
With the introduction of ShellExecute
, Graphileon bridges the gap between graph-native applications and external command-line processes, opening up new possibilities for integration and automation.
We look forward to seeing how you leverage this new functionality in your applications!