Overview
Discover what makes Pydio Cells powerful
Pydio Cells is a modern, self‑hosted file sharing and collaboration platform written in **Go** that follows a micro‑service architecture. The core engine exposes a REST/GraphQL API, while the front‑end is built with React and TypeScript, allowing developers to embed or replace UI components without touching the back‑end. Cells can run in a single binary for lightweight deployments or be split into independently deployable services (Auth, Workspace, Storage, Flow) to scale horizontally across Kubernetes or Docker‑Compose clusters. The platform is released under the AGPL 3+ license, giving enterprises full control over data and code.
Enterprise‑grade security
High‑performance file handling
No‑code automation
Collaboration
Overview
Pydio Cells is a modern, self‑hosted file sharing and collaboration platform written in Go that follows a micro‑service architecture. The core engine exposes a REST/GraphQL API, while the front‑end is built with React and TypeScript, allowing developers to embed or replace UI components without touching the back‑end. Cells can run in a single binary for lightweight deployments or be split into independently deployable services (Auth, Workspace, Storage, Flow) to scale horizontally across Kubernetes or Docker‑Compose clusters. The platform is released under the AGPL 3+ license, giving enterprises full control over data and code.
Key Features
- Enterprise‑grade security – LDAP/AD/OIDC integration, fine‑grained ACLs, SSO, 2FA, and audit logs.
- High‑performance file handling – native support for S3/MinIO, NFS, SMB, and local storage; multipart uploads, resumable transfers, and chunked streaming.
- No‑code automation – a visual Flow builder that triggers on events (upload, delete) and can call webhooks or external services.
- Collaboration – real‑time comments, document versioning, and integration with Office/LibreOffice via the web‑editor.
- API extensibility – a plugin system that allows custom modules to register new REST endpoints, storage drivers, or UI widgets.
Technical Stack
| Layer | Technology |
|---|---|
| Runtime | Go 1.21+, gRPC, HTTP/2 |
| API | REST (JSON), GraphQL |
| Database | MySQL 5.6+ / MariaDB (schema‑based) |
| Storage | Local FS, S3/MinIO, NFS, SMB |
| Front‑end | React 18+, TypeScript, Vite |
| Containerization | Docker images per service; Helm charts for Kubernetes |
| Observability | Prometheus metrics, OpenTelemetry tracing |
The modular design means that each service can be updated independently; for example, you can swap the Auth service from LDAP to OAuth2 without touching the Storage service.
Deployment & Infrastructure
Cells ships as a set of pre‑built binaries for Linux, macOS, and Windows, but production deployments are typically orchestrated via Docker Compose or Helm. A minimal cluster requires:
- Control plane – a single instance of the Cells API service (or an HA load‑balanced pool).
- Storage nodes – one or more storage services pointing to shared back‑ends (S3, NFS).
- Database – a replicated MySQL/MariaDB instance for high availability.
The platform scales by adding more storage or API nodes; the micro‑service design ensures that traffic can be routed to any healthy instance. Cells also supports edge deployments with a reverse‑proxy (NGINX/Traefik) that terminates TLS and forwards requests to the nearest API node.
Integration & Extensibility
Developers can extend Cells through:
- Plugins – Go packages that register new services, hooks, or UI components. The plugin API is documented on the developer guide and allows full access to the internal event bus.
- Webhooks & SDKs – The REST API is fully documented on GoDoc, and an official JavaScript SDK simplifies client integration.
- Flows – Custom scripts (Python, Bash) can be executed as part of a Flow step, enabling integration with external CI/CD pipelines or data processing workflows.
- Authentication adapters – Custom OIDC or SAML providers can be added by implementing the Auth plugin interface.
Developer Experience
The project follows idiomatic Go conventions, with a well‑structured repository (cmd/, pkg/, api/). The official Developer Guide provides comprehensive API documentation, code samples, and a step‑by‑step tutorial for building custom plugins. Community support is active on GitHub Issues and the Pydio Slack channel, while the AGPL license ensures that you can modify the source without licensing constraints. Continuous integration runs on GitHub Actions, guaranteeing that new commits pass linting and unit tests before merging.
Use Cases
- Enterprise document management – Replace SaaS services with a sovereign platform that satisfies GDPR, HIPAA, or ISO 27001.
- Hybrid cloud storage – Run Cells on-premises for sensitive data, and extend it to S3 or Azure Blob in the cloud for archival.
- DevOps pipelines – Use Flows to trigger CI jobs when new artifacts are uploaded, or to sync code repositories with external Git providers.
- Education platforms – Provide a secure, self‑hosted file sharing layer for universities that need fine‑grained access controls.
Advantages
- Performance – Go’s lightweight goroutines and the micro‑service model deliver low latency even under heavy load.
- Flexibility – The plugin system and Flow builder let developers customize almost every aspect without touching core code.
- Licensing – AGPL 3+ guarantees that the source remains open, while still allowing commercial use in a private environment.
- Ecosystem – Native support for S3, SMB, and NFS means you can plug into existing storage back‑ends without data migration.
Open SourceReady to get started?
Join the community and start self-hosting Pydio Cells today
Related Apps in other
Immich
Self‑hosted photo and video manager
Syncthing
Peer‑to‑peer file sync, no central server
Strapi
Open-source headless CMS for modern developers
reveal.js
Create stunning web‑based presentations with HTML, CSS and JavaScript
Stirling-PDF
Local web PDF editor with split, merge, convert and more
MinIO
Fast, S3-compatible object storage for AI and analytics
Weekly Views
Repository Health
Information
Explore More Apps
Tine
All‑in‑one groupware for digital collaboration
Corteza
Open-source low‑code platform for building CRM and business workflows
Node-RED
Low‑code event‑driven programming for real‑time data
Mailu
Docker‑based, feature‑rich mail server for self‑hosters
Endurain
Self-hosted fitness tracker with full data control
ArchivesSpace
Open‑source archives management for archivists
