2 releases
Uses new Rust 2024
| 0.1.1 | Aug 29, 2025 |
|---|---|
| 0.1.0 | May 7, 2025 |
#1201 in Procedural macros
70 downloads per month
14KB
216 lines
Netter
Netter is a tool for quickly and easily launching servers.
Table of Contents
Future
- Desktop client (UI);
- Support for other server types (besides HTTP/HTTPS): WebSocket, gRPC, TCP/UDP sockets;
Features
- Custom Route Definition Language (.rd) (hereinafter - RDL) - a config describing possible routes and the logic for handling requests to these routes;
- Error handling in RDL;
- TLS support;
- Own daemon/service (depending on the OS);
- Ability to integrate Rust plugins into RDL.
Documentation
Install
To install the daemon or service, use the install command:
netter install
Warning
The service executable (netter_service) must be in the same directory as the CLI.
Service-Start
To start the service or daemon, use the service-start command:
netter service-start
Service-Stop
To stop the service or daemon, use the service-stop command:
netter service-stop
Service-Status
To get the status of the service or daemon, use the service-status command:
netter service-status
Uninstall
To remove the service or daemon, use the uninstall command:
netter uninstall
Ping
To check the connection with the service, use the ping command:
netter ping
List
To get a list of running servers (including IDs), use the list command:
netter list
Start
Start a server using the start command and the --config flag, which takes the path to the .rd server configuration file:
netter start --config path/to/file.rd
Stop
Stop a server using the stop command and the -i (or --id) flag, which takes the server ID:
netter stop -i id
Route Definition Language Documentation
Create plugins for RDL
Installation
Windows
Installation from Release Assets:
- Download the archive for Windows;
- Unpack it in a convenient location;
- Navigate to the directory where you unpacked the archive;
- Run the command
./netter install; - If the previous step was successful, run the command
netter service-start; - Enjoy!
Building from Source Code:
Prerequisites: Rust must be installed on your device. You can download it either from the official website or using install_rust.bat
- Clone the project:
git clone https://github.com/bjfssd757/netter; - Navigate to the project directory;
- Run the following commands:
cargo build --release; cargo build --release -p netter_service; cd target/release
Note
cargo build --release will create the CLI executable netter in target/release;
cargo build --release -p netter_service will create the service executable netter_service in target/release
- After executing these commands, you will be in the build directory (
target/release). Execute the following commands:
./netter install; ./netter service-start
- These commands will create and start the
NetterServiceservice. To check the CLI connection with the service:./netter ping - Optional: Add the path to
netter.exeto your PATH environment variable.
Linux
Installation from Release Assets:
- Download the archive for Linux;
- Unpack it in a convenient location;
- Navigate to the directory where you unpacked the archive;
- Run the command
./netter install; - If the previous step was successful, run the command
netter service-start; - Enjoy!
Building from Source Code:
Prerequisites: Rust must be installed on your device. You can download it either from the official website or using install_rust.sh
- Clone the project:
git clone https://github.com/bjfssd757/netter; - Navigate to the project directory;
- Run the following commands:
cargo build --release; cargo build --release -p netter_service; cd target/release
Note
cargo build --release will create the CLI executable netter in target/release;
cargo build --release -p netter_service will create the daemon executable netter_service in target/release
- After executing these commands, you will be in the build directory (
target/release). Execute the following commands:
./netter install; ./netter service-start
- These commands will create and start the daemon. To check the CLI connection with the daemon:
./netter ping - Optional: Add the path to the
netterexecutable to your PATH environment variable.
Dependencies
~0.7–1.6MB
~32K SLoC