IlyaP358/fluxcast-domains: Grab your own free "cool.fluxcast.dev" subdomain for your project - IlyaP358/fluxcast-domains

github.com · 2026-07-23 · by Long Nguyen ·github
Grab your own free "cool.fluxcast.dev" subdomain for your project - IlyaP358/fluxcast-domains

IlyaP358/fluxcast-domains

Grab your own free "cool.fluxcast.dev" subdomain for your project - IlyaP358/fluxcast-domains

0 stars · 0 forks · Python Topics: python, dns, infrastructure, open-source, devops, oss, foss, domain, domains, cloudflare, subdomain, developer, subdomains, gitops, free-domain, free-domains

README

fluxcast.dev subdomains

Free yourname.fluxcast.dev subdomains for developers. GitOps DNS driven by pull requests, powered by Python + Cloudflare.

This is a sister project of fluxcast, which streams your Linux desktop to a TV via Miracast/WFD, DLNA, or Chromecast. To give back to the community, we hand out free subdomains the same way is-a.dev does, but the whole infrastructure here is pure Python. Get a subdomain

Fork this repo. Add one file: domains/<your-subdomain>.json. Open a pull request. Pass the automated checks, get reviewed, and your DNS goes live within minutes.

Full guide → CONTRIBUTING.md. Info page → sub.fluxcast.dev. { "owner": { "username": "your-github-username", "email": "you@example.com" }, "records": { "CNAME": "your-github-username.github.io" } } How it works domains/*.json ──► pytest validation (CI on every PR) │ └─ names, records, private-IP filter, ownership, nesting │ merge to main │ ├──► fluxcast-sync → reconciles records into Cloudflare (publish.yml) └──► fluxcast-raw-api → publishes raw-api/v2.json to raw.fluxcast.dev

One JSON file = one subdomain. The domains/ directory is the database. Validation lives in src/fluxcast_domains/validation.py and is shared by the test suite and the sync, so nothing invalid can be published. The sync is apex-safe. Every record it creates is tagged managed-by:fluxcast-domains; it only ever touches its own records, so the fluxcast.dev landing page and any hand-made record are never at risk.

Local development python -m venv .venv && source .venv/bin/activate pip install -e ".[dev]"

pytest -q # run the full validation suite fluxcast-sync --dry-run # preview DNS changes (needs Cloudflare env to apply) fluxcast-raw-api # regenerate raw-api/v2.json Publishing (in CI) needs two secrets:

Secret Purpose

CLOUDFLARE_API_TOKEN scoped token: Zone → DNS → Edit (this zone)

CLOUDFLARE_ZONE_ID the fluxcast.dev zone id

Project layout

Path What

domains/ one JSON per subdomain (the registry)

util/ reserved / internal / trusted / disallowed lists

src/fluxcast_domains/ loader, models, validation, records, sync, raw API

tests/ pytest validation suite

.github/workflows/ CI, publish, raw-api, stale

Reporting abuse Found a *.fluxcast.dev subdomain being misused? Open a report-abuse issue. See the Terms of Service. Support the project This service is free and runs on volunteer time. If it is useful to you:

⭐ Star this repo — it genuinely helps more developers find the service. ☕ Buy me a coffee on Ko-fi =] — covers the domain and keeps the lights on.

Every star and coffee is appreciated. Thank you! License GPL-3.0

source

github.com · 6 images · 130 links

Comments (0)

No comments yet