explaingit

jegovpn/sbcv

22TypeScriptAudience · developerComplexity · 2/5Setup · moderate

TLDR

A browser-based drag-and-drop visual editor for sing-box network proxy config files, where you connect components on a canvas instead of editing raw JSON by hand.

Mindmap

mindmap
  root((sbcv))
    What it does
      Visual sing-box config editor
      Drag-and-drop canvas
      Validate via real binary
    Canvas components
      Inbounds
      Outbounds
      Routing rules
      DNS servers
    Validation
      Testing channel
      Stable channel
      Legacy channel
    Tech stack
      TypeScript
      React
      React Flow
      Cloudflare Workers
    Deployment
      sbcv.app hosted
      Self-host with pnpm
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

Import an existing complex sing-box JSON config to visualize its full structure as a connected node graph.

USE CASE 2

Build a new sing-box config by dragging inbound, outbound, and routing rule nodes onto a canvas and connecting them.

USE CASE 3

Validate your sing-box config against the official stable or testing binary release without installing anything locally.

USE CASE 4

Self-host sbcv locally with pnpm to edit and validate sing-box configs in a private environment.

Tech stack

TypeScriptReactReact FlowCloudflare Workerspnpm

Getting it running

Difficulty · moderate Time to first run · 5min

Available immediately at sbcv.app with no install, self-hosting requires cloning the repo and running it with pnpm plus a Cloudflare Workers backend for validation.

No license information was mentioned in the explanation.

In plain English

sbcv is a browser-based visual editor for sing-box configuration files. Sing-box is a network proxy tool that is configured entirely through a JSON file. For users who find that file difficult to maintain by hand, sbcv turns it into a drag-and-drop canvas where you place components, connect them with wires, and pick values from dropdowns instead of typing raw text. The canvas reflects the actual structure of a sing-box configuration: inbounds (where network traffic enters), outbounds (where it exits), routing rules, DNS servers, and other components all appear as nodes you can link together. Because references between components are drawn as visual connections rather than typed strings, common mistakes like misspelled field names or broken references cannot occur. When you click the check button, validation runs against the real sing-box binary, not a simulation. The tool sends your configuration to a backend service that runs the official sing-box check command. You can choose which sing-box release channel to validate against: Testing, Stable, or Legacy. Each channel tracks the current upstream release rather than a fixed snapshot, so the result matches what you would get running the binary yourself. The editor can import an existing configuration file and lay out its full structure on the canvas, which helps when you receive a complex config you did not write yourself. Exporting converts the canvas back to JSON. Configs are never stored on the server. The tool is available at sbcv.app and can also be self-hosted by cloning the repository and running it locally with pnpm. The tech stack is TypeScript, React, React Flow for the canvas, and Cloudflare Workers for the validation backend.

Copy-paste prompts

Prompt 1
I have a complex sing-box JSON config someone gave me. Show me how to import it into sbcv to visualize all its components and connections on the canvas.
Prompt 2
Walk me through building a basic sing-box config in sbcv: add a SOCKS5 inbound, a direct outbound, and a routing rule that connects them.
Prompt 3
How do I self-host sbcv locally? Clone the repo and walk me through running it with pnpm and setting up the Cloudflare Workers validation backend.
Prompt 4
What does sbcv check when I click the validate button? Explain how it sends the config to the backend and which sing-box release channels I can test against.
Open on GitHub → Explain another repo

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

Verify against the repo before relying on details.