Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rappture2web-0.1.8.tar.gz (3.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rappture2web-0.1.8-py3-none-any.whl (3.4 MB view details)

Uploaded Python 3

File details

Details for the file rappture2web-0.1.8.tar.gz.

File metadata

  • Download URL: rappture2web-0.1.8.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

Hashes for rappture2web-0.1.8.tar.gz
Algorithm Hash digest
SHA256 5fcb6ce8c85ea512a763a9c3041022d65da9bf0d7cb27a8906a9efdcb7665564
MD5 8250757279cb5d3e92cf948cca62e40f
BLAKE2b-256 ff348d6ae1cef7aa9830018e4d5f3f4640fbb6f835868e69a074be5aa6287192

See more details on using hashes here.

File details

Details for the file rappture2web-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: rappture2web-0.1.8-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

Hashes for rappture2web-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 402820393925c6bf07367e54c42830392ca38efdaf887509b917acd4a40ec54c
MD5 fe7cacc121886ca78b9abd052bad173f
BLAKE2b-256 15a7a179be056112780925ac88735e0d14884db76958a03ff31b47b5498aff76

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page