platform-android — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited platform-android (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Platform-specific design rules for Android apps in Figma. Covers screen dimensions, Material Design 3 conventions, Roboto typography, navigation patterns, and component specs. Extends ui-ux-fundamentals with Android-specific constraints.
Extends UI/UX Fundamentals (loaded separately). Scope: Android platform conventions only. General design quality rules are in ui-ux-fundamentals.Design rules are delivered by _workflow.designPreflight (from get_mode). For detailed rules by category, call get_design_guidelines(category).
| Device | Width | Height | Density |
|---|---|---|---|
| Standard Android (default) | 412px | 915px | xxhdpi (3×) |
| Small phone | 360px | 800px | xhdpi (2×) |
| Large phone | 412px | 915px | xxhdpi (3×) |
| Tablet 10" | 800px | 1280px | xhdpi (2×) |
| Foldable (unfolded) | 840px | 900px | xxhdpi (3×) |
Default for new Android designs: 412 × 915 (project standard, matches lint rule mobile-dimensions).
┌──────────────────────────┐
│ Status Bar (24dp) │
├──────────────────────────┤
│ │
│ Safe Content Area │ ← paddingLeft/Right: 16dp
│ │
│ │
├──────────────────────────┤
│ Navigation Bar (48-80dp) │ ← 3-button, gesture, or nav bar
└──────────────────────────┘Rules:
paddingLeft: 0, paddingRight: 0, paddingTop: 0 on the screen root so the status bar sits flush at the top edgelayoutMode: "HORIZONTAL" (no fill, no stroke), NOT padding or hidden elements{ type: 'frame', name: 'Status Bar', layoutMode: 'HORIZONTAL', height: 24 } as first child of screen{ type: 'frame', name: 'Navigation Bar', layoutMode: 'HORIZONTAL', height: 48 } (gesture) or 80 (3-button) as last child of screenvisible: false on safe area frames — they must remain visible to preserve spacing| Role | Font | Size | Weight | Line Height | Tracking |
|---|---|---|---|---|---|
| Display Large | Roboto | 57dp | Regular | 64dp | -0.25 |
| Display Medium | Roboto | 45dp | Regular | 52dp | 0 |
| Display Small | Roboto | 36dp | Regular | 44dp | 0 |
| Headline Large | Roboto | 32dp | Regular | 40dp | 0 |
| Headline Medium | Roboto | 28dp | Regular | 36dp | 0 |
| Headline Small | Roboto | 24dp | Regular | 32dp | 0 |
| Title Large | Roboto | 22dp | Regular | 28dp | 0 |
| Title Medium | Roboto | 16dp | Medium | 24dp | 0.15 |
| Title Small | Roboto | 14dp | Medium | 20dp | 0.1 |
| Body Large | Roboto | 16dp | Regular | 24dp | 0.5 |
| Body Medium | Roboto | 14dp | Regular | 20dp | 0.25 |
| Body Small | Roboto | 12dp | Regular | 16dp | 0.4 |
| Label Large | Roboto | 14dp | Medium | 20dp | 0.1 |
| Label Medium | Roboto | 12dp | Medium | 16dp | 0.5 |
| Label Small | Roboto | 11dp | Medium | 16dp | 0.5 |
Rules:
fontFamily explicitly — just use the correct screen dimensions (412×915) and the tool handles it.When UI language is Chinese, font is auto-detected to Noto Sans SC. Use this adjusted type scale:
| Role | Font | Size | Weight | Line Height | Tracking |
|---|---|---|---|---|---|
| Display Large | Noto Sans SC | 57dp | Regular | 80dp (1.4) | -0.25 |
| Headline Large | Noto Sans SC | 32dp | Regular | 48dp (1.5) | 0 |
| Headline Medium | Noto Sans SC | 28dp | Regular | 42dp (1.5) | 0 |
| Title Large | Noto Sans SC | 22dp | Medium | 34dp (1.55) | 0 |
| Title Medium | Noto Sans SC | 16dp | Medium | 26dp (1.63) | 0 |
| Body Large | Noto Sans SC | 16dp | Regular | 26dp (1.63) | 0 |
| Body Medium | Noto Sans SC | 14dp | Regular | 24dp (1.71) | 0 |
| Body Small | Noto Sans SC | 12dp | Regular | 20dp (1.67) | 0 |
| Label Large | Noto Sans SC | 14dp | Medium | 22dp (1.57) | 0 |
CJK-specific rules:
Top App Bar (HORIZONTAL, height: 64dp, padding: 0 16dp)
├── Navigation Icon (menu or back arrow, 24dp icon in 48dp target)
├── Title (left-aligned, Title Large 22dp)
└── Action Icons (24dp icons, 48dp targets, max 3)Navigation Bar (HORIZONTAL, height: 80dp, SPACE_BETWEEN)
├── Nav Item (icon 24dp + label 12dp, VERTICAL, CENTER)
│ └── Active: filled icon + indicator pill (64×32dp, radius 16dp)
├── Nav Item
├── Nav Item
└── Nav Item| Component | Key Specs |
|---|---|
| FAB | 56 × 56dp, corner radius 16dp |
| Small FAB | 40 × 40dp, corner radius 12dp |
| Large FAB | 96 × 96dp, corner radius 28dp |
| Extended FAB | height 56dp, corner radius 16dp, padding 0 16dp |
| Filled button | height 40dp, corner radius 20dp (full), padding 0 24dp |
| Outlined button | height 40dp, corner radius 20dp, stroke 1dp |
| Text button | height 40dp, corner radius 20dp, padding 0 12dp |
| Card (filled) | corner radius 12dp, padding 16dp |
| Card (elevated) | corner radius 12dp, elevation 1dp, padding 16dp |
| Chip | height 32dp, corner radius 8dp, padding 0 16dp |
| Switch | 52 × 32dp, thumb 24dp |
| Checkbox | 18 × 18dp in 48dp target, corner radius 2dp |
| Text field (filled) | height 56dp, corner radius 4dp top, no bottom radius |
| Text field (outlined) | height 56dp, corner radius 4dp, stroke 1dp |
| Bottom sheet | corner radius 28dp top |
| Dialog | width 280–560dp, corner radius 28dp, padding 24dp |
| Snackbar | height 48dp, corner radius 4dp, padding 0 16dp |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.