Open Private Drive — Project Story

Inspiration

In a world dominated by centralized cloud providers, our personal and professional data is constantly at risk of being scanned, sold, or lost due to policy changes. We were tired of monthly subscriptions, privacy-invasive terms of service, and the constant fear of data breaches.

The spark: After a high-profile cloud provider outage left thousands unable to access critical documents, we asked ourselves — why can't we have the convenience of Google Drive with the sovereignty of running it on our own server?

Thus, Open Private Drive was born: a self-hosted, privacy-first document cloud with strong client-side encryption and secure external collaboration tools.

What it does

Open Private Drive is a self-hosted private cloud drive that gives individuals and teams full control over their files.

Key capabilities:

  • Client-side AES-256-GCM encryption for sensitive uploads (the server never sees plaintext)
  • Secure public upload request links — perfect for receiving files from clients or partners without accounts or third-party services
  • Rich in-browser previews for documents, images, and media
  • Granular user and folder permissions
  • Android-ready secure API with decrypt flow
  • Full-text search and modern, responsive interface

You deploy it once on your infrastructure and own your data forever — no subscriptions, no surprises.

How we built it

We built Open Private Drive using a clean, maintainable Python stack:

  • Backend: Flask (with App Factory pattern) + SQLAlchemy
  • Frontend: Jinja2 templates + Bootstrap 5
  • Deployment: Docker + Docker Compose for one-command setup
  • Storage: Private filesystem with strict permission controls
  • Encryption: Scrypt key derivation + AES-256-GCM in the browser

The architecture emphasizes security by design:

  • All file operations pass through a centralized permission engine
  • No direct filesystem exposure to the web
  • UUIDs instead of sequential IDs
  • Soft deletes everywhere

We prioritized production readiness from day one — including Gunicorn + Nginx recommendations and backup scripts.

Challenges we ran into

  • Implementing client-side encryption while maintaining a smooth user experience was tricky, especially the secure decrypt flow for Android.
  • Designing a robust permission system that is both flexible and secure took several iterations.
  • Balancing performance with security (e.g., thumbnail generation, full-text search indexing) without exposing sensitive data.
  • Making Docker deployment truly beginner-friendly while keeping the container stateless and secure.

Debugging encryption edge cases (password handling, key derivation, binary storage) was particularly demanding.

Accomplishments that we're proud of

  • A fully functional zero-knowledge encrypted upload system
  • Elegant one-time public upload links that solve real collaboration pain points
  • Clean, maintainable codebase with clear separation of concerns
  • Production-ready Docker setup with persistent volumes and backup utilities
  • Strong emphasis on security headers, CSRF protection, and architecture rules

We went from concept to a working MVP remarkably quickly while refusing to cut corners on privacy and security.

What we learned

  • The immense complexity hidden in "simple" file management systems
  • How critical proper permission design is in multi-user applications
  • The power (and responsibility) of client-side cryptography
  • That great developer experience (especially deployment) dramatically increases adoption of self-hosted tools

Most importantly, we learned that privacy-focused software can be both secure and user-friendly.

What's next for Open Private Drive

https://openprivatedrive.com/en/demo/presentation.mp4 Our roadmap includes:

  • File versioning and history
  • WebDAV support for desktop sync
  • Desktop client
  • Advanced admin analytics and monitoring
  • One-click deployment scripts for platforms like Coolify and CapRover
  • Expanded mobile experience

We also plan to grow the community, improve documentation, and offer professional setup/support services for teams and organizations that want a fully managed private instance.


Open Private DriveOwn your cloud. Own your data.

Built with passion for digital sovereignty.

Built With

Share this project:

Updates