{"id":15027842,"url":"https://github.com/maple3142/gdindex","last_synced_at":"2025-05-15T07:05:57.562Z","repository":{"id":37622921,"uuid":"212965628","full_name":"maple3142/GDIndex","owner":"maple3142","description":"A Google Drive Index built with Vue Running on CloudFlare Workers","archived":false,"fork":false,"pushed_at":"2023-07-10T18:28:11.000Z","size":9274,"stargazers_count":1858,"open_issues_count":57,"forks_count":1115,"subscribers_count":44,"default_branch":"master","last_synced_at":"2025-05-15T07:05:49.512Z","etag":null,"topics":["cloudflare-workers","google-drive","spa","vue"],"latest_commit_sha":null,"homepage":"https://gdindex-demo.maple3142.workers.dev/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maple3142.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-10-05T08:11:13.000Z","updated_at":"2025-05-11T20:01:49.000Z","dependencies_parsed_at":"2023-01-28T12:31:18.512Z","dependency_job_id":"1ffea79d-69e9-47b5-858a-09d6dafa9a9f","html_url":"https://github.com/maple3142/GDIndex","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maple3142%2FGDIndex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maple3142%2FGDIndex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maple3142%2FGDIndex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maple3142%2FGDIndex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maple3142","download_url":"https://codeload.github.com/maple3142/GDIndex/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254292042,"owners_count":22046426,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare-workers","google-drive","spa","vue"],"created_at":"2024-09-24T20:07:09.582Z","updated_at":"2025-05-15T07:05:52.531Z","avatar_url":"https://github.com/maple3142.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GDIndex\n\n![preview](https://i.imgur.com/ENkZwCU.png)\n\n[繁體中文](README.zhtw.md)\n[简体中文](README.zh.md)\n\n\u003e GDIndex is similar to [GOIndex](https://github.com/donwa/goindex).\n\u003e It allows you to deploy a \"Google Drive Index\" on CloudFlare Workers along with many extra features\n\u003e\n\u003e By the way, instead of modify from GOIndex, this is a total rewrite\n\n[Demo](https://gdindex-demo.maple3142.workers.dev/)\n\n## Difference between GOIndex and GDIndex\n\n-   Frontend is based on Vue.js\n-   Image viewer doesn't require opening new page\n-   Video player support subtitles(Currently only srt is supported)\n-   Online PDF, EPUB reader\n-   No directory-level password protection(.password)\n-   Support Http Basic Auth\n-   Support multiple drives(personal, team) without changing server's code\n\n## Usage\n\n### Simple and automatic way\n\nGo [https://gdindex-code-builder.maple3142.net/](https://gdindex-code-builder.maple3142.net/), and follow its instructions.\n\n### Manual way\n\n1. Install [rclone](https://rclone.org/)\n2. Setup your Google Drive: https://rclone.org/drive/\n3. Run `rclone config file` to find your `rclone.conf` location\n4. Find `refresh_token` in your `rclone.conf`, and `root_folder_id` too(optionally).\n5. Copy the content of [worker/dist/worker.js](worker/dist/worker.js) to CloudFlare Workers.\n6. Fill `refresh_token`, `root_folder_id` and other options on the top of the script.\n7. Deploy!\n\n### Using service accounts\n\n1. Create a service account, a corresponding service account key, and get the JSON from the [Google Cloud Platform console](https://cloud.google.com/iam/docs/creating-managing-service-account-keys) \n2. In the props object, replace the `service_account_json` value with the contents of the service account JSON file and set `service_account` to `true`.\n3. Make sure that the service account in question has access to the folder specified in `root_folder_id`\n4. Deploy\n\n## Lite mode\n\nThis mode will serve a simple nginx-like directory listing, and it only work with one drive. `upload` will be ignored in this mode.\n\nOn the top of the script, change `lite: false` into `lite: true`, than thats all.\n\nTo enable on-the-fly lite mode, especially with command-line applications, you can include a HTTP header `x-lite: true` in your requests.\n\n[Lite mode demo](https://gdindex-demo-lite.maple3142.workers.dev/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaple3142%2Fgdindex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaple3142%2Fgdindex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaple3142%2Fgdindex/lists"}