Giter VIP home page Giter VIP logo

ytflowcore's Introduction

YtFlowCore

build tests ci

A modern proxy framework, core of YtFlow.

If you are looking for the UWP app powered by YtFlowCore, please head over to YtFlowApp.

Features

  • Fully customizable. Design your own network flow!
  • Multiple inbound types: VPN, SOCKS5.
  • Supports common proxy protocols: Shadowsocks, Trojan, VMess, SOCKS5 and HTTP.
  • Flexible outbound transports: simple-obfs, WebSocket, TLS etc.
  • DNS resolvers at your option: libc resolver, classic DNS over UDP, DNS over HTTPS.
  • GeoIP based split routing.
  • Runs on Linux, macOS and Universal Windows Platform.

Usage

Use 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 profile-shadowsocks and profile-redir plugins. Read the YtFlowCore Book to learn more about configuration.

When the profile is ready, execute ytflow-core --db-file conf.db my_profile to launch YtFlowCore.

Project Layout

Package Description Dependency
ytflow Includes all components and plugins to run a YtFlowCore instance. -
ytflow-bin Produces the core executable ytflow-core and a TUI editor ytflow-edit. ytflow
ytflow-ffi Exports FFI functions into a static library and generates a C header file. ytflow
ytflow-uwp-plugin UWP VPN related core wrapper. Provides a UWP VPN plugin implementation. ytflow

Build

Steps to build ytflow-core and ytflow-edit:

  1. Setup rustup and Visual C++ Build Tools on Windows or GCC toolchain on Linux.
  2. Clone this repository.
  3. Rename .cargo/publish.config.toml to .cargo/config.toml.
  4. Run cargo build -p ytflow-bin --release.
  5. If no error occurrs, you can find the binaries in target/release/.

To build for YtFlowApp, please refer to the build steps on https://github.com/YtFlow/YtFlowApp/blob/main/README.md.

Credits

This project is inspired from:

ytflowcore's People

Contributors

bdbai avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.