4.7 KiB
4.7 KiB
⚡ Sink
A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.
✨ Features
- 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 for personalized slugs and case sensitivity.
- 🪄 AI Slug: Leverage AI to generate slugs.
- Link Expiration: Set expiration dates for your links.
🪧 Demo
Experience the demo at Sink.Cool. Log in using the Site Token below:
Site Token: SinkCool
Screenshots
🧱 Technologies Used
- Framework: Nuxt
- Database: Cloudflare Workers KV
- Analytics Engine: Cloudflare Workers Analytics Engine
- UI Components: shadcn-vue
- Styling: Tailwind CSS
- Deployment: Cloudflare
🚗 Roadmap [WIP]
We welcome your contributions and PRs.
- Browser Extension - Sink Tool
- 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)
- Units Test
🏗️ Deployment
Video tutorial: Watch here
We currently support deployment to Cloudflare Workers (recommended) and Cloudflare Pages.
⚒️ Configuration
🔌 API
🧰 MCP
We 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/create"
}
}
}
}
