Shorturl — Cloudflare Workersで動く短縮URLサービス

Web

概要

Cloudflare Workers上で動作する短縮URLサービスの実装を収めたリポジトリです。パスワード保護、訪問回数制限、遷移前に表示する中間ページなど、短縮URL運用でよく使う機能を備えています。デプロイはCloudflareのワンクリックボタンを想定しており、環境変数(JWT_TOKENやLANGなど)を設定することで動作します。TypeScriptで書かれており、開発環境向けの設定ファイル(ESLint、.vscode/.idea)も含まれています。(約300字)

GitHub

リポジトリの統計情報

  • スター数: 6
  • フォーク数: 0
  • ウォッチャー数: 6
  • コミット数: 30
  • ファイル数: 17
  • メインの言語: TypeScript

主な特徴

  • パスワード保護された短縮URLを作成・管理可能
  • 訪問回数に応じたアクセス制限(上限到達で無効化)
  • 中間ページ(遷移前の確認ページ)を表示して広告や確認を挟める
  • Cloudflare Workers向けワンクリックデプロイ対応(Deploy to Cloudflareボタン)

技術的なポイント

このプロジェクトはCloudflare Workers上で動作することを前提にTypeScriptで実装されています。READMEやデプロイボタンから、環境変数による設定(JWT_TOKENやLANG)が必須である点が確認できます。JWT_TOKENは強力な文字列(大文字・小文字・数字・特殊文字を含む10文字以上)が求められており、管理や認証にJWTを利用する設計が見て取れます。訪問回数制限やパスワード保護は、短縮URLごとのメタデータを保持して条件に応じたリダイレクト制御を行う典型的な機能です。Cloudflare上の永続化手段としてはWorkers KVやDurable Objectsが一般的であり、本実装でも同様のキー・バリュー型ストレージやキャッシュを使う想定が自然です。中間ページ(middle page)は、悪意のあるリンクや広告挿入、利用規約確認など用途が広く、UIは軽量なHTMLで返してリダイレクトを制御する作りが推測されます。また、.vscode/.ideaやeslint.config.jsが含まれていることから開発時のコード品質管理とエディタ設定が整備されており、TypeScriptでの静的チェックやLintにより信頼性の向上を図っています。最後に、Deploy to Cloudflareボタンが別のリポジトリ(qwx/shorturl-cloudflare-workers.git)を指している点から、テンプレートやフォークを起点にしている可能性があり、導入時は環境変数やストレージ設定を読み替える必要があります。(約700字)

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • .idea: dir
  • .vscode: dir
  • README.md: file
  • eslint.config.js: file

…他 12 ファイル

まとめ

Cloudflare Workersで簡単に立ち上げられる、実用的な短縮URLソリューションです。(約50字)

リポジトリ情報:

READMEの抜粋:

shorturl

one click to use shorturl in cloudflare workers

feature

  • password
  • visit count limit
  • middle page

how to

click this button

Deploy to Cloudflare

JWT_TOKEN:at least 10 characters long and upper,lowercase, numbers, special characters. LANG: English uses “en” and Chinese use “cn”. Then you can bind your domain in the cloudflare wor…