ProxyNet - cloudflare alternative banner

ProxyNet - cloudflare alternative

12 devlogs
15h 39m 55s

ProxyNet is an open-source project that provides a reliable alternative to cloudflare for simple proxying needs. It is designed to be easy to setup and use. Build with Rust

This project uses AI

Github Copilot for helping me code and fix errors.

Demo Repository

Loading README...

cooldevcoding

The domain and stuff relating to the domain like ratelimits and more are now in the sqlite database instead of a config.toml. This will make it easier for the planned dashboard to manage stuff. I think maybe I will run a seperate API for managing this stuff instead of directly putting this into main.rs

Attachment
0
cooldevcoding

Made a stats api to get information about the current configuration and details about the proxy. I will use this to control the proxy via an SvelteKit Frontend

Attachment
0
cooldevcoding

I added rate limiting. Seems awfully lot of time but I kept encountering a bug so add the end I decided to just use AI assistance. Sorry fellow anti-vibecoders.

Attachment
0
cooldevcoding

I finally got SQL to work. It now successfully stores the logs in proxynet.db. Here is a preview of how it looks (using SQLite DB Viewer)

Attachment
0
cooldevcoding

I am working on storing the logs and the config in an SQLite Database. My verdict is that I like SQL, but SQL doesn’t like me. Same goes for Rust

Attachment
0
cooldevcoding

I added logging. It now checks how long the response time was, which IP and which User-Agent type requested the information. Now I have to put all of the collected information in an SQLite DB and see how to check how many bytes I sent. Below is an example Log when i run:
curl.exe -H “Host: test.local” http://localhost:8080

Attachment
0
cooldevcoding

Ok added support to read of config files. so basically at the root of the project you have to create an config.toml and write stuff like the domain you want to proxy and which port and host the server should run on

Attachment
1

Comments

cooldevcoding
cooldevcoding about 2 months ago

also i removed an unused import which fixed that 1 warning issue

cooldevcoding

I have decided to stick with rust and use svelte for the frontend dashboard since python has poor async support and will consume more CPU. I have to lock in and get better at rust ig.

Attachment
0
cooldevcoding

I explored different stuff cloudflare provides and also decided to use python. I intially planned on using Rust, but I feel more comfortable with Python

Attachment
0