Releases: sucho-archiving/meme-wall
v5
This release is a major update to the underlying dependencies (Astro 2 → 4, Svelte 3 → 4), and a big reworking of the asset generation. Removing the legacy astro-imagetools
in favour of Astro 3+'s built-in assets support offers improved dev-time caching and rebuilding and provides a better base for further development.
v4
The major feature of this release is glossary pages for content types, template types, and people (drawn at build time from Google Docs). Also included are additional information on the about page, and a number of minor tweaks and fixes.
v3.0
This release adds much improved OpenGraph image creation, and a simple RSS feed at https://memes.sucho.org/rss.xml. Each of these features required some not-insignificant reworking of the way derivative images are created during the build process.
v2.0
Major Features
- Substantial rewrite of layout algorithm and other aspects of the wall for much better performance, especially noticeable on mobile devices
- More sophisticated filter widgets that allow hierarchical grouping of categories and multiple selection etc.
- New navigation interface with explicit buttons and keyboard interactions
Further Details
For further details, see the beta
and rc
releases:
Full Changelog: v1.4.2...v2.0
v2.0-rc-1
- Fix for paging navigation when the wall is filtered
- Improvements to paging navigation indication/feedback
- Rewrite of deep-linking to fix a couple of bugs and to prevent massive slow downs
v2.0-beta-5
Features:
- New navigation interface with explicit buttons and keyboard interactions
Fixes:
- Prevent loader showing when insufficient memes are shown to cover it
- Fix for auto-zooming when filtered to a single meme
- Fix for filter close button on iPads
v2.0-beta-4
- Ensure heights are calculated properly on mobile browsers (prevents metadata overlays being cut off)
- Automatically generate a new Open Graph image with each build
v2.0-beta-3
- Styled checkboxes for dropdown multi-select filters
- Fixes to styling on supporting pages (
/about/
,/stats/
) - Further performance improvements (perf. on low-powered devices is much better)
v2.0-beta-2
Two big-ish user-facing performance improvements:
- JPEG fallbacks have been dropped. I discovered they weren't working properly, which served to reinforce my impression that they were probably superfluous anyway. WebP is the only format served now, which simplifies both the build process and the markup that's shipped to the client, for a build-time improvement and a render-time improvement.
- Changes have been made to the transformation calculation algorithm for the zoom-in function in order to optimize repaints. This improves performance considerably, especially when the wall is unfiltered (i.e. when all 2k+ memes are on the wall) -- performance on mobile Chrome/Safari (esp. iOS) is now tolerable.
Build-time changes:
- Switched from
yarn
topnpm
for package management.pnpm
seems to be generally better anyway, but the switch was prompted by the need to patchastro-imagetools
to drop the creation of fallback images. The patch is a bit hacky, in that it breaks some of theastro-imagetools
functionality that this project has no need for, but I'm expecting to migrate to@astrojs/image
once that hits stable anyway, so I'll worry about it again then. - Improved the logging DX; now that there are so many memes, the console output was getting obstructive. Added respect for a
LOG_LEVEL=DEBUG
environment variable to see all the gory details only when needed.
v2.0-beta-1
Initial beta version for a v2.
-
New multi-select filter components to replace the straight-up
<select/>
elements- Includes fetching of hand-curated value hierarchies from the Google Sheet
- Includes more more sophisticated filter interaction logic (more required here still, I expect)
- New components are written in Svelte, so new build-time deps. are required
- Also depends on
@floating-ui/dom
to handle runtime positioning
-
Rewrite of the header layout
- Slide-out search UI for max-width layout has been dropped
- Includes refactoring of markup into
.astro
components for easier maintenance
-
Major performance improvements
- Improvements to the layout algorithm
- Dropped the 3x3 thumbnails (these were killing build-time performance as well as rendering; didn't scale to > 2k memes on the wall)
- Numerous other small performance upgrades
- Dropped Javascript-based image lazy-load fallback; this could result in worse performance on Safari/iOS on older devices (Safari < 15.4)
Note: I'm dropping semver with this release in favour of a simple X.Y
. Future releases with new features or updates will increment X
; increments to Y
will indicate bug fixes that do not introduce anything new.