Coder Social home page Coder Social logo

tks18 / gindex-v4 Goto Github PK

View Code? Open in Web Editor NEW
253.0 11.0 248.0 1.08 GB

A Vue Js Based G Index with Improved Dark Mode, Search and Video Player

Home Page: https://glorytoheaven.tk

License: GNU General Public License v3.0

JavaScript 56.23% HTML 0.30% Vue 39.57% Shell 0.98% SCSS 2.28% CSS 0.03% EJS 0.36% Batchfile 0.24%
video-player google-drive gindex backend plyr vue-js vue-plyr frontend bulma google-drive-api

gindex-v4's Introduction

https://data.jsdelivr.com/v1/package/gh/tks18/gindex-v4/badge/year https://data.jsdelivr.com/v1/package/gh/tks18/gindex-v4/badge/month https://data.jsdelivr.com/v1/package/gh/tks18/gindex-v4/badge/week https://img.shields.io/github/languages/top/tks18/gindex-v4 Maintenance Ask Me Anything !

Note: This Project is Currently Not Maintained and not planning for any more updates, I am Working on Completely Revamped Project Which can be seen here - Zyndex Drive

A Vue js Based GD Index

Telegram Support Group

Scan or Click to Join Support Group

We have a Detailed Project WiKi that Explains Everything in Detail and the Process to be Done to Deploy Everything and Also how to Develop in Local Environment - Here is the Wiki

Introducing Our Own CLI Tool

You can Use Our CLI Tool to Deploy Your Backend With Ease.

  • Open Cmd or Terminal as the Case maybe and Type the following
> npm i -g gindex-cli-tool
  • After Installing the Package, Enter the Following to Initialize the Tool and Check for all the Pre-requisites
> gdployer init
  • After Performing all the Checks it give a Success Output.
  • Type in the Following to Login to Heroku Account from the CLI.
> heroku login
  • Type in the Following to Start Deployment Process.
> gdployer deploy

What is GD Index ?

First of all GD-Index stands for Google Drive Directory Index. It is a Serverless Google Drive directory indexing program. It can list Google Drive files in the form of a directory and can be downloaded through a straight chain. It Can be Your Personal Drive or Share Drive or a Folder or a Team Drive.

This GIndex is Based on Vue.js, a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only, and is easy to pick up and integrate with other libraries or existing projects.

Any Issues / Help Regarding Setup, Feel free to Contact Through the telegram Group.

Local Development

You can Visit the Releases folder in the Repo for All the Local Development Zips Including Frontend, Backend and CLI Tool to Develop Locally. Pull Requests are Welcomed Provided it is Worthy to Merge it.

Click Here for Releases

Now With New UI
Refreshing New Home Look
Refreshing New Home Look
Refreshing New Home Look

Important - This Site Requires My GIndex Live Backend Server to be Running Otherwise the Site will Never Open.

Important - For Setting up of Backend. Visit my Wiki for Help in Setting Up.

Site Features Other than Aicirou's:

  1. This GIndex is Not Like Basic GIndex which Depends on Basic Auth Headers to Authenticate the Users. Rather this has its Own Backend Through Which Users will be Authenticated.
  2. Automated Email Verification with OTP.
  3. Uses Custom Video Player - Plyr to Stream Videos.
  4. Uses Custom Audio Player - Plyr
  5. Complete Dark theme.
  6. User Role Based Authentication.
  7. No Public can Access Site's Content Without Logging in.
  8. Uses JWT to Verify User's Login on Each Route.
  9. JWT is Valid for a Week. After Expiry the User will get Automatically Logged out.
  10. Also User's JWT Token is Stored in LocalStorage as AES 256 Encrypted Key . This will be Decrypted on Demand. So that No One Can Access the User Details even if they have the Key.
  11. Fully Material Redesign of all Pages. (Under Progress).
  12. Has 3 Roles - User, Admins, Superadmins
    • Users - Can Only View Content.
    • Admins - Can Accept Users based on their Request
    • Superadmins - Can Accept Admin Requests.
  13. Uses MongoDB for User Database.
  14. Full Access Control of Backend from Frontend Based on User's Role.

Site Shots:

1. Home - Logged In HomeLog

2. Home - Logged Out homeout

4. Video Page video

5. Video Player - Extended video

6. Video Player - External Players video

7. Settings settings

8. Admin Page admin

9. Admin - User Registration Page register

10. Pending Requests - Modal pending

11. User Request Page request

12. User Verify Page verify

Thanks - Support Me

Creative Commons License
Google Drive Index by Sudharshan TK is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
Based on a work at https://github.com/tks18/gindex-v4

gindex-v4's People

Contributors

alx-xlx avatar dependabot[bot] avatar leelupradhan avatar tks18 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gindex-v4's Issues

h.265 video support

Hey, can we see h.265 encoded video support on this index.
Sadly all index code out there are failed to support h.265 videos.

Questions regarding hosting

First of all thank you so much for this wonderful google drive index!

My questions are as follows:

  1. Can both frontend and backend be hosted on heroku?
  2. What changes should be done in which file to customise to personal use?
  3. Are you planning to add full guide or something like that?

Thanks!

Stuck after login

image

I got stuck after logging in. The FRONTENDURL has been configured as stated in the wiki without / at the back.

Advertisement banners or code? No Search Option?

I have just finsihed setting this up while reading your guide. If possible please add link to this guide in ReadMe.

Now coming back to question,

1.can we add advertisement banners or code at main positions like in header, below video player, left/right and footer etc?

  1. Also i couldn't see Search option, have you not yet implemented it or i just missed it?

  2. Can we change Loading gif?

  3. what is hybridpass field in the main script?

Backend repo not found

In your installation guide you put a backend server's repo link but it now not working.

Please list the content openly without logins

I think this is too much to not showcase what the user is going to get.
The content should be listed and showcased but not download able until the user registers. This way it's better. Because the visitor will see the home page and go away without any interest.
This is big advantage of other google drive indexes that they show the user all files.
By the way, awesome look you have given.

Can we add monthly based subscription option for all registered users?

It would be nice if we could add montly/weekly based subscription option for all registered users, like when user registers an acoount, ADMIN HAVE OPTION TO ALLOT WEEKLY/MONTHLY subscription. There must also be an option to renew existing account.
And after the period is over their account must be disabled.

Theme change not working

I've write the theme name on cloudflare workers by reading the wiki and only the initial theme show nothing change.

Network Error

Annotation 2020-07-12 183105

I followed all the steps in the wiki and when I try to login using my admin email, I get this error.
What have I done wrong.

Feature requests and ideas

When we are watching an episode from a folder. the listing of next items on left panel "Continue you binge" are randomly shuffled.
Can it be shown in sorted manner as we see the files in folder.

Thanks.

Drive issue No showing files

Is it necessary to write

id : folder id ( I leave it empty or is it necessary)
name : is it necessary to be same as name of folder on drive

Error while loading image files

I am being unable to see any image files in the index site. All other things are performing perfectly. When I try to load a image or click on a image files, the image never shows. Instead it shows a broken tiny thing (attached) on the left upper corner.
IMG_20210408_001036

Can't Add user

Whenever I am trying to add it don't send otp to receipt and also I am unable to accept request it says it look like user email provider is spam. I tried with Google, outlook, and Yahoo too but same error. Can you plss tell how to fix that and also I don't know how to add folder link in quick links can you tell that also. My files is in Movies folder in setting team drive but I am unable to set it in quick links. If you can gib telegram group link it will be great so that i can ask for help there the one given in repo is already expired.

TMDB Posters Not Visible

everything works fine except when I CLICK "Go To Drive" it keeps reloading the page. Is there any fix?

Add a SORT feature to the folders

Folders have a Sort icon but I guess it is not implemented yet. Please implement this- it will take hardly 5min of your time but will save a lot of time for the users, like I am watching lectures on the site and because of lack of sorting I have go back and check what should I watch next. This decreases User experience.

Buggy Global Site Settings

If you toggle any option it automatically disables all the options so u cant accept request nor tmdb api works

Wording

Set the Username (Replace Yours with the Example)

The way this is worded does not make sense. It should say "Replace the Example below with your info". The way it is written makes it seem like you are to replace your own info with the example.

Site without the Backend server

First let me start with how beautiful your project is, this is the best google drive index i have seen so far in term of look and functionality.

It would be better for some people if there was no need for the registration (the Backend server), don't get me wrong its a great feature but setting up for some people gets real complicated. (me)

it would be much easier to setup and browse the site without the backend system(no need or registration and account). simply just visit the site and stream or download the files. (if someone wants to use it just as a personal site and stream or download his/her file)

it would be great if you could make another brunch of the project and modify it to make it usable it without the backend server
( i have no knowledge of coding so i don't know how hard it is to modify it so forgive my ignorance)

Frontend(worker) auto updater

It will be great if there is a tool for auto updating frontend like cli tool for backend.
Don't want to change user credentials and images link that I manually provided.I just want it to upgrade with the newest frontend release.

Search box not showing.

Hello! Thank you for this awesome repo! However, after I complete publishing the app from workers, my site doesn't have the search box after I login. I used Aicirou's version before and it has the same problem. Do you know why ?

Screenshot_2020-07-08_00-53-30
(Your site)

Screenshot_2020-07-08_00-53-58
(My site)

Options to select different categories for different roots

Is your feature request related to a problem? Please describe.
Currently if you select a different root folder, the options on the home page you had earlier hard linked in the categories remain the same thereby being rendered useless if you navigate to another root folder / Team Drive of your choice.

Describe the solution you'd like
I think an option to select different categories for different root folders would be a nice addition. Say you navigate to a different root folder / team drive, the home page switches with the different categories you had hard linked for that specific root folder.

For example:
Say another root folder for Courses, the home page switches with your newly selected options and subcategories.

Describe alternatives you've considered
None at the moment

Additional context
None at the moment

Thanks for the development. It's really a handy and fast responsive index :)

Homepage stuck in a never ending loop

This shows up on every other page but when clicking "Go to drive" it keeps reloading with that notification showing up always. Even tried manually changing version number to that but issue still persists

image

[enhancement] Streaming audio with its metadata .

It will enhance the overall audio streaming experience , if we have interface with original audio poster , singer - composer names , album , release year etc .

This npm package may provide help in achieving this : https://www.npmjs.com/package/music-metadata

If the above method creates any hiccups , using these popular open music apis particularly of deezer and spotify can help to fetch metadata rapidly .
https://public-apis.io/category/music-apis

Thanks :)

VPS

can you make guide by using VPS

Getting 'Unauthorized' Error

I setup the frontend (cf workers) and backend and through heroku logs I can see that the frontend is communicating with the backend but whenever I try to request or login it shows up as 'unauthorized'. In the homepage when I enter my root user email it directs me to the login page, this means its communicating with the database but I can't login or request access. I wonder why? I am on v7.5.1

Email is not getting sento to admins to register a user

Even though my backend server is working complete and my eamil Credentials are also correct i checked them many times but whenever a user request access to my index , verification email doesn't to go to admin mail to register the user i tried different mails providers too but same result ,i also used app password but still it didn't work . Please suggest me a soln....

I am not getting the email to register a user.

