Skip to content
CocoSheshPublic

About

A self-hosted file workspace for local files, multiple Google Drive accounts, and S3-compatible storage.

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

NDrive

NDrive — your files, in one private workspace

Self-hosted, Node.js and SQLite, Google Drive, and S3-compatible storage

Your storage. Your server. One calmer place to work with files.

NDrive brings browser-local files, multiple Google Drive accounts, and an S3-compatible bucket into one self-hosted workspace. Browse and organize files, choose an upload destination, or let NDrive route each file to one connected destination.

Illustrative NDrive storage dashboard with two Google Drive accounts and combined quota

Illustrative interface preview. Account names and quota values are fictional sample data.

A quick tour

Keep files close Bring storage together Route with clarity
Keep files in this browser profile, or upload to a cloud provider. Browse multiple Google Drive accounts and S3-compatible storage from one workspace. See combined Google quota, while each uploaded file stays in one chosen account.
How browser files, the self-hosted NDrive server, and storage providers connect

Start here

If you want to… Open this guide
Run NDrive on your computer Quick start
Learn Docker and Compose step by step Docker guide
Connect one or more Google Drive accounts Google Drive setup
Configure AWS S3, Cloudflare R2, or another S3-compatible service S3 setup
Understand combined quota and upload routing Upload routing
Back up the database and credentials Backups and recovery
Fix a setup or connection issue Troubleshooting

Quick start

Requires Node.js 22.13 or newer. From the project folder:

npm install
npm start

Then open http://localhost:4173 and create the owner account. For Docker, provider setup, and the full step-by-step instructions, follow the NDrive User Guide.

How it works

  • NDrive runs on your computer or server; browser-local files stay in that browser profile.
  • Google Drive and S3 credentials are handled by the NDrive server. Google refresh tokens are encrypted in SQLite.
  • Multiple Google Drive accounts can contribute to a combined quota view. A single file upload still goes to one destination; NDrive does not split a file across accounts.
  • Google sign-in for an NDrive user is separate from connecting Google Drive for file storage.

Private by default: the server binds to 127.0.0.1 unless configured otherwise. Keep it on localhost or behind a private VPN. Do not expose it directly to the public internet.

Early-stage project: NDrive has not completed an external security review or Google OAuth verification. It does not yet include email verification, password reset, or admin user management. Review current limits before inviting users.

Project details

  • Runtime: Node.js 22.13+, built-in SQLite
  • Storage: Browser IndexedDB, Google Drive, and one instance-configured S3-compatible bucket
  • Deployment: Local Node.js or Docker Compose
  • Full documentation: NDrive User Guide

About

A self-hosted file workspace for local files, multiple Google Drive accounts, and S3-compatible storage.

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages