⚡ 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.
- 🪄 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
🚗 Roadmap [WIP]
We welcome your contributions and PRs.
- [ ] Browser Extension
- [ ] Raycast Extension
- [ ] Apple Shortcuts
- [ ] Enhanced Link Management (with Cloudflare D1)
- [ ] Analytics Enhancements (Support for merging filter conditions)
- [ ] Dashboard Performance Optimization (Infinite loading)
- [ ] Units Test
- [ ] Support for Other Deployment Platforms
🏗️ Deployment
-
Fork the repository to your GitHub account.
-
Create a Cloudflare Pages project.
-
Select the Sink
repository and the Nuxt.js
preset.
-
Configure environment variables.
NUXT_SITE_TOKEN
length must exceed 8.
NUXT_CF_ACCOUNT_ID
find your account ID.
NUXT_CF_API_TOKEN
Create a Cloudflare API token. This token requires Account.Account Analytics
permissions at the very least. Reference..
-
Save and deploy.
-
Cancel the deployment, navigate to Settings
-> Functions
.
- KV namespace bindings. Bind the variable name
KV
to a KV namespace.
- Workers AI Bindings. Bind the variable name
AI
to the Workers AI Catalog. Optional
- Analytics Engine bindings. Bind the variable name
ANALYTICS
to the sink
dataset, and enable Cloudflare Analytics Engine beta for your account.
-
Redeploy.
⚒️ Configuration
Configuration Docs
🔌 API
API Docs
🙋🏻 FAQs
FAQs
💖 Credits
- Cloudflare
- NuxtHub
- Astroship
☕ Sponsor
- Follow Me on X(Twitter).
- Become a sponsor to on GitHub.