Nextcloud Migrator is an Electron desktop app for one-way imports into Nextcloud. Connect your server with Login Flow v2, connect Google once, choose channels, then run imports with local credential storage, scheduled repeats, destination overrides, and file-level run history.
Current implementation is Google-first. Apple, Dropbox, and OneDrive are scaffolded as next adapters instead of bolted-on one-offs.
How it works
Connect the destination, connect the source, then let runs stay repeatable.
1. Connect Nextcloud
Authenticate once with Nextcloud Login Flow v2 so uploads and imports target the right account.
2. Pick Google channels
Choose the import channel that matches the data you want to move instead of forcing everything through one generic uploader.
3. Run now or schedule later
Keep one-off imports manual or attach schedules for repeat runs, with run logs and item-level history stored locally.
Current channels
The Google path is already split into real migration targets instead of a vague “sync everything” button.
Google Photos Picker
Manual browser-assisted media selection for targeted photo and video imports.
Google Drive Media
Headless ingestion of media files from Drive for repeatable manual and scheduled runs.
Docs Exports
Exports Docs, Sheets, and Slides into conventional files before uploading them to Nextcloud.
Calendar Events
Builds iCalendar output for import into the Nextcloud calendar stack.
Contacts
Exports contacts as vCard so the import path is clear and reversible.
Tasks to Deck
Creates a board per task list so Google Tasks can land in Nextcloud Deck with structure intact.
Keep to Notes
Turns Google Keep notes into Markdown files for a cleaner Nextcloud notes workflow.
Safeguards
Encrypted local secrets, destination overrides, dedupe, and local reports keep reruns traceable.
What keeps it usable
Encrypted local storage
Credentials are stored locally with Electron safeStorage instead of some always-on backend.
Hash-based skip
SHA-256 records help skip duplicate uploads when imports need to be resumed or repeated.
Run reports
Jobs, runs, and item-level results are kept locally so failures can be traced without guesswork.
Downloads and updates
Stable binaries are published through the public releases repo. Use the latest build for your machine or browse the full release history and notes.