explaingit

cmliu/cf-workers-sub

7,386JavaScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

A Cloudflare Workers/Pages script that merges multiple proxy node configs and subscription links into one private URL, so Clash, V2Ray, or similar clients always get your latest combined node list from a single import.

Mindmap

mindmap
  root((cf-workers-sub))
    What it does
      Merges proxy nodes
      Single subscription URL
      Format conversion
    Inputs
      VLESS links
      VMess links
      External subscriptions
    Deployment
      Cloudflare Workers
      Cloudflare Pages
      KV storage
    Clients
      Clash
      V2Ray
      Other proxy apps
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Combine all your VLESS and VMess proxy nodes into one private subscription URL for Clash or V2Ray

USE CASE 2

Host a self-managed proxy subscription on Cloudflare's free tier with no server cost

USE CASE 3

Automatically convert merged node configs into whichever format your proxy client expects

USE CASE 4

Pull nodes from multiple external subscription services and serve them all from a single private URL

Tech stack

JavaScriptCloudflare WorkersCloudflare PagesCloudflare KV

Getting it running

Difficulty · moderate Time to first run · 30min

Requires a free Cloudflare account and creating a KV namespace to store node links.

In plain English

CF-Workers-SUB is a JavaScript tool that runs on Cloudflare's serverless platform (either Workers or Pages). It takes multiple proxy server configurations and subscription links that you provide, and combines them into a single subscription URL that proxy clients like Clash or V2Ray can import. Instead of managing several separate subscription links, you maintain one private URL that always returns your current merged node list. The tool accepts individual proxy node links in formats like VLESS and VMess, as well as links to external subscription lists from other services. All of these are merged and served from a URL that only you know, reducing the risk of your subscription address being discovered or shared without permission. The README notes that when aggregating a very large number of nodes, Clash clients may time out during the conversion step, so users are advised to trim the node count if this happens. A notable feature is automatic format conversion. Different proxy clients expect different subscription formats, and CF-Workers-SUB calls an external conversion service to translate the merged output into whichever format a client requests. This lets a single subscription URL work across multiple different proxy applications. Deployment can be done through Cloudflare Pages by forking the repository and connecting it to the Cloudflare Pages dashboard, or through a Cloudflare Worker by pasting the worker script directly into the Cloudflare editor. Both require a free Cloudflare account. Node links and subscription URLs are stored and managed through a Cloudflare KV namespace, edited via a simple web interface served by the worker itself.

Copy-paste prompts

Prompt 1
How do I deploy CF-Workers-SUB on Cloudflare Pages and configure the KV namespace to store my node links?
Prompt 2
Show me how to add a new VLESS node to my CF-Workers-SUB subscription using the built-in web interface
Prompt 3
Why does Clash time out when loading my CF-Workers-SUB subscription, and how do I trim the node count to fix it?
Prompt 4
How do I add multiple external subscription URLs to CF-Workers-SUB so it merges them all into one output?
Prompt 5
What is the difference between deploying CF-Workers-SUB as a Cloudflare Worker versus a Cloudflare Pages project?
Open on GitHub → Explain another repo

← cmliu on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.