Skip to content

A simple desktop GUI application for uploading files and folders to OneDrive on macOS, with resume support.

License

Notifications You must be signed in to change notification settings

ailoha/onedrive-uploader-py

Repository files navigation

OneDrive Uploader

English | 中文简体

A simple desktop GUI application for uploading files and folders to OneDrive for Business on macOS, with resume support.

Built with Python and PyQt.

demo

🚀 Features

  • Upload files and folders to OneDrive for Business
  • Resume support — continue from the last interrupted upload
  • Lightweight and minimal GUI
  • No command line required
  • Tested on macOS 26 Tahoe (Apple Silicon)

🔒 Permissions & Privacy

When you sign in to OneDrive for Business for the first time, the app will request three permissions:

Permission Purpose
Access all files you can access in OneDrive (Files.ReadWrite.All) Required for uploading, resuming, and managing your own files in OneDrive.
Maintain access to data granted to OneDriveUploader (offline_access) Allows the app to keep your login active without re-authenticating every time.
View your basic profile (User.Read) Identifies your account (name, email) so the app can store your login session securely.

These are the minimal Microsoft Graph permissions required to implement resumable file uploads.

All permissions are granted through Microsoft's official login flow; the app itself never handles your credentials directly.

The app never uploads, stores, or shares your data with any external service other than Microsoft OneDrive.

📦 Installation

  1. Download the latest .dmg package from Releases.
  2. Open the .dmg file — drag OneDriveUploader.app into the Applications folder.
  3. Launch OneDriveUploader.app.
  4. Click Add Account, follow the Microsoft login to authorize your OneDrive for Business account.
  5. After authorization, select files or folders and start uploading. Uploads run in the background and can be resumed automatically if interrupted.

⚠️ macOS may warn that the app is from an unidentified developer.

To open it, right-click (or Control-click) → “Open” → then confirm.

🧩 Development

Requirements

  • macOS 10.15+
  • Python 3.12+

Setup

git clone https://github.com/ailoha/onedrive-uploader.git
cd onedrive-uploader
python3.12 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Run in development mode

python main.py

🤝 Contributing

Contributions are welcome!

You can help by:

  • Reporting issues
  • Submitting pull requests for bug fixes or new features
  • Improving documentation or UI/UX

Please follow standard GitHub workflow:

  1. Fork this repository
  2. Create a new branch
  3. Commit and push your changes
  4. Submit a pull request

License

MIT License — Free to use, modify, and distribute.

About

A simple desktop GUI application for uploading files and folders to OneDrive on macOS, with resume support.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages