From 2a415185884958b5dbd8b26dd82fa078af818943 Mon Sep 17 00:00:00 2001 From: Lachlan Collins <1667261+lachlancollins@users.noreply.github.com> Date: Sat, 30 Dec 2023 18:33:28 +1100 Subject: [PATCH] Remove duplicated tags --- src/lib/schemas.js | 6 - src/routes/packages/packages.json | 357 +++++++++++++----------------- 2 files changed, 154 insertions(+), 209 deletions(-) diff --git a/src/lib/schemas.js b/src/lib/schemas.js index a965b64c3..55d645b8e 100644 --- a/src/lib/schemas.js +++ b/src/lib/schemas.js @@ -20,18 +20,15 @@ export const PACKAGES_TAGS = /** @type {const} */ ([ 'development-and-documentation', 'display-components', 'fonts-and-icons', - 'forms-and-user-input', 'forms-and-validation', 'graphql', 'icons', 'images', 'in-page-navigation', 'inputs-and-widgets', - 'integration', 'integrations', 'interactions', 'internationalization', - 'internationalization', 'intersection-observer', 'jsx', 'layout-and-structure', @@ -46,13 +43,10 @@ export const PACKAGES_TAGS = /** @type {const} */ ([ 'offline-and-online-detection', 'preprocessors', 'routers', - 'routers', 'ssr', - 'stores', 'stores-and-state', 'sveltekit-adapters', 'testing', - 'testing', 'third-party-services', 'time-and-date', 'typescript', diff --git a/src/routes/packages/packages.json b/src/routes/packages/packages.json index 7ecb1ff38..f5c7f18f3 100644 --- a/src/routes/packages/packages.json +++ b/src/routes/packages/packages.json @@ -18,7 +18,7 @@ "repository": "https://github.com/SBHattarj/svelte-zod-form", "description": "A dummy text generator that does not exist", "npm": "svelte-zod-form", - "tags": ["forms-and-validation", "forms-and-user-input"] + "tags": ["forms-and-validation"] }, { "title": "svelte-selecto", @@ -33,7 +33,7 @@ "repository": "https://github.com/svelte-pilot/svelte-pilot", "description": "A config-based Svelte router with support for Server-Side Rendering (SSR).", "npm": "svelte-pilot", - "tags": ["routers", "ssr", "routers"] + "tags": ["routers", "ssr"] }, { "title": "super-sitemap", @@ -68,20 +68,14 @@ "repository": "https://github.com/gyurielf/svelte-tel-input", "description": "Lightweight phone input standardizer.", "npm": "svelte-tel-input", - "tags": [ - "inputs-and-widgets", - "forms-and-validation", - "typescript", - "components-and-libraries", - "forms-and-user-input" - ] + "tags": ["inputs-and-widgets", "forms-and-validation", "typescript", "components-and-libraries"] }, { "title": "Svault", "repository": "https://github.com/oslabs-beta/Svault", "description": "Svault is an authentication, authorization, and user management library for Svelte/SvelteKit applications.", "npm": "svault", - "tags": ["auth", "integration"] + "tags": ["auth", "integrations"] }, { "title": "svelte-datatables-net", @@ -102,14 +96,7 @@ "repository": "https://github.com/sveltejs/kit/tree/main/packages/kit", "description": "The fastest way to build Svelte apps", "npm": "@sveltejs/kit", - "tags": [ - "routers", - "ssr", - "layout-and-structure", - "forms-and-validation", - "typescript", - "routers" - ] + "tags": ["routers", "ssr", "layout-and-structure", "forms-and-validation", "typescript"] }, { "title": "@sveltejs/package", @@ -186,7 +173,7 @@ "repository": "https://github.com/DhyeyMoliya/svelte-form-validation", "npm": "svelte-form-validation", "description": "Svelte Form Validation Library", - "tags": ["forms-and-validation", "components-and-libraries", "forms-and-user-input"] + "tags": ["forms-and-validation", "components-and-libraries"] }, { "title": "Date Picker Svelte", @@ -196,9 +183,8 @@ "tags": [ "time-and-date", "components-and-libraries", - "forms-and-validation", "inputs-and-widgets", - "forms-and-user-input" + "forms-and-validation" ] }, { @@ -210,7 +196,7 @@ "forms-and-validation", "components-and-libraries", "inputs-and-widgets", - "forms-and-user-input" + "forms-and-validation" ] }, { @@ -225,7 +211,7 @@ "description": "A number input field that can be controlled by mouse/touch drag, arrow keys or usual editing.", "repository": "https://github.com/bohnacker/svelte-number-spinner", "npm": "svelte-number-spinner", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"] + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"] }, { "title": "svelte-remixicon", @@ -275,14 +261,14 @@ "repository": "https://github.com/arthurgermano/svelte-client-router", "npm": "svelte-client-router", "description": "Svelte Client Router is everything you need and think when routing SPA's. This is The Svelte Router for SPA!", - "tags": ["routers", "routers"] + "tags": ["routers"] }, { "title": "felte", "url": "https://felte.dev", "npm": "felte", "description": "An extensible form library for Svelte", - "tags": ["forms-and-validation", "components-and-libraries", "forms-and-user-input"], + "tags": ["forms-and-validation", "components-and-libraries", "forms-and-validation"], "repository": "https://github.com/pablo-abc/felte" }, { @@ -290,33 +276,33 @@ "repository": "https://github.com/codediodeio/sveltefire", "npm": "sveltefire", "description": "Cybernetically enhanced Firebase apps 💪🔥", - "tags": ["components-and-libraries", "integration"] + "tags": ["components-and-libraries", "integrations"] }, { "title": "svelte-time-picker", "repository": "https://gitlab.com/public-e-soa-com/svelte-time-picker", "npm": "svelte-time-picker", "description": "Time Picker UI for Svelte, inspired by the MaterialUI React Time Picker", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"] + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"] }, { "title": "svelte-formula", "repository": "https://github.com/tanepiper/svelte-formula", "npm": "svelte-formula", "description": "Zero Configuration Reactive Forms for Svelte", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"] + "tags": ["components-and-libraries", "forms-and-validation", "forms-and-validation"] }, { "description": "A lightweight datepicker with neat animations and a unique UX", "npm": "svelte-calendar", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"], + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"], "title": "svelte-calendar", "repository": "https://github.com/6eDesign/svelte-calendar" }, { "description": "Svelte tags input is a component to use with Svelte and easily enter tags and customize some functions", "npm": "svelte-tags-input", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-tags-input", "repository": "https://github.com/agustinl/svelte-tags-input" }, @@ -330,7 +316,7 @@ { "description": "Easy use Aovi to validate forms or values in your components", "npm": "aovi-svelte", - "tags": ["forms-and-validation", "components-and-libraries", "forms-and-user-input"], + "tags": ["forms-and-validation", "components-and-libraries", "forms-and-validation"], "title": "aovi-svelte", "repository": "https://github.com/AlexxNB/aovi-svelte" }, @@ -351,7 +337,7 @@ { "description": "Highly declarative, very tiny (~3.8 Kb), dependency free router", "npm": "tinro", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "tinro", "repository": "https://github.com/AlexxNB/tinro" }, @@ -386,14 +372,14 @@ { "description": "Generate dynamic forms for Svelte JS", "npm": "svelte-formly", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation", "forms-and-validation"], "title": "svelte-formly", "repository": "https://github.com/dyaliCode/svelte-formly" }, { "description": "Svelte store with a websocket backend", "npm": "svelte-websocket-store", - "tags": ["components-and-libraries", "stores-and-state", "stores"], + "tags": ["components-and-libraries", "stores-and-state"], "title": "svelte-websocket-store", "repository": "https://github.com/arlac77/svelte-websocket-store" }, @@ -422,28 +408,28 @@ { "description": "A Facebook pixel module for Svelte / Sapper", "npm": "@beyonk/svelte-facebook-pixel", - "tags": ["components-and-libraries", "third-party-services", "integration"], + "tags": ["components-and-libraries", "third-party-services", "integrations"], "title": "@beyonk/svelte-facebook-pixel", "repository": "https://github.com/beyonk-group/svelte-facebook-pixel" }, { "description": "Google Analytics tracking module for Svelte / Sapper", "npm": "@beyonk/svelte-google-analytics", - "tags": ["components-and-libraries", "third-party-services", "integration"], + "tags": ["components-and-libraries", "third-party-services", "integrations"], "title": "@beyonk/svelte-google-analytics", "repository": "https://github.com/beyonk-group/svelte-google-analytics" }, { "description": "Google Maps integration for Svelte", "npm": "@beyonk/svelte-googlemaps", - "tags": ["components-and-libraries", "maps", "integration"], + "tags": ["components-and-libraries", "maps", "integrations"], "title": "@beyonk/svelte-googlemaps", "repository": "https://github.com/beyonk-group/svelte-googlemaps" }, { "description": "Mapbox integration for Svelte", "npm": "@beyonk/svelte-mapbox", - "tags": ["components-and-libraries", "maps", "integration"], + "tags": ["components-and-libraries", "maps", "integrations"], "title": "@beyonk/svelte-mapbox", "repository": "https://github.com/beyonk-group/svelte-mapbox" }, @@ -471,7 +457,7 @@ { "description": "An easy-to-use SPA router for Svelte", "npm": "@bjornlu/svelte-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "@bjornlu/svelte-router", "repository": "https://github.com/bluwy/svelte-router" }, @@ -492,7 +478,7 @@ { "description": "Writable store that syncs with the browser's search params", "npm": "query-store", - "tags": ["components-and-libraries", "stores-and-state", "stores"], + "tags": ["components-and-libraries", "stores-and-state"], "title": "query-store", "repository": "https://github.com/buhrmi/query-store" }, @@ -506,7 +492,7 @@ { "description": "Svelte forms validation made easy", "npm": "svelte-forms", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation", "forms-and-validation"], "title": "svelte-forms", "repository": "https://github.com/chainlist/svelte-forms" }, @@ -555,7 +541,7 @@ { "description": "Auth0 component library", "npm": "@dopry/svelte-auth0", - "tags": ["components-and-libraries", "integrations", "auth", "integration"], + "tags": ["components-and-libraries", "integrations", "auth"], "title": "@dopry/svelte-auth0", "repository": "https://github.com/dopry/svelte-auth0" }, @@ -569,28 +555,28 @@ { "description": "summernote extension for Svelte, a wysiwyg editor", "npm": "@easylogic/svelte-summernote", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "@easylogic/svelte-summernote", "repository": "https://github.com/easylogic/svelte-summernote" }, { "description": "A declarative Svelte routing library with SSR support", "npm": "svelte-routing", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-routing", "repository": "https://github.com/EmilTholin/svelte-routing" }, { "description": "A rate component for Svelte apps", "npm": "svelte-rate-it", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-rate-it", "repository": "https://github.com/emrekara37/svelte-rate-it" }, { "description": "A user interface for inputting date ranges", "npm": "@equipmentshare/date-range-input", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"], + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"], "title": "@equipmentshare/date-range-input", "repository": "https://github.com/EquipmentShare/date-range-input" }, @@ -632,7 +618,7 @@ { "description": "Svelte controlling native components via Nativescript", "npm": "svelte-native", - "tags": ["native", "integration"], + "tags": ["native", "integrations"], "title": "svelte-native", "repository": "https://github.com/halfnelson/svelte-native" }, @@ -688,42 +674,42 @@ { "description": "Router for SPAs using Svelte 3", "npm": "svelte-spa-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-spa-router", "repository": "https://github.com/ItalyPaleAle/svelte-spa-router" }, { "description": "Flatpickr component for Svelte", "npm": "svelte-flatpickr", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"], + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"], "title": "svelte-flatpickr", "repository": "https://github.com/jacobmischka/svelte-flatpickr" }, { "description": "A Svelte router powered by lukeed/navaid", "npm": "svelte-navaid", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-navaid", "repository": "https://github.com/jacwright/svelte-navaid" }, { "description": "Svelte router using a store and components", "npm": "@jamen/svelte-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "@jamen/svelte-router", "repository": "https://github.com/jamen/svelte-router" }, { "description": "Router component for Svelte", "npm": "svelte-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-router", "repository": "https://github.com/jikkai/svelte-router" }, { "description": "Svelte component for position and area selection with Leaflet", "npm": "svelte-pick-a-place", - "tags": ["components-and-libraries", "maps", "forms-and-user-input"], + "tags": ["components-and-libraries", "maps", "forms-and-validation"], "title": "svelte-pick-a-place", "repository": "https://github.com/jimutt/svelte-pick-a-place" }, @@ -737,7 +723,7 @@ { "description": "Simple package that makes ML more accessible", "npm": "svelteml", - "tags": ["components-and-libraries", "integration"], + "tags": ["components-and-libraries", "integrations"], "title": "svelteml", "repository": "https://github.com/john--kane/svelteml" }, @@ -751,7 +737,7 @@ { "description": "Svelte router specially designed for Single Page Applications (SPA)", "npm": "svelte-router-spa", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-router-spa", "repository": "https://github.com/jorgegorka/svelte-router" }, @@ -765,14 +751,14 @@ { "description": "Internationalization library for Svelte", "npm": "svelte-i18n", - "tags": ["components-and-libraries", "internationalization", "internationalization"], + "tags": ["components-and-libraries", "internationalization"], "title": "svelte-i18n", "repository": "https://github.com/kaisermann/svelte-i18n" }, { "description": "Integration of Fluent localization system for Svelte", "npm": "@nubolab-ffwd/svelte-fluent", - "tags": ["components-and-libraries", "internationalization", "internationalization"], + "tags": ["components-and-libraries", "internationalization"], "title": "svelte-fluent", "repository": "https://github.com/nubolab-ffwd/svelte-fluent" }, @@ -786,7 +772,7 @@ { "description": "A simple router for Svelte 3", "npm": "svero", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svero", "repository": "https://github.com/kazzkiq/svero" }, @@ -800,21 +786,21 @@ { "description": "Component that renders its children with lifecycle hooks to simplify testing", "npm": "svelte-fragment-component", - "tags": ["components-and-libraries", "testing", "jsx", "testing"], + "tags": ["components-and-libraries", "testing", "jsx"], "title": "svelte-fragment-component", "repository": "https://github.com/kenoxa/svelte-fragment-component" }, { "description": "Tagged Template syntax for svelte to simplify testing", "npm": "svelte-htm", - "tags": ["components-and-libraries", "testing", "jsx", "testing"], + "tags": ["components-and-libraries", "testing", "jsx"], "title": "svelte-htm", "repository": "https://github.com/kenoxa/svelte-htm" }, { "description": "JSX for svelte to simplify testing", "npm": "svelte-jsx", - "tags": ["components-and-libraries", "testing", "jsx", "testing"], + "tags": ["components-and-libraries", "testing", "jsx"], "title": "svelte-jsx", "repository": "https://github.com/kenoxa/svelte-jsx" }, @@ -835,14 +821,14 @@ { "description": "A Jest transformer for Svelte - compile your components before importing them into tests.", "npm": "svelte-jester", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "svelte-jester", "repository": "https://github.com/svelteness/svelte-jester" }, { "description": "Jest Svelte component transformer", "npm": "svelte-jest", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "svelte-jest", "repository": "https://github.com/ktsn/svelte-jest" }, @@ -856,7 +842,7 @@ { "description": "Lottie player component for use with Svelte for viewing Lottie animations.", "npm": "@lottiefiles/svelte-lottie-player", - "tags": ["components-and-libraries", "integration"], + "tags": ["components-and-libraries", "integrations"], "title": "@lottiefiles/svelte-lottie-player", "repository": "https://github.com/LottieFiles/svelte-lottie-player" }, @@ -918,14 +904,14 @@ { "description": "Form components using Yup for validation", "npm": "sveltejs-forms", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation", "forms-and-validation"], "title": "sveltejs-forms", "repository": "https://github.com/mdauner/sveltejs-forms" }, { "description": "Simple, declarative routing for single page apps built with Svelte", "npm": "svelte-navigator", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-navigator", "repository": "https://github.com/mefechoel/svelte-navigator" }, @@ -960,7 +946,7 @@ { "description": "Internationalize your Svelte apps using format-message and Intl object", "npm": "svelte-intl", - "tags": ["components-and-libraries", "internationalization", "internationalization"], + "tags": ["components-and-libraries", "internationalization"], "title": "svelte-intl", "repository": "https://github.com/Panya/svelte-intl" }, @@ -974,14 +960,14 @@ { "description": "Basic router with queryParams and hash-based routing support", "npm": "yrv", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "yrv", "repository": "https://github.com/pateketrueke/yrv" }, { "description": "Asyncable store for Svelte 3 which is store a value as promise.", "npm": "svelte-asyncable", - "tags": ["stores-and-state", "async-data", "stores"], + "tags": ["stores-and-state", "async-data"], "title": "svelte-asyncable", "repository": "https://github.com/sveltetools/svelte-asyncable" }, @@ -1002,14 +988,14 @@ { "description": "IMask input component and action for Svelte 3.", "npm": "svelte-imask", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-imask", "repository": "https://github.com/PaulMaly/svelte-imask" }, { "description": "Simple config-based router with DX similar to VueRouter. Works well on the server-side", "npm": "svelte-page-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-page-router", "repository": "https://github.com/PaulMaly/svelte-page-router" }, @@ -1018,7 +1004,7 @@ "repository": "https://github.com/sveltetools/svelte-pathfinder", "description": "Tiny, state-based, advanced router for SvelteJS.", "npm": "svelte-pathfinder", - "tags": ["routers", "stores-and-state", "routers"] + "tags": ["routers", "stores-and-state"] }, { "description": "Simple Svelte component which automatically makes its contents scrollable ticker-style if it's necessary.", @@ -1037,7 +1023,7 @@ { "description": "A replacement for the select menu with searching, multiple selections, async data loading etc.,", "npm": "select-madu", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "select-madu", "repository": "https://github.com/pavish/select-madu" }, @@ -1051,28 +1037,28 @@ { "description": "Writable stores for Firefox/Chrome extensions using `chrome.storage", "npm": "svelte-webext-storage-adapter", - "tags": ["components-and-libraries", "stores-and-state", "integrations", "stores"], + "tags": ["components-and-libraries", "stores-and-state", "integrations"], "title": "svelte-webext-storage-adapter", "repository": "https://github.com/PixievoltNo1/svelte-webext-storage-adapter" }, { "description": "Two-way data-transforming stores", "npm": "svelte-writable-derived", - "tags": ["components-and-libraries", "stores-and-state", "stores"], + "tags": ["components-and-libraries", "stores-and-state"], "title": "svelte-writable-derived", "repository": "https://github.com/PixievoltNo1/svelte-writable-derived" }, { "description": "A writable store with extra features", "npm": "storez", - "tags": ["components-and-libraries", "stores-and-state", "stores"], + "tags": ["components-and-libraries", "stores-and-state"], "title": "storez", "repository": "https://github.com/plrenaudin/svelte-storez" }, { "description": "Use Svelte components with Vue and React", "npm": "svelte-adapter", - "tags": ["components-and-libraries", "integration"], + "tags": ["components-and-libraries", "integrations"], "title": "svelte-adapter", "repository": "https://github.com/pngwn/svelte-adapter" }, @@ -1086,14 +1072,14 @@ { "description": "Simple autocomplete / typeahead component for Svelte", "npm": "simple-svelte-autocomplete", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "Simple Svelte Autocomplete", "repository": "https://github.com/pstanoev/simple-svelte-autocomplete" }, { "description": "A color picker component for Svelte", "npm": "svelte-color-picker", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-color-picker", "repository": "https://github.com/efeskucuk/svelte-color-picker" }, @@ -1107,7 +1093,7 @@ { "description": "Ultimate Svelte router", "npm": "swheel", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "swheel", "repository": "https://github.com/qutran/swheel" }, @@ -1128,7 +1114,7 @@ { "description": "A select component for Svelte apps", "npm": "svelte-select", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-select", "repository": "https://github.com/rob-balfre/svelte-select" }, @@ -1142,7 +1128,7 @@ { "description": "Jest Transformer for Svelte components", "npm": "jest-transform-svelte", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "jest-transform-svelte", "repository": "https://github.com/rspieker/jest-transform-svelte" }, @@ -1163,7 +1149,7 @@ { "description": "Manage your views and routing using class decorators and dependency injection", "npm": "@slick-for/svelte", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "@slick-for/svelte", "repository": "https://github.com/shavyg2/slick-for-svelte" }, @@ -1182,7 +1168,7 @@ "inputs-and-widgets", "forms-and-validation", "interactions", - "forms-and-user-input" + "forms-and-validation" ], "title": "svelte-range-slider-pips", "repository": "https://github.com/simeydotme/svelte-range-slider-pips" @@ -1197,14 +1183,14 @@ { "description": "Simple Svelte form model handler and input validations", "npm": "@spaceavocado/svelte-form", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation", "forms-and-validation"], "title": "@spaceavocado/svelte-form", "repository": "https://github.com/spaceavocado/svelte-form" }, { "description": "Simple Svelte Router for Single Page Applications (SPA)", "npm": "@spaceavocado/svelte-router", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "@spaceavocado/svelte-router", "repository": "https://github.com/spaceavocado/svelte-router" }, @@ -1218,14 +1204,14 @@ { "description": "UI component dev & test", "npm": "@storybook/sveltekit", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "Storybook for SvelteKit", "repository": "https://github.com/storybookjs/storybook" }, { "description": "UI component dev & test", "npm": "@storybook/svelte", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "Storybook for Svelte", "repository": "https://github.com/storybookjs/storybook" }, @@ -1239,7 +1225,7 @@ { "description": "Automated Svelte routes", "npm": "@roxi/routify", - "tags": ["routers", "ssr", "routers"], + "tags": ["routers", "ssr"], "title": "Routify", "repository": "https://github.com/roxiness/routify" }, @@ -1253,7 +1239,7 @@ { "description": "The `` component used on the Svelte website", "npm": "@sveltejs/svelte-repl", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "@sveltejs/svelte-repl", "repository": "https://github.com/sveltejs/svelte-repl" }, @@ -1281,21 +1267,21 @@ { "description": "abstract-state-router renderer for Svelte", "npm": "svelte-state-renderer", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-state-renderer", "repository": "https://github.com/TehShrike/svelte-state-renderer" }, { "description": "Simple and complete DOM testing utilities that encourage good practices", "npm": "@testing-library/svelte", - "tags": ["testing", "testing"], + "tags": ["testing"], "title": "@testing-library/svelte", "repository": "https://github.com/testing-library/svelte-testing-library" }, { "description": "Svelte component for file upload and file dropzone.", "npm": "svelte-file-dropzone", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-file-dropzone", "repository": "https://github.com/thecodejack/svelte-file-dropzone" }, @@ -1316,7 +1302,7 @@ { "description": "A lightweight library for managing forms in Svelte", "npm": "svelte-forms-lib", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation"], "title": "svelte-forms-lib", "repository": "https://github.com/tjinauyeung/svelte-forms-lib" }, @@ -1337,7 +1323,7 @@ { "description": "A Svelte component to crop images with easy interactions", "npm": "svelte-easy-crop", - "tags": ["components-and-libraries", "images", "forms-and-user-input"], + "tags": ["components-and-libraries", "images", "forms-and-validation"], "title": "svelte-easy-crop", "repository": "https://github.com/ValentinH/svelte-easy-crop" }, @@ -1402,21 +1388,21 @@ { "description": "Input masking component for Svelte (credit cards, phones, dates, numbers, etc.)", "npm": "svelte-input-mask", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"], + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"], "title": "svelte-input-mask", "repository": "https://github.com/xnimorz/svelte-input-mask" }, { "description": "Easily customizable library for validation scenarios in svelte components.", "npm": "svelidation", - "tags": ["components-and-libraries", "forms-and-validation", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation"], "title": "svelidation", "repository": "https://github.com/yazonnile/svelidation" }, { "description": "A Svelte component wrapper around FullCalendar.", "npm": "svelte-fullcalendar", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"], + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"], "title": "svelte-fullcalendar", "repository": "https://github.com/YogliB/svelte-fullcalendar" }, @@ -1463,7 +1449,7 @@ "components-and-libraries", "inputs-and-widgets", "typescript", - "forms-and-user-input" + "forms-and-validation" ], "title": "@svelte-parts/drop-file", "url": "https://svelte-parts.surge.sh/drop-file", @@ -1472,12 +1458,7 @@ { "description": "Yet another form component", "npm": "@svelte-parts/form", - "tags": [ - "components-and-libraries", - "forms-and-validation", - "typescript", - "forms-and-user-input" - ], + "tags": ["components-and-libraries", "typescript", "forms-and-validation"], "title": "@svelte-parts/form", "url": "https://svelte-parts.surge.sh/form", "repository": "https://github.com/idris-maps/svelte-parts" @@ -1501,7 +1482,7 @@ { "description": "Use Appwrite in Svelte components", "npm": "svelte-appwrite", - "tags": ["components-and-libraries", "integration"], + "tags": ["components-and-libraries", "integrations"], "title": "svelte-appwrite", "repository": "https://github.com/appwrite/sdk-for-svelte" }, @@ -1515,7 +1496,7 @@ { "description": "Light & reactive client-side router for Svelte", "npm": "svelte-micro", - "tags": ["routers", "routers"], + "tags": ["routers"], "title": "svelte-micro", "repository": "https://github.com/ayndqy/svelte-micro" }, @@ -1529,7 +1510,7 @@ { "description": "Memento design pattern (undo/redo) in Svelte", "npm": "@macfja/svelte-undoable", - "tags": ["stores-and-state", "stores"], + "tags": ["stores-and-state"], "title": "Undoable store", "repository": "https://github.com/macfja/svelte-undoable" }, @@ -1543,7 +1524,7 @@ { "description": "Set of simple state machines for Svelte applications", "npm": "svate", - "tags": ["components-and-libraries", "stores-and-state", "stores"], + "tags": ["components-and-libraries", "stores-and-state"], "title": "svate", "repository": "https://github.com/AlexxNB/svate" }, @@ -1565,14 +1546,14 @@ { "description": "A (high order) store that keep its value through pages and reloads", "npm": "@macfja/svelte-persistent-store", - "tags": ["stores-and-state", "stores"], + "tags": ["stores-and-state"], "title": "Persistent Store", "repository": "https://github.com/MacFJA/svelte-persistent-store" }, { "description": "A (high order) store that can be requested to update itself", "npm": "@macfja/svelte-invalidable", - "tags": ["stores-and-state", "stores"], + "tags": ["stores-and-state"], "title": "Invalidable Store", "repository": "https://github.com/MacFJA/svelte-invalidable" }, @@ -1586,7 +1567,7 @@ { "description": "Immutable store for Svelte with full Typescript support and Redux Devtools integration", "npm": "svelte-restate", - "tags": ["stores-and-state", "stores"], + "tags": ["stores-and-state"], "title": "Svelte Restate", "repository": "https://github.com/endenwer/svelte-restate" }, @@ -1607,7 +1588,7 @@ { "description": "Svelte components for tiptap v2. Open source headless content editor.", "npm": "svelte-tiptap", - "tags": ["components-and-libraries", "forms-and-user-input"], + "tags": ["components-and-libraries", "forms-and-validation"], "title": "svelte-tiptap", "repository": "https://github.com/sibiraj-s/svelte-tiptap" }, @@ -1621,7 +1602,7 @@ { "description": "Full-sized drag & drop event calendar with resource view", "npm": "@event-calendar/core", - "tags": ["components-and-libraries", "time-and-date", "forms-and-user-input"], + "tags": ["components-and-libraries", "time-and-date", "forms-and-validation"], "title": "Event Calendar", "repository": "https://github.com/vkurko/calendar" }, @@ -1647,8 +1628,7 @@ "components-and-libraries", "inputs-and-widgets", "forms-and-validation", - "interactions", - "forms-and-user-input" + "interactions" ], "npm": "svelte-multiselect" }, @@ -1670,7 +1650,7 @@ "title": "Svelte (and SvelteKit) OAuth2", "description": "Add OAuth2 authorization in Svelte (and SvelteKit, works with SSR)", "npm": "@macfja/svelte-oauth2", - "tags": ["auth", "integrations", "ssr", "third-party-services", "integration"], + "tags": ["auth", "integrations", "ssr", "third-party-services"], "repository": "https://github.com/macfja/svelte-oauth2#readme" }, { @@ -1685,21 +1665,21 @@ "repository": "https://github.com/chanced/filedrop-svelte", "description": "file dropzone action & component", "npm": "filedrop-svelte", - "tags": ["interactions", "forms-and-validation", "inputs-and-widgets", "forms-and-user-input"] + "tags": ["interactions", "inputs-and-widgets", "forms-and-validation"] }, { "title": "focus-svelte", "repository": "https://github.com/chanced/focus-svelte", "description": "focus lock for accessibility", "npm": "focus-svelte", - "tags": ["interactions", "forms-and-validation", "forms-and-user-input"] + "tags": ["interactions", "forms-and-validation"] }, { "title": "svelte-translate", "repository": "https://github.com/noelmugnier/svelte-translate", "description": "Use a dynamic translation service (loaded from xx-XX.json files) and fallback to the text in html tags if no translations are provided.", "npm": "svelte-translate", - "tags": ["components-and-libraries", "internationalization", "internationalization"] + "tags": ["components-and-libraries", "internationalization"] }, { "title": "svelecte", @@ -1710,8 +1690,7 @@ "components-and-libraries", "forms-and-validation", "interactions", - "inputs-and-widgets", - "forms-and-user-input" + "inputs-and-widgets" ] }, { @@ -1740,21 +1719,21 @@ "repository": "https://github.com/kenkunz/svelte-fsm", "description": "Tiny, expressive, Svelte-optimized Finite State Machine library", "npm": "svelte-fsm", - "tags": ["in-page-navigation", "stores-and-state", "stores"] + "tags": ["in-page-navigation", "stores-and-state"] }, { "title": "svelte-pin-input", "repository": "https://github.com/Yellowinq/svelte-pin-input", "description": "Pin Input component for Svelte", "npm": "@yellowinq/svelte-pin-input", - "tags": ["inputs-and-widgets", "components-and-libraries", "forms-and-user-input"] + "tags": ["inputs-and-widgets", "components-and-libraries", "forms-and-validation"] }, { "title": "svelte-codesandbox", "repository": "https://github.com/tropix126/svelte-codesandbox", "description": "A powerful Svelte wrapper component around the CodeSandbox editor embed.", "npm": "svelte-codesandbox", - "tags": ["integrations", "inputs-and-widgets", "typescript", "integration"] + "tags": ["integrations", "inputs-and-widgets", "typescript"] }, { "title": "svelte-icons-pack", @@ -1782,7 +1761,7 @@ "url": "https://svelte-intl-precompile.com/", "description": "I18n library for Svelte.js that analyzes your keys at build time for max performance and minimal footprint", "npm": "svelte-intl-precompile", - "tags": ["internationalization", "internationalization"], + "tags": ["internationalization"], "repository": "https://github.com/cibernox/svelte-intl-precompile" }, { @@ -1797,25 +1776,14 @@ "repository": "https://github.com/mskocik/svelty-picker", "description": "Simple date & time picker you will love", "npm": "svelty-picker", - "tags": [ - "forms-and-validation", - "inputs-and-widgets", - "interactions", - "time-and-date", - "forms-and-user-input" - ] + "tags": ["forms-and-validation", "inputs-and-widgets", "interactions", "time-and-date"] }, { "title": "svelte-slider", "repository": "https://github.com/korywka/svelte-slider", "description": "Single and Range sliders", "npm": "svelte-slider", - "tags": [ - "components-and-libraries", - "forms-and-validation", - "inputs-and-widgets", - "forms-and-user-input" - ] + "tags": ["components-and-libraries", "forms-and-validation", "inputs-and-widgets"] }, { "title": "sveltekit-adapter-wordpress-shortcode", @@ -1829,14 +1797,14 @@ "repository": "https://github.com/MacFJA/svelte-expirable", "description": "A Svelte store with items that expire", "npm": "@macfja/svelte-expirable", - "tags": ["interactions", "notifications", "stores-and-state", "stores"] + "tags": ["interactions", "notifications", "stores-and-state"] }, { "title": "Store2", "repository": "https://github.com/vkurko/svelte-store2", "description": "Extended Svelte stores with additional methods", "npm": "svelte-store2", - "tags": ["stores-and-state", "stores"] + "tags": ["stores-and-state"] }, { "title": "Svelte(kit) adapter for Neutralino", @@ -1892,7 +1860,7 @@ "repository": "https://github.com/jycouet/kitql", "description": "A set of tools, helping you building efficient apps in a fast way.", "npm": "@kitql/all-in", - "tags": ["async-data", "async-loading", "graphql", "ssr", "stores-and-state", "stores"] + "tags": ["async-data", "async-loading", "graphql", "ssr", "stores-and-state"] }, { "title": "svelte-brick-gallery", @@ -1962,13 +1930,7 @@ "repository": "https://github.com/fmaclen/svelte-currency-input", "description": "A form input that converts numbers to localized currency formats as you type", "npm": "@canutin/svelte-currency-input", - "tags": [ - "forms-and-validation", - "inputs-and-widgets", - "internationalization", - "typescript", - "forms-and-user-input" - ] + "tags": ["forms-and-validation", "inputs-and-widgets", "internationalization", "typescript"] }, { "title": "flowbite-svelte", @@ -1982,19 +1944,14 @@ "repository": "https://github.com/ivanhofer/typesafe-i18n", "description": "A fully type-safe and lightweight internationalization library for all your TypeScript and JavaScript projects.", "npm": "typesafe-i18n", - "tags": [ - "components-and-libraries", - "internationalization", - "typescript", - "internationalization" - ] + "tags": ["components-and-libraries", "internationalization", "typescript"] }, { "title": "tolgee/svelte", "repository": "https://github.com/tolgee/tolgee-js/tree/main/packages/svelte", "description": "Web-based localization tool enabling users to translate directly in the Svelte app they develop", "npm": "@tolgee/svelte", - "tags": ["components-and-libraries", "internationalization", "internationalization"] + "tags": ["components-and-libraries", "internationalization"] }, { "title": "sthemer", @@ -2014,7 +1971,7 @@ "repository": "https://github.com/noney1412/svelte-exstore", "description": "Connect your store to Redux Devtools to enhance your work flow.", "npm": "svelte-exstore", - "tags": ["stores-and-state", "stores"] + "tags": ["stores-and-state"] }, { "title": "Svelte Scroll Video", @@ -2049,7 +2006,7 @@ "repository": "https://github.com/halfdanj/svelte-google-auth", "description": "Integration with Google Authenticartion for sveltekit", "npm": "svelte-google-auth", - "tags": ["auth", "integration"] + "tags": ["auth", "integrations"] }, { "title": "sveltekit-adapter-firebase", @@ -2063,7 +2020,7 @@ "repository": "https://github.com/paoloricciuti/sveltekit-search-params", "description": "The best way to read and WRITE from query params in sveltekit.", "npm": "sveltekit-search-params", - "tags": ["stores-and-state", "stores"] + "tags": ["stores-and-state"] }, { "title": "sveltekit-view-transition", @@ -2099,7 +2056,7 @@ "repository": "https://github.com/pragmatic-engineering/svelte-form-builder-community", "description": "A No-Code Form Builder Library", "npm": "@pragmatic-engineering/svelte-form-builder-community", - "tags": ["forms-and-validation", "components-and-libraries", "forms-and-user-input"] + "tags": ["forms-and-validation", "components-and-libraries"] }, { "title": "SvelteKit Cordova/Capacitor Adapter", @@ -2128,7 +2085,7 @@ "description": "Add a blog (or changelog) to any SvelteKit site.", "npm": "leblog", "repository": "https://github.com/nbgoodall/leblog", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "html-svelte-parser", @@ -2148,19 +2105,14 @@ "repository": "https://github.com/probablykasper/svelte-droplet", "description": "File dropzone utility with styling up to you", "npm": "svelte-droplet", - "tags": ["inputs-and-widgets", "forms-and-validation", "interactions", "forms-and-user-input"] + "tags": ["inputs-and-widgets", "forms-and-validation", "interactions"] }, { "title": "chat-embed", "repository": "https://github.com/mawa-ai/chat-embed", "description": "A chat component made with svelte", "npm": "chat-embed", - "tags": [ - "components-and-libraries", - "forms-and-validation", - "inputs-and-widgets", - "forms-and-user-input" - ] + "tags": ["components-and-libraries", "forms-and-validation", "inputs-and-widgets"] }, { "title": "Lucide icons", @@ -2179,8 +2131,7 @@ "forms-and-validation", "inputs-and-widgets", "time-and-date", - "typescript", - "forms-and-user-input" + "typescript" ] }, { @@ -2202,7 +2153,7 @@ "repository": "https://github.com/bonosoft/sveltekit-codeentry", "description": "Allows user to enter pin or numeric codes for example onetime passwords", "npm": "@bonosoft/sveltekit-codeentry", - "tags": ["auth", "forms-and-user-input"] + "tags": ["auth", "forms-and-validation"] }, { "title": "@radar-azdelta/svelte-datatable", @@ -2230,7 +2181,7 @@ "repository": "https://github.com/nerd-coder/svelte-zod-form", "description": "Building forms in Svelte with breeze, using Zod", "npm": "@nerd-coder/svelte-zod-form", - "tags": ["forms-and-validation", "forms-and-user-input"] + "tags": ["forms-and-validation"] }, { "title": "sveltekit-adapter-iis", @@ -2251,14 +2202,14 @@ "repository": "https://github.com/thecodejack/svelte-switch", "description": "SvelteJS component for switch or toggle a boolean. User would be able to drag or click for toggling.", "npm": "svelte-switch", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"] + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"] }, { "title": "svelte-pagination", "repository": "https://github.com/thecodejack/svelte-pagination", "description": "Raw SvelteJS component for dynamic pagination. By applying styles, developer can acheive component in multiple forms.", "npm": "svelte-pagination", - "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-user-input"] + "tags": ["components-and-libraries", "inputs-and-widgets", "forms-and-validation"] }, { "title": "STDF", @@ -2323,14 +2274,14 @@ "repository": "https://github.com/jill64/sentry-sveltekit-cloudflare", "description": "Unofficial Sentry Integration for SvelteKit Cloudflare Adapter", "npm": "@jill64/sentry-sveltekit-cloudflare", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "@jill64/sentry-sveltekit-edge", "repository": "https://github.com/jill64/sentry-sveltekit-edge", "description": "Unofficial Sentry integration for SvelteKit edge runtime", "npm": "@jill64/sentry-sveltekit-edge", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "SvelteKit-Adapter-Versioned-Worker", @@ -2375,14 +2326,14 @@ "repository": "https://github.com/born05/sveltekit-proxy", "description": "A simple way to proxy paths from SvelteKit to a different server.", "npm": "@born05/sveltekit-proxy", - "tags": ["ssr", "integrations", "integration"] + "tags": ["ssr", "integrations", "integrations"] }, { "title": "MisMerge", "repository": "https://github.com/BearToCode/mismerge", "description": "A modern merge editor for the Web", "npm": "@mismerge/core", - "tags": ["components-and-libraries", "typescript", "inputs-and-widgets", "forms-and-user-input"] + "tags": ["components-and-libraries", "typescript", "inputs-and-widgets", "forms-and-validation"] }, { "title": "svelte-ripple-action", @@ -2397,7 +2348,7 @@ "repository": "https://github.com/ciscoheat/sveltekit-superforms", "description": "Making SvelteKit validation and displaying of forms a pleasure!", "npm": "sveltekit-superforms", - "tags": ["forms-and-validation", "typescript", "ssr", "forms-and-user-input"] + "tags": ["forms-and-validation", "typescript", "ssr"] }, { "title": "svelte-reparent", @@ -2440,21 +2391,21 @@ "npm": "@histoire/plugin-svelte", "repository": "https://github.com/histoire-dev/histoire", "description": "Fast and beautiful interactive component playgrounds, powered by Vite", - "tags": ["testing", "testing"] + "tags": ["testing"] }, { "title": "Lucia", "npm": "lucia", "repository": "https://github.com/lucia-auth/lucia", "description": "An auth library that abstracts away the complexity of handling users and sessions", - "tags": ["components-and-libraries", "integrations", "auth", "integration"] + "tags": ["components-and-libraries", "integrations", "auth", "integrations"] }, { "title": "Monaco", "npm": "@monaco-auth/sveltekit", "repository": "https://github.com/pilcrowOnPaper/monaco", "description": "A simple, lightweight alternative to Auth.js", - "tags": ["components-and-libraries", "integrations", "auth", "integration"] + "tags": ["components-and-libraries", "integrations", "auth", "integrations"] }, { "title": "trpc-svelte-query", @@ -2475,7 +2426,7 @@ "npm": "@supabase/auth-helpers-sveltekit", "repository": "https://github.com/supabase/auth-helpers/tree/main/packages/sveltekit", "description": "A collection of framework specific Auth utilities for working with Supabase", - "tags": ["components-and-libraries", "integrations", "auth", "integration"] + "tags": ["components-and-libraries", "integrations", "auth", "integrations"] }, { "title": "svelte-markdown", @@ -2496,14 +2447,14 @@ "npm": "@sentry/svelte", "repository": "https://github.com/getsentry/sentry-javascript/tree/develop/packages/svelte", "description": "Official Sentry SDK for Svelte", - "tags": ["integrations", "integration"] + "tags": ["integrations", "integrations"] }, { "title": "Sentry for SvelteKit", "npm": "@sentry/sveltekit", "repository": "https://github.com/getsentry/sentry-javascript/tree/develop/packages/sveltekit", "description": "Official Sentry SDK for SvelteKit", - "tags": ["integrations", "integration"] + "tags": ["integrations", "integrations"] }, { "title": "svelte-french-toast", @@ -2531,14 +2482,14 @@ "repository": "https://github.com/joshnuss/svelte-persisted-store", "description": "A Svelte store that persists to localStorage", "npm": "svelte-persisted-store", - "tags": ["stores-and-state", "stores"] + "tags": ["stores-and-state"] }, { "title": "svelte-stripe", "repository": "https://github.com/joshnuss/svelte-stripe", "description": "Everything you need to add Stripe Elements to your Svelte project.", "npm": "svelte-stripe", - "tags": ["integrations", "integration"] + "tags": ["integrations", "integrations"] }, { "title": "vite-plugin-kit-routes", @@ -2566,7 +2517,7 @@ "repository": "https://github.com/square/svelte-store", "description": "Extension of svelte default stores for dead-simple handling of complex asynchronous behavior.", "npm": "@square/svelte-store", - "tags": ["stores-and-state", "stores"] + "tags": ["stores-and-state"] }, { "title": "@neoconfetti/svelte", @@ -2601,7 +2552,7 @@ "repository": "https://github.com/HoudiniGraphql/houdini", "description": "The disappearing GraphQL client.", "npm": "houdini", - "tags": ["graphql", "integration"] + "tags": ["graphql", "integrations"] }, { "title": "@svelte-put/clickoutside", @@ -2622,14 +2573,14 @@ "repository": "https://github.com/dimfeld/svelte-maplibre", "description": "Svelte wrapper for the maplibre mapping library.", "npm": "svelte-maplibre", - "tags": ["components-and-libraries", "maps", "integration"] + "tags": ["components-and-libraries", "maps", "integrations"] }, { "title": "SvelteKit Open Graph Image Generation", "repository": "https://github.com/etherCorps/sveltekit-og", "description": "Dynamically generate Open Graph images from an HTML+CSS template or Svelte component. Based on Satori.", "npm": "@ethercorps/sveltekit-og", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "rollup-plugin-svelte", @@ -2811,7 +2762,7 @@ "repository": "https://github.com/markjaquith/clerk-sveltekit", "description": "Adapter for using Clerk authentication in SvelteKit.", "npm": "clerk-sveltekit", - "tags": ["auth", "integration"] + "tags": ["auth", "integrations"] }, { "title": "Svelvet", @@ -2825,21 +2776,21 @@ "repository": "https://github.com/BearToCode/carta", "description": "Carta is a lightweight, fast and extensible Svelte Markdown editor and viewer, based on Marked.", "npm": "carta-md", - "tags": ["forms-and-user-input"] + "tags": ["forms-and-validation"] }, { "title": "svelte-broadcastable", "repository": "https://github.com/Hugos68/svelte-broadcastable", "description": "Svelte broadcastable is a store wrapper for the Broadcast Channel API.", "npm": "svelte-broadcastable", - "tags": ["stores"] + "tags": ["stores-and-state"] }, { "title": "svelte-markdown-input", "repository": "https://github.com/CaptainCodeman/svelte-markdown-input", "description": "A simple markdown input action and store for Svelte. Designed for simple inputs of HTML snippets.", "npm": "svelte-markdown-input", - "tags": ["forms-and-user-input"] + "tags": ["forms-and-validation"] }, { "title": "svelte-tweakpane-ui", @@ -2853,7 +2804,7 @@ "repository": "https://github.com/icflorescu/trpc-sveltekit", "description": "End-to-end typesafe APIs with tRPC.io for your SvelteKit applications.", "npm": "trpc-sveltekit", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "Konsta UI", @@ -2867,7 +2818,7 @@ "repository": "https://github.com/prismicio/prismic-svelte", "description": "Svelte components to render content from the Prismic API", "npm": "@prismicio/svelte", - "tags": ["integrations", "images", "layout-and-structure", "integration"] + "tags": ["integrations", "images", "layout-and-structure", "integrations"] }, { "title": "@slicemachine/adapter-sveltekit", @@ -2875,21 +2826,21 @@ "repository": "https://github.com/prismicio/slice-machine/tree/master/packages/adapter-sveltekit", "description": "Turn your SvelteKit project into a website builder with Prismic's Slice Machine", "npm": "@slicemachine/adapter-sveltekit", - "tags": ["integrations", "integration"] + "tags": ["integrations", "integrations"] }, { "title": "svelte-i18next", "repository": "https://github.com/maximux13/svelte-i18next", "description": "Add support to your svelte kit project to use i18next", "npm": "@maximux13/svelte-i18next", - "tags": ["integrations", "internationalization", "ssr", "integration"] + "tags": ["integrations", "internationalization", "ssr", "integrations"] }, { "title": "@vite-pwa/sveltekit", "repository": "https://github.com/vite-pwa/sveltekit", "description": "Zero-config PWA Plugin for SvelteKit", "npm": "@vite-pwa/sveltekit", - "tags": ["integration"] + "tags": ["integrations"] }, { "title": "Bits UI", @@ -2903,7 +2854,7 @@ "repository": "https://github.com/huntabyte/formsnap", "description": "Functional, accessible, and powerful form components for Svelte.", "npm": "formsnap", - "tags": ["forms-and-validation", "integration"] + "tags": ["forms-and-validation", "integrations"] }, { "title": "cmdk-sv", @@ -2924,7 +2875,7 @@ "repository": "https://github.com/LeoDog896/svelte-monaco", "description": "Reactive two-way, full theme support monaco editor for Svelte(&Kit).", "npm": "svelte-monaco", - "tags": ["components-and-libraries", "forms-and-user-input"] + "tags": ["components-and-libraries", "forms-and-validation"] }, { "title": "SuperNavigation", @@ -2938,7 +2889,7 @@ "repository": "https://github.com/elron/svelte-audio-store", "description": "A Svelte store for managing and playing audio", "npm": "@elron/svelte-audio-store", - "tags": ["audio", "stores"] + "tags": ["audio", "stores-and-state"] }, { "title": "Svelte Color Select",