Copilot ca2d23508b Implement payments system with default free allowance and quota enforcement (#17)
* Initial plan for issue

* Implement complete payments system with quota enforcement

- Add default free allowance configuration (100MB)
- Implement quota checking before uploads in both blossom and nip96 routes
- Add comprehensive quota checking functions in database module
- Enhance admin API to show quota information
- Add payment processing infrastructure
- Include all necessary database migrations

Users now get 100MB free storage + any valid paid storage.
Uploads are rejected when quota would be exceeded.

* Move free_quota_bytes to PaymentConfig and restore mime_type parameter

Co-authored-by: v0l <1172179+v0l@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: v0l <1172179+v0l@users.noreply.github.com>
2025-06-10 11:37:17 +01:00
2024-12-11 11:10:47 +00:00
2024-12-11 11:49:27 +00:00
2025-03-19 16:21:08 +00:00
2024-05-10 11:54:40 +01:00
2024-10-15 10:47:36 +01:00
2025-03-31 10:00:52 +01:00
2024-12-11 09:46:00 +00:00
2024-12-11 09:46:00 +00:00
2024-10-04 18:00:37 +01:00
2024-12-11 11:49:27 +00:00
2024-12-16 10:39:28 +00:00
2024-12-16 17:20:26 +00:00

route96

Image hosting service

Features

Planned

  • Torrent seed V2
  • Payment system

Running

Docker Compose

The easiest way to run route96 is to use docker compose

docker compose -f docker-compose.prod.yml up

Docker

Assuming you already created your config.yaml and configured the database run:

docker run --rm -it \
  -p 8000:8000 \
  -v ./config.yaml:/app/config.yaml \
  -e "RUST_LOG=info" \
  voidic/route96

Manual

See install.md

Description
No description provided
Readme 7.2 MiB
Languages
Rust 57.5%
TypeScript 38.7%
HTML 2.5%
CSS 0.5%
JavaScript 0.5%
Other 0.3%