A minimal FastAPI Markdown viewer deployed with Docker Compose and Caddy
  • Python 89.6%
  • Dockerfile 10.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-31 12:00:16 +00:00
app feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
content feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
tests feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
.dockerignore feat: add FastAPI Markdown demo with Caddy 2026-08-31 11:32:35 +00:00
.gitignore feat: add FastAPI Markdown demo with Caddy 2026-08-31 11:32:35 +00:00
Caddyfile feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
compose.yaml feat: add FastAPI Markdown demo with Caddy 2026-08-31 11:32:35 +00:00
Dockerfile feat: add FastAPI Markdown demo with Caddy 2026-08-31 11:32:35 +00:00
pyproject.toml feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
README.md feat: rename service to Marklight 2026-08-31 12:00:16 +00:00
uv.lock feat: rename service to Marklight 2026-08-31 12:00:16 +00:00

Marklight

Marklight is a minimal web application that reads content/README.md, renders it as HTML with FastAPI, and serves it through Caddy with automatic HTTPS.

Run locally

uv sync --dev
uv run pytest -q
docker compose up -d --build

The production Compose deployment expects marklight.dev.nextdorf.de to resolve to the host. Caddy obtains and renews its TLS certificate automatically.

Update the page

Edit content/README.md, then redeploy:

git pull --ff-only
docker compose up -d --build

Endpoints

  • / — rendered Markdown
  • /health — application health check