A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.
- 🔗 URL Shortening: Compress your URLs to their minimal length.
- 📈 Analytics: Monitor link analytics and gather insightful statistics.
- ☁️ Serverless: Deploy without the need for traditional servers.
- 🎨 Customizable Slug: Support personalized slugs, UTM parameters, and case sensitivity.
- 🪄 AI Assistance: Generate slugs and OpenGraph metadata from page content.
- ⏰ Link Control: Set expirations, passwords, and unsafe-link warning pages.
- 📱 Smart Routing: Redirect visitors by device or country.
- 🖼️ Social Preview: Customize social previews with titles, descriptions, and images.
- 📊 Real-time Analytics: Live 3D globe and real-time event logs.
- 🔲 QR Code: Generate QR codes for your short links.
- 📦 Import/Export: Bulk link migration via JSON and access analytics via CSV.
- 🌍 Multi-language: Full i18n support for dashboard and redirect pages.
Experience the demo at Sink.Cool. Log in using the Site Token below:
Site Token: SinkCool- Framework: Nuxt
- Database: Cloudflare Workers KV
- Analytics Engine: Cloudflare Workers Analytics Engine
- UI Components: shadcn-vue
- Styling: Tailwind CSS
- Deployment: Cloudflare
We welcome your contributions and PRs.
- Browser Extension - Sink Tool
- Chrome Extension - Sink Quick Shorten
- Raycast Extension - Raycast-Sink
- Apple Shortcuts - Sink Shortcuts
- iOS App - Sink
- Enhanced Link Management (with Cloudflare D1)
- Analytics Enhancements (Support for merging filter conditions)
- Dashboard Performance Optimization (Infinite loading)
- API, migration, backup, and redirect tests
Video tutorial: Watch here
We currently support deployment to Cloudflare Workers (recommended) and Cloudflare Pages.
Install Sink AI Skills for enhanced coding assistance:
npx skills add miantiao-me/sinkWe currently do not support native MCP Server, but we have OpenAPI documentation, and you can use the following method to support MCP.
Replace the domain name in
OPENAPI_SPEC_URLwith your own domain name.The
API_KEYis the same as theNUXT_SITE_TOKENin the environment variables.
{
"mcpServers": {
"sink": {
"command": "uvx",
"args": [
"mcp-openapi-proxy"
],
"env": {
"OPENAPI_SPEC_URL": "https://sink.cool/_docs/openapi.json",
"API_KEY": "SinkCool",
"TOOL_WHITELIST": "/api/link"
}
}
}
}


