Book Image

Svelte 3 Up and Running

By : Alessandro Segala
Book Image

Svelte 3 Up and Running

By: Alessandro Segala

Overview of this book

Svelte is a modern JavaScript framework used to build static web apps that are fast and lean, as well as being fun for developers to use. This book is a concise and practical introduction for those who are new to the Svelte framework which will have you up to speed with building apps quickly, and teach you how to use Svelte 3 to build apps that offer a great app user experience (UX). The book starts with an introduction to Svelte 3, before showing you how to set up your first complete application with the framework. Filled with code samples, each chapter will show you how to write components using the Svelte template syntax and the application programming interfaces (APIs) of the Svelte framework. As you advance, you’ll go from scaffolding your project and tool setup all the way through to production with DevOps principles such as automated testing, continuous integration, and continuous delivery (CI/CD). Finally, you’ll deploy your application in the cloud with object storage services and a content delivery network (CDN) for best-in-class performance for your users. By the end of this book, you’ll have learned how to build and deploy apps using Svelte 3 to solve real-world problems and deliver impressive results.
Table of Contents (9 chapters)

Managing cross-component state

In Chapter 3, Building Reactive Svelte Components, we looked at how to use props, bindings, and events to pass variables between components, including from parents to children and vice versa. However, sometimes it's useful to maintain a state that is shared across multiple components, even those not having direct relationships.

Svelte stores

Svelte stores can be used precisely for this purpose. They provide readable and writable stores that can be accessed by any component in the application, while being fully reactive. That means that if a component depends on a store and the value of such a store changes, Svelte automatically re-executes all reactive statements and templates that depend on it.

In the previous chapter, we created a src/stores.js file with pre-made content. Let's take another look at it here:

src/stores.js

import {writable, derived} from 'svelte/store'
export const profile = writable(null)
export const...