Svelte MVVM Learning Lab

This is a personal learning project focused on Svelte 5 + TypeScript with an MVVM-style architecture. The current sandbox is a finance-tracker prototype used to explore view/view-model separation and component composition. Expect frequent refactors and experiments.

Getting Started

bun install
bun run dev

Scripts

  • bun run dev: start the Vite dev server with HMR.
  • bun run build: create a production build in dist/.
  • bun run preview: serve the production build locally.
  • bun run check: run svelte-check and TypeScript type checks.
  • bun run test: run unit tests once with Vitest.
  • bun run test:unit: run Vitest in watch mode.

Project Structure

  • src/App.svelte: app entry point.
  • src/lib/finance-tracker/: finance tracker feature module (view, view model, and components).
  • src/lib/shared/: shared utilities and helpers.
  • src/assets/: app-owned images and icons.
  • src/app.css: global styles.
  • public/: static files copied as-is.
  • index.html: Vite app entry point.

Top categories

Loading Svelte Themes