Community | opensource

What 108 repositories taught us about open source hygiene

Sixteen years. 108 repos. One map. What an archaeological dig through the ownCloud GitHub org taught us about contributor experience and open source hygiene

The ownCloud GitHub organization has 108 public, non-archived repositories.
I know, because I mapped every single one last week.

When you’ve been building open source since 2010, sixteen years (!), your GitHub org becomes an archaeological dig:

  • Active projects, next to repos untouched since 2017.
  • Experimental forks from five years ago in search results.

The first thing a potential contributor sees is confusion. So, we mapped it.
Every repo categorized into six groups:

  • oCIS (15 repos),
  • Classic (40 repos),
  • Clients (15 repos),
  • Documentation (10 repos),
  • LibreGraph API (5 repos), and Infrastructure (23 repos).

The map is going into the GitHub org profile README.

What we found:

  • Seven repos are forks of upstream project;
    These carry the upstream license and can’t be relicensed. We’re tagging them clearly.
  • Several repos haven’t been pushed to in over two years.
    We’re reviewing each one:

    • archive the dead ones (moved to ownCloud-archive),
    • mark the stable ones clearly.
  • Ten documentation repos:
    docs is the Antora framework that ties them together, with per-product repos underneath, but if you didn’t know that, you’d have no idea where to contribute a docs fix. Now it’s in the map.

We’re setting up a .github repo with org-wide defaults:

  • CONTRIBUTING.md,
  • CODE_OF_CONDUCT.md,
  • SECURITY.md,
  • SUPPORT.md,
  • and a PR template with a DCO sign-off reminder.

One set of defaults instead of 108 copies.

Repo hygiene might not be glamorous, but it’s the difference between a GitHub org that says „we’re serious“ and one that says „we threw some code on the internet.“

Tomorrow: I’m a script kid running an OSPO.

 

This is part 3 of this blog post series.
See the earlier posts:

  1. A (re)-introduction to the ownCloud community.
  2. What happens when you fork twice, get acquired, and keep shipping anyway
  3. We killed our own CLA. Here’s why that’s a good thing
  4. PHP 8.3. Yes, for Classic. Yes, we heard you

Über den Autor

David Walter is Vice President, Open Source Program Office & Special Projects at Kiteworks, where he stewards the open source projects and drives digital sovereignty strategy globally. He’s been part of the ownCloud ecosystem since 2014, holding roles from community contributor to Chief eXperience Officer before taking on large-scale government deployments and open source governance. At heart, he’s still a script kid who happens to translate between business, community, and engineering. He holds an B.A and an LL.M., is based in Berlin, and volunteers with Germany’s Federal Agency for Technical Relief (THW).

David Walter

25. April 2026

Read now:

ownCloud Web and oCIS Are Now One Codebase. All Apache-2.0.

ownCloud Web and oCIS Are Now One Codebase. All Apache-2.0.

Two codebases just became one. The ownCloud Web frontend now lives inside owncloud/ocis under web/, all under Apache-2.0. One repository, one licence, one CI pipeline, one contribution surface. Years of contribution history preserved, everything moved into a single home. This is what the OSPO relicensing programme looks like when it reaches the core product.

mehr lesen
Alt Text for Every Image. No Manual Work. No Excuses.

Alt Text for Every Image. No Manual Work. No Excuses.

Missing alt text is one of the most commonly flagged WCAG failures. EN 301 549 mandates it for public sector ICT across Europe. As of today, oCIS ships an extension that generates a credible first draft with your configured vision LLM, lets the user edit it, and writes it back to the file as a WebDAV property that survives the session. A meaningful compliance tool, not just a convenience feature.

mehr lesen
ownCloud Server 11.0.0-rc1: First Release Candidate for the Next Major Version

ownCloud Server 11.0.0-rc1: First Release Candidate for the Next Major Version

The first release candidate for ownCloud Server 11 is out. This is the release that surfaces breakage: PHP 7 support dropped, deprecated database and group-management classes removed, major version bumps to Doctrine DBAL and Symfony, subadmin disabled by default. Three security fixes underneath.
Do not deploy in production. Do test against your apps and integrations.

mehr lesen