ray-project / ray

Ray is a unified framework for scaling AI and Python applications. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.
https://ray.io
Apache License 2.0
32.24k stars 5.49k forks source link

[Dashboard] Publish NPM library #36455

Open thatcort opened 1 year ago

thatcort commented 1 year ago

Description

It would be great to have a Typescript/Javascript NPM library so that other TS/JS applications can monitor and interact with a Ray cluster as done in the dashboard. This will enable embedding into other applications without needing to expose the full Dashboard UI.

Use case

Embed Dashboard functionality in an application without exposing the full Dashboard UI. For example, this could expose information and controls for specific jobs or actors, while hiding the full complexity of the cluster state.

xieus commented 1 year ago

@thatcort could you pls provide a bit more details about your project?

thatcort commented 1 year ago

I would like to be able to embed Ray dashboard functionality in a third-party app. For example, suppose I launch a job on the Ray cluster, I would like to be able to track it in both NodeJS and the browser, and present a custom view of progress to application end users. Or I might want to coordinate tasks occurring on the cluster with other tasks occurring in NodeJS: For example when a task completes, notify a user or launch a new task on the cluster. The main point is that these sorts of overview tasks should occur in Javascript/Typescript with the rest of the middle tier tasks.