Skip to main content

What's new in Svelte: December 2021

Svelte Summit Fall 2021 Recap, Rich Harris joins Vercel, and Kevin goes full-time on Svelte Society

With SvelteKit getting more and more stable each day, there's not much to cover in terms of code changes other than bug fixes... So, in this month's newsletter, we'll be covering Svelte Summit Fall 2021!

If you want to dive deep into the last month's worth of bug fixes, check out the Svelte and SvelteKit changelogs, respectively.

What happened at Svelte Summit?

If you missed Svelte Summit, you can watch the entire live stream on YouTube and catch a recap in the #svelte-summit channel on Discord.

Here are the highlights:

  • Rich Harris took us through a tour of Svelte's history and announced his move to Vercel - where he will be helping maintain Svelte full-time! (20:00)
  • Steph Dietz explained how Svelte's simple abstractions makes it easy for beginners and experts alike to learn and use JavaScript - without the boilerplate (29:00)
  • Kevin Bridges dove deep into Svelte's reactivity logic by visualizing it through ReflectiveCounter and showing how to "fine tune" it, as needed. A full "syllabus" for the presentation is available on Kevin's site. (42:55)
  • Mateo Morris launched Primo, an all-in-one SvelteKit CMS to help build and manage static sites (1:12:34)
  • Guillermo Rauch explained Vercel's commitment to Svelte, what it means to have Rich on the team, and what's coming next from the company... (1:21:54)
  • Geoff Rich introduced various ways to modify motion and transitions within Svelte to be more accessible to all users of the web. Slides and a full transcription of the talk are available on Geoff's site. (1:32:30)
  • Dean Fogarty demoed a number of different use-cases for custom stores - transforming data to and from storage mechanisms within Svelte. Transcript and code is available on Dean's GitHub. (1:43:06)
  • Kellen Mace shared how we can let content creators keep using WordPress, while leveraging Svelte on the frontend to provide a phenomenal user experience (1:49:30)
  • Ben Holmes explained the "islands" architecture and how 11ty + Slinkity can bring these islands to any HTML template (2:17:15)
  • Scott Tolinski shared the lessons learned from rewriting the React-based LevelUpTutorials in Svelte and "found developer bliss" (3:16:35)
  • Svelte Sirens was announced as the new Svelte community for women, non-binary and allies. Their first event was on November 29th - all future events can be found on the Svelte Sirens website (3:50:45)
  • Rich Harris discussed creating libraries with SvelteKit, better ways to link packages when developing, and how SvelteKit helps with modern JavaScript library development (3:56:00)
  • Ken Kunz explained how finite state machines (and the svelte-fsm library) can make managing Svelte component states more... manageable. Examples from the talk are available on Ken's GitHub. (4:07:18)
  • Austin Crim connected learning to code on the web to learning how to play an instrument. By giving learners early wins and introducing the fundamentals through real-world apps, learning Svelte (and the fundamentals underneath) doesn't have to be a chore (4:21:50)
  • Jesse Skinner brought our legacy apps into the future by explaining how to use (and reuse) Svelte components within React (and even jQuery!) projects (4:32:30)
  • Jim Fisk and Stephanie Luz introduced Plenti and its theming tools to make building new Svelte sites much faster (4:59:00)
  • Evyatar Alush helped us all make (and maintain) better forms using a powerful validation library called Vest (5:08:55)
  • Dominik G. presented a fresh take on icon libraries - one that reduces the bundle size of applications and opens up the entire iconify library for use in any Svelte app (5:30:04)

Thanks to Kevin and all the Svelte Society volunteers for pulling together such an amazing event! Excitingly, Kevin announced after the event that he will now be working full-time on Svelte Society! You can check out all the talks, broken up into individual videos for convenience, in this Svelte Society YouTube Playlist.

If you have feedback on the Svelte Summit, Kev is looking for feedback on the Svelte subreddit 👀


Community Showcase

Apps & Sites

Looking for a Svelte project to work on? Interested in helping make Svelte's presence on the web better? Check out the list of open issues if you'd like to contribute to the Svelte Society rewrite in SvelteKit.

Videos, Blogs and Podcasts

Libraries, Tools & Components

  • svelte-cubed is a Three.js component library for Svelte - created by Rich Harris for his presentation at Svelte Summit Fall 2021
  • svelte-fsm is a tiny, simple, expressive, pragmatic Finite State Machine (FSM) library, optimized for Svelte
  • bromb is a feedback widget for websites/web apps that is small and easy to integration/self-host
  • Spaper is a set of PaperCSS components for Svelte
  • svelte-intl-precompile is an i18n library for Svelte that analyzes and compiles your translations at build time
  • svelte-preprocess-svg automatically optimizes inline svg in Svelte components for better performance and reduced file size
  • svelte-subcomponent-preprocessor allows you to write more than one component within a svelte file
  • svelte-pdfjs is a crude implementation of a Svelte PDF viewer component
  • svelte-inview is a Svelte action that monitors an element enters or leaves the viewport/parent element
  • sveltekit-adapter-wordpress-shortcode is an adapter for SvelteKit which turns your app into a wordpress shortcode
  • svelte-websocket-store is a Svelte store with a websocket backend
  • Svelte Auto Form is a fast and fun form library focused on ease of use, rather than flexibility.
  • set-focus is an Svelte action that will set focus on <a> or <button> elements as soon as they mount - useful for some experiences and testing

Got an idea for SvelteKit? Check out the new GitHub Discussions in the Svelte repo. You can also join us on Reddit or Discord.

See you next month year!

We stand with Ukraine. Donate → We stand with Ukraine. Petition your leaders. Show your support.