Welcome to rust-web-server, a robust and efficient web server built with Rust that facilitates file uploads, automatic compression, and saves the files to a database. This server is designed to handle file management seamlessly, ensuring high performance and reliability. Whether you are working on an application that requires file handling or simply want to implement a secure and fast file server, this project has you covered.
-
File Upload: Secure and easy-to-use file upload functionality.
-
Automatic Compression: Files once uploaded can compressed to save space and reduce storage requirements.
-
Database Integration: Saves uploaded and compressed files to a database for easy access and management.
-
High Performance: Written in Rust, leveraging its memory safety and performance advantages.
-
Async Support: Handles multiple concurrent uploads and operations with asynchronous processing.
-
Rust (Stable version recommended)
-
Cargo (comes with Rust)
-
A running database (e.g., PostgreSQL, MySQL) for storing file metadata.
- Clone the repository:
git clone https://github.com/Guy-Ghis/rust_web_server.git- Build the project:
cargo build --release- Run the server:
cargo runYour server will start running on http://localhost:8000.
We are open to contributions from developers of all levels! Whether it's fixing bugs, suggesting new features, or improving documentation, feel free to open an issue or submit a pull request. Here’s how you can contribute:
- Fork the repository.
- Clone your fork to your local machine:
git clone https://github.com/Guy-Ghis/rust_web_server.git- Create a new branch for your feature or fix:
git checkout -b my-feature- Make your changes and commit them:
git commit -m "Add new project feature"- Push your changes to your fork:
git push origin my-feature- Submit a pull request to the main repository.
This repository is licensed under the MIT License. See the LICENSE file for more information.