|
FreeCloud turns the web hosting space you already pay for into a simple personal cloud drive.
It currently includes:
- a desktop sync app for Linux/macOS, with a Windows launcher path
- a working Android app
- a PHP web file manager and sync API you upload to your host
- a public website/download page
If you already pay for:
- web hosting
- cloud storage
- maybe email storage
then you may already be paying for the same kind of disk space more than once.
FreeCloud is the simple version of using that hosting space instead.
FreeCloud is free software licensed under the GNU General Public License version 3 or later.
- Website:
https://freecloud.wiki - Source:
https://github.com/KyleBenzle/FreeCloud
FreeCloud is a hosted file sync and browser drive built around your own web host.
You upload the server files to a folder like:
public_html/FreeCloud/
Then your desktop app, Android app, and browser all talk to that same hosted FreeCloud install.
- Linux desktop: primary tested desktop path
- macOS desktop: same Python/Tk desktop app, but still needs real-world Mac testing
- Windows desktop: launcher and compatibility path exist, but it has not been fully tested
- Android: working app
- iPhone/iPad: not implemented
Upload the contents of server/ to your web host so it looks like this:
public_html/FreeCloud/index.php
public_html/FreeCloud/freecloud_api.php
public_html/FreeCloud/freecloud.php
public_html/FreeCloud/freecloud_download.php
public_html/FreeCloud/freecloud_preview.php
It should not look like this:
public_html/FreeCloud/server/freecloud_api.php
Then visit:
https://yourdomain.com/FreeCloud
Linux / macOS:
./Run_Mac_Linux.shWindows:
Run_Windows.batIn the desktop app, enter:
Website Address:https://yourdomain.com/FreeCloudLocal Folder: your normal local sync folder, such as~/FreeCloudPassword: an optional password for this hosted drive
On first connection:
- if the hosted drive is not initialized yet, the app creates it
- if it is already initialized, the app uses the existing password
Once uploaded, your hosted browser drive is available at:
https://yourdomain.com/FreeCloud
You can:
- upload files
- browse folders
- preview supported media
- edit supported text files
- download files or ZIP folders
The Android app connects to the same hosted FreeCloud install.
Use:
Website Address:https://yourdomain.com/FreeCloudPassword: the same FreeCloud passwordPhone folder: the local Android folder you want to use
The actual hosted FreeCloud web app and API:
server/index.phpserver/freecloud.phpserver/freecloud_api.phpserver/freecloud_download.phpserver/freecloud_preview.php
The current desktop app is built from:
freecloud_ui.py: desktop GUIfreecloud_cli.py: sync engine / CLIRun_Mac_Linux.sh: Linux/macOS launcherRun_Windows.bat: Windows launcher
Android app source project.
Public landing/download site assets, including:
This folder is for the public website, not the hosted FreeCloud backend.
The current sync model is simple:
- local changes upload to the hosted FreeCloud server
- remote changes download back to the local folder
- remote deletions remove unchanged local files
- local deletions do not delete remote files unless the CLI is started with
--delete-remote
This behavior is intentional, but it is not fully symmetrical.
Desktop/local config currently uses simple JSON files:
- last-used config:
.freecloud_last_config.json
- per-local-folder config:
.freecloud_client.json
- sync state:
.freecloud_state.json
These are convenient, but they are not hardened secrets storage.
FreeCloud currently has three main user-facing layers:
- Desktop sync client
- Android client
- Hosted PHP web app and API
The hosted server stores synced files in:
freecloud_files/
The main server pieces are:
freecloud_api.phpfor sync actionsfreecloud.phpfor browser file managementfreecloud_preview.phpfor inline previewsfreecloud_download.phpfor downloads and ZIP export
FreeCloud is practical, but not fully hardened.
Important current realities:
- storage protection currently depends heavily on host configuration
- the app stores local credentials in plaintext JSON
- the web UI does not currently have CSRF protection
- some risky file types are still allowed through the browser file manager
- large uploads are still relatively simple and not highly robust
So:
- this is not meant to be a hardened enterprise storage platform
- it is meant to be a small, useful personal hosted drive
- macOS path still needs broader real-device testing
- Windows path is best-effort and not deeply tested
- no iPhone/iPad app
- no multi-sync manager yet
- no self-host mode right now
- no GitHub publishing integration right now
If you are working on the project locally:
- the desktop app is the main path for Linux/macOS
- the Android app lives in
android-app/ - the public website lives in
website/ - the hosted backend lives in
server/ - the current architecture and sync flow are summarized in
PROJECT_NOTES.md
Because paying for hosting and then paying again for storage often makes no sense.
You already have the space.
Use it.
