Skip Navigation

Scott Spence

Portfolio

Last updated: June 11th 2025

I’m Scott, a passionate Svelte ambassador and application team lead with 7 years years of commercial experience in web development. Currently, I’m an engineering lead developing an AI-focused product built with Svelte and SvelteKit. My work spans practical utilities, developer tools, and useless projects I’ve built, just, because!

Here’s some of my recent work.

Sveltest

SkyKit.blue screenshot

A weekend project that evolved into a comprehensive testing resource for the Svelte ecosystem, now influencing how modern Svelte applications approach testing in real browser environments. Originally created as a companion to my blog post about Migrating from @testing-library/svelte to vitest-browser-svelte, Sveltest has become a community-driven resource built by developers, for developers.

Key Features:

  • Comprehensive testing documentation and real-world examples using vitest-browser-svelte
  • Pre-configured AI assistant rules for Cursor and Windsurf that enforce testing best practices automatically
  • Multi-layer testing approach with minimal mocking - shared validation logic, real FormData/Request objects, and TypeScript contracts
  • Lots, and I mean lots of testing scenarios
  • Battle-tested patterns from production environments using bleeding-edge Svelte 5 and vitest-browser-svelte

Impact:

The project has influenced testing methodologies across the Svelte ecosystem, with patterns now being adopted by teams working on large-scale production applications. The comprehensive AI assistant rules help entire teams adopt consistent testing patterns, whether using Cursor, Windsurf, or other AI-powered editors.

Tech Stack: SvelteKit, TypeScript, Vitest, vitest-browser-svelte, Playwright, TailwindCSS, daisyUI

Visit Sveltest | View Source


SkyKit.blue

SkyKit.blue screenshot

A weekend project that gained significant traction - SkyKit provides free analytics and statistics for Bluesky users. The application offers post analytics and an inactive account finder with no authentication required, making it super low friction for users.

Key Features:

  • Post analytics and engagement metrics
  • Following account activity tracking
  • Inactive account detection

Tech Stack: SvelteKit, TypeScript, daisyUI

Visit SkyKit | View Source


AudioMind

AudioMind

An MP3 to AI Chat Assistant that transforms audio content into interactive, searchable conversations. This project allows users to upload audio files (like podcasts or lectures) and then have natural conversations with the AI about the content.

Key Features:

  • Audio file processing and transcription
  • Vector-based semantic search
  • Multiple AI response styles
  • Interactive chat interface
  • Real-time progress updates

Tech Stack: SvelteKit 2.x with Svelte 5, TailwindCSS, daisyUI, Anthropic Claude 3, Deepgram, Voyage AI, Turso

View Source


Model Context Protocol (MCP) Tools Suite

I’ve created many MCP tools to enhance AI capabilities and improve developer workflows:

  • mcp-memory-libsql: A portable database solution using SQLite in libSQL, designed for team collaboration and hosted on Turso
  • mcp-tavily-search: Works alongside Brave Search to provide more comprehensive AI search results
  • mcp-jinaai-reader: Optimized for extracting LLM-friendly web page data and documentation parsing
  • mcp-svelte-docs: Makes Svelte documentation more accessible to AI systems
  • mcp-perplexity-search: Enhanced AI search capabilities
  • mcp-omnisearch: Essentially all the search providers you could want your LLM to access! Perplexity, Tavily, Kagi, Jina AI and Brave search!

Explore MCP Tools


SvelteKit Embed

SvelteKit Embed screenshot

A popular package of SvelteKit embed components that makes it easy to add third-party embeds like YouTube, Twitter, and more to your SvelteKit projects.

Key Features:

  • Responsive embeds
  • Easy component-based implementation
  • Support for multiple platforms

View on GitHub | NPM Package


Svead

Svead screenshot

Svelte + Head == Svead! A component that allows you to set head meta information, canonical links, title tags, Twitter and Facebook Open Graph tags, and schema.org data for SvelteKit projects.

View on GitHub NPM Package


Community Involvement

  • Svelte Ambassador: Officially recognized by the Svelte team
  • Svelte Society London: Co-founder and organizer
  • Content Creator: Regularly publishing posts here about Svelte, SvelteKit, and web development
  • Speaker: Presenting at conferences and meetups about Svelte

Technical Writing

I regularly share my knowledge through detailed blog posts here. Recent highlights include:


Get in Touch

I’m always open to collaboration opportunities, speaking engagements, and consulting work, reach out via contact form. Socials listed here:


Stay Updated

If you’re interested in knowing when I publish new projects or blog posts, you can sign up for my newsletter below.

Sign up for the newsletter

Want to keep up to date with what I'm working on?

Join 555 other developers and sign up for the newsletter.

I care about the protection of your data. Read the Privacy Policy for more info.

Copyright © 2017 - 2025 - All rights reserved Scott Spence