explaingit

ianustec/nextcloud-microsoft-sharepoint-sync

Analysis updated 2026-05-18

0PHPAudience · ops devopsComplexity · 3/5LicenseSetup · moderate

TLDR

A Nextcloud app that copies a SharePoint or OneDrive folder into a Nextcloud Group Folder using a Microsoft account.

Mindmap

mindmap
  root((repo))
    What it does
      Syncs SharePoint to Nextcloud
      Preserves folder structure
    Tech stack
      PHP
      Microsoft Graph API
    Use cases
      Migrate off Microsoft cloud
      Mirror team folders
    Audience
      IT admins
      Ops teams

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Migrate an organization's SharePoint files into a self hosted Nextcloud instance.

USE CASE 2

Keep a Nextcloud Group Folder mirrored to a SharePoint folder without duplicating files on repeat runs.

USE CASE 3

Give a Nextcloud team access to Microsoft hosted documents without changing permissions on the Microsoft side.

What is it built with?

PHPNextcloudMicrosoft Graph APIOAuth2

How does it compare?

ianustec/nextcloud-microsoft-sharepoint-syncargosback/aura.sqlqueryargosback/jcgenealogy
Stars0
LanguagePHPPHPPHP
Last pushed2023-05-282018-02-01
MaintenanceDormantDormant
Setup difficultymoderateeasymoderate
Complexity3/52/53/5
Audienceops devopsdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires registering an Azure AD application with admin consent before the first sync can run.

AGPL v3 lets you use and modify the code freely, but if you run a modified version as a network service, you must share your changes.

In plain English

This project is a Nextcloud app that copies files from a Microsoft SharePoint or OneDrive folder into a Nextcloud Group Folder, keeping the same folder structure. It is built for organizations that want to move away from Microsoft's cloud services toward a self hosted alternative, while still being able to pull in files that live in SharePoint. Setup requires registering an application in Microsoft's Entra ID system, formerly Azure Active Directory, and granting it permission to read files and sites on behalf of one Microsoft account. That account needs to already have access to the SharePoint folders being copied. Once configured inside Nextcloud's admin settings with the tenant ID, application ID, and a client secret, an administrator connects the Microsoft account, pastes the SharePoint folder URL, and picks a destination Group Folder. Clicking a Download now button starts a recursive copy of that folder and everything inside it. The sync is designed to be safe to run more than once. It checks file size and modification time so unchanged files are skipped, and existing folders are reused rather than duplicated, so repeated runs do not create messy duplicate copies. There is an option to either recreate the full original folder path or drop files directly into the destination folder without the extra path segments. Sensitive information like the client secret and access tokens are encrypted before being stored, and the admin pages require administrator login. The app can be installed from a packaged release, built from source with Composer, or deployed with an included script that supports Kubernetes, Docker, or a plain server. Planned future work includes automatic scheduled syncing and support for personal OneDrive accounts, not just organizational SharePoint sites. It is released under the AGPL v3 license.

Copy-paste prompts

Prompt 1
Walk me through registering an Azure AD app for this Nextcloud SharePoint sync tool.
Prompt 2
How do I deploy this app into a Dockerized Nextcloud instance using the included deploy script?
Prompt 3
Explain how the folder path replication option changes where files land in Nextcloud.

Frequently asked questions

What is nextcloud-microsoft-sharepoint-sync?

A Nextcloud app that copies a SharePoint or OneDrive folder into a Nextcloud Group Folder using a Microsoft account.

What language is nextcloud-microsoft-sharepoint-sync written in?

Mainly PHP. The stack also includes PHP, Nextcloud, Microsoft Graph API.

What license does nextcloud-microsoft-sharepoint-sync use?

AGPL v3 lets you use and modify the code freely, but if you run a modified version as a network service, you must share your changes.

How hard is nextcloud-microsoft-sharepoint-sync to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is nextcloud-microsoft-sharepoint-sync for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.