ionic — Claude Code skill: Ionic development guidelines
Gives the agent a set of Ionic rules: feature-based structure, built-in components, SCSS theming, lazy loading and Firebase.
npx skills add Mindrally/skills --skill ionic -a claude-codeWhat ionic does
This skill turns the assistant into an Ionic-minded reviewer. Answers stay short and technical, with TypeScript and SCSS examples. Projects get organised by feature: features, shared, and a core folder for guards and interceptors. For navigation and layout the agent reaches for Ionic's own components — ion-header, ion-content, ion-list, ion-modal — instead of hand-rolled wrappers.
There are sections on performance and native integration. Lazy loading through loadChildren, virtual scrolling for long lists, Ionic Native wrappers for Cordova and Capacitor with web fallbacks. Firebase gets its own block: AngularFire, Firestore transactions, batch writes. Styling runs on SCSS and Ionic CSS variables.
The guidelines assume Angular, so in a React or Vue Ionic project they will pull in patterns that do not fit. Environment files for development, staging and production are covered too, with secrets kept out of the code.
What it helps with
- split an Ionic project into features instead of one flat folder
- pick a built-in Ionic component over a custom one
- wire lazy loading through
loadChildren - add a native plugin with a web fallback
- write Firestore transactions and batch writes
Example prompts for the agent
- help me split my Ionic project into features
- how do I lazy load a module in Ionic Angular
- show me navigation with
NavController
How to install ionic
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill ionic -a claude-code2Manually: put the files in place
~/.claude/skills/ionic/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/ionic/
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill ionic -a codex2Manually: put the files in place
.agents/skills/ionic/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill ionic -a cursor2Manually: put the files in place
.cursor/skills/ionic/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Mindrally/skills ionic2Manually: put the files in place
.github/skills/ionic/SKILL.md1Skills CLI (Vercel)
npx skills add Mindrally/skills --skill ionic -a gemini-cli2Platform CLI
gemini skills install https://github.com/Mindrally/skills --path ionicManually: put the files in place
.devin/skills/ionic/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Mindrally/skills --skill ionic -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about ionic
How do I install ionic in Claude?
Run npx skills add Mindrally/skills --skill ionic -a claude-code. The skill file lands in ~/.claude/skills/ionic/SKILL.md.
What does the ionic skill do?
It gives the agent Ionic development rules: feature-based structure, built-in components, SCSS theming, lazy loading, Cordova/Capacitor and Firebase via AngularFire.
Which platforms support it?
The skill installs into Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode, each with its own install command.
Source text
SKILL.md · Apache-2.0
---
name: ionic
description: Ionic development guidelines for building cross-platform mobile applications with Angular, Cordova, and Firebase integration.
metadata:
maintainer: Mindrally
source: https://github.com/Mindrally/skills
---
# Ionic Development
You are an expert in Ionic for building cross-platform mobile applications.
## Core Principles
- Write concise, technical responses with accurate Ionic examples
- Use feature-based organization for scalable applications
- Leverage Ionic's built-in components for consistent UI
- Follow Angular best practices for Ionic Angular projects
## Project Structure
### Feature-Based Organization
```
src/
├── app/
│ ├── features/
│ │ ├── auth/
│ │ ├── home/
│ │ └── settings/
│ ├── shared/
│ │ ├── components/
│ │ ├── services/
│ │ └── pipes/
│ └── core/
│ ├── guards/
│ └── interceptors/
├── assets/
└── theme/
```
## Ionic Components
### Navigation
```typescript
import { NavController } from '@ionic/angular';
constructor(private navCtrl: NavController) {}
navigateForward() {
this.navCtrl.navigateForward('/details');
}
navigateBack() {
this.navCtrl.back();
}
```
### UI Components
- Use `ion-header`, `ion-content`, `ion-footer` for page structure
- Leverage `ion-list`, `ion-item` for lists
- Use `ion-button`, `ion-fab` for actions
- Apply `ion-modal`, `ion-popover` for overlays
## Styling
- Use SCSS for component-specific styles
- Leverage Ionic CSS variables for theming
- Apply platform-specific styling when needed
- Use responsive utilities for different screen sizes
```scss
:host {
--ion-background-color: var(--ion-color-light);
}
.custom-card {
--background: var(--ion-color-primary-tint);
}
```
## Performance
### Lazy Loading
- Implement lazy loading for feature modules
- Use `loadChildren` in routing configuration
- Split code into logical chunks
### Optimization
- Use virtual scrolling for long lists
- Implement proper image loading strategies
- Minimize bundle size with tree shaking
## Native Integration
### Cordova/Capacitor Plugins
- Use Ionic Native wrappers for native functionality
- Implement web fallbacks for native features
- Handle platform differences appropriately
```typescript
import { Camera } from '@ionic-native/camera/ngx';
async takePicture() {
const image = await this.camera.getPicture(options);
return image;
}
```
## Firebase Integration
- Use AngularFire for Firebase services
- Implement proper Firestore transactions
- Handle real-time updates efficiently
- Use batch operations for multiple writes
## Environment Configuration
- Configure environments for development, staging, production
- Use environment files for API endpoints
- Manage secrets securely
## Testing
- Write unit tests for services and components
- Use Ionic testing utilities
- Test native plugin mocks appropriately
© Mindrally · Apache-2.0 · Mindrally/skills