Skip to content

The repository that contains all source code for the ZenML UI.

License

Notifications You must be signed in to change notification settings

znegrin/zenml-dashboard

 
 

Repository files navigation


Logo

Open-source companion dashboard for ZenML.

Manage and visualize your ML pipelines, stacks and artifacts in one place.
Explore the docs »

Join our Slack Slack Community and be part of the ZenML family.

Features · Roadmap · Report Bug · Vote New Features · Read Blog · Meet the Team

Logo Logo

🏁 Table of Contents
  1. ⚡ Getting Started
  2. 🏄 User Experience
  3. 🙌 Contributing
  4. 👩‍👩‍👧‍👦 Meet the Team
  5. 🆘 Getting Help
  6. 📜 License

⚡ Getting Started

🔋 Installation

The installation is as follows:

First, there is a pre-requisite to use node version 14.20.0 exactly. One can do this by installing the nvm utility and then doing

nvm install 14.20.0
nvm use 14.20.0

Users also need to have yarn installed.

Then you can run it by doing:

yarn install
yarn start

To build it:

yarn build

The app takes the following env variables:

REACT_APP_BASE_API_URL="<YOUR_ZENML_SERVER_DEPOLOYMENT_URL>/api/v1"

To learn how to get the YOUR_ZENML_SERVER_DEPOLOYMENT_URL, read the deployment guide.

Lastly, if you would like to use Docker, then the ZenML team provides [DockerHub] images to serve the ZenML Server and Dashboard in one image:

docker run -it -d -p 8080:80 zenmldocker/zenml-server

Which will serve the dashboard with the server at http://localhost:8080, with username default and an empty password.

👨‍👦 Relationship with ZenML

The ZenML Dashboard is a Javascript React-based application that lives inside this repository, which is a sister repository of the main ZenML Python package repo.

Note - The ZenML Dashboard is meant to be used with the ZenML Server as a backend and cannot be used standalone.

The dashboard build files come bundled into the ZenML PyPi package and can be served locally and/or deployed on the cloud through the main ZenML python package.

Basically, each ZenML Python package comes with the build files (generated by yarn build) of a certain version of this dashboard (all build files of the dashboard can be seen in the releases section of this GitHub repo). Therefore, each ZenML PyPi package has bundled in it a corresponding version of this dashboard.

With the Python package, you can then serve these static build files by doing:

zenml up

img

Which creates a local daemon that serves the files in a FastAPI server!

🪐 Deploying the dashboard

You can deploy this dashboard on supported cloud providers with ZenML python package by using the command:

zenml deploy

The above command deploys the dashboard in the same process as the ZenML Server, and automates a lot of the nitty gritties for you.

However, the option to deploy standalone is also available. yarn build creates a build directory with a production build of the dashboard. Set up your favorite HTTP server so that a visitor to your site is served index.html. Here are 8 ways to deploy a React app for free as a starting point.

Just don't forget to the set the REACT_APP_BASE_API_URL environment variable!

🏄 User Experience

🔐 Log In

img

🏠 Home Page

img

🗂 Pipelines, Stacks and Components

img

🙌 Contributing

We would love to develop ZenML together with our community! Best way to get started is to select any issue from the good-first-issue label.

If you would like to contribute, please review our Contributing Guide for all relevant details.

👩‍👩‍👧‍👦 Meet the Team

Meet the Team

Every week, the ZenML core team will pop in for 30 minutes to interact directly with the community. Sometimes we'll be presenting a feature, other times we'll take questions and have fun.

Register now for the ZenML Meet the Community session. It's free and open to everyone.

Or subscribe to our public events calendar to get notified before every community gathering.

🆘 Getting Help

By far the easiest and fastest way to get a response is to:

  1. Ask your questions in our Slack group.
  2. Open an issue on our GitHub repo.

📜 License

ZenML Dashboard is distributed under the terms of the Apache License Version 2.0. A complete version of the license is available in the LICENSE file in this repository. Any contribution made to this workspace will be licensed under the Apache License Version 2.0.

About

The repository that contains all source code for the ZenML UI.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 94.0%
  • SCSS 4.7%
  • CSS 1.1%
  • Other 0.2%