Skip to content

Commit 4008b48

Browse files
committed
Add README with badges, project description, and links to docs
1 parent 50fae49 commit 4008b48

1 file changed

Lines changed: 54 additions & 0 deletions

File tree

README.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# claude-warmup
2+
3+
[![Build](https://github.com/pPrecel/claude-warmup/actions/workflows/build.yaml/badge.svg)](https://github.com/pPrecel/claude-warmup/actions/workflows/build.yaml)
4+
[![Release](https://github.com/pPrecel/claude-warmup/actions/workflows/release.yaml/badge.svg)](https://github.com/pPrecel/claude-warmup/actions/workflows/release.yaml)
5+
[![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](LICENSE)
6+
7+
A production-grade Node.js HTTP server that returns a persistent request counter backed by Redis, deployed on Kubernetes. Built as a reference project demonstrating secure, production-oriented deployment patterns: non-root containers, NetworkPolicy, RBAC, PersistentVolumeClaim, health probes, and automated CI/CD with vulnerability scanning.
8+
9+
```
10+
curl http://localhost:8080
11+
hello claude warmup (requests: 42)
12+
```
13+
14+
## Documentation
15+
16+
- [Overview](docs/overview.md) — Architecture, features, endpoints, tech stack
17+
- [Local Development](docs/local-development.md) — Run with Node.js, Docker, or k3d
18+
- [Deployment](docs/deployment.md) — Production Kubernetes deployment, secret management, security hardening
19+
- [Security & Testing](docs/security-and-testing.md) — Security audit results, test strategy, CI pipeline, running tests locally
20+
- [Release Flow](docs/release-flow.md) — How to cut a release, versioned images, manifest assets, release notes
21+
22+
## Quick start
23+
24+
```bash
25+
# Create cluster
26+
k3d cluster create claude-warmup --wait
27+
28+
# Create Redis secret
29+
kubectl create secret generic redis-credentials \
30+
--from-literal=redis-password=$(openssl rand -base64 24)
31+
32+
# Deploy
33+
kubectl apply -f k8s/
34+
35+
# Test
36+
kubectl port-forward svc/claude-warmup 8080:80
37+
curl http://localhost:8080
38+
```
39+
40+
## CI jobs
41+
42+
Every push to `main` runs three jobs:
43+
44+
| Job | Description |
45+
|-----|-------------|
46+
| `build` | npm audit + Docker build + push to GHCR |
47+
| `scan` | Trivy vulnerability scan (CRITICAL/HIGH) |
48+
| `integration-test` | Full stack deployment on k3d + assertions |
49+
50+
Releases (`v*` tags) additionally run a `release` job that bundles Kubernetes manifests and publishes a GitHub Release.
51+
52+
## License
53+
54+
[ISC](LICENSE)

0 commit comments

Comments
 (0)