Skip to content

Commit 3aad813

Browse files
committed
Update CONTRIBUTING.md with detailed instructions for contributors to set up development environment, including the tech stack requirements, starting a local Kubernetes cluster, checking out the code, configuring environment variables, and launching the local development instance.
1 parent 9197dbb commit 3aad813

File tree

1 file changed

+47
-21
lines changed

1 file changed

+47
-21
lines changed

CONTRIBUTING.md

Lines changed: 47 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,69 +5,95 @@ All contributions are welcome. For simple typo's, just open a PR. For bigger ide
55

66
Willing to contribute something, but you don't know where to start? Have a look into the [Roadmap](https://github.com/orgs/kubero-dev/projects/1).
77

8-
## Process
8+
## Contribution Process
99
1. Setup your development environment
1010
2. Fork the repository and checkout the code
1111
3. Create a new branch
1212
4. Make your changes
1313
5. Open a PR
1414

15+
## Techstack
16+
**Infrastructure**
17+
- [Kubernetes](https://kubernetes.io/)
18+
- [Operator SDK](https://sdk.operatorframework.io/)
19+
- [Helm (Operator)](https://helm.sh/)
20+
- [Kind (Development)](https://kind.sigs.k8s.io/)
21+
22+
**Code**
23+
- [Express](https://expressjs.com/)
24+
- [TypeScript](https://www.typescriptlang.org/)
25+
- [Vue.js](https://vuejs.org/)
26+
- [Vuetify](https://vuetifyjs.com/en/)
27+
28+
1529
## Development setup for the Kubero UI
1630

1731
### Requirements
18-
- docker
19-
- kind
20-
- kubectl
21-
- kubero-cli
22-
- git
2332

33+
To get started with Kubero development, you will need the following toolbelt:
2434

25-
### 1) Start a local Kubernetes cluster with Kind
35+
- Docker
36+
- Kind (Kubernetes in Docker)
37+
- Kubectl
38+
- [Kubero CLI](https://github.com/kubero-dev/kubero-cli/releases/latest)
39+
- Git
40+
- Code editor of your choice (VSCode, Webstorm, Atom, ...)
41+
42+
### 1) Start a Local Kubernetes Cluster with Kind
2643
Run `kubero install` with the [CLI](https://github.com/kubero-dev/kubero-cli/releases/latest) and select `kind`.
2744
This will install a local cluster with a single node and all required components.
2845

2946
You can skip the kubero-UI step since we will use our local code.
3047

31-
### 2) Export the kubeconfig
48+
### 2) Export the Kubeconfig
3249
```bash
3350
kind export kubeconfig --name kubero-XXX --kubeconfig ./kubeconfig
3451
```
52+
This step exports the kubeconfig for your local cluster, making it available for Kubero.
3553

36-
### 3) Create a dev namespace
37-
This step is optional but will avoid interference with the local InCluster kubero-ui instance.
54+
### 3) Create a Development Namespace (Optional)
55+
Although optional, creating a separate namespace helps prevent interference with the local in-cluster Kubero-UI instance.
3856
```bash
3957
kubectl create namespace kubero-dev
4058
```
4159

42-
### 4) Prepare your local code
43-
Fork the repository https://github.com/kubero-dev/kubero into your account.
60+
### 4) Checkout the Code
61+
1. Fork the [Kubero](https://github.com/kubero-dev/kubero) repository to your GitHub account.
62+
2. Clone your forked repository to your local machine.
4463

45-
Clone your Fork to your local disk.
64+
```bash
65+
git clone https://github.com/YOUR_USERNAME/kubero.git
66+
cd kubero
67+
```
4668

47-
### 5) Configure Kubero's environment
69+
### 5) Start Your Local Instance
70+
Navigate to the server directory, and rename the .env.template file to .env to set up the required environment variables.
4871
```bash
72+
cd server
4973
mv .env.template .env
5074
```
5175

52-
### 6) Start local node server
53-
This will start the server part.
76+
Install the dependencies, and start the server:
5477
```bash
55-
cd server
5678
yarn install
5779
yarn dev
5880
```
5981

60-
Initiate the client JS part.
82+
Next, set up the client JavaScript part:
6183
```bash
6284
cd client
6385
yarn install
6486
yarn watch
6587
```
6688

67-
You should be able to reach your local dev instance via http://localhost:2000
89+
You should now be able to access your local development instance at http://localhost:2000
6890

69-
### 7) start optional services
70-
If you need any additional services (Gitea, Github ...), just run `docker-compose up -d`, or add it to the `docker-compose.yml` file, if it is missing.
91+
### 6) Start Additional Services (Optional)
92+
If you need additional services (such as Gitea or GitHub integration), run the following command to start them via Docker:
93+
```bash
94+
docker-compose up -d
95+
```
96+
If any services are missing, you can add them to the `docker-compose.yml` file.
7197

7298
Nope. No extra database is required. All data is stored in the Kubernetes cluster.
7399

0 commit comments

Comments
 (0)