This project is a Wails 3 desktop app with a Svelte 5 + Tailwind 4 frontend, TypeScript, and shadcn-svelte components. It’s configured for cross-platform development (macOS/Windows) and hot reload via wails3 dev
.
Navigate to your project directory in the terminal.
To run your application in development mode, use the following command:
wails3 dev
This will start your application and enable hot-reloading for both frontend and backend changes.
To build your application for production, use:
wails3 build
This will create a production-ready executable in the build
directory.
tsconfig.json
(svelte-check for typechecking)@tailwindcss/vite
and CSS-based config (@theme inline
)Key files:
frontend/src/main.ts
→ Vite entryfrontend/src/app.css
→ Tailwind v4 config, tokens, dark modefrontend/components.json
→ shadcn-svelte configfrontend/vite.config.js
→ $lib alias for components and utilsTo add a component using the CLI:
cd frontend
npx shadcn-svelte@latest add button
Import example:
<script lang="ts">
import { Button } from "$lib/components/ui/button";
</script>
<Button>Click me</Button>
Notes:
$lib/utils.js
→ src/lib/utils/index.ts
(TS + Vite alias) for CLI-generated imports..dark
class and @custom-variant dark (&:is(.dark *))
.`cd frontend
npm run typecheck
Ambient types for Wails bindings live in frontend/src/global.d.ts
.
tailwind.config.*
): see frontend/src/app.css
.tw-animate-css
.:root
and .dark
with @theme inline
mapping to Tailwind tokens.Happy coding! If you encounter any issues, consult the docs above or open an issue.