diff --git a/apps/svelte.dev/content/blog/2016-11-26-frameworks-without-the-framework.md b/apps/svelte.dev/content/blog/2016-11-26-frameworks-without-the-framework.md
index de7a227082..677273c48a 100644
--- a/apps/svelte.dev/content/blog/2016-11-26-frameworks-without-the-framework.md
+++ b/apps/svelte.dev/content/blog/2016-11-26-frameworks-without-the-framework.md
@@ -32,7 +32,7 @@ The [Svelte implementation of TodoMVC](https://svelte-todomvc.surge.sh/) weighs
And once your app _is_ up and running, according to [js-framework-benchmark](https://github.com/krausest/js-framework-benchmark) **Svelte is fast as heck**. It's faster than React. It's faster than Vue. It's faster than Angular, or Ember, or Ractive, or Preact, or Riot, or Mithril. It's competitive with Inferno, which is probably the fastest UI framework in the world, for now, because [Dominic Gannaway](https://twitter.com/trueadm) is a wizard. (Svelte is slower at removing elements. We're [working on it](https://github.com/sveltejs/svelte/issues/26).)
-It's basically as fast as vanilla JS, which makes sense because it _is_ vanilla JS – just vanilla JS that you didn't have to write.
+It's basically as fast as vanilla JS, which makes sense because it _is_ vanilla JS – just vanilla JS that you didn't have to write.
## But that's not the important thing
diff --git a/apps/svelte.dev/content/blog/2017-09-06-the-zen-of-just-writing-css.md b/apps/svelte.dev/content/blog/2017-09-06-the-zen-of-just-writing-css.md
index f06a4aaac0..70e4cc06b9 100644
--- a/apps/svelte.dev/content/blog/2017-09-06-the-zen-of-just-writing-css.md
+++ b/apps/svelte.dev/content/blog/2017-09-06-the-zen-of-just-writing-css.md
@@ -19,7 +19,7 @@ Everything in CSS is global. Because of that, styles intended for one bit of mar
It gets worse when you're working on a team. No-one dares touch styles authored by someone else, because it's often unclear what they're doing, what markup they apply to, and what disasters will unfold if you remove them.
-The consequence of all this is the **append-only stylesheet**. There's no way of knowing which code can safely be removed, so it's common to undo some existing style with another, more specific style — even on relatively small projects.
+The consequence of all this is the **append-only stylesheet**. There's no way of knowing which code can safely be removed, so it's common to undo some existing style with another, more specific style — even on relatively small projects.
## Single File Components change all that
diff --git a/apps/svelte.dev/content/blog/2019-04-20-write-less-code.md b/apps/svelte.dev/content/blog/2019-04-20-write-less-code.md
index 27a8e88c8c..86bcc083ce 100644
--- a/apps/svelte.dev/content/blog/2019-04-20-write-less-code.md
+++ b/apps/svelte.dev/content/blog/2019-04-20-write-less-code.md
@@ -110,7 +110,7 @@ It's unusual for the difference to be _quite_ so obvious — in my experience, a
### Top-level elements
-In Svelte, a component can have as many top-level elements as you like. In React and Vue, a component must have a single top-level element — in React's case, trying to return two top-level elements from a component function would result in syntactically invalid code. (You can use a fragment — `<>` — instead of a `
`, but it's the same basic idea, and still results in an extra level of indentation).
+In Svelte, a component can have as many top-level elements as you like. In React and Vue, a component must have a single top-level element — in React's case, trying to return two top-level elements from a component function would result in syntactically invalid code. (You can use a fragment — `<>` — instead of a `
`, but it's the same basic idea, and still results in an extra level of indentation).
In Vue, your markup must be wrapped in a `` element, which I'd argue is redundant.
diff --git a/apps/svelte.dev/content/blog/2019-04-22-svelte-3-rethinking-reactivity.md b/apps/svelte.dev/content/blog/2019-04-22-svelte-3-rethinking-reactivity.md
index a4dd7b2b3b..a5270a4f70 100644
--- a/apps/svelte.dev/content/blog/2019-04-22-svelte-3-rethinking-reactivity.md
+++ b/apps/svelte.dev/content/blog/2019-04-22-svelte-3-rethinking-reactivity.md
@@ -11,13 +11,13 @@ We think you're going to love it.
## What is Svelte?
-Svelte is a component framework — like React or Vue — but with an important difference. Traditional frameworks allow you to write _declarative_ state-driven code, but there's a penalty: the browser must do extra work to convert those declarative structures into DOM operations, using techniques like [virtual DOM diffing](/blog/virtual-dom-is-pure-overhead) that eat into your frame budget and tax the garbage collector.
+Svelte is a component framework — like React or Vue — but with an important difference. Traditional frameworks allow you to write _declarative_ state-driven code, but there's a penalty: the browser must do extra work to convert those declarative structures into DOM operations, using techniques like [virtual DOM diffing](/blog/virtual-dom-is-pure-overhead) that eat into your frame budget and tax the garbage collector.
Instead, Svelte runs at _build time_, converting your components into highly efficient _imperative_ code that surgically updates the DOM. As a result, you're able to write ambitious applications with excellent performance characteristics.
The first version of Svelte was all about [testing a hypothesis](/blog/frameworks-without-the-framework) — that a purpose-built compiler could generate rock-solid code that delivered a great user experience. The second was a small upgrade that tidied things up a bit.
-Version 3 is a significant overhaul. Our focus for the last five or six months has been on delivering an outstanding _developer_ experience. It's now possible to write components with [significantly less boilerplate](/blog/write-less-code) than you'll find elsewhere. Try the brand new [tutorial](/tutorial) and see what we mean — if you're familiar with other frameworks we think you'll be pleasantly surprised.
+Version 3 is a significant overhaul. Our focus for the last five or six months has been on delivering an outstanding _developer_ experience. It's now possible to write components with [significantly less boilerplate](/blog/write-less-code) than you'll find elsewhere. Try the brand new [tutorial](/tutorial) and see what we mean — if you're familiar with other frameworks we think you'll be pleasantly surprised.
To make that possible we first needed to rethink the concept at the heart of modern UI frameworks: reactivity.
diff --git a/apps/svelte.dev/content/blog/2022-11-01-whats-new-in-svelte-november-2022.md b/apps/svelte.dev/content/blog/2022-11-01-whats-new-in-svelte-november-2022.md
index 1bae198e78..55f9282e47 100644
--- a/apps/svelte.dev/content/blog/2022-11-01-whats-new-in-svelte-november-2022.md
+++ b/apps/svelte.dev/content/blog/2022-11-01-whats-new-in-svelte-november-2022.md
@@ -77,7 +77,7 @@ _To Read_
- [Using Sequelize with SvelteKit](https://cherrific.io/0xedB00816FB204b4CD9bCb45FF2EF693E99723484/story/23) by MetaZebre
- [Implementing Maintenance mode on a SvelteKit site](https://blog.encodeart.dev/implementing-maintenance-mode-on-a-sveltekit-site) by Andreas Söderlund
- [ActionStore: Real-time Svelte stores for Rails](https://dev.to/buhrmi/actionstore-real-time-svelte-stores-for-rails-4jhg) by Stefan Buhrmester
-- [Svelte CSS Image Slider: with Bouncy Overscroll](https://rodneylab.com/svelte-css-image-slider/) and [SvelteKit Local Edge Functions: Edge on Localhost](https://rodneylab.com/sveltekit-local-edge-functions/) by Rodney Lab
+- [Svelte CSS Image Slider: with Bouncy Overscroll](https://rodneylab.com/svelte-css-image-slider/) and [SvelteKit Local Edge Functions: Edge on Localhost](https://rodneylab.com/sveltekit-local-edge-functions/) by Rodney Lab
- [Creating a Svelte Tabs component with Slot props](https://blog.openreplay.com/creating-a-svelte-tabs-component-with-slot-props/) by Shinichi Okada
- [Sky Cart: An Open Source, cloud-agnostic shopping cart using Stripe Checkout](https://dev.to/stripe/sky-cart-an-open-source-cloud-agnostic-shopping-cart-using-stripe-checkout-o5k) by Mike Bifulco for Stripe
diff --git a/apps/svelte.dev/content/tutorial/01-svelte/02-reactivity/02-deep-state/index.md b/apps/svelte.dev/content/tutorial/01-svelte/02-reactivity/02-deep-state/index.md
index e5caebe2f2..a1c71ec2ee 100644
--- a/apps/svelte.dev/content/tutorial/01-svelte/02-reactivity/02-deep-state/index.md
+++ b/apps/svelte.dev/content/tutorial/01-svelte/02-reactivity/02-deep-state/index.md
@@ -2,7 +2,7 @@
title: Deep state
---
-As we saw in the previous exercise, state reacts to _reassignments_. But it also reacts to _mutations_ — we call this _deep reactivity_.
+As we saw in the previous exercise, state reacts to _reassignments_. But it also reacts to _mutations_ — we call this _deep reactivity_.
Make `numbers` a reactive array:
diff --git a/apps/svelte.dev/content/tutorial/02-advanced-svelte/02-snippets/02-passing-snippets/index.md b/apps/svelte.dev/content/tutorial/02-advanced-svelte/02-snippets/02-passing-snippets/index.md
index 53335d34c2..d9957c2ef2 100644
--- a/apps/svelte.dev/content/tutorial/02-advanced-svelte/02-snippets/02-passing-snippets/index.md
+++ b/apps/svelte.dev/content/tutorial/02-advanced-svelte/02-snippets/02-passing-snippets/index.md
@@ -2,7 +2,7 @@
title: Passing snippets to components
---
-Since snippets — like functions — are just values, they can be passed to components as props.
+Since snippets — like functions — are just values, they can be passed to components as props.
Take this `` component. Its job is to filter the `data` that gets passed into it, but it has no opinions about how that data should be rendered — that's the responsibility of the parent component.
diff --git a/apps/svelte.dev/content/tutorial/02-advanced-svelte/05-advanced-transitions/01-deferred-transitions/index.md b/apps/svelte.dev/content/tutorial/02-advanced-svelte/05-advanced-transitions/01-deferred-transitions/index.md
index 014e7fb986..c5fc3d8d30 100644
--- a/apps/svelte.dev/content/tutorial/02-advanced-svelte/05-advanced-transitions/01-deferred-transitions/index.md
+++ b/apps/svelte.dev/content/tutorial/02-advanced-svelte/05-advanced-transitions/01-deferred-transitions/index.md
@@ -30,4 +30,4 @@ Then, add them to the `
` element, using the `todo.id` property as a key to m
>
```
-Now, when you toggle items, they move smoothly to their new location. The non-transitioning items still jump around awkwardly — we can fix that in the next exercise.
+Now, when you toggle items, they move smoothly to their new location. The non-transitioning items still jump around awkwardly — we can fix that in the next exercise.
diff --git a/apps/svelte.dev/content/tutorial/03-sveltekit/08-stores/02-navigating-store/index.md b/apps/svelte.dev/content/tutorial/03-sveltekit/08-stores/02-navigating-store/index.md
index 27e13dce08..e2826055be 100644
--- a/apps/svelte.dev/content/tutorial/03-sveltekit/08-stores/02-navigating-store/index.md
+++ b/apps/svelte.dev/content/tutorial/03-sveltekit/08-stores/02-navigating-store/index.md
@@ -2,7 +2,7 @@
title: navigating
---
-The `navigating` store represents the current navigation. When a navigation starts — because of a link click, or a back/forward navigation, or a programmatic `goto` — the value of `navigating` will become an object with the following properties:
+The `navigating` store represents the current navigation. When a navigation starts — because of a link click, or a back/forward navigation, or a programmatic `goto` — the value of `navigating` will become an object with the following properties:
- `from` and `to` — objects with `params`, `route` and `url` properties
- `type` — the type of navigation, e.g. `link`, `popstate` or `goto`
diff --git a/apps/svelte.dev/content/tutorial/03-sveltekit/09-errors-and-redirects/01-error-basics/index.md b/apps/svelte.dev/content/tutorial/03-sveltekit/09-errors-and-redirects/01-error-basics/index.md
index 9ea20e924a..e51502db11 100644
--- a/apps/svelte.dev/content/tutorial/03-sveltekit/09-errors-and-redirects/01-error-basics/index.md
+++ b/apps/svelte.dev/content/tutorial/03-sveltekit/09-errors-and-redirects/01-error-basics/index.md
@@ -15,7 +15,7 @@ export function load() {
}
```
-Any other error — such as the one in `src/routes/unexpected/+page.server.js` — is treated as unexpected:
+Any other error — such as the one in `src/routes/unexpected/+page.server.js` — is treated as unexpected:
```js
/// file: src/routes/unexpected/+page.server.js
diff --git a/apps/svelte.dev/content/tutorial/04-advanced-sveltekit/01-hooks/04-handleerror/index.md b/apps/svelte.dev/content/tutorial/04-advanced-sveltekit/01-hooks/04-handleerror/index.md
index be0f93b330..4883c38b1b 100644
--- a/apps/svelte.dev/content/tutorial/04-advanced-sveltekit/01-hooks/04-handleerror/index.md
+++ b/apps/svelte.dev/content/tutorial/04-advanced-sveltekit/01-hooks/04-handleerror/index.md
@@ -13,7 +13,7 @@ export function handleError({ event, error }) {
}
```
-If you navigate to `/the-bad-place`, you'll see this in action — the error page is shown, and if you open the terminal (using the button to the right of the URL bar), you'll see the message from `src/routes/the-bad-place/+page.server.js`.
+If you navigate to `/the-bad-place`, you'll see this in action — the error page is shown, and if you open the terminal (using the button to the right of the URL bar), you'll see the message from `src/routes/the-bad-place/+page.server.js`.
Notice that we're _not_ showing the error message to the user. That's because error messages can include sensitive information that at best will confuse your users, and at worst could benefit evildoers. Instead, the error object available to your application — represented as `$page.error` in your `+error.svelte` pages, or `%sveltekit.error%` in your `src/error.html` fallback — is just this:
diff --git a/apps/svelte.dev/src/lib/server/renderer.ts b/apps/svelte.dev/src/lib/server/renderer.ts
index c22d239ab7..cfdb83780d 100644
--- a/apps/svelte.dev/src/lib/server/renderer.ts
+++ b/apps/svelte.dev/src/lib/server/renderer.ts
@@ -65,7 +65,7 @@ export const render_content = (
);
}
- // special case — we need to make allowances for code snippets coming
+ // special case — we need to make allowances for code snippets coming
// from e.g. ambient.d.ts
if (filename.endsWith('$env-all.md') || filename.endsWith('$app-forms.md')) {
injected.push('// @errors: 7006 7031');
diff --git a/apps/svelte.dev/src/routes/(authed)/apps/+page.svelte b/apps/svelte.dev/src/routes/(authed)/apps/+page.svelte
index 0def54f1d5..3ea31e2ab0 100644
--- a/apps/svelte.dev/src/routes/(authed)/apps/+page.svelte
+++ b/apps/svelte.dev/src/routes/(authed)/apps/+page.svelte
@@ -50,7 +50,7 @@
- Your apps • Svelte
+ Your apps • Svelte
diff --git a/apps/svelte.dev/src/routes/blog/+page.svelte b/apps/svelte.dev/src/routes/blog/+page.svelte
index 9259f891f2..7be5043183 100644
--- a/apps/svelte.dev/src/routes/blog/+page.svelte
+++ b/apps/svelte.dev/src/routes/blog/+page.svelte
@@ -9,7 +9,7 @@
- Blog • Svelte
+ Blog • Svelte