Skip to content

docs: document the Nomad platform features (LB, telemetry, security, autoscaling) - #1

Merged
pipozzz merged 2 commits into
mainfrom
docs/nomploy-platform-features
Oct 13, 2026
Merged

pipozzz merged 2 commits into
mainfrom
docs/nomploy-platform-features

Conversation

@pipozzz

@pipozzz pipozzz commented Oct 13, 2026

Copy link
Copy Markdown

The rendered docs (docs.nomploy.com) and the landing page had no coverage of nomploy's platform differentiators. This adds proper guides and surfaces them.

Docs (apps/docs/content/docs/core/)

New pages, wired into the Core sidebar under Advanced (next to Cluster):

  • Load Balancer — HA Traefik pool (nomploy-traefik-ha), DNS-based failover (health-pruned A records + CNAME), certs shared via Consul KV, Metrics & Logs tabs, DNS-01 note.
  • Telemetry — built-in OpenTelemetry Collector → any OTLP backend (SigNoz / Grafana / Datadog), Consul service auto-discovery, signal toggles (service metrics, Nomad metrics, service logs via per-node agent, LB logs), SigNoz dashboards.
  • Security (CrowdSec) — detect vs enforce, the local LAPI + bouncers flow, anti-lockout allowlist, plus the security & observability alert metrics (crowdsec_active_bans, crowdsec_detector_up, otel_collector_up, log_agent_up).
  • Autoscaling — the three scaling surfaces (app replicas, live scaling, cluster node autoscaler) and the desired-count model + pinned-node min gotcha.

Landing (apps/website)

Added two homepage feature cards: Built-in Security (CrowdSec) and OpenTelemetry Pipeline.

Content is ported from the vetted guides in the main repo's docs/ and expanded. No app/runtime code changed.

The rendered docs and landing had no pages for nomploy's platform
differentiators. Add proper guides and surface them:

- docs: Load Balancer (HA Traefik pool, DNS failover, shared certs, metrics/logs),
  Telemetry (OpenTelemetry collector → any OTLP backend, signal toggles, SigNoz),
  Security (CrowdSec detect/enforce, anti-lockout, + the security/observability
  alert metrics), Autoscaling (app replicas, live scaling, cluster node autoscaler).
  Wired into the Core sidebar under Advanced.
- landing: add Built-in Security (CrowdSec) and OpenTelemetry Pipeline feature
  cards to the homepage.
- Self-hosted registry: one-click zot + S3/R2 (TLS via DNS-01) for build-from-
  source on a cluster, plus bring-your-own + Add Registry and cluster trust/auth.
- Nomad Pack deploy: one-click store gallery + manual pack deploy (variables form,
  custom git registry, smoke test).
- Overview: org-wide dashboard aggregating services, domains, backups, deployments.

Wired into the Core sidebar.
@pipozzz
pipozzz merged commit cab81da into main Oct 13, 2026
1 check failed
@pipozzz
pipozzz deleted the docs/nomploy-platform-features branch October 13, 2026 13:40
pipozzz added a commit that referenced this pull request Oct 14, 2026
* chore: make lint-and-typecheck green (biome + TS7 typecheck)

The PR gate never passed (PR #1 was the repo's first), so both steps had
pre-existing debt unrelated to any feature change.

biome:
- biome format across the repo (formatting + organizeImports), 45 files
- ignore the generated apps/docs/public/openapi.json (exceeds size rule)
- relax style/complexity nits for apps/docs/scripts/** (codegen; delete is intentional)

typecheck (under the repo's TypeScript 7.0.2 native compiler + React 19):
- bump framer-motion 11.3.19 -> 14.2.0 (its motion types resolve under TS7/React 19;
  same import path and APIs) — clears 11 motion className errors
- useRef(undefined) / RefObject<Element> cast for React 19 (use-debounce, number-ticker)
- type getTags/getPostsByTag returns in lib/ghost.ts (no more unknown in blog pages)
- blog code renderer: drop the removed react-markdown inline prop; coerce img src
- OG route: wrap Buffer in Uint8Array (valid BodyInit)
- ContactFormModal: map the extra 'other' inquiry type to '' for ContactForm

Both `pnpm biome ci` and `pnpm typecheck` pass locally.

* ci: run lint-and-typecheck on Node 24 (match engines)

CI ran Node 18.18.0 while the repo requires node ^24.4.0 (and the Dockerfiles
already build on node:24.4). On Node 18 the typecheck step crashed launching
TypeScript 7.0.2's extensionless bin (ERR_UNKNOWN_FILE_EXTENSION). Point the
workflow at .nvmrc and bump .nvmrc to 24.4.0 so CI matches the actual runtime.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant