Fix/chart-link-cluster-mode (#474)

This commit is contained in:
Nir Parisian
2023-10-02 19:10:04 +03:00
committed by GitHub
parent 88ea89a5ba
commit c251e6c697
19 changed files with 157 additions and 170 deletions

View File

@@ -1,91 +1,39 @@
# Helm dashboard V2
# Helm dashboard React
Welcome to our new project, upgrading helm dashbord, we call it, Helm Dashboard version... 2! 🤩
Helm dashboard V2 is an open source effort to modernize the helm-dashboard.
Our goals are to create a version which is more:
1. Maintable
Welcome to the frontend of the helm dashboard.
We care most about keeping the project:
1. Maintainable
2. Extendable
3. Contributor friendly
## What is helm?
First thing first, if you are new here please check out these resources to see what helm is all about
[Video](https://www.youtube.com/watch?v=fy8SHvNZGeE)
[Article](https://kruschecompany.com/helm-kubernetes/)
# Legacy dashboard vs dashboard V2
The legacy dashboard found [here](https://github.com/komodorio/helm-dashboard/tree/main/pkg/dashboard/static) is a static webapp and was written vanilla css, jquery, javascript and html. If you inspect the code abit you may notice that its relitvly hard to extend and maintain such a project.
Our goal with dashboard V2 is to improve the ability to maintain and extend our dashboard app. To achive this we are using a more modern frontend stack.
# The FE Stack
- Vite, as our build tool.
- React will be used to make this project more inviting for developers to contribute too.
- React, as our UI library.
- TypeScript and ESLint will keep the project safe, please keep them clean.
- Tailwind will be used for styling.
- React-Query will be used to fetch data from the backend.
- Tailwind for styling.
- React-Query for fetching data from the backend.
- Storybook is utilized to develop a component library.
Please follow through the file structure to understand how things are structured and should be used.
# Contribution guide
## Running legacy dashboard
The legacy dashboard is great for refrence and checking that you have implemented the UI correctly.
1. Install [helm](https://helm.sh/docs/intro/install/) and [kubectl](https://kubernetes.io/docs/tasks/tools/).
2. `git clone https://github.com/komodorio/helm-dashboard.git`.
3. `go build -o bin/dashboard .`
4. `bin/dashboard`
The UI should now be running on http://localhost:8080/
If you're having issues with that please follow the main README in the main folder.
If you still having troubles please contact us on our [Slack community channel](https://join.slack.com/t/komodorkommunity/shared_invite/zt-1lz4cme86-2zIKTRtTFnzL_UNxaUS9yw)
## Setting up your development environment
1. First you should fork this repositroy.
1. First you should fork this repository.
2. Clone your new repository using `git clone <https_or_ssh_url>`.
3. Make sure to checkout branch `helm-dashboard-v2`.
- `git fetch`
- `git checkout helm-dashboard-v2`
## Running dashboard V2
## Running helm dashboard
1. Make sure you cloned the project correctly. This is explained in this [stage](https://github.com/komodorio/helm-dashboard/blob/helm-dashboard-v2/dashboard/README.md#setting-up-your-development-environment).
2. go to `helm-dashboard-v2/dashboard` in your local project.
3. inorder to install dependncies and start the development server
2. run the backend server. This is also explained in the above link.
2. go to `frontend` in your local project.
3. in order to install dependencies and start the development server
- `npm i`
- `npm run dev`
4. with the default integration the dashboard should run on http://localhost:5173/
## Setting up a local cluster with ease
1. Install [Docker](https://docs.docker.com/engine/install/ubuntu/)
2. Install [Minikube](https://minikube.sigs.k8s.io/docs/start/)
3. Start your cluster `minikube start`
You should now be able to follow the [Helm tutorial](https://helm.sh/docs/intro/quickstart/) and interact with Helm normally.
## Choosing a task
If you are completely new to the project its recommended to look for tasks labled: `good first issue`.
These tasks should be simple enough for a begginer or for someone looking to learn the code base.
You are also free to reachout to us on [Slack](https://join.slack.com/t/komodorkommunity/shared_invite/zt-1lz4cme86-2zIKTRtTFnzL_UNxaUS9yw), we can help you find a task that suits your perfectly.
## Opening a pull request
Inorder to open a pull request with your changes. \
1. make sure you are synced with `helm-dashboard-v2` and that all conflicts are resolved. \
2. commit your changes and push to your fork. \
3. then navigate to https://github.com/komodorio/helm-dashboard and open a pull request. Make sure you are merging from your branch to `helm-dashboard-v2`. \
4. you should now tag a main developer (@chad11111
for example) and get your pull request reviewed.
# Component library