This repository is a curated directory of self-hosted, open-source alternatives to popular SaaS products (VPN, photo hosting, cloud storage, email, chat, notes, password managers, kanban, etc.). The primary deliverable, README.md, is not hand-maintained: it is generated by readme-gen.py from a structured JSON dataset (dyos-db.json) containing roughly 180 projects grouped into ~37 service categories. Each project record stores name, description, GitHub URL, site URL, star count, last-push timestamp, and an ETag cache key. The repo answers: 'What self-hosted services exist for any given SaaS category, and how actively maintained is each option?' A GitHub Actions cron (maintenance.yml) runs daily. keep-alive.py iterates every GitHub-hosted project, queries the GitHub REST API for current star counts and pushed_at dates, and uses If-None-Match/ETag conditional requests so unchanged repos return cheap HTTP 304 responses - a genuinely thoughtful pattern that avoids rate-limit exhaustion across ~150 repos. Results are written back to dyos-db.json, then readme-gen.py regenerates the README with relative recency labels (🟢 under a month, 🟠 under a year, 🔴 older) and per-category star sorting. Both scripts use only the Python standard library, so the dependency surface is zero. Hybrid note: although it contains application-style CLI automation scripts, the dominant character is data curation - the JSON dataset and its rendered markdown output are the product, not the scripts. Data lineage is GitHub API plus manual community submissions (via the issue template) into dyos-db.json, transformed into README.md. Reproducibility is high: cloning and running readme-gen.py regenerates the README offline with no dependencies; keep-alive.py needs only a GitHub token loaded from environment or .env. The codebase is small, has no tests, and its value lies in the curated data and the clean maintainability tooling rather than in complex engineering.
This repository is a hybrid: it is primarily a curated awesome list for Claude Code resources, but it is backed by a real automation layer that treats the README as a generated artifact. The single source of truth is a CSV resource table plus a config.yaml that defines category ordering; a Python script (generate_readme.py) renders the README, ticker SVGs, and recently-added carousels. The repo also includes GitHub Actions workflows that validate new resource submissions via issue forms, handle maintainer approval/rejection commands, and automatically open PRs to add approved resources. This makes it less of a static list and more of a self-maintaining content pipeline.
Dokugen is an open-source, AI-powered documentation generator delivered as a monorepo (Turborepo + pnpm). The core product is a CLI that generates, updates, and maintains README files, AI commit messages, licenses, changelogs, and OG social cards. It ships three CLI clients (TypeScript, Python, and a Go stub), a companion Express backend that proxies AI API calls (DeepSeek, OpenRouter, Gemini) and tracks usage via Supabase, a Next.js documentation site, a minimal VS Code extension, and a Remotion promotional video project. The architecture is client-server: CLIs detect project type using a heuristic pattern-matching algorithm, scan files, and send compressed payloads to the backend for AI generation, with streaming SSE responses. The system also includes auto-update mechanisms, interactive menus, and caching. While the product is functional and well-structured, there is significant duplication across CLI implementations (e.g., project detection logic is nearly identical in TypeScript and Python but drifts), a Go client that is only a placeholder, and a VS Code extension that is boilerplate. The codebase demonstrates solid engineering practices (rate limiting, security hardening, Docker multi-stage builds) but suffers from maintenance overhead due to the multi-language surface and some stale generated artifacts.