Releases: gregrickaby/viewer-for-reddit
Releases · gregrickaby/viewer-for-reddit
6.0.0
🚀 Version 6.0.0 - Major Rewrite & New TikTok-Style UI
🎉 What's New
-
🔥 Total Rewrite with Vite
- The app has been completely rebuilt from the ground up using Vite for a faster, leaner experience.
- Moving away from Next.js since this was meant to be a true SPA (Single Page Application).
- ESLint v9 and Tailwind CSS v4 support.
-
🎥 Dynamic TikTok-Style Interface
- The biggest and boldest change: A brand-new immersive scrolling UI for viewing posts!
- Swipe through content effortlessly---just like TikTok.
- Intelligent responsive image support--- the app adapts to either portrait or landscape images. Images also support "blur-up" technique.
- Dark mode support. Initial theme defined by browser settings. User can toggle between light and dark themes.
-
📦 Redux for State Management / RTK Query for Data Fetching
- Added Redux for global state management, backed by local storage.
- This paves the way for future enhancements and better offline support.
- All data fetches are powered by RTK query, which includes caching and support for infinite scroll.
- In-memory media caching and pre-loading support.
-
⬆️ Popular Subreddits
- Added query to display Popular Subreddits when opening search modal.
-
🔎 Search with History
- You can now search for content and view your search history.
-
⚙️ Persistent Settings
- Your preferences are now saved between sessions, so you never have to set them again.
-
✌️ Other
- Added Serverless Functions to
/api
directory for authenticating all requests with oauth.reddit.com - Laid foundation for tests powered by Vitest and React Testing Library
- Laid foundation for creating a PWA for a true app-like experience
- There's still no tracking of any kind!. Browse anonymously, with no ads or data retention (aside from minimal server logs required for operational integrity).
- Added Serverless Functions to
Full Changelog: 5.2.0...6.0.0
5.2.0
5.1.0
What's Changed
- Added: metadata (score, date, comment count) to post header
- Added: native metadata generation for robots, manifest, and sitemap
- Removed: setting the
poster
attribute on videos (CORS issues) - Changed: reorganized the components/actions/functions files
Full Changelog: 5.0.2...5.1.0
5.0.2
What's Changed
- Buttons now have a hover background
- Load More button now prefetches the next page in the background
Full Changelog: 5.0.1...5.0.2
5.0.1
What's Changed
A hotfix release to address minor things from yesterday's 5.0.0 release.
- Added a paragraph to the homepage (and Readme) explaining what the app is and how I don't track you
- Server actions now log the full error message
- Boss Button component no longer displays on mobile
- Boss Button component tooltip was removed in favor of
title
attribute - Media component now sets default props for
<HLSPlayer />
which trims repeated code - Media component now has lots of comments for easier onboarding
- Media component will return a message if all other media fails
- HLS Player component now properly accepts
loop
prop - No longer expand
.main
container, instead target.post
- Post grid CSS and Masonry now play nice with each other, providing a smooth resize experience
- Add VSCode settings and extension files
- Update CodeQL workflow to latest version
- Other misc. comments and clean-ups
Full Changelog: 5.0.0...5.0.1
5.0.0
What's Changed
- Move all queries to React Server Components via Server Actions (no more client-side fetching via SWR)
- Migrate styles back to Tailwind
- Finally using a Masonry grid
- Add Boss Button component to quickly close and navigate to DuckDuckGo
- Use real-time search which mimics other major search engines in both form and feel
- This release also trims down the total amount of JavaScript loaded from 277kB to 84kB
- HTTP data transferred down from several megabytes to only 126kB
- See the full version 5.0.0 PR by @gregrickaby in #488
Goals
- The primary goal is to improve performance, because I'm being penalized by Google for having too much CLS and INP. I'm now getting perfect scores. (See https://pagespeed.web.dev/analysis/https-redditviewer-vercel-app/c1fssd1adt?form_factor=desktop). The app as a whole feels much snappier! ✅
- The secondary goal is to eliminate the need to rely on Vercel's Edge network to perform client-side fetches, which costs money. Instead all fetches are happening server-side via Serverless functions. ✅
Full Changelog: 4.0.0...5.0.0
4.0.0
What's Changed
- Next App Router support by @gregrickaby in #486
- Mantine v7 by @gregrickaby in #486
Full Changelog: 3.9.0...4.0.0
3.9.0
What's Changed
- Performance boost: We're now displaying the 640px image from the Reddit API instead of 1080px. There wont be any noticeable quality loss, and your bandwidth usage should be cut in half!
- Accessibility improvements
- Increase search bar size
- Use darker/lighter background for cards
- Add
aria-label
to everything
- Add Sponsorship button to modal
- Decrease desktop grid size from 4 images across to 3
- Use 3/2 aspect ratio
- Use global config in more places and other misc. clean ups
- Upgrade dependencies
Full Changelog: 3.8.0...3.9.0
3.8.0
What's Changed
Full Changelog: 3.7.0...3.8.0
3.7.0
What's Changed
- Further rebrand (to Viewer for Reddit) in order to meet Reddit API usage guidelines by @gregrickaby
- Add auto play options to settings modal by @gregrickaby
- Add autoPlay and loop to videos/GIFs by @rendely in #457
New Contributors
Full Changelog: 3.6.0...3.7.0