- The file is first
byte encoded(client side). - The encoded file is then
encryptedusing AES 256 bit encryption (server side). - The encrypted file is
transferredto the recipient (still encrypted).
- The received file is
decryptedusing the same encryption key (server side). - The decrypted data is
byte decoded(client side). - The original file is
reconstructedand made available for download.
This way only the intended recipient can access the file throughout the transfer.
First install uv and sync the project dependencies:
cd path/to/root/directory
pip install uv
uv syncSet up your environment variables:
cp .env.example .env
nano .env # modify file, instructions insideMigrate database:
uv run manage.py migrateRun Django server:
uv run manage.py runserverAccess web application at http://127.0.0.1:8000 or http://localhost:8000.
Open two browser windows to transfer files between users.
uv run manage.py testRecording.2026-06-09.153006.mp4
Recording.2026-06-09.153059.mp4
- Simplicity: Keep changes focused and easy to review.
- Libraries: Avoid adding non-standard libraries unless discussed via an issue.
- Testing: Ensure code runs error-free, passes all tests, and meets coding standards.
- Report bugs via GitHub Issues.
- Submit pull requests via GitHub Pull Requests.
Thank you for supporting FileShare!
