# haishanh/yacd

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/haishanh-yacd).**

4,746 stars · 844 forks · TypeScript · mit

## Links

- GitHub: https://github.com/haishanh/yacd
- Homepage: http://yacd.haishan.me
- awesome-repositories: https://awesome-repositories.com/repository/haishanh-yacd.md

## Description

yacd is a browser-based dashboard for managing and configuring Clash proxy servers. It provides a graphical web interface that allows users to view and edit proxy settings, switching between network nodes and adjusting routing rules without manually editing configuration files.

The application acts as a client to the Clash backend REST API, enabling real-time operations such as proxy group administration, traffic routing configuration, and connection parameter tuning. Its single-page application shell handles all state management on the client side, with form validation catching input errors before they reach the server.

Designed specifically for Clash proxy environments, yacd offers a visual configuration interface that organizes proxy groups and control traffic distribution through a centralized dashboard.

## Tags

### Networking & Communication

- [Clash Configuration Managers](https://awesome-repositories.com/f/networking-communication/proxy-servers/clash-configuration-managers.md) — Manages Clash proxy settings and switches between network nodes through a browser-based dashboard.
- [Proxy Configuration Rules](https://awesome-repositories.com/f/networking-communication/proxy-configuration-rules.md) — Configures proxy routing rules, group selections, and connection parameters through a web interface. ([source](https://cdn.jsdelivr.net/gh/haishanh/yacd@master/README.md))
- [Proxy Group Managers](https://awesome-repositories.com/f/networking-communication/proxy-group-managers.md) — Organizes proxy groups, selects nodes, and controls traffic distribution for Clash routing.
- [Traffic Routing Configurations](https://awesome-repositories.com/f/networking-communication/traffic-routing-configurations.md) — Edits Clash routing rules and proxy chains visually without modifying configuration files by hand.

### Part of an Awesome List

- [Clash Clients](https://awesome-repositories.com/f/awesome-lists/devtools/clash-clients.md) — Sends requests to the Clash backend to apply and persist proxy configurations.

### Mobile Development

- [Proxy Configuration REST Endpoints](https://awesome-repositories.com/f/mobile-development/rest-api-integration-frameworks/proxy-configuration-rest-endpoints.md) — Sends HTTP requests to Clash backend REST endpoints to apply and persist proxy configurations.

### Software Engineering & Architecture

- [Shared State Management](https://awesome-repositories.com/f/software-engineering-architecture/shared-state-management.md) — Provides a shared state object that keeps proxy group selections and routing rules synchronized between the UI and backend.
- [Proxy Configuration Interfaces](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-interfaces-and-editors/graphical-configuration-interfaces/graphical-configuration-interfaces/proxy-configuration-interfaces.md) — Adjusts proxy parameters and connection settings through a graphical web interface.

### Web Development

- [Client-Side Input Validators](https://awesome-repositories.com/f/web-development/client-side-input-validators.md) — Catches and reports user input errors in the browser before any data is sent to the backend API.
- [Single-Page Applications](https://awesome-repositories.com/f/web-development/single-page-applications.md) — Loads the entire interface as a single HTML document and dynamically fetches data via JavaScript API calls.
