What's new?

πŸŽ‰ This is a constantly updating page of new updates for this project. Also available at What's new? #325.

2022/2/14 πŸ’ž

  • Other than password protected routes, and raw file link redirect API, all other API routes are using Vercel edge caching mechanisms (fresh for 60 seconds):

    Cache-Control: max-age=0, s-maxage=60, stale-while-revalidate
  • Raw file link redirect API changed from /api?path=<file>&raw=true to /api/raw?path=<file>, no cache applied.

  • Raw file link redirect API accepts the URL parameter &odpt=<hashed_token> for password authentication.


  • πŸš€ A few performance boosts:

    • Thumbnails are now requested separately after files are initially loaded. This improves file load performance as we are requesting fewer items from OneDrive's API on initial request. (However your thumbnails may load slower for half a second or so.)
    • Edge caching is now in use: we are now leveraging Vercel's edge function caching and stale-while-revalidate options, so you should experience extremely faster load speed for all API routes.) Cache is valid for 60 seconds on the edge. Check: πŸš€ Edge caching #407.
  • πŸ‘¨β€πŸ’» Code highlighting: we dropped dependency Prism.js, syntax highlighting is now performed by react-syntax-highlighter (using highlight.js under-the-hood. Support for different languages are imported asynchronous (so you may see a slight delay before the code is actually highlighted).

    Light code syntax highlightDark code syntax highlight
  • 🎸 Audio preview (music player) now shows the thumbnail of the album if available.

    Audio Player


  • πŸ‡¨πŸ‡³/πŸ‡¬πŸ‡§ - Project is i18n-ed, enjoy. πŸ₯±

  • πŸŽ₯ .flv videos are now supported.

  • πŸ”— Links copied to your clipboards are now formatted in a human-readable way.

    - before: /api?path=/%F0%9F%8E%BB%20Genshin%20playlist/%E3%80%90%E5%8E%9F%E7%A5%9E%E3%80%91%E8%83%A1%E6%A1%83%EF%BC%9A%E5%95%8A%E5%AF%B9%E5%AF%B9%E5%AF%B9%E5%AF%B9.mp4&raw=true
    + after:  /api?path=/🎻%20Genshin%20playlist/γ€εŽŸη₯žγ€‘θƒ‘ζ‘ƒοΌšε•Šε―Ήε―Ήε―Ήε―Ή.mp4&raw=true
  • πŸ“… You can now customise your date formats in site.config.js under datetimeFormat.


  • πŸ’  Layout switching is now supported! Grid layouts with thumbnail previews are now available.

    Grid layout

  • πŸ—‘ We have dropped usage of react-viewer which is unperformant and causes high CPU usages.


  • πŸŽ₯ We have dropped usage of react-player and is now using react-dplayer and react-audio-player as video and audio players respectively.

  • πŸŽ‡ We added thumbnail rendering for videos, see the difference:

    Old version doesn't render thumbnailsNew version renders thumbnails
  • πŸ’¬ We added support for subtitles (closed captions), which are auto referenced if a valid subtitle file with the same name as the video and in .vtt webvtt format is present.

    Old version doesn't respect subtitlesNew version tries to reference subtitles
  • ⚑️ We have migrated from npm to pnpm as project's package manager for faster build speed and more efficient cache usage. You may need to update your Vercel's build commands:

    Migrate from npm to pnpm

    • Build command: pnpm build
    • Install command: pnpm install


  • ❗Breaking - Config files changed from .json to .config.js, relevant comments added. You can now move userPrincipleName to Vercel's environment variables (to avoid exposing your email address publicly).
  • CORS headers are now present in ?raw=true /api/raw routes for OneDrive raw file links.