Web-based Rappture tool interface - renders XML tool definitions as interactive web applications
Project description
rappture2web
rappture2web turns Rappture tool XML definitions into interactive web applications — no desktop GUI required.
It reads a tool.xml file, renders the input form in a browser, runs the simulation backend, and displays the output visualizations (curves, fields, tables, maps, and more) in real time over WebSocket.
Features
- Drop-in replacement for the classic Rappture Python library (
rp_library) - Supports all common Rappture output types:
curve,histogram,field(2D/3D/VTK/vector),table,sequence,image,string,number,log,mapviewer - Interactive control panels: theme toggle, download (SVG/PNG/JSON), zoom, colorscale, legend position
- Compare mode: overlay multiple simulation runs on the same plot
- All JavaScript dependencies are bundled (Plotly 3.4, Three.js 0.128) — no CDN required
Installation
pip install rappture2web
Quick start
# Run an existing Rappture tool
rappture2web /path/to/tool/
# Or specify the tool.xml directly
rappture2web /path/to/tool/tool.xml
Then open http://localhost:8000 in your browser.
Tool script compatibility
Tool scripts require only a one-line change — replace the Rappture import:
# Before
import Rappture
rx = Rappture.PyXml(sys.argv[1])
# After
import rappture2web.rp_library as Rappture
rx = Rappture.PyXml(sys.argv[1])
All rx['input.(id).current'].value reads and rx['output.curve(f).component.xy'] = data writes work unchanged.
Supported output types
| Type | Description |
|---|---|
curve |
XY line plots with legend, zoom, download |
histogram |
Bar histogram |
field |
2D heatmap, 3D scalar volume, VTK structured points, unstructured mesh, vector/flow |
table |
Data tables |
sequence |
Animated frame sequences |
image |
PNG/JPEG images |
mapviewer |
Geographic maps (scatter, choropleth, heatmap layers) |
string, number, integer, boolean |
Scalar outputs |
log |
Simulation log output |
Documentation
Full documentation is available at https://rappture2web.readthedocs.io.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rappture2web-0.1.14.tar.gz.
File metadata
- Download URL: rappture2web-0.1.14.tar.gz
- Upload date:
- Size: 3.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c538746740ae1aeb90d1d3108b3bf1edbc226d0ad4bc4abc7bcb6e2b7ea8eff
|
|
| MD5 |
4cab7483298e1bba265ba8077237f808
|
|
| BLAKE2b-256 |
ce99e292a0c0d54c3581f69654a549e8a2d4d20cbc651b96302d21b36e52fccd
|
File details
Details for the file rappture2web-0.1.14-py3-none-any.whl.
File metadata
- Download URL: rappture2web-0.1.14-py3-none-any.whl
- Upload date:
- Size: 3.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5dd9456b36ae10de765793632350f97d76144f00c9c829deb4cea5490a9a7edf
|
|
| MD5 |
54eae711cf237842b0efe7de7a9ea4b6
|
|
| BLAKE2b-256 |
01df2d6d02f6fe523419be8f77c0eb6e9e921dd44afe585be14ff22847c33ea5
|