Installation
Install only the packages you need from the @sometic scope.
Core
pnpm add @sometic/corenpm install @sometic/coreyarn add @sometic/corebun add @sometic/coreTypical stacks
React
pnpm add @sometic/react @sometic/core @sometic/themenpm install @sometic/react @sometic/core @sometic/themeyarn add @sometic/react @sometic/core @sometic/themebun add @sometic/react @sometic/core @sometic/themeVue
pnpm add @sometic/vue @sometic/core @sometic/themenpm install @sometic/vue @sometic/core @sometic/themeyarn add @sometic/vue @sometic/core @sometic/themebun add @sometic/vue @sometic/core @sometic/themeVanilla / custom elements
pnpm add @sometic/elements @sometic/themenpm install @sometic/elements @sometic/themeyarn add @sometic/elements @sometic/themebun add @sometic/elements @sometic/themeApp shell
Auth + HTTP + query composition:
pnpm add @sometic/app-shell @sometic/auth @sometic/http @sometic/querynpm install @sometic/app-shell @sometic/auth @sometic/http @sometic/queryyarn add @sometic/app-shell @sometic/auth @sometic/http @sometic/querybun add @sometic/app-shell @sometic/auth @sometic/http @sometic/queryOptional peers: @sometic/head, @sometic/theme, @sometic/store, @sometic/forms.
System packages
Auth
pnpm add @sometic/authnpm install @sometic/authyarn add @sometic/authbun add @sometic/authHTTP
pnpm add @sometic/httpnpm install @sometic/httpyarn add @sometic/httpbun add @sometic/httpQuery
pnpm add @sometic/querynpm install @sometic/queryyarn add @sometic/querybun add @sometic/queryHead
pnpm add @sometic/headnpm install @sometic/headyarn add @sometic/headbun add @sometic/headForms
pnpm add @sometic/formsnpm install @sometic/formsyarn add @sometic/formsbun add @sometic/formsStore
pnpm add @sometic/storenpm install @sometic/storeyarn add @sometic/storebun add @sometic/storeTheme
pnpm add @sometic/themenpm install @sometic/themeyarn add @sometic/themebun add @sometic/themeCDN (browser bundles)
Prefer npm + a bundler for apps. Use CDN for demos, HTML-first pages, and progressive enhancement. jsDelivr mirrors each package after publish. The docs site also mirrors the same files under /cdn/ after build.
Pick one format:
- Simple script: classic
<script src="…iife.js">(no bundler, notype="module") - Module script:
<script type="module">withimportfrom…esm.js
Custom elements (Web Components)
Simple script
<script src="https://cdn.jsdelivr.net/npm/@sometic/elements@1.1.6/dist/cdn/sometic-elements.iife.js"></script>
<sometic-button type="button">Save</sometic-button>Module script
<script
type="module"
src="https://cdn.jsdelivr.net/npm/@sometic/elements@1.1.6/dist/cdn/sometic-elements.esm.js"
></script>
<sometic-button type="button">Save</sometic-button>The elements CDN covers shipped tags only (button/input/form/selection/overlay feedback/structure feedback/auth-status). Surfaces without custom elements still use @sometic/dom or React/Vue. See Vanilla and What’s included.
Browser bundles
| Package | Global | Simple script | Module script |
|---|---|---|---|
@sometic/elements | SometicElements | https://cdn.jsdelivr.net/npm/@sometic/elements@1.1.6/dist/cdn/sometic-elements.iife.js | https://cdn.jsdelivr.net/npm/@sometic/elements@1.1.6/dist/cdn/sometic-elements.esm.js |
@sometic/http | SometicHttp | https://cdn.jsdelivr.net/npm/@sometic/http@3.0.3/dist/cdn/sometic-http.iife.js | https://cdn.jsdelivr.net/npm/@sometic/http@3.0.3/dist/cdn/sometic-http.esm.js |
@sometic/query | SometicQuery | https://cdn.jsdelivr.net/npm/@sometic/query@3.0.3/dist/cdn/sometic-query.iife.js | https://cdn.jsdelivr.net/npm/@sometic/query@3.0.3/dist/cdn/sometic-query.esm.js |
@sometic/auth | SometicAuth | https://cdn.jsdelivr.net/npm/@sometic/auth@1.2.3/dist/cdn/sometic-auth.iife.js | https://cdn.jsdelivr.net/npm/@sometic/auth@1.2.3/dist/cdn/sometic-auth.esm.js |
@sometic/store | SometicStore | https://cdn.jsdelivr.net/npm/@sometic/store@1.1.3/dist/cdn/sometic-store.iife.js | https://cdn.jsdelivr.net/npm/@sometic/store@1.1.3/dist/cdn/sometic-store.esm.js |
@sometic/theme | SometicTheme | https://cdn.jsdelivr.net/npm/@sometic/theme@1.1.3/dist/cdn/sometic-theme.iife.js | https://cdn.jsdelivr.net/npm/@sometic/theme@1.1.3/dist/cdn/sometic-theme.esm.js |
@sometic/head | SometicHead | https://cdn.jsdelivr.net/npm/@sometic/head@0.1.3/dist/cdn/sometic-head.iife.js | https://cdn.jsdelivr.net/npm/@sometic/head@0.1.3/dist/cdn/sometic-head.esm.js |
@sometic/app-shell | SometicAppShell | https://cdn.jsdelivr.net/npm/@sometic/app-shell@4.0.3/dist/cdn/sometic-app-shell.iife.js | https://cdn.jsdelivr.net/npm/@sometic/app-shell@4.0.3/dist/cdn/sometic-app-shell.esm.js |
@sometic/core | SometicCore | https://cdn.jsdelivr.net/npm/@sometic/core@1.0.7/dist/cdn/sometic-core.iife.js | https://cdn.jsdelivr.net/npm/@sometic/core@1.0.7/dist/cdn/sometic-core.esm.js |
@sometic/events | SometicEvents | https://cdn.jsdelivr.net/npm/@sometic/events@1.0.7/dist/cdn/sometic-events.iife.js | https://cdn.jsdelivr.net/npm/@sometic/events@1.0.7/dist/cdn/sometic-events.esm.js |
@sometic/forms | SometicForms | https://cdn.jsdelivr.net/npm/@sometic/forms@1.1.3/dist/cdn/sometic-forms.iife.js | https://cdn.jsdelivr.net/npm/@sometic/forms@1.1.3/dist/cdn/sometic-forms.esm.js |
@sometic/styling | SometicStyling | https://cdn.jsdelivr.net/npm/@sometic/styling@1.0.7/dist/cdn/sometic-styling.iife.js | https://cdn.jsdelivr.net/npm/@sometic/styling@1.0.7/dist/cdn/sometic-styling.esm.js |
@sometic/accessibility | SometicAccessibility | https://cdn.jsdelivr.net/npm/@sometic/accessibility@1.0.7/dist/cdn/sometic-accessibility.iife.js | https://cdn.jsdelivr.net/npm/@sometic/accessibility@1.0.7/dist/cdn/sometic-accessibility.esm.js |
@sometic/positioning | SometicPositioning | https://cdn.jsdelivr.net/npm/@sometic/positioning@0.1.7/dist/cdn/sometic-positioning.iife.js | https://cdn.jsdelivr.net/npm/@sometic/positioning@0.1.7/dist/cdn/sometic-positioning.esm.js |
@sometic/dom | SometicDom | https://cdn.jsdelivr.net/npm/@sometic/dom@3.0.3/dist/cdn/sometic-dom.iife.js | https://cdn.jsdelivr.net/npm/@sometic/dom@3.0.3/dist/cdn/sometic-dom.esm.js |
Simple script (HTTP)
<script src="https://cdn.jsdelivr.net/npm/@sometic/http@3.0.3/dist/cdn/sometic-http.iife.js"></script>
<script>
const http = SometicHttp.createHttp({ baseUrl: "/api" });
http.get("/me").then((me) => {
console.log(me);
});
</script>Module script (HTTP)
<script type="module">
import { createHttp } from "https://cdn.jsdelivr.net/npm/@sometic/http@3.0.3/dist/cdn/sometic-http.esm.js";
const http = createHttp({ baseUrl: "/api" });
const me = await http.get("/me");
</script>Simple script (app shell)
<script src="https://cdn.jsdelivr.net/npm/@sometic/app-shell@4.0.3/dist/cdn/sometic-app-shell.iife.js"></script>
<script>
const app = SometicAppShell.createSometicApp({
auth,
baseUrl: "/api",
query: true,
});
</script>Module script (app shell)
<script type="module">
import { createSometicApp } from "https://cdn.jsdelivr.net/npm/@sometic/app-shell@4.0.3/dist/cdn/sometic-app-shell.esm.js";
const app = createSometicApp({
auth,
baseUrl: "/api",
query: true,
});
</script>Simple script (Vanilla bind* via @sometic/dom)
<script src="https://cdn.jsdelivr.net/npm/@sometic/dom@3.0.3/dist/cdn/sometic-dom.iife.js"></script>
<script>
const button = document.querySelector("button");
if (button) {
SometicDom.bindButton(button, () => ({ type: "button" }));
}
</script>Experimental Wave B (store bind)
These packages do not ship component kits. There is no @sometic/preact/button, @sometic/preact/structure, or equivalent for Angular / Svelte / Solid. They bind @sometic/store into the host subscription model. For UI, use Elements or a Wave A adapter (React, Vue).
Preact
Peer: preact ^10 (optional). Capabilities: storeBind only.
pnpm add @sometic/preact @sometic/storenpm install @sometic/preact @sometic/storeyarn add @sometic/preact @sometic/storebun add @sometic/preact @sometic/storeSee Preact for createPreactStoreBind. Structure components (Tabs, Accordion, Breadcrumb, Command palette, Tree) ship on @sometic/react/structure and @sometic/vue/structure, not Preact.
Angular, Svelte, Solid
Same Wave B contract: store bind, no component subpaths. Guides: Angular, Svelte, Solid.