Lattice
연구를 위한 작업공간
DriveCosm은 보유한 모든 Google Drive를 하나의 드라이브와 검색창으로 통합합니다
DriveCosm pools every Google Drive account you own into one drive with one search bar. Free to self-host; DriveCosm Cloud with AI search built on Claude is coming soon.
생산성TypeScript · CSSGitHub @ashmitmittal온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
All your Google Drive space. One beautiful place.
Everyone hits the 15 GB wall eventually. But most of us also have more than one Google account —
personal, work, that old one from college. DriveCosm connects them all into a single dashboard so
you can see your combined storage, browse every file in one list, and upload new files to
whichever account has the most free space — automatically.README 전문 보기 ↗All your Google Drive space. One beautiful place.
Everyone hits the 15 GB wall eventually. But most of us also have more than one Google account — personal, work, that old one from college. DriveCosm connects them all into a single dashboard so you can see your combined storage, browse every file in one list, and upload new files to whichever account has the most free space — automatically.
DriveCosm is self-hosted by design. There is no server, no account, no telemetry — your files talk only to Google, straight from your machine.
You need Node.js 20.19 or newer.
git clone https://github.com/ashmitmittal/drivecosm.git
cd drivecosm
npm install
npm run dev
That single command starts both servers — the API on port 4000 and the web app on port 3000. Open http://localhost:3000 — the built-in setup wizard takes it from there.
Because DriveCosm is open source and self-hosted, it doesn't ship with Google API keys — you create your own free ones. The in-app wizard at http://localhost:3000/setup walks you through it step by step, but here is the same guide:
Create a Google Cloud project (free, no credit card) at
console.cloud.google.com/projectcreate.
Name it anything, e.g. DriveCosm.
Enable the Google Drive API for that project: console.cloud.google.com/apis/library/drive.googleapis.com → click Enable.
Configure the consent screen at console.cloud.google.com/auth/overview: click Get started, pick any app name, choose External as the audience, and accept the defaults. Then under Audience → Test users, add every Google email you plan to connect.
Create OAuth credentials at console.cloud.google.com/apis/credentials: Create credentials → OAuth client ID → Web application, and add this authorized redirect URI exactly:
http://localhost:3000/api/auth/callback
Paste the Client ID and Client Secret into the wizard at localhost:3000/setup. Done — now click Connect an account as many times as you have accounts. 🎉
Expected. Your OAuth app is in testing mode, which is exactly right for personal use — only the test users you added can sign in. Click Continue past the warning. It's your own app, accessing your own accounts.
The project is a TypeScript monorepo with a cleanly separated backend and frontend:
drivecosm/
├── backend/ # Node.js + Express API (port 4000) — OAuth, Drive calls, token storage
└── frontend/ # React + Vite web app (port 3000) — proxies /api/* to the backend
backend/data/drivecosm.json).POST /api/upload, which picks the connected account with the most free
space, stages the file in a temp directory, and streams it to that Drive.npm run dev is the supported way to run DriveCosm for now; a packaged
single-command production mode is on the roadmap.Issues and PRs are very welcome. The stack is intentionally small: an Express + TypeScript
backend, a React (Vite) + TypeScript frontend, hand-written CSS (no framework), and googleapis.
npm install && npm run dev at the repo root is the whole development setup; npm run typecheck
checks both workspaces.