2021-05-26T07:42:11.980874+00:00 app[web.1]: Request Not Found
2021-05-26T07:42:12.423410+00:00 app[web.1]: Error: Invalid login: 535 5.7.0 (#AUTH005) Too many bad auth attempts.
2021-05-26T07:42:12.423427+00:00 app[web.1]: at SMTPConnection._formatError (/app/node_modules/nodemailer/lib/smtp-connection/index.js:784:19)
2021-05-26T07:42:12.423428+00:00 app[web.1]: at SMTPConnection._actionAUTHComplete (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1523:34)
2021-05-26T07:42:12.423429+00:00 app[web.1]: at SMTPConnection. (/app/node_modules/nodemailer/lib/smtp-connection/index.js:550:26)
2021-05-26T07:42:12.423429+00:00 app[web.1]: at SMTPConnection._processResponse (/app/node_modules/nodemailer/lib/smtp-connection/index.js:942:20)
2021-05-26T07:42:12.423429+00:00 app[web.1]: at SMTPConnection._onData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:749:14)
2021-05-26T07:42:12.423430+00:00 app[web.1]: at TLSSocket.SMTPConnection._onSocketData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)
2021-05-26T07:42:12.423431+00:00 app[web.1]: at TLSSocket.emit (events.js:376:20)
2021-05-26T07:42:12.423432+00:00 app[web.1]: at addChunk (internal/streams/readable.js:309:12)
2021-05-26T07:42:12.423432+00:00 app[web.1]: at readableAddChunk (internal/streams/readable.js:284:9)
2021-05-26T07:42:12.423432+00:00 app[web.1]: at TLSSocket.Readable.push (internal/streams/readable.js:223:10)
2021-05-26T07:42:12.423433+00:00 app[web.1]: at TLSWrap.onStreamRead (internal/stream_base_commons.js:188:23) {
2021-05-26T07:42:12.423433+00:00 app[web.1]: code: 'EAUTH',
2021-05-26T07:42:12.423434+00:00 app[web.1]: response: '535 5.7.0 (#AUTH005) Too many bad auth attempts.',
2021-05-26T07:42:12.423434+00:00 app[web.1]: responseCode: 535,
2021-05-26T07:42:12.423434+00:00 app[web.1]: command: 'AUTH PLAIN'
2021-05-26T07:42:12.423435+00:00 app[web.1]: }
2021-05-26T07:42:12.424957+00:00 app[web.1]: Error: Invalid login: 535 5.7.0 (#AUTH005) Too many bad auth attempts.
2021-05-26T07:42:12.424958+00:00 app[web.1]: at SMTPConnection._formatError (/app/node_modules/nodemailer/lib/smtp-connection/index.js:784:19)
2021-05-26T07:42:12.424958+00:00 app[web.1]: at SMTPConnection._actionAUTHComplete (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1523:34)
2021-05-26T07:42:12.424959+00:00 app[web.1]: at SMTPConnection. (/app/node_modules/nodemailer/lib/smtp-connection/index.js:550:26)
2021-05-26T07:42:12.424959+00:00 app[web.1]: at SMTPConnection._processResponse (/app/node_modules/nodemailer/lib/smtp-connection/index.js:942:20)
2021-05-26T07:42:12.424959+00:00 app[web.1]: at SMTPConnection._onData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:749:14)
2021-05-26T07:42:12.424960+00:00 app[web.1]: at TLSSocket.SMTPConnection._onSocketData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)
2021-05-26T07:42:12.424960+00:00 app[web.1]: at TLSSocket.emit (events.js:376:20)
2021-05-26T07:42:12.424961+00:00 app[web.1]: at addChunk (internal/streams/readable.js:309:12)
2021-05-26T07:42:12.424961+00:00 app[web.1]: at readableAddChunk (internal/streams/readable.js:284:9)
2021-05-26T07:42:12.424961+00:00 app[web.1]: at TLSSocket.Readable.push (internal/streams/readable.js:223:10)
2021-05-26T07:42:12.424961+00:00 app[web.1]: at TLSWrap.onStreamRead (internal/stream_base_commons.js:188:23) {
2021-05-26T07:42:12.424962+00:00 app[web.1]: code: 'EAUTH',
2021-05-26T07:42:12.424962+00:00 app[web.1]: response: '535 5.7.0 (#AUTH005) Too many bad auth attempts.',
2021-05-26T07:42:12.424962+00:00 app[web.1]: responseCode: 535,
2021-05-26T07:42:12.424962+00:00 app[web.1]: command: 'AUTH PLAIN'
2021-05-26T07:42:12.424963+00:00 app[web.1]: }

Heroku logs

Email detected as spam

When accepting user into frontend the user email is incorrectly labelled as spam.
(Screenshot Attached)
Screenshot 2021-04-14 230209

Video Quality Selection

This project looks really amazing !
Just wanted to know if you could add another video quality lower than 720p while streaming since it would be really helpful for slow connections.
Also, while playing 720p videos, a 1080p option to stream also pops up
Screenshot_20200704-092634901 (1)

Hides unsupported or unplayable files

There could be an option to hide file formats that are not played or not supported

For example: when clicking on captions or images, it downloads

It seems that the application does not work correctly, but in fact the user is opening files that cannot be played.

Asking for password

Frontend asking for password for accessing file
Though I've set password protect file to false. It's continuously asking for user name and password with prompt.

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.