Dropbox-like app with Client, Server, and Website
Project description
box5
A personal Dropbox-like app with Client (desktop sync), Server (cloud storage), and Website (web UI).
Quick Start
Start All Services
./run.sh
- Server: http://localhost:3111
- Website: http://localhost:3112
Manual Start
# Server (port 3111)
cd Server && uvicorn main:app --port 3111
# Website (port 3112)
cd Website && uvicorn main:app --port 3112
# Client Sync
python -m Client.main --username ccc --password cccpass --folder ./sync
Features
File Sync
- Place files in
./sync/folder to auto-upload - Changes detected and synced automatically
- Use
./sync/public/for public files (accessible without login)
Folder Navigation (ls-style)
- Root shows subfolders:
subdir/,public/ - Click folder to enter
- In subfolder shows
../to go back - Breadcrumb shows current path
File Version History
- Same filename shows only latest version on homepage
- Click "History" to see all versions (v1, v2, v3...)
File Viewer
.md→ Markdown rendered.txt→ Plain text display.jpg/.png/.gif→ Image display- Other files → Download
Public Files
- Files in
sync/public/are uploaded as public - Access via
/api/public/filesor Website/public
Run Tests
./test.sh
Tech Stack
- Python + FastAPI + sql5
- sql5 source:
/Users/Shared/ccc/project/sql5
Project Structure
Server/— FastAPI server with sql5 databaseClient/— Desktop sync client using watchdogWebsite/— Web UI with Jinja2 templatestests/— pytest unit tests_doc/— planning docs and version notes
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
box5-0.9.1.tar.gz
(29.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
box5-0.9.1-py3-none-any.whl
(30.5 kB
view details)
File details
Details for the file box5-0.9.1.tar.gz.
File metadata
- Download URL: box5-0.9.1.tar.gz
- Upload date:
- Size: 29.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7985ecb0ce5362497e7f7d4091cd5e54106dc590f8831742d7964362c105b299
|
|
| MD5 |
fa56d43334d43af6e9f2cd4fccd5328f
|
|
| BLAKE2b-256 |
5ad9d5430d60e3f3b923f28314a03852fa0a59d823424b59b3d170a50960b49d
|
File details
Details for the file box5-0.9.1-py3-none-any.whl.
File metadata
- Download URL: box5-0.9.1-py3-none-any.whl
- Upload date:
- Size: 30.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
568787135769fcacc2a1c342797b66d3c4f9cca514599a32d87dd721515fb12e
|
|
| MD5 |
5e5d1f76317d8f4d944498ba3444b379
|
|
| BLAKE2b-256 |
62f747c8ad43be9bf1f62170afde60203e2f45d411c4945936a60fdfbe0ac833
|