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 (v1.0 Static Rendering)
- Files view natively via absolute path routes like
/view/public/ccc.md .md→ Markdown rendered with true relative-link support layout (e.g.,./img/ccc.jpg).txt→ Plain text display.html/.css/.js→ Direct static site web response execution.jpg/.png/.gif→ Native image display streaming- Other files → Download
Public Files
- Files in
sync/public/are uploaded as public - Access via
/api/public/filesor Website/public
Web Editor
- Web-based code editor similar to VSCode (access at
/editor) - Monaco Editor for multi-tab code editing
- Integrated Terminal with real-time multiplexed PTY
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
Metadata
Release files for box5 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| box5-1.0.0.tar.gz | 31.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| box5-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 62.4 kB
Release files / box5-1.0.0.tar.gz
| Download URL | box5-1.0.0.tar.gz |
|---|---|
| Size | 31.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2996d8dd61cccda4a28850bc8a7f6c1562b2401bc0840a5d9b522c6faa28c78c
|
|
BLAKE2b-256 checksum How to use checksums |
5ec0139290f5a7e80dcf8dcef995b00fe8f14a5b0d123ac49374d57562de163c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.9
|
Release files / box5-1.0.0-py3-none-any.whl
| Download URL | box5-1.0.0-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
65e1fb9b8c66efb41a60dda1952d4885c7ae8ded6c08977e1e2f47984e02a66f
|
|
BLAKE2b-256 checksum How to use checksums |
3ae219b85f24ef4525db48195a517ef7a63a21d4ccc6cc8119b4503816dba697
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.9
|
Security for box5 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.