mirror of
https://github.com/BobbyWibowo/lolisafe.git
synced 2024-12-14 00:16:21 +00:00
3.7 KiB
3.7 KiB
Todo
Normal priority:
- Improve performance of album public pages,
and maybe paginate them. - Use native lazy-load tag on nojs album pages.
- Use incremental version numbering instead of randomized strings.
- Use versioning in /api/check. To elaborate, make it so that when a version string reported by server is higher than expected, force user to reload the page (which should be all that is needed for users to be loading latest front-end assets). Possibly also use it in /api/tokens/verify, for dashboard page.
- Better
df
handling (system disk stats). To elaborate, either properly show disk usages of directories that have sub-directories, or only show disk usages of whitelisted directories (thumbs, chunks, etc). - Use loading spinners on dashboard's sidebar menus.
- Disable all other sidebar menus when a menu is still loading.
- Collapsible dashboard's sidebar albums menus.
- Add "View uploads" button in "Manage your albums" page. Assuming the sidebar album menus are collapsed, users can optionally use this button as a shortcut, if they already happened to be in that page.
- Change
title
attribute of disabled control buttons in uploads & users lists. - Use Gatsby logo for link to blog.fiery.me on the homepage.
- Automatically create missing columns in
database/db.js
. That way we will no longer need the migration script. - Better error message when server is down.
- Show expiry date in thumbs view.
- Add Select all checkbox somewhere in thumbs view.
- Display renders after API check.
- Enforce pass min/max lengths in dashboard's change password form.
- Add a copy all links to clipboard when there are more than 2 uploads in homepage's uploads history.
- Update fb_share.png.
- I forsaked all
Promise.all()
in favor ofawait-in-for-loop
a while back. I personally think it was fine, considering a lot of them were tasks that required serial processing (continuation be dependant on previous iterations), but maybe I should review the current codes to find any sections that would do just fine, or maybe even great, withPromise.all()
. - Black-ish colorscheme.
- When registering a new account, check for existing account(s) with the same username case-insesitively (for people who forgets how exactly they wrote their username). But still forces case-sensitivity when trying to login (cause this is a considerable security layer).
Low priority:
- Parallel URL uploads.
- Delete user feature.
- Bulk delete user feature.
- Bulk disable user feature.
- Strip EXIF from images. #51
- DMCA request logs (bare text file will do), and link it in FAQ.
Lower priority:
- Find a way to detect whether a user had disabled their browser's built-in smooth scrolling capability. We will then use that to decide whether we should use smooth scrolling when auto-scrolling during navigation (for now smooth scrolling is always enabled; and polified if applicable).
- Support fragments for dashboard sidebar menus.
- Perhaps consider switching from Express to Fastify?
- Multi-level sub dirs for uploads. #51
- Mime type blacklist. #51
- Cluster mode (multi-core support). #50
- Tiered accounts. #51