Skip to content
/ Sink Public
forked from ccbikai/Sink

⚡ A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.

License

Notifications You must be signed in to change notification settings

MTChaoyi/Sink

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ Sink

A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.

ccbikai/Sink | Trendshift Featured on Hacker News

Cloudflare Nuxt Tailwind CSS shadcn/ui

Hero


✨ 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 Analytics Links Link Analytics

🧱 Technologies Used

🚗 Roadmap [WIP]

We welcome your contributions and PRs.

  • Browser Extension - Sink Tool
  • Raycast Extension - Raycast-Sink
  • 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

Video tutorial: https://www.youtube.com/watch?v=MkU23U2VE9E

  1. Fork the repository to your GitHub account.

  2. Create a Cloudflare Pages project.

  3. Select the Sink repository and the Nuxt.js preset.

  4. Configure environment variables.

    1. NUXT_SITE_TOKEN length must exceed 8.
    2. NUXT_CF_ACCOUNT_ID find your account ID.
    3. NUXT_CF_API_TOKEN Create a Cloudflare API token. This token requires Account.Account Analytics permissions at the very least. Reference..
  5. Save and deploy.

  6. Cancel the deployment, navigate to Settings -> Functions.

    1. KV namespace bindings. Bind the variable name KV to a KV namespace.
    2. Workers AI Bindings. Bind the variable name AI to the Workers AI Catalog. Optional
    3. Analytics Engine bindings. Bind the variable name ANALYTICS to the sink dataset, and enable Cloudflare Analytics Engine beta for your account.
  7. Redeploy.

⚒️ Configuration

Configuration Docs

🔌 API

API Docs

🙋🏻 FAQs

FAQs

💖 Credits

  1. Cloudflare
  2. NuxtHub
  3. Astroship

☕ Sponsor

  1. Follow Me on X(Twitter).
  2. Become a sponsor to on GitHub.

About

⚡ A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 78.1%
  • TypeScript 19.8%
  • JavaScript 1.3%
  • CSS 0.8%