A personal Dropbox-like app with Client (desktop sync), Server (cloud storage), and Website (web UI).
./run.sh- Server: http://localhost:3111
- Website: http://localhost:3112
# 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- Place files in
./sync/folder to auto-upload - Changes detected and synced automatically
- Use
./sync/public/for public files (accessible without login)
- Root shows subfolders:
subdir/,public/ - Click folder to enter
- In subfolder shows
../to go back - Breadcrumb shows current path
- Same filename shows only latest version on homepage
- Click "History" to see all versions (v1, v2, v3...)
.md→ Markdown rendered.txt→ Plain text display.jpg/.png/.gif→ Image display- Other files → Download
- Files in
sync/public/are uploaded as public - Access via
/api/public/filesor Website/public
./test.sh- Python + FastAPI + sql5
- sql5 source:
/Users/Shared/ccc/project/sql5
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