Hands-on tutorials for Drasi Server.
| Tutorial | What you learn | How to trigger it |
|---|---|---|
| getting-started | Official Drasi Server getting-started flow (PostgreSQL CDC, queries, log + SSE reactions) | Open the Drasi Server - Getting Started Tutorial dev container (or a Codespace) and follow tutorials/getting-started |
| building-comfort | Smart-building comfort monitoring (PostgreSQL CDC, six comfort/alert queries with synthetic joins, the dashboard reaction) | Open the Drasi Server - Building Comfort Tutorial dev container and follow tutorials/building-comfort |
| otel-observability | Correlate Kubernetes rollouts, OTel health, and a PostgreSQL SLO policy (native OTel source, Collector, dashboard) | Open the Drasi Server - OTel Observability Tutorial dev container and follow tutorials/otel-observability |
See tutorials for the full list of tutorials.
From the repository root:
- Open in VS Code.
- Run Reopen in Container.
- When prompted, choose a configuration:
- Drasi Server - Getting Started Tutorial — opens tutorials/getting-started.
- Drasi Server - Building Comfort Tutorial — installs everything for tutorials/building-comfort (PostgreSQL client + Drasi Server binary).
- Drasi Server - OTel Observability Tutorial — installs everything for tutorials/otel-observability (k3d, kubectl, PostgreSQL client, mock store images).
- Follow the README in the matching tutorial folder.
After the Codespace starts, follow the getting-started guide in tutorials/getting-started.
The tutorials also render as a Docsy/Hugo
documentation site. Each tutorial is authored once in tutorials/<name>/_index.md
(the single source of truth) and mounted into the Hugo content tree, so the doc
site and the GitHub README.md files stay in sync.
- Hugo Extended
0.152.2or newer - Go
1.24or newer (for Hugo Modules) - Node.js
18or newer with npm (for the PostCSS pipeline)
# 1. Install the PostCSS dependencies used by Docsy's SCSS pipeline
npm install
# 2. Build the static site into ./public
hugo --gc --minifyhugo serverThen open http://localhost:1313.
Hugo writes the
public/webfonts/*files as read-only, which can make a later rebuild fail with a "permission denied" error. If that happens, remove the generated output before rebuilding:rm -rf public resources.
After editing any tutorials/<name>/_index.md, regenerate the plain-Markdown
README.md files so they match:
python3 scripts/render-tutorials.py # write README.md files
python3 scripts/render-tutorials.py --check # fail if any are stale (CI check)