Everything you need to build a Svelte project, powered by sv.
If you're seeing this, you've probably already done this step. Congrats!
# create a new project
npx sv create my-appTo recreate this project with the same configuration:
# recreate this project
npx [email protected] create --template minimal --types ts --add prettier eslint storybook --install npm tootcastOnce you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --openTootCast is configured for static hosting using Docker and Traefik. It uses the SvelteKit static adapter in SPA mode.
npm run dev
Ensure you have Docker and Docker Compose installed.
docker compose up --build -dThe application is configured to run at tootcast.kyd.au with Traefik handling TLS via Let's Encrypt.
To create a production version of your app:
npm run buildYou can preview the production build with npm run preview.
To deploy your app, you may need to install an adapter for your target environment.
A bespoke glassmorphism recording button.
- Variants: default.
- States:
recording,hover,active. - Function: Handles "Hold to Record" interaction with tactile visual feedback and pulsing animations. Remains custom to preserve its unique high-end aesthetic.
A full-screen symmetric waveform visualization.
- Function: Renders frequency data from an
AnalyserNodeonto a full-screen canvas during recording. Provides high-performance, fluid visual feedback.
A semi-transparent, blurring backdrop.
- Function: Focuses user attention by dimming and blurring the background UI when recording starts.
The Mastodon instance entry screen, built with svelte-akui.
- Components:
Field,TextInput,Button,InputGroup. - Function: Allows users to enter their instance URL and initiates the OAuth flow. Now uses the shared design system for a more integrated feel.