8 unstable releases (3 breaking)
Uses new Rust 2024
new 0.4.1 | May 3, 2025 |
---|---|
0.4.0 | May 2, 2025 |
0.3.2 | Apr 20, 2025 |
0.2.1 | Apr 11, 2025 |
0.1.0 | Apr 10, 2025 |
#158 in Network programming
880 downloads per month
145KB
3K
SLoC
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;
- Ability to integrate Rust plugins into RDL.
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);
Documentation
Install
To install the daemon or service, use the install
command:
netter install
[!WARN] 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
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
[!INFO]
cargo build --release
will create the CLI executablenetter
intarget/release
;cargo build --release -p netter_service
will create the service executablenetter_service
intarget/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
NetterService
service. To check the CLI connection with the service:./netter ping
- Optional: Add the path to
netter.exe
to 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
[!INFO]
cargo build --release
will create the CLI executablenetter
intarget/release
;cargo build --release -p netter_service
will create the daemon executablenetter_service
intarget/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
netter
executable to your PATH environment variable.
Dependencies
~22–33MB
~571K SLoC