mirror of
https://github.com/Nezumi-2711/next-gdrive-index.git
synced 2026-09-22 20:01:36 +00:00
3.5 KiB
3.5 KiB
Todo
Detailed what I need to do for this project.
This is just a reminder for me, so I don't forget what I need to do.
Probably also include some ideas that I want to implement in the future.
Frontend
General
Site wide password protection- Migrate to app directory (?)
Navbar 8/8 Completed
Search for filesOpen / Close search modalSearch for files or folderConfigurable search limitClose search modal when click outside of modal
ThemeSwitch themeStore theme preference in local storage
Navbar menu
Layout Container 10/10 Completed
This part contains only breadcrumb and view selection.
BreadcrumbFetch breadcrumbNavigate through breadcrumbLimit breadcrumbAdd...if breadcrumb is too longAdd ellipsis if current file name is too longConfigurable breadcrumb limit
Layout viewGrid viewList viewStore view preference in local storageClose view selection when click outside
Home / | 4/5 Completed
Fetch filesFetch readme if existFetch banner if existPagination- Protected folder
Folder /folder/:id | 5/6 Completed
Check if folder existFetch filesFetch readme if existFetch banner if existPagination- Protected folder
File /file/:id | ``
Backend
General
Since Google Drive direct download need the file to be public, I implement the partial file id to keep people from directly accessing the Google Drive itself, and also encrypt the id and webContentLink from Google Drive API to ensure that no one can access the file directly from Google Drive.
ChangefileIdto{file name}:{partial file id}EncryptidandwebContentLinkMaking sure response time is fast enough. Aim for max 1.5s.Fetch root folder600~900msFetch file or folder700~1400msFetch breadcrumb900~1500msFetch readme1100~1200msFetch readme from specific folder1200~1500ms
Fetch banner500-800msFetch banner from specific folder500~800ms
- Protect folder
Fetch files /api/files | 16/17 Completed
Fetch fileFetch folderPaginatedFetch info regarding readme fileFetch info regarding banner fileFetch info regarding password file(Not used yet)- Download file
Redirect to Google Drive download link instead of using Vercel serverless function for files bigger than 4MBOnly allow for files- Files inside protected folder
Get thumbnail for filesGet banner inside folderOnly if banner file is inside the folderRedirect to Google Drive download link instead of using Vercel serverless function for files bigger than 4MBCheck if banner file is image
Generate breadcrumbOn folderOn fileHide root folderLimiting breadcrumb length
Get readme data /api/readme | 2/2 Completed
This API route doesn't need authorization, because it's only used for getting readme data.
Get root folder readmeGet specific folder readme
Get banner file id /api/banner | 2/2 Completed
This API route doesn't need authorization, because it's only used for getting banner file id for Opengraph Image.
Get root folder bannerGet specific folder banner
Search for files /api/search | 2/2 Completed
Search for files and folderLimit search result