Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maple3142/GDIndex
A Google Drive Index built with Vue Running on CloudFlare Workers
https://github.com/maple3142/GDIndex
cloudflare-workers google-drive spa vue
Last synced: 3 days ago
JSON representation
A Google Drive Index built with Vue Running on CloudFlare Workers
- Host: GitHub
- URL: https://github.com/maple3142/GDIndex
- Owner: maple3142
- License: mit
- Created: 2019-10-05T08:11:13.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-07-10T18:28:11.000Z (over 1 year ago)
- Last Synced: 2024-10-29T17:49:16.381Z (10 days ago)
- Topics: cloudflare-workers, google-drive, spa, vue
- Language: HTML
- Homepage: https://gdindex-demo.maple3142.workers.dev/
- Size: 8.84 MB
- Stars: 1,850
- Watchers: 47
- Forks: 1,126
- Open Issues: 56
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- project-awesome - maple3142/GDIndex - A Google Drive Index built with Vue Running on CloudFlare Workers (HTML)
- jimsghstars - maple3142/GDIndex - A Google Drive Index built with Vue Running on CloudFlare Workers (HTML)
README
# GDIndex
![preview](https://i.imgur.com/ENkZwCU.png)
[繁體中文](README.zhtw.md)
[简体中文](README.zh.md)> GDIndex is similar to [GOIndex](https://github.com/donwa/goindex).
> It allows you to deploy a "Google Drive Index" on CloudFlare Workers along with many extra features
>
> By the way, instead of modify from GOIndex, this is a total rewrite[Demo](https://gdindex-demo.maple3142.workers.dev/)
## Difference between GOIndex and GDIndex
- Frontend is based on Vue.js
- Image viewer doesn't require opening new page
- Video player support subtitles(Currently only srt is supported)
- Online PDF, EPUB reader
- No directory-level password protection(.password)
- Support Http Basic Auth
- Support multiple drives(personal, team) without changing server's code## Usage
### Simple and automatic way
Go [https://gdindex-code-builder.maple3142.net/](https://gdindex-code-builder.maple3142.net/), and follow its instructions.
### Manual way
1. Install [rclone](https://rclone.org/)
2. Setup your Google Drive: https://rclone.org/drive/
3. Run `rclone config file` to find your `rclone.conf` location
4. Find `refresh_token` in your `rclone.conf`, and `root_folder_id` too(optionally).
5. Copy the content of [worker/dist/worker.js](worker/dist/worker.js) to CloudFlare Workers.
6. Fill `refresh_token`, `root_folder_id` and other options on the top of the script.
7. Deploy!### Using service accounts
1. 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)
2. 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`.
3. Make sure that the service account in question has access to the folder specified in `root_folder_id`
4. Deploy## Lite mode
This mode will serve a simple nginx-like directory listing, and it only work with one drive. `upload` will be ignored in this mode.
On the top of the script, change `lite: false` into `lite: true`, than thats all.
To enable on-the-fly lite mode, especially with command-line applications, you can include a HTTP header `x-lite: true` in your requests.
[Lite mode demo](https://gdindex-demo-lite.maple3142.workers.dev/)