尚未收集儲存庫資訊。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
Wieldy Ephemeral Links
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 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.