{"id":22546536,"url":"https://github.com/deephaven/deephaven-js-plugins","last_synced_at":"2025-08-09T17:20:11.283Z","repository":{"id":38339815,"uuid":"470182324","full_name":"deephaven/deephaven-js-plugins","owner":"deephaven","description":"Deephaven JS Plugins","archived":false,"fork":false,"pushed_at":"2025-03-11T19:34:13.000Z","size":1247,"stargazers_count":1,"open_issues_count":1,"forks_count":5,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-06-19T19:03:55.426Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/deephaven.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":"2022-03-15T13:54:13.000Z","updated_at":"2023-08-21T16:31:31.000Z","dependencies_parsed_at":"2025-04-10T00:52:23.540Z","dependency_job_id":"46fa3358-9f83-41d0-b783-932a7851d0c3","html_url":"https://github.com/deephaven/deephaven-js-plugins","commit_stats":{"total_commits":24,"total_committers":6,"mean_commits":4.0,"dds":0.5833333333333333,"last_synced_commit":"1b6504b5bed6bb22be5b7b96abf6180050e2fdb3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/deephaven/deephaven-js-plugins","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fdeephaven-js-plugins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fdeephaven-js-plugins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fdeephaven-js-plugins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fdeephaven-js-plugins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deephaven","download_url":"https://codeload.github.com/deephaven/deephaven-js-plugins/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deephaven%2Fdeephaven-js-plugins/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267294180,"owners_count":24065343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-27T02:00:11.917Z","response_time":82,"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-12-07T15:08:09.612Z","updated_at":"2025-07-27T03:33:39.268Z","avatar_url":"https://github.com/deephaven.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DEPRECATED\n\nPlease use the monorepo at https://github.com/deephaven/deephaven-plugins\n\nThe `plugins` folder contains internally developed JS Plugin modules. Each plugin should be the following:\n\n- Based off the [JS Module Plugin template](https://github.com/deephaven/deephaven-js-plugin-template/)\n- Package name `@deephaven/js-plugin-\u003cfolderName\u003e`\n- Independent versioning, `npm install`, `npm run build`\n- Exported as a CJS bundle\n- Externalize `react`, `react-dom`, `redux`, and `react-redux` if used\n\n## Development\n\nFirst run `npm install` to install dependencies.\n\nYou can build the plugin(s) in watch mode from the root directory of this repo by using the following commands:\n\n```shell\nnpm start # starts all plugins in watch mode\n# OR\ncd plugins/plugin\nnpm start # starts just the current directory plugin in watch mode\n```\n\nThis will rebuild the plugin(s) any time the source changes. Changes can be reflected by refreshing the Deephaven web IDE page after the build finishes.\n\nTo build for publishing, run\n\n```shell\nnpm run build\n```\n\nNext, create a `manifest.json` file in the `plugins` directory of this project or modify the existing one.\n\nIn it, there should be JSON containing a plugins object containing metadata about all plugins to use, e.g.:\n```\n{\n  \"plugins\": [\n    {\n      /** Name of the plugin, and relative path from this manifest to the plugin's root folder. */\n      \"name\": \"...\", \n\n      /** Version of the plugin. */\n      \"version\": \"...\", \n\n      /** Location of the primary entry point for the plugin. */\n      \"main\": \"...\" \n    },\n    ...\n  ]\n}\n```\n\nFor example, if using matplotlib and plotly plugins with version 0.1.0, the file looks like this:\n\n```\n{\n    \"plugins\": [\n      { \"name\": \"matplotlib\", \"version\": \"0.1.0\", \"main\": \"dist/index.js\" },\n      { \"name\": \"plotly\", \"version\": \"0.1.0\", \"main\": \"dist/index.js\" }\n    ]\n}\n```\n\nThen, build [deephaven-core](https://github.com/deephaven/deephaven-core). The directions below are relative to the root directory of your deephaven-core repo, but you can create the venv elsewhere if you'd like.\n\nWithin the deephaven-core repo, create a venv.\n\n```\npython -m venv .venv\nsource .venv/bin/activate\n```\n\nThen, build and install the python server wheels. The version number will depend on which release `deephaven-core` is currently on.\n\n```\n./gradlew :py-server:assemble :py-embedded-server:assemble\n\npip install py/server/build/wheel/deephaven_core-0.20.0-py3-none-any.whl py/embedded-server/build/wheel/deephaven_server-0.20.0-py3-none-any.whl\n```\n\nFinally, install the plugin wheels for the plugins, plotly and matplotlib in this example. See directions in the repos for the python plugins you're working with to learn how to build the wheels. Substitute in your local wheel locations.\n\n```\npip install \u003cplotly-plugin-path\u003e/deephaven-plugin-plotly/dist/deephaven_plugin_plotly-0.0.1.dev2-py3-none-any.whl \u003cmatplotlib-plugin-path\u003e/deephaven-plugin-matplotlib/dist/deephaven_plugin_matplotlib-0.1.1-py3-none-any.whl\n```\n\nIf you're reinstalling the python wheels without a version bump (generally for the purpose of development), you'll want to add the `--force-reinstall` tag. The `--no-deps` tag is also recommended as `--force-reinstall` will update all the dependencies as well, which is generally unnecessary.\nFor example, on reinstalls the above command becomes \n```\npip install --force-reinstall --no-deps \u003cplotly-plugin-path\u003e/deephaven-plugin-plotly/dist/deephaven_plugin_plotly-0.0.1.dev2-py3-none-any.whl \u003cmatplotlib-plugin-path\u003e/deephaven-plugin-matplotlib/dist/deephaven_plugin_matplotlib-0.1.1-py3-none-any.whl\n```\n\nUsing the path to your local deephaven-js-plugins repo where the manifest.json is contained (which will be in the `plugins` directory if you followed the steps above), start the server with the following command:\n\n```\nSTART_OPTS=\"-Ddeephaven.jsPlugins.resourceBase=\u003cjs-plugins-path\u003e/deephaven-js-plugins/plugins\" ./gradlew server-jetty-app:run\n```\n\nThe deephaven IDE can then be opened at http://localhost:10000/ide/, with your plugins ready to use.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeephaven%2Fdeephaven-js-plugins","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeephaven%2Fdeephaven-js-plugins","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeephaven%2Fdeephaven-js-plugins/lists"}