cleanyourtv-app
A community-built phone app for Clean Your TV: clean up an Android TV from your phone. No laptop, no coding agent, nothing uninstalled.
Redirects and text snippets that always expire — never permanent, and every link shows where it leads before you go.
OtherHTML · RustGitHub @jooizeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Wieldy Ephemeral Links
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Wieldy ephemeral links — live at yuio.link.
Every link expires (7 days at most), every link previews before it opens, and
names are short, memorable words like braveOTTER instead of random strings.
No permanent links, no accounts, no tracking.
braveOTTER) purely for readability — lookups are
case-insensitive.GET /:name never spends a use: you see where a link
goes (domain only, for one-time links) before continuing. Consuming is a
POST, so unfurl crawlers can never burn a link.Details: docs/ROUTES.md (endpoints), docs/PREVIEW.md (trust model), docs/NAMESPACES.md (name allocation).
curl -d url=https://example.com https://yuio.link/create
curl -d url=https://example.com -d ttl=1h -d uses=1 https://yuio.link/create
curl --data-binary @notes.txt https://yuio.link/create # becomes a Text link
Rust workspace: core (names, validation, detection) and server (axum +
SQLite). HTML is rendered server-side (maud); the pages work without
JavaScript and enhance with a little vanilla JS.
nix develop --command cargo test --workspace # test
nix develop --command cargo run -p yuiolink-server # http://127.0.0.1:8080/
Configuration is environment variables (see server/src/config.rs):
YUIOLINK_BIND, YUIOLINK_BASE_URL, YUIOLINK_DB, YUIOLINK_SECRET,
YUIOLINK_MAX_TTL_SECS, YUIOLINK_REAP_INTERVAL_SECS.
CI (.github/workflows/ci.yml) gates every push; pushing a v* tag builds
the linux/amd64 binary and attaches it to a GitHub release
(release.yml). The droplet is provisioned by
deploy/droplet-user-data.bash and updates itself pull-based:
yuiolink-update fetches the latest release, verifies its SHA-256,
snapshots the database, installs, and health-checks /healthz — rolling the
binary back on failure. yuiolink-update.timer runs it every 5 minutes (a
no-op when already current), so tagging a release auto-deploys within 5
minutes with no SSH needed; systemctl start yuiolink-update also runs it
on demand. Nightly database snapshots run via yuiolink-backup.timer.
A Dockerfile builds the same server for container use (/data volume holds
the SQLite database).
SemVer 2.0.0, tags vX.Y.Z. The flake reads the
workspace version from Cargo.toml.
Dual-licensed under either of
at your option. Unless you state otherwise, any contribution you submit for inclusion shall be dual-licensed as above, with no additional terms.
Bundled third-party material keeps its own terms — the link-name wordlist
derives from the EFF wordlists
(CC-BY-3.0-US) and the BIP-0039 English wordlist, and the share-card renderer
embeds the DejaVu and Noto fonts (OFL-1.1 for Noto). See NOTICE, which redistributions must
carry. The server binary carries NOTICE and every license it names:
yuiolink-server --license prints them, /license shows them, and each
release attaches them as yuiolink-server-licenses.txt.
YuioLink is created by jooize with AI.