trame-client: core client for trame
===========================================================================
.. image:: https://github.com/Kitware/trame-client/actions/workflows/test_and_release.yml/badge.svg
:target: https://github.com/Kitware/trame-client/actions/workflows/test_and_release.yml
:alt: Test and Release
trame-client is the generic single page application that come with `trame <https://kitware.github.io/trame/>`_.
trame-client provides the infrastructure on the client-side (browser) to connect to a trame server, synchronize
its state with the server, make method call, load dynamically components and feed a dynamic template provided by the server.
This package is not supposed to be used by itself but rather should come as a dependency of **trame**.
For any specificity, please refer to `the trame documentation <https://kitware.github.io/trame/>`_.
Installing
-----------------------------------------------------------
trame-client can be installed with `pip <https://pypi.org/project/trame-client/>`_:
.. code-block:: bash
pip install --upgrade trame-client
Usage
-----------------------------------------------------------
The `Trame Tutorial <https://kitware.github.io/trame/docs/tutorial.html>`_ is the place to go to learn how to use the library and start building your own application.
The `API Reference <https://trame.readthedocs.io/en/latest/index.html>`_ documentation provides API-level documentation.
License
-----------------------------------------------------------
trame-client is made available under the MIT License. For more details, see `LICENSE <https://github.com/Kitware/trame-client/blob/master/LICENSE>`_
This license has been chosen to match the one use by `Vue.js <https://github.com/vuejs/vue/blob/dev/LICENSE>`_ which is instrumental for making that library possible.
Community
-----------------------------------------------------------
`Trame <https://kitware.github.io/trame/>`_ | `Discussions <https://github.com/Kitware/trame/discussions>`_ | `Issues <https://github.com/Kitware/trame/issues>`_ | `RoadMap <https://github.com/Kitware/trame/projects/1>`_ | `Contact Us <https://www.kitware.com/contact-us/>`_
.. image:: https://zenodo.org/badge/410108340.svg
:target: https://zenodo.org/badge/latestdoi/410108340
Enjoying trame?
-----------------------------------------------------------
Share your experience `with a testimonial <https://github.com/Kitware/trame/issues/18>`_ or `with a brand approval <https://github.com/Kitware/trame/issues/19>`_.
Runtime configuration
-----------------------------------------------------------
Trame client is the JS core of trame and can be tuned by url parameters. The table below list which parameters we process and how they affect the client.
.. list-table:: URL parameters
:widths: 25 75
:header-rows: 0
* - enableSharedArrayBufferServiceWorker
- When set this will load an extra script that will use a service worker to enable SharedArrayBuffer
* - ui
- Layout name selector. When a trame app define several layout with different name, you can choose which layout should be displayed
* - remove
- By default the URL will be cleaned from trame config parameters (sessionURL, sessionManagerURL, secret, application) but if additional parameters should be removed as well but used in the launcher config, this can be achieved by adding a `&remove=param1,param2`.
The table below leverage environment variables, mainly for the Jupyter Lab context and the iframe builder configuration.
.. list-table:: Environment variables
:widths: 25 75
:header-rows: 0
* - TRAME_JUPYTER_ENDPOINT
- Used by the trame-jupyter-extension
* - TRAME_JUPYTER_WWW
- Used by the trame-jupyter-extension
* - JUPYTERHUB_SERVICE_PREFIX
- Used to figure out server proxy path for iframe builder
* - HOSTNAME
- When "jupyter-hub-host" is used as iframe builder, the hostname will be lookup using that environment variable
* - TRAME_IFRAME_BUILDER
- Specify which iframe builder should be used. If not provided we try to do some smart detection
* - TRAME_IPYWIDGETS_DISABLE
- Skip any iPyWidget iframe wrapping
Development
-----------------------------------------------------------
Build client side code base
.. code-block:: console
cd vue[2,3]-app
npm install
npm run build # build trame client application
cd -
Raw data
{
"_id": null,
"home_page": null,
"name": "trame-client",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "Python, Interactive, Web, Application, Framework",
"author": "Kitware Inc.",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/03/bb/158bf55a32803383b6601d67c02222fa26046877b330cb5a17a19f042ea8/trame-client-3.4.0.tar.gz",
"platform": null,
"description": "trame-client: core client for trame\n===========================================================================\n\n.. image:: https://github.com/Kitware/trame-client/actions/workflows/test_and_release.yml/badge.svg\n :target: https://github.com/Kitware/trame-client/actions/workflows/test_and_release.yml\n :alt: Test and Release\n\ntrame-client is the generic single page application that come with `trame <https://kitware.github.io/trame/>`_.\ntrame-client provides the infrastructure on the client-side (browser) to connect to a trame server, synchronize\nits state with the server, make method call, load dynamically components and feed a dynamic template provided by the server.\n\nThis package is not supposed to be used by itself but rather should come as a dependency of **trame**.\nFor any specificity, please refer to `the trame documentation <https://kitware.github.io/trame/>`_.\n\n\nInstalling\n-----------------------------------------------------------\n\ntrame-client can be installed with `pip <https://pypi.org/project/trame-client/>`_:\n\n.. code-block:: bash\n\n pip install --upgrade trame-client\n\n\nUsage\n-----------------------------------------------------------\n\nThe `Trame Tutorial <https://kitware.github.io/trame/docs/tutorial.html>`_ is the place to go to learn how to use the library and start building your own application.\n\nThe `API Reference <https://trame.readthedocs.io/en/latest/index.html>`_ documentation provides API-level documentation.\n\nLicense\n-----------------------------------------------------------\n\ntrame-client is made available under the MIT License. For more details, see `LICENSE <https://github.com/Kitware/trame-client/blob/master/LICENSE>`_\nThis license has been chosen to match the one use by `Vue.js <https://github.com/vuejs/vue/blob/dev/LICENSE>`_ which is instrumental for making that library possible.\n\n\nCommunity\n-----------------------------------------------------------\n\n`Trame <https://kitware.github.io/trame/>`_ | `Discussions <https://github.com/Kitware/trame/discussions>`_ | `Issues <https://github.com/Kitware/trame/issues>`_ | `RoadMap <https://github.com/Kitware/trame/projects/1>`_ | `Contact Us <https://www.kitware.com/contact-us/>`_\n\n.. image:: https://zenodo.org/badge/410108340.svg\n :target: https://zenodo.org/badge/latestdoi/410108340\n\n\nEnjoying trame?\n-----------------------------------------------------------\n\nShare your experience `with a testimonial <https://github.com/Kitware/trame/issues/18>`_ or `with a brand approval <https://github.com/Kitware/trame/issues/19>`_.\n\n\nRuntime configuration\n-----------------------------------------------------------\n\nTrame client is the JS core of trame and can be tuned by url parameters. The table below list which parameters we process and how they affect the client.\n\n.. list-table:: URL parameters\n :widths: 25 75\n :header-rows: 0\n\n * - enableSharedArrayBufferServiceWorker\n - When set this will load an extra script that will use a service worker to enable SharedArrayBuffer\n * - ui\n - Layout name selector. When a trame app define several layout with different name, you can choose which layout should be displayed\n * - remove\n - By default the URL will be cleaned from trame config parameters (sessionURL, sessionManagerURL, secret, application) but if additional parameters should be removed as well but used in the launcher config, this can be achieved by adding a `&remove=param1,param2`.\n\nThe table below leverage environment variables, mainly for the Jupyter Lab context and the iframe builder configuration.\n\n.. list-table:: Environment variables\n :widths: 25 75\n :header-rows: 0\n\n * - TRAME_JUPYTER_ENDPOINT\n - Used by the trame-jupyter-extension\n * - TRAME_JUPYTER_WWW\n - Used by the trame-jupyter-extension\n * - JUPYTERHUB_SERVICE_PREFIX\n - Used to figure out server proxy path for iframe builder\n * - HOSTNAME\n - When \"jupyter-hub-host\" is used as iframe builder, the hostname will be lookup using that environment variable\n * - TRAME_IFRAME_BUILDER\n - Specify which iframe builder should be used. If not provided we try to do some smart detection\n * - TRAME_IPYWIDGETS_DISABLE\n - Skip any iPyWidget iframe wrapping\n\nDevelopment\n-----------------------------------------------------------\n\nBuild client side code base\n\n.. code-block:: console\n\n cd vue[2,3]-app\n npm install\n npm run build # build trame client application\n cd -\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Internal client of trame",
"version": "3.4.0",
"project_urls": null,
"split_keywords": [
"python",
" interactive",
" web",
" application",
" framework"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "70e018fb220dc58f1ad32ac7a5246aaf8b56134ec1afa6e8cea8192437d9ba85",
"md5": "c8d318586991ba7260601d9bfdd39f5c",
"sha256": "59f45597fe18118d67f702b6d294c3bf75d1e84269dde0c0baa5da1a59d9a453"
},
"downloads": -1,
"filename": "trame_client-3.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c8d318586991ba7260601d9bfdd39f5c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 236257,
"upload_time": "2024-10-20T21:17:13",
"upload_time_iso_8601": "2024-10-20T21:17:13.991963Z",
"url": "https://files.pythonhosted.org/packages/70/e0/18fb220dc58f1ad32ac7a5246aaf8b56134ec1afa6e8cea8192437d9ba85/trame_client-3.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "03bb158bf55a32803383b6601d67c02222fa26046877b330cb5a17a19f042ea8",
"md5": "5186a7d86341af8d1de8edc647b0276a",
"sha256": "60df253adcf640df41e4e769cfe13f298f4a5b6883a604d603479c7bcd3da6cb"
},
"downloads": -1,
"filename": "trame-client-3.4.0.tar.gz",
"has_sig": false,
"md5_digest": "5186a7d86341af8d1de8edc647b0276a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 230707,
"upload_time": "2024-10-20T21:17:15",
"upload_time_iso_8601": "2024-10-20T21:17:15.292221Z",
"url": "https://files.pythonhosted.org/packages/03/bb/158bf55a32803383b6601d67c02222fa26046877b330cb5a17a19f042ea8/trame-client-3.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-20 21:17:15",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "trame-client"
}