From 6062ed12c1e5070bede0322c5e60bc44e8c18610 Mon Sep 17 00:00:00 2001 From: Mercury Date: Wed, 18 Jun 2025 14:15:15 +0200 Subject: [PATCH] Update README.md --- README.md | 50 ++++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 327dc08..ec3d8c1 100644 --- a/README.md +++ b/README.md @@ -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.