A modern and lightweight V2Ray client implementation in Kotlin, designed for flexibility, security, and ease of use.
- Supports VMess and VLess protocols
- Simple routing based on domain name
- TCP and WebSocket transports with TLS support
- Modern encryption using Argon2 key derivation
- Clean and modular codebase for easy extension
-
Prerequisites:
- Java Development Kit (JDK) 17 or higher
- Gradle 7.0 or higher
-
Clone the repository:
git clone https://github.com/GeekNeuron/NetLeap.git
-
Build the project:
cd NetLeap ./gradlew build
-
Configure the client:
- Edit the
src/main/resources/config.json
file (if you have one) to configure the server address, port, UUID, and other settings. If the file doesn't exist, create it. The application will use the default settings if the file is missing or incomplete.
- Edit the
-
Run the client:
./gradlew run
-
Routing rules:
- You can define routing rules in the
src/main/resources/routing.conf
file (if you have one) to route traffic based on domain name. If the file doesn't exist, create it. The application will use the default proxy if the file is missing.
- You can define routing rules in the
We welcome contributions from the community! To contribute to this project:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them with clear and descriptive messages.
- Submit a pull request.
Please follow these guidelines:
- Write clean and well-documented code.
- Follow the existing code style.
- Include unit tests for your changes.
This project is licensed under the MIT License - see the LICENSE file for details.