Update README.md

This commit is contained in:
Mercury. 2025-06-18 14:15:15 +02:00
parent ec116246b1
commit 6062ed12c1

View file

@ -4,17 +4,16 @@ Your files, your server, your privacy. Litecloud is a lightweight, secure cloud
## What makes Litecloud special?
🔒 **Privacy-first**: Your files are encrypted with military-grade AES-256-GCM encryption before they ever touch the disk
🏠 **Self-hosted**: Run it on your own server—you control your data
**Lightning fast**: Built with Rust for maximum performance and safety
🔧 **Developer-friendly**: Clean REST API lets you build custom apps and integrations
🚀 **Dead simple**: One Docker command and you're running your own cloud
**Privacy-first**: Your files are encrypted with military-grade AES-256-GCM encryption before they ever touch the disk
**Lightning fast**: Built with Rust for maximum performance and safety
**Developer-friendly**: Clean REST API lets you build custom apps and integrations
**Dead simple**: One Docker command and you're running your own cloud
## Features at a glance
- **Secure authentication** with JWT-based sessions
- **File encryption** using AES-256-GCM (the same standard used by banks)
- **Share files easily** with customizable access controls and expiration dates
- **File encryption** using AES-256-GCM
- **Share files easily** with customizable access controls and expiration dates*
- **Full REST API** for building your own clients or automations
- **Modern web interface** built with React and TypeScript
- **Single binary deployment** — no complex setup required
@ -25,7 +24,6 @@ Your files, your server, your privacy. Litecloud is a lightweight, secure cloud
- **Rust + Rocket**: For blazing-fast, memory-safe performance
- **AES-256-GCM encryption**: Your files are scrambled before they hit storage
- **JWT authentication**: Secure, stateless session management
- **Docker-ready**: Runs on port 8082 by default
### Frontend
- **React + Vite + TypeScript**: Modern, type-safe user interface, with all the added benefits of vite
@ -34,10 +32,10 @@ Your files, your server, your privacy. Litecloud is a lightweight, secure cloud
## Why Rust? Why not just use Node.js?
Great question! Rust gives us superpowers:
Great question! Rust seemed to *just work* for this scenario:
- **Memory safety without garbage collection** — no mysterious crashes or memory leaks, hence safer handling of encrypted files.
- **Fearless concurrency** — handle thousands of simultaneous uploads without breaking a sweat
- **Insanely good concurrency** — handle thousands of simultaneous uploads without breaking a sweat
- **Zero-cost abstractions** — all the safety with none of the performance overhead
- **Type safety for encryption** — this really is a no-brainer for an app built with security in mind
@ -45,11 +43,11 @@ Rocket framework adds the cherry on top with its elegant routing system and buil
## How secure is "secure"?
We take security seriously:
We take this *security* thing quite seriously:
- **AES-256-GCM encryption**: The same encryption standard trusted by governments and militaries
- **Server-side encryption**: Files are encrypted before they're written to your server's disk — even system administrators can't read your files without the keys
- **No plaintext storage**: Your original files never exist unencrypted on the server
- **On-pipe encryption**: Files are encrypted before they're written to your server's disk — even system administrators can't read your files without the keys
- **No plaintext storage**: Your original files exist only before you upload them and after you download them back on your machine
- **JWT-based auth**: Secure, industry-standard authentication tokens
## API-first design
@ -61,7 +59,7 @@ Everything you can do in the web interface, you can do programmatically. The ent
- Integrate file storage into your existing applications
- Build a command-line client for power users
*API documentation is coming soon — we're working on comprehensive docs with examples!*
*API documentation is coming as soon as all the routes are battle-tested*
## Getting started in 30 seconds
@ -106,7 +104,7 @@ That's it! Caddy will automatically get SSL certificates and proxy requests to y
If you prefer a web interface for managing your reverse proxy:
1. Set up [Nginx Proxy Manager](https://nginxproxymanager.com/)
2. Create a new proxy host pointing to `localhost:8082`
2. Create a new proxy host pointing to `ip:8082`
3. Enable SSL and let NPM handle the certificate generation
4. Configure any additional security headers you want
@ -123,14 +121,14 @@ server {
ssl_certificate_key /path/to/your/private.key;
location / {
proxy_pass http://localhost:8082;
proxy_pass http://ip:8082;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Important for file uploads, app default is 5 gb
client_max_body_size 100M;
# Important for file uploads
client_max_body_size 5G;
}
}
```
@ -146,10 +144,10 @@ When exposing to the internet:
## What's next?
- 📱 Mobile app development
- 📚 Comprehensive API documentation
- 🔍 File search and tagging
- 🔄 Client-side sync capabilities
- Mobile app development
- Comprehensive API documentation
- File search and tagging
- Client-side sync capabilities
## Contributing
@ -159,10 +157,10 @@ Found a bug? Have a feature idea? We'd love your help! Check out our issues page
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). This means:
- You can use, modify, and distribute this software freely
- You can use it for commercial purposes
- You must provide source code to users (even if they access it over a network)
- Any modifications must also be open source under AGPL-3.0
- You can use, modify, and distribute this software freely
- You can use it for commercial purposes
- You must provide source code to users, or a way to get to this page (even if they access it over a local network)
- Any modifications must also be open source under AGPL-3.0
The AGPL ensures that if you run a modified version of Litecloud as a service, your users have the right to access the source code. This keeps the project truly open and prevents proprietary forks from closing off improvements to the community.