SmallCloud is a module synchronization system built with a Flask server and a Tkinter client. It supports:
- HWID authentication between the client and server
- whitelist management and pending HWID approval
- file synchronization through the
uploads/directory - automatic generation of
.env,whitelist.txt, anduploads/on first run - client UI in Simplified Chinese, Traditional Chinese, and English
- running from source or packaged executables
Client/main.py: client entry pointmodules/: client logic moduleslang/: client language JSON files
Server/main.py: server entry pointmodules/: server logic modules
packing/: packaging scripts and configurationrequirements.txt: Python dependenciesexample.env: sample environment configwhitelist-example.txt: sample whitelist file
Install dependencies:
pip install -r requirements.txtServer:
cd Server
python main.pyClient:
cd Client
python main.pyServer: run SmallCloud Server.exe
Client: run SmallCloud Client.exe
- Start the server.
- On first run, it will create
.env,whitelist.txt, anduploads/in the executable directory. - Edit
.envand setSERVER_SECRET_TOKEN - Add authorized client HWIDs to
whitelist.txt - Place files to synchronize into
uploads/ - Restart the server.
- Start the client.
- Enter the server URL, e.g.
http://127.0.0.1:5000 - Select a local module sync directory.
- Select a game preset (optional).
- Click
Start Syncing.
server_url: the server address, for examplehttp://127.0.0.1:5000mod_dir: local sync directory where files from the server will be downloadedGame Preset: presets for common game pathsSwitch Language: switch between Simplified Chinese, Traditional Chinese, and English UI
The client currently supports:
- Simplified Chinese
- Traditional Chinese
- English
- Client dependencies:
tkinter,requests - Server dependencies:
Flask,waitress,python-dotenv
- The server and client can be deployed on the same LAN.
- For public access, use a tunneling service such as Cloudflare Tunnel.
.env,whitelist.txt, anduploads/should be located in the same directory as the executable.