aldhairmartinez.com
Observability

How this site is observed

This page is meant to stay accurate, not aspirational — it's updated as each piece actually ships, not before.

01

Production architecture

How a commit becomes a live page, end to end.

Local Development

Code is written, tested, and built locally before anything ships.

YOUR MACHINE

GitHub

Every commit is pushed to a public, version-controlled repository.

SOURCE OF TRUTH

Cloudflare Pages

Builds the static export and deploys it to production automatically.

CI/CD • DEPLOY

Cloudflare Edge

Static assets are cached and served from Cloudflare's global network.

GLOBAL DELIVERY

Cloudflare DNS

Resolves aldhairmartinez.com to the nearest edge location.

DNS → PAGES

Visitor

The site loads over HTTPS on desktop and mobile alike.

WEB & MOBILE
Frontend stack
Next.jsReactTypeScriptTailwind CSSStatic Export → /outNo backend yetHTTPS enabled
02

Pipeline

Current status of each stage in the long-term telemetry architecture.

Browser

live

Next.js / TypeScript / React, statically exported

Grafana Faro

live

Frontend instrumentation SDK, connected in dev and production

Python / FastAPI backend

planned

Application layer for backend telemetry

PostgreSQL / Redis / Kafka

planned

Data and messaging layer

OpenTelemetry / Grafana Alloy

planned

Collector and pipeline layer

Grafana Cloud

planned

Metrics, logs, traces, profiles backend

03

Implemented today

live

The site itself is statically exported and served from Cloudflare Pages' CDN.

live

The Grafana Faro Web SDK, in components/analytics/FaroInit.tsx, is connected to a real Grafana Cloud Frontend Observability collector — live in both local development and production, gated behind NEXT_PUBLIC_FARO_URL. Errors, Web Vitals, and session data are collected at 100% sampling for V1. Session Replay isn't enabled yet.

04

Planned

  • Enable Grafana Faro Session Replay once it's available on this stack.
  • Add a Python/FastAPI backend service as the first non-static piece of the stack.
  • Introduce PostgreSQL, Redis, and eventually Kafka as backend state and messaging needs arise.
  • Deploy an OpenTelemetry Collector (Grafana Alloy) to receive and route telemetry from both frontend and backend.
  • Add synthetic monitoring for availability and deployment health.
  • Add k6 load testing once there's a backend worth load testing.
  • Introduce Docker, Kubernetes/EKS, and Terraform as the backend and infrastructure footprint grows.
05

Why build it this way

Most portfolio sites either skip observability entirely or fake it with a screenshot of someone else's dashboard. Neither is interesting. This page exists so the site's own telemetry story is something a visitor — or another engineer — can actually verify against the code, not just take on faith. No credentials or collector endpoints are hardcoded anywhere in this repository; everything above is configured through environment variables, and this page will be updated as each stage moves from planned to real.