Focus: Cross-platform UI development (Flutter), client-side logic, high UI performance (60/120 fps).
Triggers: dart, flutter, widget, state management, bloc, isolates, ffi.
2. Core Principles
JIT & AOT Compilation: Dart runs with a Just-In-Time (JIT) compiler during development for lightning-fast Hot Reload, and compiles Ahead-Of-Time (AOT) to native ARM/x86 machine code for highly optimized production releases.
Single-Threaded Event Loop: Dart is single-threaded by default. Async operations (Future and Stream) do not run on separate threads; they are scheduled on the Event Loop (similar to Node.js).
Everything is an Object: There are no primitives (even int is an object), but Dart is strictly typed and memory-safe.
3. Anti-Patterns
Blocking the Event Loop: Running heavy computations (like parsing a massive JSON payload or image processing) directly in an async function. This causes "jank" (stuttering) in the UI. Heavy work MUST be moved to a separate Isolate.
Forgetting await: Dart doesn't warn you aggressively if you call an async function without await and don't assign it. The function fires and execution moves on immediately.
Ignoring Null Safety Warnings: Using ! (bang operator) to force unwrap nullables in Flutter widgets will cause the "Red Screen of Death" in production.
references/dart-testing.md — Unit tests, Widget tests.
1---2name: dart3description: Dart Skill Architecture4---5# Dart Skill Architecture67## 1. Skill Context8**Focus**: Cross-platform UI development (Flutter), client-side logic, high UI performance (60/120 fps).9**Triggers**: dart, flutter, widget, state management, bloc, isolates, ffi.1011## 2. Core Principles12- **JIT & AOT Compilation**: Dart runs with a Just-In-Time (JIT) compiler during development for lightning-fast Hot Reload, and compiles Ahead-Of-Time (AOT) to native ARM/x86 machine code for highly optimized production releases.13- **Single-Threaded Event Loop**: Dart is single-threaded by default. Async operations (`Future` and `Stream`) do not run on separate threads; they are scheduled on the Event Loop (similar to Node.js).14- **Everything is an Object**: There are no primitives (even `int` is an object), but Dart is strictly typed and memory-safe.1516## 3. Anti-Patterns17- **Blocking the Event Loop**: Running heavy computations (like parsing a massive JSON payload or image processing) directly in an `async` function. This causes "jank" (stuttering) in the UI. Heavy work MUST be moved to a separate `Isolate`.18- **Forgetting `await`**: Dart doesn't warn you aggressively if you call an async function without `await` and don't assign it. The function fires and execution moves on immediately.19- **Ignoring Null Safety Warnings**: Using `!` (bang operator) to force unwrap nullables in Flutter widgets will cause the "Red Screen of Death" in production.2021## 4. References22- `references/dart-fundamentals.md` — Null Safety, Mixins, Streams.23- `references/dart-advanced.md` — Isolates, FFI, Metaprogramming.24- `references/dart-testing.md` — Unit tests, Widget tests.
Run npx skillmds@latest add j4flmao/dart in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Dart Skill Architecture It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
j4flmao (@j4flmao) published this skill. Their other Agent Skills are listed on their SkillMD profile.