Settings
Comprehensive settings panel for theme switching and accessibility options
Same BEM classes and behavior as Astro, Svelte, and React.
Add this component
The command below includes <strong>Settings</strong>—run it in your project directory to install this component (and the CSS if needed). No prompts.
Choose your package manager — click a tab to select, then copy the command.
npx rizzo-css add Settings
pnpm dlx rizzo-css add Settings
npx rizzo-css add Settings
bunx rizzo-css add Settings
Live examples
Usage
Usage
Full example for each framework (Astro, Vanilla, Svelte, Vue, React). Switch framework via View as or by clicking a Usage tab—both stay in sync.
Astro Vanilla Svelte Vue React ---
import Settings from '../components/astro/Settings.astro';
---
<Settings triggerLabel="Settings" client:load />
<!-- Rizzo CSS + js/main.js. Full panel: scaffold/vanilla or /docs/vanilla/components/settings -->
<div class="settings" data-settings>...</div>
<script>
import { Settings } from '$lib/rizzo';
</script>
<Settings triggerLabel="Settings" />
<script setup>
import { ref } from 'vue';
import Settings from '@/components/rizzo/Settings.vue';
import Button from '@/components/rizzo/Button.vue';
</script>
<template>
<Button @click="open = true">Settings</Button>
<Settings v-model:open="open" title="Settings">
<p>Theme, font, options.</p>
</Settings>
</template>
import { useState } from 'react';
import { Settings, Button } from './components/react';
const [open, setOpen] = useState(false);
<Button onClick={() => setOpen(true)}>Settings</Button>
<Settings open={open} onOpenChange={setOpen} title="Settings">
<p>Theme, font, options.</p>
</Settings>
Other frameworks: Astro · Vanilla · Svelte · React