Giter Site home page Giter Site logo

ttbserver1 / goindex-extended Goto Github PK

View Code? Open in Web Editor NEW

This project forked from whtjeon/goindex-extended

0.0 0.0 0.0 8.01 MB

A Google Drive Index, which has a lot of extra features, running on Cloudflare Workers.

Home Page: https://demo.dudoo.workers.dev

License: MIT License

JavaScript 98.38% Jupyter Notebook 1.62%

goindex-extended's Introduction

Preview

GoIndex Extended - Google Drive Index

Author: Cheems License: MIT Repo Size Last Commit Built with Cloudflare Workers Written in JavaScript

Combining the power of Cloudflare Workers and Google Drive will allow you to index your files on the browser on Cloudflare Workers.

πŸ™ˆ Demo

πŸ“Έ Screenshots

Screenshot-1 Screenshot-2 Screenshot-3 Screenshot-4 Screenshot-5 Screenshot-6

✨ Unique Features

  • πŸ”Ž Search function also works for folder root type
  • πŸ—‚οΈ Support for duplicated file and folder names
    • πŸ”€ Files and folders with the same name
    • πŸ”  Files and folders with the same name but different cases
  • βŒ› Ability to force index to load (can be disabled)
  • πŸš€ Quick actions tab (can be disabled):
    • πŸ“₯ Direct Download
    • ↗️ Open link in a new tab
    • πŸ“‹ Copy link to the clipboard
  • πŸ”’ File size in 1024 bytes system
  • πŸ” Support for multiple (unlimited) username/password pairs
  • πŸ“š Ability to download files of Google Workspace apps in all available formats:
    • πŸ“˜ Google Documents - ( docx | odt | rtf | pdf | plain text | html | html/zipped | epub )
    • πŸ“Š Google Spreadsheets - ( xlsx | ods | csv | pdf | html/zipped )
    • πŸ‘¨β€πŸ« Google Presentations - ( pptx | odp | pdf | plain text )
    • πŸ–Œ Google Drawings - ( pdf | jpg | png | svg )
    • ✍ Google Jamboards - ( pdf )
    • πŸ“œ Google Apps Scripts - ( json )
    • πŸ“ƒGoogle Forms - ( html/zipped )
  • πŸ—ƒοΈ Ability to change the order which files are listed in
  • πŸ“‚ Ability to access/download shortcuts of files and folders
  • 🦠 Ability to download files which Google has flagged as a virus (can be disabled)
  • πŸ—‘οΈ Ability to download trashed files (can be disabled)
  • πŸ”‘ Support for all characcters including slashes('/', '\') and emojies in file/folder names
  • πŸ“… Shows modified date & time in your local time
  • πŸ•’ Modified time displaying issue on Safari browser and browsers on iOS has been fixed

⚑ Features

  • πŸ–₯ Video Player - ( mp4 | webm | avi | mpg | mpeg | mkv | rm | rmvb | mov | wmv | asf | ts | flv )
  • 🎧 Music Player - ( mp3 | flac | wav | ogg | m4a )
  • πŸ“š Document Viewer - ( html | php | css | go | java | js | json | txt | sh | md | pdf )
  • πŸ–ΌοΈ Image Viewer - ( bmp | jpg | jpeg | png | gif )
  • πŸ”Ž Multi-level Search
  • πŸ” Multi drive encryption
  • πŸ“± Mobile Friendly
  • πŸ’Ύ Page-level caching, browser forward and backward without reloading
  • πŸ§₯ Dark Theme
  • 🎨 Main Color:
    • red | pink | purple | deep-purple | indigo | blue | light-blue | cyan | teal | green | light-green | lime | yellow | amber | orange | deep-orange | brown | greyblue-grey
  • πŸ–Œ Accent Color:
    • red | pink | purple | deep-purple | indigo | blue | light-blue | cyan | teal | green | light-green | lime | yellow | amber | orange | deep-orange

πŸ“– Wiki

Note: The Wiki will be added soon. Until then, you can check this out: https://dudoo.me/wikis.
If you are comfortable reading comments in the code, here you go: goindex-extended/index.js. (Note: Don't edit the code after the line:110 unless you need to develop.)

πŸš€ Quick Deployment

Note: If you need the latest version, use index.js, which is in the root of the repo: goindex-extended/index.js.

  • The Latest version of index.js will be added to the generator soon. Until then, you can use the generator for creating auth credetials, and then you can add them manually to the latest code which you can get from the file mentioned above.
  1. Open the below Colab notebook in a new tab
    Open in Colab
  2. Fill the fields in it on your choice and run the cell
  3. Download the txt file with the code generated by the notebook
  4. Deploy the code to Cloudflare Workers

πŸ•Ή Deployment

  1. Go enable Google Drive API
  2. Create a new project or use one of the existing projects if you already have created. (If you are using Google Cloud Platform for the 1st time: do this only if you want to give your project a custom name. otherwise, your project will be automatically created after the next step with the name "My First Project". If you don't care about the name of the project like me then just skip this step)
  3. Click Enable button to enable Google Drive API
  4. Click Create Credentials
  5. Select "Google Drive API" from the 1st dropdown and select "Other UI" from the 2nd dropdown
  6. Select "User data" from radio buttons
  7. Click "What credentials do I need" then, a pop-up will appear saying that you need to set up the Consent Screen.
  8. click "set up consent screen". it will take you to a new tab
  9. Select "External" as the user type and click create
  10. Provide app name, User support email, and developer contact information which are required for the consent screen. then finish creating the consent screen.
  11. After creating the consent screen, click publish app. (This option can be found under Publishing status)
  12. Head back to the previous tab to continue creating credentials
  13. Click on refresh and create OAuth client ID then click Done
  14. Click on newly created OAuth Client ID to see client id and secret
  15. Open the below Colab notebook(which is made for the ones who wish to use their own credentials) in a new tab
    Open in Colab
  16. Copy your client id and client secret into the Colab notebook and fill the fields in it on your choice and run the cell
  17. Download the txt file with the code generated by the notebook
  18. Deploy the code to Cloudflare Workers

🀝 Special Thanks & Credits

Source:

  • donwa : for writing such a great script
  • yanzai & all initial contributors : for contributing to the project
  • 5MayRain : for implementing Nexmoe theme

Wiki & Readme:

    Took some stuff from their repos for setting up the README.md file and the Wiki. So thanks! 😁

βš– LICENSE

GoIndex - Extended by Cheems(AKA Dudu) is licensed under the MIT License, which you can find in the goindex-extended/LICENSE file.

goindex-extended's People

Contributors

menukaonline avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.