What's Changed
✨ New Features
- Cloudflare Access Authentication - Added optional Cloudflare Access authentication as an alternative to
NUXT_SITE_TOKEN, including JWT verification, CSRF protection, and Access-aware logout. - Click Webhooks - Added best-effort
link.clickedwebhooks with Dub-style payloads and optional Standard Webhooks-compatible HMAC signatures. Configure usingNUXT_WEBHOOK_URLandNUXT_WEBHOOK_SECRET. - Duplicate URL Detection - Added real-time duplicate destination URL detection to the link editor, with direct links to existing matching links.
💅 Improvements
- Configurable Redirect Caching - Added
NUXT_REDIRECT_NO_STORE. Set it totrueto prevent browsers and CDNs from caching short-link redirects. It defaults tofalse. - Improved iframe cloaking compatibility for navigation and external redirects.
- Improved R2 binding validation and error messages for image uploads and backups.
- Added thinner, theme-aware scrollbar styles.
- Improved image upload errors by displaying the specific failure reason.
🌍 Localization
- feat: add Korean (ko-KR) translation by @moduvoice in #312
🐛 Bug Fixes
- Fixed cloaked link rendering on mobile devices by adding the viewport meta tag.
- Fixed globe texture width calculation and added country index bounds checking.
New Contributors
- @moduvoice made their first contribution in #312
- @n-WN made their first contribution in #302
Full Changelog: v0.2.10...v0.2.11