Skip to content

radkesvat/WaterWall

Repository files navigation

Waterwall

GitHub commit activity CLang Static Analyzer

CI

Overview

A simple networking core for tunneling and direct user–server connections. Built on high-performance, fully customizable nodes, it allows you to create a wide range of protocols without writing low-level implementation code. (Though admittedly, it might make things feel more complex depending on how you use it.)

Getting Started

To begin, please read the documentation: 👉 https://radkesvat.github.io/WaterWall-Docs/

Note: The documentation is currently available only in Persian.

Additional Documentation

If you're familiar with network protocol structures:

  • Each tunnel includes a description.md file
  • These files are written in English
  • They provide advanced documentation and implementation details

Quick Build (Fresh Ubuntu / Generic Linux VPS)

You can build WaterWall on a fresh Ubuntu (or most Debian-based) VPS with just two commands:

apt-get purge -y cmake; apt-get update; apt-get install -y snapd build-essential ninja-build ccache; snap install cmake --classic
git clone https://github.com/radkesvat/WaterWall && cd WaterWall && cmake --preset linux-gcc-x64 && cmake --build --preset linux-gcc-x64

This will install all required dependencies, fetch the project, and compile it using the provided CMake presets.

Note: The first command ensures a modern version of CMake via snap, which is required for the preset-based build system.

Questions & Suggestions

Feel free to reach out in my small Telegram group if you have any questions about this project, networking, or programming in general. I’m also happy to hear your suggestions and feedback!

About

WaterWall is a work in progress networking-core that aims to be as flexible as possible

Resources

License

Stars

Watchers

Forks

Contributors