GoIndex-theme-acrou
Combining the power of Cloudflare Workers and Google Drive will allow you to index you files on the browser on Cloudflare Workers.
go2index/index.js is the content of the Workers script.
This theme's goindex is currently based on yanzai/goindex
Demo
Acrou: https://oss.achirou.workers.dev/
Features
-
👑 Page-level caching,browser forward and backward without reloading (MAC users have a better experience with the trackpad) -
🗂 Multi drive switching -
🔐 Http Basic Auth -
🎨 Grid view mode(File Preview) -
🎯 Paging load -
🌐 I18n(multi-language) -
🛠 Markdown/Html render (Maybe it can be your blog) -
🖥 Video Online(.vtt subtitle) -
🕹 Support for custom video player (API) -
🎧 Audio Online -
🚀 Faster speed
TODO
- More file format preview
- Let goindex be more than just a directory index
Quick Deployment
-
Open any of the following links
-
Auth and get the code
-
Deploy the code to Cloudflare Workers
Deployment
- Open Google Drive API
- Create a OAuth client ID
- Install rclone software locally
- Get
refresh_token
withrclone
- Download
index.js
in https://github.com/Aicirou/goindex-theme-acrou/tree/master/go2index and replaceclient_id
,client_secret
,refresh_token
for what you just got. - Deploy the code to Cloudflare Workers
If you write a good article and want to share it with others, please submit Issues and I will post the link here.
Options
Video
Option | Type | Default | Description |
---|---|---|---|
api |
String | '' |
External video player api. When this value is not null, all of the following options do not work |
autoplay |
Boolean | true |
When set to true, the video plays automatically, depending on whether the browser supports the |
invertTime |
Boolean | false |
Display the current time as a countdown rather than an incremental counter. |
controls |
Array, Function or Element | ['play-large', 'restart', 'play', 'progress', 'current-time', 'duration', 'mute', 'volume', 'captions', 'settings', 'pip', 'airplay', 'download', 'fullscreen'] |
Which buttons are displayed in the control bar. See more CONTROLS.md |
settings |
Array | ['quality', 'speed', 'loop'] |
You can specify which settings to show in the menu |
For more option, see plyr options
Audio
Option | Type | Default | Description |
---|---|---|---|
container |
String | .aplayer |
No support for changes |
fixed |
Boolean | true |
No support for changes |
autoplay |
Boolean | false |
audio autoplay |
loop |
String | 'all' |
player loop play, values: 'all', 'one', 'none' |
order |
String | 'list' |
player play order, values: 'list', 'random' |
preload |
String | 'auto' |
values: 'none', 'metadata', 'auto' |
volume |
Number | 0.7 |
default volume, notice that player will remember user setting, default volume will not work after user set volume themselves |
audios |
Array | [] |
Playlists can be preset. FAQ |
For more option, see APlayer options
FAQ
How do I change the way the list is sorted?
Modify line 636 of the code or search for params.orderBy
- params.orderBy = "folder,name,modifiedTime desc";
+ params.orderBy = "modifiedTime desc";
How to preset an audio playlist?
Audio option add audios
audio: {
audios: [
{
name: "Mojito",
artist: "周杰伦",
url: "https://xx.mp3",
lrc: "https://xx.lrc",
cover: "https://xx.jpg"
}
]
}
Change log
v2.0.8
- Fix image file actions does not work #100
- Fix misjudged file to image format #88
- Fix more than 10 drive not working #59 #85
- Fix some of the operation functions in the search list cannot be used
- Fix text cache content not refreshing
- Add video default player(plyr) #22 #38
- Add audio player (APlayer) #77
- Add copy button to video page
- Add NProgress
- Add language cache cleanup
- Add shortcut can't download tip #76
- Markdown displays rendered html by default
- CLI Delete prefetch preload of lazy load module
- Delete fontawesome5
v2.0.5
- Add clean file cache
- Support for custom video player (API)
- Beautify: the grid mode file shows icon when no preview is shown
- Beautify: Adjust the HEAD.md render position
- Solve the problem that files that can't be previewed can't be downloaded directly by clicking #30
- Solve the problem that the file name cannot be opened #20
- Solve the problem that switching pages will fall back in the current page loading #37 (Thanks @PedroZhang Help to find out the cause of the problem)
v2.0.0
- Program changed to SPA(single page application)
- Add page level cache(Browser forward and backward do not refresh seconds to load, and Mac users have a better experience of using touch pad)
- Add http basic auth(Each drive letter can be configured with a user name and password separately, which can protect all sub files and sub folders under the drive)
- Add grid view mode(File preview)
- Add paging load
- Add i18n
- Add html render
- Add render folder/file description
- Add optional configuration
- Support quick deployment
- Support PDF Online preview
- Replace text editor
- Solve the problem of URL encoding #20 #23 #25
- Solve other known problems
v1.x
- Support multi disk switching
- Add version detection
- Optimize search results
- Optimize page display