
Ionic Design
Install this when you are building a Capacitor hybrid app and want Ionic components, theming, and iOS/Android-native UI patterns without guessing mobile UX.
Overview
Ionic-design is an agent skill for the Build phase that guides Ionic Framework components, theming, and platform-native styling for Capacitor mobile apps.
Install
npx skills add https://github.com/cap-go/capacitor-skills --skill ionic-designWhat is this skill?
- 100+ mobile-optimized Ionic UI components with iOS/Android adaptive styling
- Theming, dark mode, and platform-specific presentation guidance
- Triggers for ion-button, ion-list, native look, and Capacitor-friendly stacks (React, Vue, Angular, vanilla)
- References official Ionic docs, components catalog, and Ionicon assets
- Accessibility and mobile UI pattern best practices out of the box
- 100+ mobile-optimized UI components cited in skill overview
Adoption & trust: 541 installs on skills.sh; 45 GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your Capacitor app looks like a stretched website because you are unsure which Ionic components and platform styles make mobile UI feel native.
Who is it for?
Indie devs pairing Capacitor with React, Vue, Angular, or vanilla JS who want component-level answers and theming recipes.
Skip if: Pure native Swift/Kotlin apps with no WebView, or backend-only API work with no mobile UI surface.
When should I use this skill?
User is using Ionic components, wants native-looking UI, asks about Ionic theming, needs mobile UI patterns, or wants platform-specific styling.
What do I get? / Deliverables
You implement consistent Ionic layouts, correct platform chrome, and themed screens that read as native iOS/Android apps inside Capacitor.
- Ionic component implementations
- Theme and dark-mode configuration
- Platform-adaptive screen layouts
Recommended Skills
Journey fit
Canonical shelf is Build → frontend because the skill is hands-on UI composition for shipped mobile clients, not distribution or store SEO. Ionic-design covers ion-button, lists, navigation shells, and platform styling—the core frontend layer inside Capacitor WebViews.
How it compares
Component-and-theming guide for Ionic in Capacitor—not a substitute for app-store launch or ASO checklists.
Common Questions / FAQ
Who is ionic-design for?
Solo builders creating hybrid mobile apps with Ionic plus Capacitor who need fast, doc-aligned UI guidance inside their coding agent.
When should I use ionic-design?
During Build frontend work whenever you add Ionic components, tune mobile theming, or need platform-specific styling before shipping binaries.
Is ionic-design safe to install?
It is reference and pattern guidance; review the Security Audits panel on this Prism page and vet any install commands the agent suggests for your project.
SKILL.md
READMESKILL.md - Ionic Design
{ "version": "1.0.0", "organization": "Capgo", "date": "January 2026", "abstract": "Comprehensive guide to using Ionic Framework for building native-looking Capacitor apps. Covers components, navigation patterns, theming, platform-specific styling, and mobile UI best practices.", "triggers": [ "ionic component", "ionic ui", "mobile ui", "native look", "ionic theming", "ion-button", "ion-list" ], "references": [ "https://ionicframework.com/docs", "https://ionicframework.com/docs/components", "https://ionic.io/ionicons" ] } --- name: ionic-design description: Guide to using Ionic Framework components for beautiful native-looking Capacitor apps. Covers component usage, theming, platform-specific styling, and best practices for mobile UI. Use this skill when users need help with Ionic components or mobile UI design. --- # Ionic Framework Design Guide Build beautiful, native-looking mobile apps with Ionic Framework and Capacitor. ## When to Use This Skill - User is using Ionic components - User wants native-looking UI - User asks about Ionic theming - User needs mobile UI patterns - User wants platform-specific styling ## What is Ionic Framework? Ionic provides: - 100+ mobile-optimized UI components - Automatic iOS/Android platform styling - Built-in dark mode support - Accessibility out of the box - Works with React, Vue, Angular, or vanilla JS ## Getting Started ### Installation ```bash # For React npx create-vite@latest my-app --template react-ts cd my-app npm install @ionic/react @ionic/react-router # For Vue npx create-vite@latest my-app --template vue-ts cd my-app npm install @ionic/vue @ionic/vue-router # Add Capacitor npm install @capacitor/core @capacitor/cli npx cap init ``` ### Setup (React) ```typescript // main.tsx import React from 'react'; import { createRoot } from 'react-dom/client'; import { IonApp, setupIonicReact } from '@ionic/react'; import App from './App'; /* Core CSS required for Ionic components to work properly */ import '@ionic/react/css/core.css'; /* Basic CSS for apps built with Ionic */ import '@ionic/react/css/normalize.css'; import '@ionic/react/css/structure.css'; import '@ionic/react/css/typography.css'; /* Optional CSS utils */ import '@ionic/react/css/padding.css'; import '@ionic/react/css/float-elements.css'; import '@ionic/react/css/text-alignment.css'; import '@ionic/react/css/text-transformation.css'; import '@ionic/react/css/flex-utils.css'; import '@ionic/react/css/display.css'; /* Theme */ import './theme/variables.css'; setupIonicReact(); const root = createRoot(document.getElementById('root')!); root.render( <IonApp> <App /> </IonApp> ); ``` ## Core Components ### Page Structure ```tsx import { IonPage, IonHeader, IonToolbar, IonTitle, IonContent, IonButtons, IonBackButton, } from '@ionic/react'; function MyPage() { return ( <IonPage> <IonHeader> <IonToolbar> <IonButtons slot="start"> <IonBackButton defaultHref="/home" /> </IonButtons> <IonTitle>Page Title</IonTitle> </IonToolbar> </IonHeader> <IonContent fullscreen> {/* Large title for iOS */} <IonHeader collapse="condense"> <IonToolbar> <IonTitle size="large">Page Title</IonTitle> </IonToolbar> </IonHeader> {/* Page content */} <div className="ion-padding"> Your content here </div> </IonContent> </IonPage> ); } ``` ### Lists ```tsx import { IonList, IonItem, IonLabel, IonNote, IonAvatar, IonIcon, IonItemSliding, IonItemOptions, IonItemOption, } from '@ionic/react'; import { chevronForward, trash, archive } from 'ionicons/icons'; function ContactList() { return ( <IonList> {/* Simple item */} <IonItem> <IonLabel>Simple Item</IonLabel> </IonItem> {/* Item with detail */} <IonItem detail b