doesitarm/helpers
ThatGuySam 3d19c60670 Keep YouTube fallbacks small enough to review
The first baseline committed the raw YouTube API dump, which fixed clean builds but carried unused API metadata. The route fallback only needs prebuilt listing objects, so this replaces the raw seed with slug-keyed listing fallbacks and adds a refresh script that fetches the latest source data before projecting it.

Constraint: helpers/site-listings.js must work in a fresh checkout before generated static/api output exists

Rejected: Commit the full raw YouTube JSON | unnecessarily large and mostly unused by the fallback path

Rejected: Drop descriptions only | smaller but would weaken app-link and tag matching semantics

Confidence: high

Scope-risk: narrow

Reversibility: clean

Directive: Refresh static/api/youtube-video-listings.json via scripts/update-youtube-video-listing-fallbacks.js, not by committing static/api/youtube-videos.json

Tested: pnpm run with-env vite-node scripts/update-youtube-video-listing-fallbacks.js

Tested: pnpm run with-env vitest test/prebuild/site-listings.test.js

Tested: pnpm run netlify-prebuild:test-prebuild-functions

Tested: pnpm run netlify-prebuild
2026-04-25 15:13:29 -05:00
..
api Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
app-store Add 42 matter genres link 2021-04-17 18:46:11 -05:00
astro Keep redirect lookups from crashing SSR pages 2026-04-06 10:31:57 -05:00
macho Comment Magic types 2022-07-21 19:49:43 -05:00
pagefind Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
scanner fix(scanner): rename plist parser module to avoid CI cycle false positive 2026-04-04 18:31:46 -05:00
search feat(search): add pagefind provider support 2026-03-15 13:42:07 -05:00
stork refactor(search): extract shared filter helper 2026-03-15 13:41:33 -05:00
app-derived.js Update video ison to play button 2022-05-18 12:53:53 -05:00
app-files-scanner.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
array.js Move getSymmetricDifference to helper file 2022-06-11 17:04:21 -05:00
build-app-list.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
build-device-list.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
build-game-list.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
build-homebrew-list.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
build-payload.js Use set for video app list 2021-01-25 12:46:33 -06:00
build-video-list.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
bundles.js Add supportedArchitectures helper 2022-04-28 11:06:28 -05:00
categories.js Add context to category map 2022-06-11 15:34:13 -05:00
check-types.js Add isNonEmptyArray helper 2022-05-09 15:10:31 -05:00
cli-options.js Move cliOptions to helper 2022-05-09 16:40:06 -05:00
config-node.js Keep redirect lookups from crashing SSR pages 2026-04-06 10:31:57 -05:00
constants.js Try UA style ID 2022-07-13 15:26:41 -05:00
devices.js Move deviceSupportsApp into helper 2021-04-18 20:01:48 -05:00
environment.js fix(stork): support netlify ubuntu 24 builds 2026-03-15 11:57:41 -05:00
get-list-summary-numbers.js Catch non-arrays on summary numbers 2022-05-22 10:43:21 -05:00
get-list.js Store lists as Sets 2021-01-22 23:14:44 -06:00
http.js Finish axios migration via shared native HTTP helper 2026-04-06 12:09:16 -05:00
json.js Add streamToJson helper 2023-04-01 09:55:03 -05:00
listing-page.js Update for M3 Verbiage 2023-10-30 20:08:06 -05:00
lite-youtube.js Fix canAutoPlay not defined 2022-05-07 12:46:05 -05:00
matching.js Fix error on names with pluses 2022-04-24 10:57:59 -05:00
parse-date.js Move makeLastUpdatedFriendly into parse-date 2021-03-06 21:40:52 -06:00
public-runtime-config.mjs fix(runtime-config): avoid package.json fallback in prerender bundle 2026-04-04 15:41:03 -05:00
related.js Add getRelatedVideos helper 2022-06-09 15:55:53 -05:00
scroll.js Export scrollHorizontalCarousel function 2022-06-08 12:48:32 -05:00
searchable-list.js Catch undefined on makeSearchableList 2022-02-27 16:00:54 -06:00
site-listings.js Keep YouTube fallbacks small enough to review 2026-04-25 15:13:29 -05:00
slug.js Move makeSlug to function 2021-04-17 22:36:06 -05:00
sort-list.js Fix kind sorting differently on client and build 2020-11-26 17:01:10 -06:00
statuses.js Set filterSeparator as constant 2022-06-05 11:43:52 -05:00
structured-data.js Add default siteUrl for structured data 2022-06-09 14:49:21 -05:00
url.js Include params from Astro request 2022-06-11 19:38:37 -05:00