{"repo":"kuchingneko28/neko-drive","free":true,"listed":false,"github":"https://github.com/kuchingneko28/neko-drive","clone":"git clone https://github.com/kuchingneko28/neko-drive.git","description":"A self-hosted cloud drive that uses Discord as its storage backend","language":"TypeScript","stars":29,"topics":[],"license":null,"category":"self-hosted-apps","readme_excerpt":"Neko Drive A self-hosted cloud drive that uses Discord as its storage backend . Files are split into encrypted chunks, stored across Discord's CDN, and indexed locally in SQLite. The server never sees your file contents — encryption happens in the browser. Features - Client-side encryption — AES-256-GCM, key derived with PBKDF2 (100k iterations) in a Web Worker pool. The master key never leaves your browser. - Chunked transfers — files split into 8 MiB chunks; uploads and downloads resume after interruptions, with pause/cancel from a floating transfer widget. - Media preview — images, video, audio, PDF and text preview with HTTP range streaming for unencrypted files. - Search — FTS5 full-text search on the server, with sort and pagination. - Trash — soft delete, restore, and empty-trash with Discord cleanup. - Security — API-secret auth for writes; short-lived (1h) media tokens for streaming URLs so the secret never appears in them. - Auto-backup — the SQLite index is snapshotted to a Discord backup channel after every mutation and once daily; stale (never-finalized) uploads are swept automatically after 24h. - Theme — light/dark/system with the Catppuccin palette, Plus Jakarta Sans, GSAP list animations (respecting prefers-reduced-motion ). How it works - Upload — the client splits the file, encrypts each chunk, and posts it to Discord via the server. The server records where each chunk lives (channel, message id, CDN URL) in SQLite. - Download — the client streams chunks fr","default_branch":null,"files":null,"tree":[],"storefront":"/r/kuchingneko28","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kuchingneko28/neko-drive/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}