r/sveltejs

SvelteESP32 v3.0 released

SvelteESP32 v3.0 released

  • Vite plugin: New svelteESP32(options) plugin imported from svelteesp32/vite. Hook it into vite.config.ts and the C++ header is regenerated automatically after every vite build — no manual CLI step needed. sourcepath defaults to Vite's build.outDir; all other options mirror the CLI flags. Vite is an optional peer dependency.
  • init commandnpx svelteesp32 init launches an interactive wizard that creates .svelteesp32rc.json. Asks for engine, source path, output path, and ETag preference, then offers to run the tool immediately.
  • Enhanced summary when --manifest is used: The final console summary line now also reports the manifest file path when --manifest is active.
github.com
u/BCsabaDiy — 7 hours ago
🔥 Hot ▲ 70 r/sveltejs+1 crossposts

Huey - A composable color picker for Vue 3

Hey folks, just released Huey, A composable color picker for Vue 3.

The backstory:

Last year, I was working on a new design system at work and needed a composable color picker. I expected to find a Radix / Base UI style option out there and was surprised that nothing fit. Huey is the library I wished I could have grabbed off the shelf.

Docs and playground: https://hueycolor.pages.dev

hueycolor.pages.dev
u/mastereihab — 1 day ago
▲ 48 r/sveltejs+1 crossposts

Built my Electron app UI with Svelte and it’s been a really good fit

In my recent open source electron app, which is a coding agent for embedded devices powered by OpenCode, I’m using Svelte for the UI and honestly it has been a really good experience.

The app is desktop-focused and includes things like a code editor, chat interface, serial monitor/plotter, board management, and workspace/project handling. There are a lot of moving parts in the UI, and Svelte has made it much easier to keep things manageable without the code feeling overly heavy.

What I like most is how direct everything feels. State updates, component structure, and UI reactivity are just easier to reason about. For an app like this, where I’m constantly wiring together interactive desktop features, that simplicity matters a lot.

I’m also using Tailwind alongside Svelte, and the combination has been very productive for building the interface quickly while still keeping it maintainable.

Repo: https://github.com/Razz19/Exort

u/Sad-Pay9082 — 2 days ago

Migrating a site with 98k monthly visitors to svelte from Wordpress? Photography gallery (worried about seo)

I have a client with a photography gallery website, it has e-commerce now with woo, but the seo of the site isn’t really great at all, the previous team hasn’t really done anything to optimize it. No alt tags, images are large and not hosted in an optimized manner. The pages that fetch images have 4 redundant queries, etc.

I’m pretty sure the reason the site gets traffic is because of their location and brand success.

Whether it’s the right choice to migrate from a business standpoint is NOT my question.

I’m curious from a technical standpoint. Has anyone done a migration from a WP site to svelte that had notable traffic? How hard was it? Did you lose traffic and did it come back?

Based on the research I’ve done it seems like the major task is making sure all the URLs stay exactly the same, like having / at the end if the current site does, making sure the site map and all that is exactly the same, etc.

Because the site is simple, and the seo is not great, and performance ‘was’ terrible, I’m thinking this might be a good project for a first attempt at a migration.

Complexity wise, it’s a simple homepage, has ecom with prices based on photo dimensions/size. A single item view page, and a search page, and a contact page. That’s about it. But I haven’t looked in ahrefs to see what other stuff is hidden throughout the site.

Thoughts on how hard something like this might be?

reddit.com
u/inquisitive_melon — 3 days ago
🔥 Hot ▲ 112 r/sveltejs

Paper Shaders for Svelte (open source, interactive demos)

Hey folks, I built a Svelte version of Paper-style shaders and just released it as OSS.

It’s called `@devmischief/shaders-svelte`.

- All Paper shader effects (gradients, noise, dithering, glass/liquid styles, etc.)

- interactive demos for each shader

- copy-paste usage snippets

- built for Svelte + SvelteKit

I made this because I wanted the Paper shader look/feel in Svelte without extra setup complexity.

Would love feedback on:

  1. API naming

  2. performance on lower-end devices

  3. which shaders/features I should add next

Demo: https://shaders.devmischief.com

npm: https://www.npmjs.com/package/@devmischief/shaders-svelte

Repo: https://github.com/manuelogomigo/paper-shaders-svelte

u/manuelogomigo — 4 days ago

Need help converting 4K shadcn-nextjs components to Svelte - what should I watch out for?

