{"id":19899044,"url":"https://github.com/ytflow/ytflowcore","last_synced_at":"2025-05-02T22:31:47.527Z","repository":{"id":55721330,"uuid":"420043394","full_name":"YtFlow/YtFlowCore","owner":"YtFlow","description":"A modern proxy framework, core of YtFlow.","archived":false,"fork":false,"pushed_at":"2024-05-07T08:19:48.000Z","size":1190,"stargazers_count":90,"open_issues_count":0,"forks_count":7,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-07T07:51:16.428Z","etag":null,"topics":["obfs","proxy","rust","shadowsocks","socks","socks5","trojan","trojan-gfw","trojan-go","v2ray","vmess"],"latest_commit_sha":null,"homepage":"https://YtFlow.github.io/ytflow-book","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YtFlow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-22T09:40:40.000Z","updated_at":"2025-04-06T16:11:01.000Z","dependencies_parsed_at":"2023-02-09T22:30:51.570Z","dependency_job_id":"937e1199-2612-4241-a1a9-fa0eacc75932","html_url":"https://github.com/YtFlow/YtFlowCore","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YtFlow%2FYtFlowCore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YtFlow%2FYtFlowCore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YtFlow%2FYtFlowCore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YtFlow%2FYtFlowCore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YtFlow","download_url":"https://codeload.github.com/YtFlow/YtFlowCore/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252116395,"owners_count":21697372,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["obfs","proxy","rust","shadowsocks","socks","socks5","trojan","trojan-gfw","trojan-go","v2ray","vmess"],"created_at":"2024-11-12T20:07:00.817Z","updated_at":"2025-05-02T22:31:46.386Z","avatar_url":"https://github.com/YtFlow.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# YtFlowCore\n\n![build tests ci](https://github.com/YtFlow/YtFlowCore/actions/workflows/build-tests.yml/badge.svg)\n\nA modern proxy framework, core of YtFlow.\n\nIf you are looking for the UWP app powered by YtFlowCore, please head over to [YtFlowApp](https://github.com/YtFlow/YtFlowApp).\n\n## Features\n\n- Fully customizable. Design your own network flow!\n- Multiple inbound types: VPN, SOCKS5.\n- Supports common proxy protocols: Shadowsocks, Trojan, VMess, SOCKS5 and HTTP.\n- Flexible outbound transports: simple-obfs, WebSocket, TLS etc.\n- DNS resolvers at your option: libc resolver, classic DNS over UDP, DNS over HTTPS.\n- Rule-based split routing modules: GeoIP, Surge domain set, Quantumult X filter.\n- Share link encoders/decoders: Shadowsocks, SIP002, Trojan, SOCKS5, HTTP and V2rayN\n- Subscription parsers: Base64 encoded share links, SIP008, Surge proxy list\n- Runs on Linux, macOS and Universal Windows Platform.\n\n## Usage\n\nUse `ytflow-edit` to generate a new database file `conf.db` and a profile `my_profile`, and edit plugins accordingly. For newcomers, you may be interested in the `default-ss` and `default-redir` plugins. Read the [YtFlowCore Book](https://ytflow.github.io/ytflow-book/) to learn more about configuration.\n\nWhen the profile is ready, execute `ytflow-core --db-file conf.db my_profile` to launch YtFlowCore.\n\n## Project Layout\n\n| Package | Description | Dependency |\n|---------|-------------|------------|\n| ytflow  | Includes all components and plugins to run a YtFlowCore instance. | - |\n| ytflow-bin | Shell executables for the core `ytflow-core` and a TUI editor `ytflow-edit` that actually call into entrypoints exposed by `ytflow-bin-shared`. | ytflow-bin-shared |\n| ytflow-bin-shared | Contains the actual code for the binaries. Produces a single cdylib that reuses common dependencies to reduce final artifact size. | ytflow, ytflow-app-util |\n| ytflow-app-util | Provides utilities for app frontends to handle share links, subscriptions etc. Also exports FFI functions and generates a C header file. | ytflow |\n\n## Build\n\nSteps to build `ytflow-core` and `ytflow-edit`:\n1. Setup [rustup](https://rustup.rs/) and Visual C++ Build Tools on Windows or GCC toolchain on Linux.\n2. Clone this repository.\n3. Rename `.cargo/publish.config.toml` to `.cargo/config.toml`.\n4. Run `cargo build -p ytflow-bin --release`.\n5. If no error occurrs, you can find the binaries in `target/release/`.\n\nTo build for YtFlowApp, please refer to the build steps on https://github.com/YtFlow/YtFlowApp/blob/main/README.md.\n\n## Credits\n\nThis project is inspired from:\n\n- [shadowsocks-rust](https://github.com/shadowsocks/shadowsocks-rust)\n- [Leaf](https://github.com/eycorsican/leaf)\n- [Project V](https://github.com/v2fly/v2ray-core)\n- ... and many more others!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fytflow%2Fytflowcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fytflow%2Fytflowcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fytflow%2Fytflowcore/lists"}