Weather App Repository Operations
Purpose
Section titled “Purpose”Weather App is the application workload used to validate secure delivery, container hardening, GitOps promotion, Kubernetes controls and observability practices. The repository keeps the application code close to its tests and image definitions while platform automation moves into dedicated project boundaries.
Repository Layout
Section titled “Repository Layout”Directorypackages/
Directorybackend/ Backend API, validation, tests and Dockerfile
- …
Directoryfrontend/ React UI, Nginx proxy configuration and Dockerfile
- …
Directorytests/ Cypress and local E2E compose setup
- …
Directoryansible/ VPS deployment automation retained for comparison and migration evidence
- …
- REPORT.md Detailed engineering report
- Makefile Local bootstrap commands
Related Repositories
Section titled “Related Repositories”| Repository | Responsibility |
|---|---|
homelab-platform |
Platform automation, substrate evaluation, OPNsense, GitOps, observability and GOAD |
gitlab-ci-templates |
Reusable GitLab CI components, templates and pipeline policy checks |
portfolio-docs |
Documentation-as-code site, ADRs, runbooks, postmortems and freshness data |
Local Development
Section titled “Local Development”- Initialize the workstation tooling with
make init. - Install workspace dependencies with
bun install. - Run unit tests with
bun run unit-test:all. Run backend integration tests with
bun run integration-test:backend.- Run local E2E tests with
bun run e2e:local.
Service Commands
Section titled “Service Commands”cd packages/backendbun run startHealth endpoint:
http://localhost:3001/healthcd packages/frontendbun run startDevelopment endpoint:
http://localhost:3000bun run docs:devbun run docs:checkbun run docs:buildKubernetes Status
Section titled “Kubernetes Status”The repository contains the first Kubernetes implementation with Flux, Helm, Kyverno, NetworkPolicies, Traefik, WAF and monitoring. The current operating model standardizes new platform work around Argo CD while keeping the earlier implementation as migration evidence.
The Kubernetes distribution is intentionally not locked in this document. Talos, K3s and other options must be compared in an ADR before the platform baseline is finalized.
Documentation Ownership
Section titled “Documentation Ownership”Operational pages live in this documentation site so service behavior, platform constraints and incident procedures stay close to the code they describe. README files stay concise and point to the structured documentation when a topic needs diagrams, runbooks or decision history.