I have a dataset of 4K shadcn-nextjs components (website sections, UI components, etc.) and I'm working on converting them all to Svelte for a fine-tuned local code generation model.

Background:

  • Already fine-tuned a Qwen model for Next.js components (iamdyeus/qwendean-4b-GGUF)
  • Runs locally with <8GB VRAM
  • Building an Electron app for local v0.dev-style code generation
  • Will open-source the app + training data once my papers are published

Someone on r/LocalLLaMA suggested making a Svelte version, so here I am!

The Plan: I'll use GLM 5.1 (Got credits, that's why using it) to synthetically convert the entire dataset from Next.js/shadcn-ui to Svelte/shadcn-svelte. But I want to make sure the conversion handles Svelte-specific patterns correctly.

What I need help with:

  1. What are the critical differences I should ensure the model captures when converting from Next.js → Svelte? (Beyond the obvious like classNameclass, .map(){#each}, etc.)
  2. Svelte-specific gotchas that might not be obvious to someone coming from React?
  3. Best practices for shadcn-svelte components that differ from the React version?

Bonus ask: If you have any Svelte components/sections built with shadcn-svelte that you'd be willing to contribute to the training dataset, please drop a GitHub link below! More diverse real-world examples = better model. 🙏

Really excited to bring local focused code generation to the Svelte community!

Thanks

u/dyeusyt — 3 days ago

Re-enabling SSR for financial dashboards while using chart.js

I've realized that while SvelteKit handles the HTML generation, HTMLCanvasElement and LocalStorage are strictly client-side. Currently, I have ssr = false to avoid 'Window is not defined' or 'Canvas is undefined' errors during the build.

If I want to re-enable SSR for the rest of my app, what is the cleanest pattern in Svelte 5 to ensure a component only attempts to initialize Chart.js after the DOM is ready?

reddit.com
u/Interesting_Fold_548 — 4 days ago

SvelteKit with FastAPI

Hello, I am building an inventory system. I build with Django for my other stuff but I decided to learn FastAPI and JS Frontend. I've learned DRF but never really go full on implementation of it, specially dealing with authentication. So any help would be much appreciated.

Here is the stack that I'm going for:
- SvelteKit (because of remote function?, or its better if should I go with just svelte?)
- FastAPI
- Postgresql, SQLAlchemy, Alembic
- pyjwt (for authentication? or there's more better library?)
- S3 for file storage

Maybe Zod for data validation in client? Do I need axios? Am I missing something? Is there a something that I'm missing? Like don't forget to setup CORSMiddleware in FastAPI.

Also, is there any github repo that with similar setup with this one that I could take a look?

reddit.com
u/beast_b0iii — 5 days ago

A simple Sveltekit-based web dashboard to monitor Hetzner server health

Hi everyone ...

I wanted to share a small tool I've built to help me monitor my various personal projects on the Hetzner cloud. I've called it Serverwat.ch. I've built it on top of Sveltkit so thought this community might interested.

The problem statement: I have a bunch of servers on Hetzner and they are organised across multiple projects. If I need to routinely look at their health and check their CPU/network/disk utilisation levels over time I need to individually choose a project, then choose a server and look at the graphs and repeat. With multiple projects with multiple servers in each, this is far from convenient.

To simplify it I built a simple dashboard for myself where I can see graphs for all my servers from all my projects on one screen.

I have decided to publish it online for others to use.

This is a simple Web app hand-coded with Sveltekit, Tailwind CSS and Shadcn which runs entirely client-side in the browser. Nothing is sent to the Serverwat.ch server and the app in the browser directly accesses the Hetzner API. Users simply provide read-ony Hetzner API keys for each of their projects which remain in the browser.

With the app users can:

  • Monitor CPU, network (packets/s or bytes/s) and disk (iop/s or bytes/s) utilisation
  • Set refresh frequency from one minute up to 15 minutes
  • See data from the last 15 minutes up to the past week
  • Filter the servers by Hetzner data centre location, tags applied to servers in the Hetzner console, and Hetzner project

When users add the read-only keys for their projects they are stored locally in the browser's local storage so they are available the next time the user uses the app. The keys are never sent to the Serverwat.ch server.

Feel free to check out the tool at:

https://serverwat.ch

It won't set or collect personally-identifiable cookies or collect any user-identifiable information. Your read-only tokens won't be sent to the server and the server won't see any information about your Hetzner servers.

For transparency, I am looking at wrapping this in Capacitor to add notification capabilities and other features in a mobile app and offering that in the Android and iOS app stores. None of that changes the principles outlined for the Web app above.

u/LikeableGeek — 4 days ago

When is it really necessary to start using a queuing system like RabbitMQ?

Adding to the title, today I'm working on a project for the tourism sector where we're creating a management system for agencies, processing sales, coordinating x and y, this part is quite "simple," mostly a CRUD operation, with nothing really to worry about in terms of depth.

However, I am responsible for the integration of external services, hotel search APIs, and other services.

That's the problem. Today I already have 2 APIs integrated out of at least 14 that we plan to implement, each with its own structure. With each call, I have to perform a parsing to standardize everything, and this scales VERY quickly. Each call returns around 80 hotels, all requiring parsing, and at different times, since some send in batches of 25.

Currently, I basically have an Event (SSE) to start, one to finish part of the processing, and another to finish everything that needed processing (3 events in total: start, partial, end).

And that's where my doubt lies. Being the only user (it's still in development), I've already found a very specific issue: if I'm mapping locations/hotels (something I have to do every 2 weeks), it will block a good portion of the I/O of the rest of the service, precisely because of the data processing and insertion issues. In the database, etc.

That's where my thoughts and concerns lie. When the initially projected 50 users (the minimum already registered to use the system) start using the system, and everyone performs a search simultaneously, I'll have usage similar to my current mapping, perhaps even higher. That's why I had the idea of ​​separating this into a separate thread or using a specific service for it. But I don't know how right I am about this, if it's a valid decision, or if it would be over-engineering right at the beginning of the project.

*Extra thoughts: Each call, depending on the location, returns an XML that will be converted into JSON, which will then be consumed and converted to the structure I need. This initial JSON with all the information varies GREATLY in size by location. I've had some with a few kilobytes in size, others exceeding 100MB. Today I'm doing a "good job" managing them to avoid overloading the test server's memory, but I can't say for sure.

It's worth mentioning that I'm the only developer involved in this whole process. External APIs and all that search engine logic, I don't even have anyone else to discuss whether it's valid or not for this part of the project.

I'm a junior developer :), I only have about 2 years of development experience, but I worked with queues during my internship a few years ago. Any ideas on how to handle this would be welcome, since I don't have any other developers here to brainstorm with.

all this is using the SvelteKit!

reddit.com
u/Nervous-Blacksmith-3 — 5 days ago

Migrating from wordpress to a custom CMS, I made an Elementor-like editor for Svelte 5 / Sveltekit projects

I run a digital marketing agency and while we've built our client websites mostly on wordpress, the ecosystem is absolutely driving me crazy with broken updates, conflicts, and vulnerabilities.

I am working towards building a CMS in Svelte that handles the needs of our clients while maintaining a wordpress-like editing experience.

In that, the visual page building experience of Elementor is something our clients love, and we love working in. To make the transition smoother, I've created a drag and drop visual builder that you can integrate into your own Svelte projects. It even supports importing Elementor templates (to make our client transitions easier), but it may be useful for you!

Highlights

  • Visual drag-and-drop editor with canvas selection, action rails, structure navigator, inspector panels, undo/redo, copy/paste, and paste-style support.
  • Svelte runtime renderer for published pages, with editor-only code kept separate from runtime-only routes.
  • Host-first SDK contracts for persistence, media, permissions, dynamic data, AI settings, and lifecycle hooks.
  • Template import for native Builder package JSON and Elementor JSON.
  • HTML/CSS import that converts common markup into editable Builder nodes and preserves complex markup as safe HTML fallback nodes.
  • AI create/edit workflow with OpenAI-compatible provider settings, debug mode, HTML-based creation, and safer semantic editing tools.
  • Dynamic data bindings for text, rich text, URLs, media, colors/styles, numbers, attributes, visibility, and host-provided providers.
  • Media library contracts and reference upload/select flows.
  • Draft, autosave, publish, revision, and restore contracts with reference SvelteKit behavior.
  • Dense document and drag/reorder testing, including 200/500-node fixtures.

If you end up trying it out / liking it, please let me know! Otherwise, I hope it helps with your projects!

EDIT: You can try it yourself at the following URL: https://visualbuilder.org/

github.com
u/BluePointDigital — 5 days ago

A few days ago I posted that I made an Elementor-like editor for Svelte 5 / Sveltekit projects. It's received a lot of updates &amp; I would love your feedback.

As mentioned in my other post, I am moving away from Wordpress and towards a custom CMS for my agency's client base. The visual page building experience of Elementor is something our clients love, and I want to maintain it for our workflow and their use.

Over the past few days I've made quite a few edits and polish that I think brings this builder up to a very usable point and you may want to integrate it into your own CMS projects. (or even contribute / suggest changes to the repo)

The live builder demo is available at https://visualbuilder.org/ where you can try all the features, html import, Elementor template import, AI building and editing, etc.

If you try it out, i would love your feedback!

Highlights

  • Visual drag-and-drop editor with canvas selection, action rails, structure navigator, inspector panels, undo/redo, copy/paste, and paste-style support.
  • Svelte runtime renderer for published pages, with editor-only code kept separate from runtime-only routes.
  • Host-first SDK contracts for persistence, media, permissions, dynamic data, AI settings, and lifecycle hooks.
  • Template import for native Builder package JSON and Elementor JSON.
  • HTML/CSS import that converts common markup into editable Builder nodes and preserves complex markup as safe HTML fallback nodes.
  • AI create/edit workflow with OpenAI-compatible provider settings, debug mode, HTML-based creation, and safer semantic editing tools.
  • Dynamic data bindings for text, rich text, URLs, media, colors/styles, numbers, attributes, visibility, and host-provided providers.
  • Media library contracts and reference upload/select flows.
  • Draft, autosave, publish, revision, and restore contracts with reference SvelteKit behavior.
  • Dense document and drag/reorder testing, including 200/500-node fixtures.

You can find the docs / embedding instructions here:
https://github.com/BluePointDigital/svelte-visual-builder/tree/main/docs

Thank you!

u/BluePointDigital — 1 day ago
▲ 30 r/sveltejs+1 crossposts

I built a local-first desktop project manager (no cloud, no lock-in)

I’ve been working on a project called Worklog, a desktop project manager designed for small dev teams that don’t want to rely on cloud tools.

The idea is simple: fast, keyboard-driven planning with a Kanban workflow, and all data stored locally. No accounts, no sync servers, no hidden state.

Core structure:
Workspace -> Board -> Ticket

What it currently does:

  • Kanban boards (Todo / In Progress / Done)
  • Ticket editing with comments
  • Command palette + keyboard shortcuts for most actions
  • Persistent workspaces that restore on startup
  • Local SQLite storage (your data lives in your workspace folder)

Key decisions:

  • Local-first by default (works fully offline)
  • No forced cloud or SaaS model
  • Data is transparent and portable
  • Git-friendly direction for teams that want versioned project state

Tech stack:

  • Tauri (desktop shell)
  • SvelteKit + TypeScript
  • Bun
  • SQLite

Architecture is straightforward:
UI -> hooks -> repository layer -> SQLite

What I’m trying to avoid:

  • Turning it into another bloated PM suite
  • Locking users into a hosted backend
  • Hiding data behind APIs or proprietary formats

Planned direction:

  • Better filtering and board views
  • Richer ticket metadata
  • Search across workspaces
  • Backup/export workflows
  • Git-native workflows for teams

This is still early, but already usable for small projects.

I’m interested in feedback from people who:

  • Prefer local-first tools
  • Are tired of Jira/Linear-style overhead
  • Care about data ownership

Repo: https://github.com/regisx001/Worklog

Latest Release : https://github.com/regisx001/Worklog/releases/tag/app-v0.3.0

don't forget to give a star in github !!!

u/regisx001 — 5 days ago

Dialyma - an open-source canvas based builder like Framer

Dialyma is an open-source alternative to Framer - built for developers who want the speed of visual design without losing control over their code.

You can design your UI visually and export clean, production-ready HTML & CSS for free. No messy divs, no locked platform, no weird abstractions - just code you can actually use.

Dialyma also supports plugins to export directly to React, Next.js, Vue and Laravel. So you can start simple, and scale into real apps without switching tools.

The goal with Dialyma is simple:

make visual building feel fast like modern tools, but keep the output developer-friendly.

GitHub: https://github.com/dialymaai/dialyma

Any kind of Support, feedback, issues, and contributions are welcome.

u/Background_Cloud_231 — 6 days ago

How Can I Use A Component As A Variable Component?

Okay,

So I like the idea of svelte components. I am using tauri. How can I use a variable component.

For example, my app contains the routes and lib folder. I put the module/component I want replicated into the lib folder then dynamically load it in with each component containing the same format but with different parameters passed to it.

Basically, like a template.

reddit.com
u/silene0259 — 6 days ago