跳到正文

GDIndex

不活跃
maple3142/GDIndex

基于 Vue.js、运行在 Cloudflare Workers 上的强大 Google Drive 目录程序。

在 GitHub 查看
星标
1876
Fork
1085
关注
1876
未关闭 Issue
57

该介绍目前仅提供英文版本。

GDIndex Preview

A powerful Google Drive Index built with Vue.js running on CloudFlare Workers

Demo | Lite Mode Demo

🌟 Features

  • Modern UI: Built with Vue.js for a responsive and interactive experience
  • Media Friendly: Integrated image viewer and video player with subtitle support (SRT)
  • Document Preview: Online PDF and EPUB reader
  • Authentication: HTTP Basic Auth support for securing your index
  • Multi-Drive Support: Connect multiple Google Drive accounts (personal, team drives)
  • Lightweight Option: Simple directory listing mode for command-line applications
  • Easy Deployment: Deploy to CloudFlare Workers with minimal configuration

🔄 Comparison with Similar Projects

GDIndex is a complete rewrite of GOIndex with several improvements:

Feature GDIndex GOIndex
Frontend Framework Vue.js Plain JS
Image Viewer Integrated (no new page) Opens new page
Video Player With subtitle support Basic
Document Preview PDF, EPUB Limited
Password Protection HTTP Basic Auth Directory-level (.password)
Multiple Drives ✅ ❌
Lite Mode ✅ ❌

🚀 Deployment

  1. Visit https://gdindex-code-builder.maple3142.net/
  2. Follow the on-screen instructions to generate your code
  3. Deploy the generated code to CloudFlare Workers

Option 2: Manual Setup

  1. Install rclone
  2. Configure Google Drive access: https://rclone.org/drive/
  3. Run rclone config file to locate your rclone.conf file
  4. Extract the refresh_token and optionally root_folder_id from your rclone.conf
  5. Copy the content of worker/dist/worker.js to CloudFlare Workers
  6. Configure the script by filling in your refresh_token, root_folder_id, and other options
  7. Deploy the worker

Option 3: Using Service Accounts

  1. Create a service account and key from the Google Cloud Platform console
  2. In the configuration, set service_account to true and paste the service account JSON into service_account_json
  3. Ensure the service account has access to the folder specified in root_folder_id
  4. Deploy to CloudFlare Workers

🔧 Lite Mode

Lite mode provides a simple nginx-like directory listing, perfect for command-line applications or minimal interfaces.

Enabling Lite Mode:

  • Permanent: Change lite: false to lite: true in the script configuration
  • On-the-fly: Include the HTTP header x-lite: true in your requests

📝 Configuration Options

const config = {
  // Required
  refresh_token: "",
  
  // Optional
  root_folder_id: "root",
  service_account: false,
  service_account_json: {},
  
  // Features
  lite: false,
  enable_cors: true,
  
  // Authentication
  auth: false,
  username: "",
  password: "",
  
  // UI Customization
  title: "GDIndex",
  favicon: "https://i.imgur.com/PpXXSw3.png"
}

📚 Resources

按共同分类和标签排序的同类开源项目。

全部工具项目 →