From mobiscroll
Mobiscroll theming patterns — setOptions global theme, CSS variables, Sass customization. Invoked by mobiscroll-ui for theming questions. Framework-agnostic. Do not auto-trigger — invoked by mobiscroll-ui only.
How this skill is triggered — by the user, by Claude, or both
Slash command
/mobiscroll:mobiscroll-ui-themingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> This skill is loaded by `mobiscroll-ui`. If you arrived here directly, invoke
This skill is loaded by
mobiscroll-ui. If you arrived here directly, invokemobiscroll-uifirst to run environment detection and the mandatory schema lookup.
The theming system is framework-agnostic — the same themes and CSS variables work everywhere.
Set the theme once at app startup using setOptions(). This applies to all Mobiscroll
components in the app — no per-component prop needed.
// JS / jQuery
import * as mobiscroll from '@mobiscroll/javascript'; // or '@mobiscroll/jquery'
mobiscroll.setOptions({
theme: 'ios', // 'ios' | 'material' | 'windows'
themeVariant: 'auto' // 'light' | 'dark' | 'auto'
});
// React / Angular / Vue — named import
import { setOptions } from '@mobiscroll/react'; // or /angular or /vue
setOptions({
theme: 'material',
themeVariant: 'dark'
});
Call this before any component renders (e.g., in main.ts, App.tsx, or main.js).
A theme prop on an individual component overrides the global setting for that instance.
ios — iOS-style look and feelmaterial — Material Designwindows — Windows/Fluent UI styleEach theme has light and dark variants controlled by themeVariant:
theme: 'ios',
themeVariant: 'dark' // 'light' | 'dark' | 'auto'
'auto' follows the operating system preference.
Mobiscroll exposes CSS variables for customization. Override them in your CSS to change colors, fonts, and spacing without modifying Mobiscroll source files.
For the full list of available CSS variables per theme, consult the online docs:
https://mobiscroll.com/docs/docs/{framework}/theming/sass-themes.md
Replace {framework} with javascript, react, angular, vue, or jquery.
// Override variables before import
$mbsc-ios-accent: #e97d23;
$mbsc-material-accent: #4caf50;
// webpack — use ~ prefix:
@import '~@mobiscroll/{package}/dist/css/mobiscroll.scss';
// Vite / modern bundlers — use direct path (no ~ prefix):
@import '@mobiscroll/{package}/dist/css/mobiscroll.scss';
Replace {package} with the framework package name (react, angular, vue,
javascript, jquery). The ~ prefix is a webpack-specific resolver convention
and is not supported by Vite or other modern bundlers — use the bare package path instead.
Use cssClass (or the equivalent prop) to add custom CSS classes to a component:
cssClass: 'my-custom-calendar'
Then style .my-custom-calendar in your CSS. This is the recommended approach for
component-specific styling that doesn't affect the global theme.
For detailed theming, available CSS variables, Sass variable lists, and advanced
customization, fetch the theming docs from:
https://mobiscroll.com/docs/docs/{framework}/theming/sass-themes.md
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub acidb/mobiscroll-marketplace --plugin mobiscroll