explaingit

owncloud/core

8,776PHPAudience · ops devopsComplexity · 4/5Setup · hard

TLDR

Self-hosted cloud storage platform written in PHP that lets you store, sync, and share files, contacts, and calendars on your own server instead of relying on Dropbox or Google Drive.

Mindmap

mindmap
  root((ownCloud))
    What it does
      File storage
      Sync across devices
      File sharing
    Features
      Encryption
      Calendar app
      Contacts app
      Add-on apps
    Tech
      PHP server core
      Node.js and Yarn
      Composer
    Deployment
      Self-hosted
      Your own server
      200M users worldwide
Click or tap to explore — scroll the page freely

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

Things people build with this

USE CASE 1

Deploy ownCloud on your own Linux server to replace Dropbox with a self-hosted file sync service you fully control

USE CASE 2

Share specific folders or files with teammates while keeping all data on your own infrastructure

USE CASE 3

Extend the platform with calendar, contacts, or mail integrations using the add-on app system

Tech stack

PHPNode.jsYarnComposer

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a PHP-compatible web server, a database, and Node.js with Yarn to build the frontend assets.

In plain English

ownCloud Core is the server-side code that powers ownCloud, a self-hosted platform for storing, syncing, and sharing files. Rather than relying on a third-party service like Dropbox or Google Drive, ownCloud lets individuals and organizations run their own file storage on a server they control. According to the README, more than 200 million users worldwide depend on it. The platform covers the basics of personal cloud storage: you can keep files, contacts, and calendars on your own server, sync them across multiple devices, and share specific folders or items with other people. It also supports encryption so that data is protected both during transfer and while stored on disk. A range of add-on apps can extend the functionality further, including calendar, contacts, and mail integrations. This repository contains the server core, written in PHP. To run ownCloud yourself, you set up a compatible web server and follow the official installation guide linked in the README. Developers who want to contribute to the codebase need Node.js, Yarn, and Composer (a PHP dependency manager) installed on their machine. Contributions follow a structured workflow. All commit messages must conform to the Conventional Commits format, which uses short prefixes like "fix:" or "feat:" to make the purpose of each change machine-readable. A CI pipeline checks every commit against this requirement. For people who want help or want to follow the project, the community is reachable through a forum, an IRC channel, Facebook, and Twitter. Translations are handled through the Transifex platform.

Copy-paste prompts

Prompt 1
Walk me through installing ownCloud on an Ubuntu server with Nginx and setting up file sync for multiple users
Prompt 2
How do I configure ownCloud's encryption so that uploaded files are protected both at rest and during transfer?
Prompt 3
Show me how to build a simple ownCloud app plugin that adds a custom page to the sidebar menu
Open on GitHub → Explain another repo

← owncloud on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.