DocShare¶
A modern, secure document sharing platform. Upload, share, and manage your files with granular permission controls.
Why DocShare?¶
DocShare was created to solve a simple problem: a private server to host documents. It supports object storage, without bloat.
Features¶
- Simple sharing — Share files with individuals or groups in just a few clicks
- Permission controls — Three levels: view, download, or edit
- Group management — Organise users into teams with owner/admin/member roles
- Document previews — Preview Office documents, PDFs, and images directly in the browser
- Activity tracking — Know what's happening with file uploads, shares, and group changes
- Audit logging — Complete trail of all actions for compliance and security
- API tokens — Generate long-lived personal access tokens for CLI and programmatic use
- Device flow — Authenticate CLI tools and apps via browser approval (OAuth2 RFC 8628)
- MFA & Passkeys — TOTP authenticator apps and WebAuthn passkeys for enhanced security
- CLI tool — Upload, download, share, and manage files from the terminal
CLI¶
Install the CLI to manage files from your terminal:
docshare login # Authenticate via browser
docshare upload report.pdf /Documents # Upload a file
docshare download /Documents/report.pdf # Download a file
docshare ls /Documents # List files
See the CLI documentation for the full command reference.
Quick Start¶
DocShare provides two Docker Compose configurations:
| File | Use Case | Storage | Builds From |
|---|---|---|---|
docker-compose.yml |
Production | AWS S3 | Pre-built GHCR images |
docker-compose.dev.yml |
Development | MinIO (local) | Local source code |
Development¶
git clone https://github.com/hayward-solutions/docshare.git
cd docshare
docker-compose -f docker-compose.dev.yml up -d
Access the application at http://localhost:3001
Production¶
export AWS_ACCESS_KEY_ID=your-access-key
export AWS_SECRET_ACCESS_KEY=your-secret-key
export S3_BUCKET=your-s3-bucket
docker-compose up -d
Documentation¶
-
Getting Started
Deployment Guide — Getting started and production setup
-
Architecture
Architecture Overview — System design and technical details
-
API Reference
REST API Documentation — Complete endpoint reference
-
CLI Reference
CLI Documentation — Installation and command reference
-
Kubernetes
Helm Chart — Kubernetes deployment with Helm
-
Security
Security Policy — Security policy and best practices
-
SSO
Single Sign-On — SSO configuration for providers
-
Roadmap
Feature Roadmap — Feature priorities and future plans
Examples¶
Ready-to-use configurations for various deployment scenarios:
- Docker Compose: Minimal, external database, S3-compatible storage, full with SSO
- Helm: Minimal, production, external database, high availability
- SSO: Google, GitHub, Keycloak, LDAP
See Examples Overview for all available configurations.
Contributing¶
See Contributing Guide for development setup and guidelines.