Future updates - Backlog
- Redis Intergration for Caching and Pub/Sub
- Add OpenGraph API Intergration and Map it with Postman
v0.5.0 - 2026-05-12
-
#14[feat(infra)] Add Prometheus and Grafana observability stack- Introduces a full observability layer using Prometheus and Grafana across local dev and production environments.
- Instruments core
ytdlpservices (tracking job lifecycle and processing duration) andcaptchasecurity middleware (tracking verification hits, failures, and API key bypasses). - Automates provisioning of “Worker Health” and “Security” dashboards as code.
- Implements Caddy
@internal_onlyglobal matcher to protect/metrics,/nadun/fs/*, and/nadun/grafana/*endpoints across all environments. - Standardizes
docker-compose.dev.ymlto use production-style image builds, resolving stale binary linking issues in Alpine/musl environments. - Updates Makefile, Terraform, and Cloud-init to handle automated fetching of all observability artifacts.
-
#13[fix(ytdlp)] Stabilize progress streaming and temp file handling- Updates the
yt-dlpdownload flow to send an immediate SSE snapshot so clients receive the current job state on connect. - Downloads now use per-job temp directories before safely moving completed files to the final output path.
- Fixes cleanup behavior for failed and timed-out jobs by removing temp artifacts directly.
- Refactors
aria2progress parsing to use targeted regex extraction and simpler helpers. - Updates the health endpoint to return the service version.
- Rewrites and reorganizes README, TOC, workflow, and architecture diagrams to match current system design.
- Updates the
v0.4.0 - 2026-04-25
#11[feat(backend)] Add GitHub contributions API endpoint- New
GET /api/v1/contributionsendpoint returning GitHub-style calendar data (cells, months, legend, summary, metadata). - New
ContributionsServicewith GitHub GraphQL integration and 24h in-memory caching. - API controller enforces default-only access for
/api/v1/contributions?username=(only the configured defaultGITHUB_USERNAME/GITHUB_PATis permitted). - Full
ContributionsResponsemodel matching GitHub calendar schema (remains unchanged). - Env config support for
GITHUB_PATandGITHUB_USERNAME; cloud-init template updated to passGHCR_PATasGITHUB_PAT(remains unchanged). - Postman collection includes a negative test asserting requests with non-default usernames are rejected (rejection test rather than a supported feature).
- Test state and config updates for contributions service.
- New
v0.3.1 - 2026-04-19
#10[refactor(api)] Standardize API errors and simplify service flows- Unified all API errors under a shared
AppErrorenum with structured JSON responses. - Removed unnecessary
asyncfromYtdlpManagerservice methods. MASTER_API_KEYmissing now exits cleanly with code 1 instead of panicking.- Root endpoint returns JSON instead of plain text.
- Added custom Caddy file browser with neon dark theme, served to infra by makefile and terraform via presigned R2 URL.
- Bumped
axumto 0.8.9,tokioto 1.52; addedthiserror2.0.
- Unified all API errors under a shared
v.0.3.0 - 2026-03-31
#9[feat(infra)] Tiered rate limiting, Caddy file server, and expanded test suite- Yt Download Support Removed Due to DMCA Sorry ;[
- Added API Key Support With Tiered Rate Limiting (free vs. premium).
- Added Production Caddyfile with Personal File Server + Reverse Proxy.
- Infrastructure Fully Parameterized with Environment Variables and Config Files.
- Test Cases Are More Rigorous and Cover Edge Cases.
- Postman Collection is More Structured With Up to Date Seperation and Usage of environment variables.
v0.2.0 - 2026-03-27
#8[feat(ytdlp)] Add streaming progress and supported sites API- SSE endpoint for live yt-dlp job download progress updates.
- Added supported sites endpoint listing all available download platforms.
- Replaced bgutil/POT provider with
aria2cfor faster multi-connection downloading. - Introduced
MASTER_API_KEYauth middleware; replaces dev bypass header. - Breaking:
YTDLP_COOKIES_FILE,YTDLP_POT_PROVIDER_URL, andYTDLP_PRESIGNED_URLenv vars removed. YouTube Shorts URL normalization removed.
v0.1.3 - 2026-03-22
#7[feat(infra)] Add dev environment and refactor yt-dlp selector- Added local Docker Compose stack (
Dockerfile.dev,Caddy,cargo-watch). - #6. Fixed
yt-dlpformat and sort flag logic for better media extraction. - Streamlined Makefile targets and secured
.dockerignore.
- Added local Docker Compose stack (
v0.1.2 - 2024-03-17
#5[infra] Add Cloudflare DNS integration and wildcard CORS- Implemented Cloudflare DNS management (
api.nadzu.me) and IP-restricted DigitalOcean firewall. - Added HTTPS support via Caddy reverse proxy with automated TLS certificate provisioning.
- Migrated WARP proxy to custom nxdun/docker-warp-proxy image, adding WARP+ license key support, container hardening (
NET_ADMIN), andNO_PROXYrouting rules. - Enhanced Rust CORS middleware to safely support wildcard origins using pre-computed matchers.
- Updated CI/CD workflows (Actions v4/v5) and added an isolated
tfttesting target in Makefile.
- Implemented Cloudflare DNS management (
v0.1.1 - 2024-03-12
#4[feat(core)] Add build caching and SOCKS proxy support- Add GitHub Actions caching layer, improving build speed by over 440%.
- Updated DockerImage With Fixed Issues and Optimized Caching.
- Added Cloudflare WARP Tunnel For Outbound Requests.
- Implement SOCKS proxy support.
- Production Infrastructure Run on Docker Compose with WARP Tunnel for outbound traffic.
- ENFORCED Capital ENV Variable Names for Interoperability.
v0.1.0 - 2024-03-01
#3[DevOps] Add GHCR publishing and DigitalOcean Terraform infrastructure- Complete CI Validation per Commit
- CD workflow for GHCR publishing
- Terraform configuration for DigitalOcean infrastructure with Cloudflare R2 Backend.
- Secure Secret Management for GHCR and Terraform deployments.
- Makefile Implementation.
v0.0.2 - 2026-02-23
#2[Feat] Add Google reCAPTCHA verification endpoint- Middleware to verify Google reCAPTCHA responses.
- Redesigned API structure for better organization and scalability.
- Postman collection updates for new endpoint testing and documentation.
- Implemented Redis with Postgres for caching and data storage.
v0.0.1 - 2026-02-18
#1[Feature] Initial Rust backend API server setup with Axum framework- Rust Core API Server Setup - axum, tokio, tower, serde
- Single Stage Dockerfile for containerization
- Basic API Endpoint - /api/hello returning “Hello, World!” for testing and validation
Closed / Experimental PRs
- none