From 997c2f2f0d143a5b99cf721ffff59f8151937e5b Mon Sep 17 00:00:00 2001 From: randyrektor <157041235+randyrektor@users.noreply.github.com> Date: Fri, 22 Nov 2024 18:00:54 -0500 Subject: [PATCH 1/2] Create - (853 - The State of Frontend.md) (#1910) * Create 853 - The State of Frontend.md * set vercel nodejs runtime version * fix svelte warnings * update timestamp validation --------- Co-authored-by: w3cj --- scripts/merging-show-validation.js | 9 ++-- shows/853 - The State of Frontend.md | 63 ++++++++++++++++++++++++++++ src/lib/PodcastHero.svelte | 1 + src/lib/player/Visualizer.svelte | 2 +- svelte.config.js | 4 +- 5 files changed, 74 insertions(+), 5 deletions(-) create mode 100644 shows/853 - The State of Frontend.md diff --git a/scripts/merging-show-validation.js b/scripts/merging-show-validation.js index f186fdb84..be52868a2 100644 --- a/scripts/merging-show-validation.js +++ b/scripts/merging-show-validation.js @@ -44,9 +44,12 @@ const extractUrls = (content) => { }; const validateTimestamps = (content) => { - // Updated regex to catch more patterns, including incorrect ones - const timestampRegex = /\b([0-5]?\d:[0-5]?\d(:[0-5]\d)?)\b|\b(\d{4})\b/g; - const potentialTimestamps = content.match(timestampRegex) || []; + // only check timestamps in show notes + content = content.split('### Show Notes')[1] || content; + // Regex to match timestamps with [ or = prefix, in formats HH:MM, HH:MM:SS, or HHMM + const timestampRegex = /(?:\[|=)(?:\d{2}:\d{2}(?::\d{2})?|\d{4})\b/g; + // Remove prefix from matched timestamps + const potentialTimestamps = (content.match(timestampRegex) || []).map((t) => t.slice(1)); const invalidTimestamps = potentialTimestamps.filter((timestamp) => { if (!timestamp.includes(':')) { // Catching cases like '0702' which should be invalid diff --git a/shows/853 - The State of Frontend.md b/shows/853 - The State of Frontend.md new file mode 100644 index 000000000..2f6bf94bf --- /dev/null +++ b/shows/853 - The State of Frontend.md @@ -0,0 +1,63 @@ +--- +number: 853 +title: The State of Frontend +date: 1732705200000 +url: https://traffic.libsyn.com/syntax/Syntax_-_853.mp3 +youtube_url: https://www.youtube.com/watch?v=FIYurQvJY2E +--- + +Scott and Wes dive into the State of Frontend 2024 Survey, breaking down the latest trends, tools, and frameworks shaping the developer ecosystem. Tune in as they react to hot takes on frameworks, state management, hosting, and what’s next for frontend devs! + +### Show Notes + +* **[00:00](#t=00:00)** Welcome to Syntax! +* **[00:53](#t=00:53)** Brought to you by Sentry.io. +* **[01:15](#t=01:15)** About the survey. + * Follow along! [State of Frontend Survey](https://tsh.io/state-of-frontend/) +* **[02:10](#t=02:10)** Frameworks. +* **[06:15](#t=06:15)** Rendering frameworks. +* **[07:35](#t=07:35)** State management. +* **[09:14](#t=09:14)** Other libraries. + * [Just: Dependency-free Utilities](https://anguscroll.com/just/). +* **[13:34](#t=13:34)** Data. + * [Syntax Episode 453](https://syntax.fm/show/453/why-do-people-still-use-axios-over-fetch). + * [Syntax Episode 833](https://syntax.fm/show/833/next-gen-fullstack-react-with-tanstack). +* **[16:39](#t=16:39)** Hosting. + * [AWS Amplify](https://docs.amplify.aws/). +* **[19:51](#t=19:51)** Continuous Integration. +* **[21:30](#t=21:30)** Micro-frontends. +* **[23:25](#t=23:25)** Package Managers. + * [pnpm Link Workspace Packages](https://pnpm.io/npmrc#link-workspace-packages). + * [Corepack](https://nodejs.org/api/corepack.html). +* **[28:35](#t=28:35)** JS Runtimes. +* **[29:47](#t=29:47)** Typescript. +* **[33:13](#t=33:13)** Browser Technologies. +* **[35:05](#t=35:05)** What is app property? +* **[38:20](#t=38:20)** Progressive Web Apps. +* **[40:11](#t=40:11)** Styling tools. +* **[43:17](#t=43:17)** Testing. +* **[45:39](#t=45:39)** Code editors. +* **[49:02](#t=49:02)** Build tools. +* **[49:17](#t=49:17)** Linting tools. +* **[50:26](#t=50:26)** Operating systems. +* **[51:17](#t=51:17)** The future trends. +* **[54:14](#t=54:14)** Sick Picks + Shameless Plugs. + +### Sick Picks + +- Scott: [Candle Warmer](https://amzn.to/3YCXoLZ). +- Wes: [Flighty iOS App](https://apps.apple.com/us/app/flighty-live-flight-tracker/id1358823008). + +### Shameless Plugs + +- Scott: [Syntax on Bluesky](https://bsky.app/profile/syntax.fm) + +### Hit us up on Socials! + +Syntax: [X](https://twitter.com/syntaxfm) [Instagram](https://www.instagram.com/syntax_fm/) [Tiktok](https://www.tiktok.com/@syntaxfm) [LinkedIn](https://www.linkedin.com/company/96077407/admin/feed/posts/) [Threads](https://www.threads.net/@syntax_fm) + +Wes: [X](https://twitter.com/wesbos) [Instagram](https://www.instagram.com/wesbos/) [Tiktok](https://www.tiktok.com/@wesbos) [LinkedIn](https://www.linkedin.com/in/wesbos/) [Threads](https://www.threads.net/@wesbos) + +Scott: [X](https://twitter.com/stolinski) [Instagram](https://www.instagram.com/stolinski/) [Tiktok](https://www.tiktok.com/@stolinski) [LinkedIn](https://www.linkedin.com/in/stolinski/) [Threads](https://www.threads.net/@stolinski) + +Randy: [X](https://twitter.com/randyrektor) [Instagram](https://www.instagram.com/randyrektor/) [YouTube](https://www.youtube.com/@randyrektor) [Threads](https://www.threads.net/@randyrektor) \ No newline at end of file diff --git a/src/lib/PodcastHero.svelte b/src/lib/PodcastHero.svelte index 90b6b3b32..ba7839d71 100644 --- a/src/lib/PodcastHero.svelte +++ b/src/lib/PodcastHero.svelte @@ -50,6 +50,7 @@ target="_blank" title="Sentry" class="naked" + aria-label="sentry" > Date: Fri, 22 Nov 2024 23:01:22 +0000 Subject: [PATCH 2/2] Create - (853 - The State of Frontend.md) (#1910) * Create 853 - The State of Frontend.md * set vercel nodejs runtime version * fix svelte warnings * update timestamp validation --------- Co-authored-by: w3cj 2.1.186 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c872d6283..45fecad04 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "syntax", - "version": "2.1.185", + "version": "2.1.186", "private": true, "scripts": { "dev": "node ./scripts/preheat.js",