Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 1595Tools index

Previous survey · No. 1600 ·

Pricing
Open Source
Type
TOOL
Builder
badlogic
GitHub
60 stars
Date

About

Minimal command-line interface for Google Drive.

What it does

gdcli turns routine Google Drive work into shell commands. It manages multiple accounts, lists and searches files, transfers content, creates folders, changes names and locations, and controls sharing permissions. Authentication uses your own Google Cloud OAuth credentials, with browser-based and manual authorization flows.

Why it's ranked here

The command set covers a useful slice of everyday Drive administration without a broad framework around it. Pagination, query filters, multiple accounts, permission management, and Workspace document exports make it practical. The credential setup and local token storage demand care, while the documented deletion behavior conflicts with the service implementation.

What's good

It supports both interactive browser authorization and a manual flow for browserless machines. Listings expose identifiers, types, sizes, modification times, and pagination tokens. Downloads automatically export documents and presentations to PDF, spreadsheets to CSV, and drawings to PNG. Sharing supports public links or named users with reader and writer roles.

Tradeoffs

Setup requires creating a Google Cloud project, enabling the Drive API, configuring OAuth branding and users, then downloading client credentials. Client secrets and account tokens live in local JSON storage. Search builds full-text queries, not a richer local index. Most importantly, help text promises trashing, while the service code performs a delete operation.

How to use it well

Use it for scripts and terminal workflows that need direct, account-scoped Drive operations with visible file identifiers. It suits uploads, downloads, searches, folder maintenance, and permission changes. Keep its configuration directory protected and test deletion behavior before automation. It does not provide synchronization, document editing, or a graphical file browser.

Technical notes+

package.json defines an ES module package for Node.js 20 or newer, publishes the compiled dist directory, and declares CLI plus typed library entry surfaces. src/cli.ts parses commands with Node’s argument parser and prints tab-separated listings. src/drive-service.ts wraps Google Drive v3, caches clients per email, streams transfers, and maps Workspace MIME types to export formats. src/account-storage.ts persists OAuth material as unencrypted JSON under the user home directory. src/drive-oauth-flow.ts supports a temporary localhost callback server and a pasted-redirect manual flow. tsconfig.json enables strict TypeScript, declarations, maps, and ES2022 output. .github/workflows/ci.yml builds and checks on Node.js 22.

Observed

License
MIT
Primary language
TypeScript
Install surface
Global npm package @mariozechner/gdcli
Interfaces
Command-line interface and typed Node.js library entry
Runtime
Node.js 20 or newer
API integration
Google Drive API v3 through googleapis
Authentication
OAuth 2.0 with browser callback and manual pasted-redirect flows
Platform handling
Browser launching accounts for macOS, Windows, and Linux commands

Read from README.md, package.json, src/cli.ts, src/types.ts, src/drive-service.ts, src/account-storage.ts, src/drive-oauth-flow.ts, biome.json, CHANGELOG.md, tsconfig.json, .husky/pre-commit, .github/workflows/ci.yml.

What it can do

  • Upload files to Google Drive

    Local filesFiles stored in Google Drive

  • Download files from Google Drive

    Google Drive file ID or pathLocal files

  • List files and folders in Google Drive

    Google Drive directory path or search queryList of files and folders with metadata

  • Delete files from Google Drive

    Google Drive file ID or pathConfirmation of file deletion

  • Create folders in Google Drive

    Folder name and parent directory pathNew folder in Google Drive

  • Share Google Drive files

    File ID and sharing permissionsShareable link or updated file permissions

Tags

cligoogle-drivetypescript

Tech Stack

Node.jsTypeScript

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.