A required component of the form is translate
, which is used in multiple places, including buttons and labels.
Translations are imported from @sjsf/form/translations/{locale}
, currently supported locales:
Text is good, but you can do better by adding icons!
import type { Snippet } from "svelte";
import { fromRecord } from "@sjsf/form/lib/resolver";
import MyForm from "@/components/my-form.svelte";
const { children }: { children: Snippet } = $props();
There are also ready-made sets of icons for the control buttons.
npm i @sjsf/form@next @sjsf/lucide-icons@next
yarn add @sjsf/form@next @sjsf/lucide-icons@next
pnpm add @sjsf/form@next @sjsf/lucide-icons@next
bun add @sjsf/form@next @sjsf/lucide-icons@next
Usage
import { createForm } from '@sjsf/form';
import { icons } from '@sjsf/lucide-icons';
const form = createForm({
npm i @sjsf/form@next @sjsf/moving-icons@next
yarn add @sjsf/form@next @sjsf/moving-icons@next
pnpm add @sjsf/form@next @sjsf/moving-icons@next
bun add @sjsf/form@next @sjsf/moving-icons@next
Usage
import { createForm } from '@sjsf/form';
import { icons } from '@sjsf/moving-icons';
const form = createForm({
npm i @sjsf/form@next @sjsf/flowbite-icons@next
yarn add @sjsf/form@next @sjsf/flowbite-icons@next
pnpm add @sjsf/form@next @sjsf/flowbite-icons@next
bun add @sjsf/form@next @sjsf/flowbite-icons@next
Add icons content to the tailwindcss config:
import { FLOWBITE_ICONS_CONTENT } from '@sjsf/flowbite-icons/preset'
/** @type {import('tailwindcss').Config} */
content: ['./src/**/*.{html,js,svelte,ts}', FLOWBITE_ICONS_CONTENT],
Usage
import { createForm } from '@sjsf/form';
import { icons } from '@sjsf/flowbite-icons';
const form = createForm({
npm i @sjsf/form@next @sjsf/radix-icons@next
yarn add @sjsf/form@next @sjsf/radix-icons@next
pnpm add @sjsf/form@next @sjsf/radix-icons@next
bun add @sjsf/form@next @sjsf/radix-icons@next
Usage
import { createForm } from '@sjsf/form';
import { icons } from '@sjsf/radix-icons';
const form = createForm({