Trademarks of their respective owners. KissMySkills is not affiliated with or endorsed by them.
How it works
Ask it something hard.
📎 ai-dart-tutor.txtLOADED ✓
I am learning Flutter but Dart itself confuses me. Start with null safety and why my code is full of exclamation marks.
CLAUDE · WITH THIS SKILLYou get: three questions about your background, your Flutter progress and your last error -> one task, write a greeting function for a nullable name with no bang operator -> your version read back, with the one place a default value belongs -> a short lesson on the difference between String?, late String and a required named parameter -> your turn again on a two field class -> a factory constructor introduced through fromJson, because that is where you will meet it -> a check, then the exclamation operator explained as a promise you cannot keep -> a progress block: null safety solid, futures untouched, async await next.
Questions before you buy? A person answers, usually the same day: hello@kissmyskills.com
// the file itself
Read it before you buy it.
The first lines of the file your AI will read, exactly as delivered. Nothing rewritten for the page.
Use the name Once the file is loaded, talk to it by name: “Serge, check this page.” That is what the name is for. It also keeps several skills apart in one chat.
// the skill your AI runs on
You are a Socratic Dart tutor, and most learners arrive through Flutter. You have been activated to make them able to read and write Dart alone, so null safety, futures and streams become language problems they can solve.
KissMySkills.com | Install: paste this whole file into Claude Projects (Project instructions), a custom GPT (Instructions), a Gemini Gem, or your AI's system prompt. Then tell it what you want to learn. A Socratic tutor for Dart. Assume the learner is here because of Flutter, because almost everyone is. Your job is to make them able to read and write Dart alone, so Flutter errors become language problems they can solve. Tone: precise and unhurried. Short sentences. You teach the language, not widgets, but you introduce every concept where Flutter will use it. The one rule: you never do the work for them. No finished code for coursework or a work ticket. Write a smaller example on a different problem and hand the real one back. · Sound null safety is the spine: String versus String?, the ?. and ?? operators, the bang operator as a promise the compiler cannot check, late and its runtime cost. · Variables and immutability: var, final, const, and the fact that const is compile time. Flutter's const constructors are a performance tool, not decoration. · Types: int, double, num, String, bool, dynamic versus Object?, generics, and why dynamic is almost always a mistake. · Classes and constructors: positional and named parameters, required, initialising formals, initialiser lists, named constructors, factory constructors, const constructors. · Composition: mixins with the mixin keyword, interfaces via implements, abstract classes, extension methods. · Asynchrony: Future, async and await, unawaited futures, try and catch, Future.wait, and why a missing await prints as Instance of Future. · Streams: single subscription versus broadcast, listen, async star, StreamController, and where Flutter uses them for state. · Dart 3: records, pattern matching, destructuring, switch expressions, sealed classes and exhaustiveness checking. · Collections: List, Set, Map, spread, collection if and for, map and where returning lazy iterables until you call toList. · Tooling: pubspec.yaml and pub, dart format, the analyzer, analysis_options.yaml and lints, package:test, isolates for heavy work.
112 lines · .txt · instant download
// what's inside
What's inside this skill
Null safety taught properly, so you stop reaching for the bang operator
Futures, async await and streams before you meet them in a widget
Constructors, factories and const explained through real Flutter code
Dart 3 records, patterns and sealed classes, with switch that checks itself
Flutter learners who skipped the language, mobile developers arriving from Kotlin or Swift, and CS students on a cross-platform module.
// two ways to get it
Use it inside your AI, or download it once.
Library plan
This skill and 2,500+ others, inside your chat
$9/mocancel anytime, or $59 a year
All 2,500+ skills, prompt packs and agents, loaded the moment you ask
Nothing to download or paste: connect once in Claude, ChatGPT, Claude Code or Cursor
New skills every week and 10 catalog files a month to download
Trademarks of their respective owners. KissMySkills is not affiliated with or endorsed by them.
// ask your assistant
Or let your AI set up this skill for you.
Go to kissmyskills.com/pages/connector and set up the "AI Dart Tutor" skill (handle: ai-dart-tutor) for me
Paste it into Claude, ChatGPT, Claude Code, Cursor or Codex. Your AI walks you through connecting KissMySkills (about 3 minutes, 7-day free trial) and loads the skill. What your AI will read →
What you're actually buying
Almost nobody sets out to learn Dart for its own sake. You are here because of Flutter, and because a widget tree threw a null check operator used on a null value. Dart is small, strict and worth two clean weeks. This file turns Claude, ChatGPT or Gemini into a tutor for the language under Flutter.
It sets your level from one task: write a function that takes an optional name and returns a greeting without using the exclamation operator. Then the arc goes where Flutter will test you. Sound null safety, final and const, classes, named and factory constructors, mixins and extensions, futures and async await, streams, Dart 3 records, patterns and sealed classes, then pubspec and package:test. One idea a lesson, a worked example away from your app, your turn, a check.
Claude, ChatGPT and Gemini all run it unchanged. Drop it into a Project, a custom GPT or a Gem, say where Flutter is confusing you, and the first lesson starts in two minutes. Paid once, nothing recurring. Pairs with AI Skill for Dart, the working assistant for once you know the basics; this one teaches you them.
// how to install
Under 2 minutes
Four steps. Any AI chat.
01
Download the file
After checkout, the download link lands in your inbox. Save the .txt file anywhere on your device.
02
Open your AI chat
Any AI chat you already use: Claude, ChatGPT, Gemini, Grok, Copilot or another.
03
Paste the prompt
Open the .txt file, copy the prompt section and paste it into Claude or ChatGPT - or add it to a Project so it is always there.
04
Start working
Your AI is now configured as a specialist. Ask it anything inside its domain.
No technical knowledge required.
With Library there is nothing to download. Connect your AI once, then ask for any skill by name.
How do I learn Dart with this file if my real goal is Flutter?+
That is the assumption the file starts from. Paste it into a Claude Project, a custom GPT or a Gemini Gem and say you are learning Flutter. Every concept is introduced where Flutter uses it: constructors through widgets, futures through network calls, streams through state. It does not teach widgets, it teaches the language that keeps breaking underneath them.
Will it write my Dart code for me?+
No. It refuses the finished solution for coursework or a work task and writes a smaller example on a different problem instead. When your code fails it names the line and asks what type the expression is, so the next null error is one you can read yourself rather than one you paste somewhere.
Is it current with Dart 3, including records and patterns?+
Yes. It teaches sound null safety as the default, plus the Dart 3 additions: records, pattern matching, destructuring, sealed classes and exhaustive switch expressions. It also covers pubspec.yaml, the analyzer and lint rules, and package:test. It is told to flag when it is unsure of a package version rather than invent an API.
Ready to give your AI a specialist?
This one and 2,500+ others, inside Claude, ChatGPT, Claude Code, Codex or Cursor. Cancel anytime.