OwnCloud

ownCloud, a Kiteworks Company, is a free and open-source software project for content collaboration and sharing and syncing of files in distributed and federated enterprise scenarios. It allows companies and remote end-users to organize their documents on servers, computers, and mobile devices and work with them collaboratively while keeping a centrally organized and synchronized state.

ownCloud supports extensions for online document editing such as Collabora, OnlyOffice, Microsoft 365 and Microsoft Online Office, as well as synchronization of calendars and contacts. Users can access data and documents through a web browser on a computer or mobile device and on a variety of client apps on operating systems like Windows, MacOS, and Linux. Most of ownCloud is published under APGL and GPL licenses, except for some enterprise extensions.

ownCloud is available in two versions: ownCloud 10 and Infinite Scale. While the classic ownCloud 10 is still written in PHP (ownCloud maintains and hardens its own version of the no longer officially supported PHP version 7.4 ) and is based on the LAMP stack, the newer version "Infinite Scale", created in the scientific environment of the European nuclear research center CERN, is written in Google's Go programming language and uses an architecture with microservices, cloud-native technologies and a frontend in Vue.js. While ownCloud 10 uses PHP scripts to access an SQLite, MySQL or PostgreSQL database installed on the server, Infinite Scale works without a database. The new Infinite Scale version was developed to ensure more file actions in less time and immediate access to scientific data, for example, even in scenarios where this is no longer possible with PHP and LAMP or security issues prohibit these setups.

History
The ownCloud project was launched in 2010 by Frank Karlitschek,  who shortly afterward founded the company of the same name together with Markus Rex and Holger Dyroff. In 2016, ownCloud CTO Karlitschek left the company and founded the fork Nextcloud. ownCloud GmbH continued with Tobias Gerlinger as the new CEO, and Holger Dyroff the new COO.

At the end of 2023, ownCloud merged with Silicon Valley-based Kiteworks, which unifies, tracks, controls, and secures sensitive content communications within a Private Content Network, with ownCloud's open-source code remaining free software in the long term. At the beginning of 2024, the European Organization for Nuclear Research CERN, the European Science Cloud, Sciebo – the North Rhine-Westphalia science network with 22 universities, and the Bavarian municipalities in the "Bayernbox" of the Bavarian State Office for Digitization, Broadband and Surveying used ownCloud. In the "BayernCloud Schule" (ByCS), Infinite Scale provides 4.7 million users (pupils, teachers, parents, administration) with a GDPR-compliant and secure learning platform.

Versions
While ownCloud 10 server is built on PHP and still is fully supported, ownCloud published its new version "Infinite Scale" in 2021. Infinite Scale was developed with the help of the CERN, and is a complete rewrite in Go. CERN uses ownCloud with its EOS filesystem to handle "12 petabytes of data in 1.4 billion files".

In its third version, ownCloud Infinite Scale brings GDPR data export, compliance with accessibility standards of the WCAG, a file firewall that allows admins to block content from uploading, and an Antivirus API to the ICAP standard. Version 4, released in August 2023, improved the built-in full text search and introduced new tagging and filtering functions.

ownCloud Infinite Scale addresses large scale-deployments, many of them in the education or scientific domains. It is being used by millions of concurrent users in the Bavarian school cloud, with a planned total of 4.7 million users. ownCloud Infinite Scale is also the backend of the SCIEBO platform, where thousands of students and professors of universities in North-Rhine-Westfalia share files and collaborate on documents. The European Science Cloud is also using ownCloud Infinite Scale for file sharing, syncing and collaboration.

Operating systems and clients
Desktop clients for ownCloud are available for Windows, macOS, FreeBSD and Linux, as well as mobile clients for iOS and Android devices. Source code to ownCloud is fully available on Github, except for some enterprise extensions (e.g. the third-party Virtual File System). Files and other data (such as calendars, contacts or bookmarks) can also be accessed, managed, and uploaded using a web browser. Updates are pushed to all computers and mobile devices connected to an account. Encryption of files may be enforced by the server administrator.

Features
ownCloud files are stored in conventional directory structures and can be accessed via WebDAV if necessary. User files are encrypted both at rest and during transit. ownCloud can synchronize with local clients running Windows, macOS and various Linux distributions. ownCloud users can manage calendars (CalDAV), contacts (CardDAV), scheduled tasks and streaming media (Ampache) from within the platform. Online document editing is supported via Collabora Online, OnlyOffice, Microsoft 365 and Microsoft Office Online.

ownCloud permits user and group administration, via OpenID or LDAP) Content can be shared by granular read/write permissions between users or groups. Alternatively, ownCloud users can create public URLs for sharing files. Furthermore, users can interact with the browser-based ODF-format word processor, bookmarking service, URL shortening suite, gallery, RSS feed reader and document viewer tools from within ownCloud. ownCloud can be augmented with "one-click" applications and connection to Dropbox, Google Drive and Amazon S3.

Enterprise customers have access to apps with additional functionality, which are intended for organizations with more than 500 users. An Enterprise subscription includes support services. Commercial features include end-to-end encryption, ransomware and antivirus protection, branding, document classification, and single sign-on via OpenID.

Implementation
All versions up to ownCloud 10 are built using PHP and the LAMP stack. The current "ownCloud Infinite Scale" is written in Google's Go programming language, with an architecture of microservices and cloud-native technologies, and can be downloaded (e.g., as a Docker container, manageable through Kubernetes, as a single binary or daily updated images from continuous deployment).