Skip to content

Commit acf32da

Browse files
docs: improve README formatting and structure (#2)
1 parent a4b159e commit acf32da

File tree

1 file changed

+42
-32
lines changed

1 file changed

+42
-32
lines changed

README.md

Lines changed: 42 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -53,18 +53,18 @@ This UI communicates with the API Server to provide a user-friendly interface fo
5353
┌─────────────────────────────────────────────┐
5454
│ Kubernetes Cluster │
5555
│ │
56-
│ ┌──────────────┐ ┌──────────────┐ │
57-
│ │ Forkspacer │◄────►│ API Server │ │
58-
│ │ Operator │ │ (Backend) │ │
59-
│ │ (watches │ │ (REST API) │ │
60-
│ │ CRDs) │ └──────┬───────┘ │
61-
│ └──────────────┘ │ │
62-
│ │ │
63-
│ ┌────────▼───────┐ │
64-
│ │ Operator UI │◄──┼─── Users
65-
│ │ (Frontend) │ │
66-
│ │ (Nginx) │ │
67-
│ └────────────────┘ │
56+
│ ┌──────────────┐ ┌──────────────┐
57+
│ │ Forkspacer │◄────►│ API Server │
58+
│ │ Operator │ │ (Backend) │
59+
│ │ (watches │ │ (REST API) │
60+
│ │ CRDs) │ └──────┬───────┘
61+
│ └──────────────┘ │
62+
│ │
63+
│ ┌────────▼───────┐
64+
│ │ Operator UI │◄────┼─── Users
65+
│ │ (Frontend) │
66+
│ │ (Nginx) │
67+
│ └────────────────┘
6868
└─────────────────────────────────────────────┘
6969
```
7070

@@ -176,29 +176,34 @@ spec:
176176
### Module Components Explained
177177
178178
**Metadata:**
179+
179180
- `name`: Module identifier
180181
- `category`: Classification (database, monitoring, storage, etc.)
181182
- `description`: Human-readable description
182183
- `resource_usage`: Expected CPU/memory consumption
183184

184185
**Config:**
186+
185187
- Dynamic form fields rendered in the UI
186188
- Types: `option`, `integer`, `string`, `boolean`
187189
- Each config item has validation rules (required, min/max, values)
188190
- UI auto-generates forms based on config definitions
189191

190192
**Spec:**
193+
191194
- `repo`: Helm repository URL
192195
- `chartName`: Helm chart name
193196
- `version`: Chart version (supports templating)
194197
- `values`: Helm values (from file, raw YAML, or ConfigMap)
195198

196199
**Outputs:**
200+
197201
- Connection information exposed after deployment
198202
- Can reference static values or Kubernetes secrets
199203
- Displayed in the UI for easy access
200204

201205
**Workspace:**
206+
202207
- Associates the module with a workspace
203208
- Enables multi-tenancy and resource isolation
204209

@@ -250,10 +255,10 @@ spec:
250255
app: operator-ui
251256
spec:
252257
containers:
253-
- name: operator-ui
254-
image: ghcr.io/forkspacer/operator-ui:v0.1.0
255-
ports:
256-
- containerPort: 80
258+
- name: operator-ui
259+
image: ghcr.io/forkspacer/operator-ui:v0.1.0
260+
ports:
261+
- containerPort: 80
257262
---
258263
apiVersion: v1
259264
kind: Service
@@ -264,8 +269,8 @@ spec:
264269
selector:
265270
app: operator-ui
266271
ports:
267-
- port: 80
268-
targetPort: 80
272+
- port: 80
273+
targetPort: 80
269274
type: ClusterIP
270275
```
271276

@@ -507,17 +512,20 @@ docker run -p 8080:80 ghcr.io/forkspacer/operator-ui:v0.1.0
507512
#### Version Bumping Guidelines
508513

509514
**Patch version (v0.1.0 → v0.1.1):**
515+
510516
- Bug fixes
511517
- Security patches
512518
- Documentation updates
513519
- Performance improvements (no API changes)
514520

515521
**Minor version (v0.1.1 → v0.2.0):**
522+
516523
- New features
517524
- New UI components
518525
- API additions (backwards compatible)
519526

520527
**Major version (v0.9.0 → v1.0.0):**
528+
521529
- First stable production release
522530
- Breaking API changes
523531
- Major architectural changes
@@ -623,20 +631,20 @@ metadata:
623631
spec:
624632
ingressClassName: nginx
625633
tls:
626-
- hosts:
627-
- forkspacer-ui.example.com
628-
secretName: operator-ui-tls
634+
- hosts:
635+
- forkspacer-ui.example.com
636+
secretName: operator-ui-tls
629637
rules:
630-
- host: forkspacer-ui.example.com
631-
http:
632-
paths:
633-
- path: /
634-
pathType: Prefix
635-
backend:
636-
service:
637-
name: operator-ui
638-
port:
639-
number: 80
638+
- host: forkspacer-ui.example.com
639+
http:
640+
paths:
641+
- path: /
642+
pathType: Prefix
643+
backend:
644+
service:
645+
name: operator-ui
646+
port:
647+
number: 80
640648
```
641649
642650
---
@@ -648,7 +656,8 @@ spec:
648656
Configure the API server endpoint in `src/config.ts`:
649657

650658
```typescript
651-
export const API_BASE_URL = process.env.REACT_APP_API_URL || 'http://localhost:8080';
659+
export const API_BASE_URL =
660+
process.env.REACT_APP_API_URL || "http://localhost:8080";
652661
```
653662

654663
### Custom Nginx Configuration
@@ -755,6 +764,7 @@ This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENS
755764
## Acknowledgments
756765

757766
Built with:
767+
758768
- [React](https://reactjs.org/) - UI framework
759769
- [Create React App](https://create-react-app.dev/) - Build tooling
760770
- [TypeScript](https://www.typescriptlang.org/) - Type safety

0 commit comments

Comments
 (0)