riverpod-getting-started
Install Riverpod (flutter_riverpod or riverpod), wrap the app in ProviderScope, run a hello-world provider, and optionally enable riverpod_lint and code…
Skill by serverpod
Chalk Labs
Need help deploying riverpod-getting-started?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/serverpod-riverpod-getting-started
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/riverpod-getting-started
What's inside
- Skill name
riverpod-getting-started- Description
- Install Riverpod (flutter_riverpod or riverpod), wrap the app in ProviderScope, run a hello-world provider, and optionally enable riverpod_lint and code generation. Use when starting a Flutter or Dart project with Riverpod, adding the Riverpod dependency, or setting up ProviderScope and a first provider. For version highlights see the official Riverpod docs.
- License
- BSD-3-Clause
- Instructions
- 136 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Riverpod — Getting Started
## Instructions
### Installing the package
Riverpod is available as a main package (Flutter: `flutter_riverpod`; Dart-only: `riverpod`). Optional packages add code generation and hooks.
**Flutter:**
```bash
flutter pub add flutter_riverpod
```
With code generation:
```bash
flutter pub add flutter_riverpod riverpod_annotation
flutter pub add dev:riverpod_generator build_runner
```
**Dart only:**
```bash
dart pub add riverpod
```
With code generation:
```bash
dart pub add riverpod riverpod_annotation
dart pub add dev:riverpod_generator build_runner
```
**Manual `pubspec.yaml` (Flutter):**
```yaml
dependencies:
flutter:
sdk: flutter
flutter_riverpod: ^2.0.0 # use latest from pub.dev
dev_dependencies:
build_runner:
riverpod_generator: ^2.0.0 # if using code generation
```
Then run `flutter pub get` (or `dart pub get` for Dart-only).
If using code generation, run:
```sh
dart run build_runner watch -d
```
**Note:** Some Riverpod packages may require Flutter's beta channel for compatibility with latest `json_serializable`. If `pub get` fails, try `flutter channel beta` or use Riverpod `<=3.1.0`.
### Wrap the app in ProviderScope
Widgets need a `ProviderScope` (Flutter) or a `ProviderContainer` (Dart) to read providers.
**Flutter — ProviderScope:**
```dart
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
void main() {
runApp(
ProviderScope(
child: MyApp(),
),
);
}
```
**Dart only — ProviderContainer:**
```dart
final container = ProviderContainer();
final value = container.read(helloWorldProvider);
print(value);
// Don't forget to container.dispose() when done
```
### Hello world (Flutter with code generation)
```dart
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
part 'main.g.dart';
@riverpod
String helloWorld(Ref ref) {
return 'Hello world';
}
void main() {
runApp(ProviderScope(child: MyApp()));
}
class MyApp extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final String value = ref.watch(helloWorldProvider);
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('Example')),
body: Center(child: Text(value)),
),
);
}
}
```
Run `dart run build_runner build` (or `watch`) to generate `main.g.dart`. Without code generation, use a manual provider (e.g. `final helloWorldProvider = Provider<String>((ref) => 'Hello world');`) and the same `ProviderScope` + `ConsumerWidget` pattern.From serverpod/skills-registry, BSD-3-Clause.
More from serverpod/skills-registry
- 0.475score
riverpod-family
serverpod
Use Riverpod family providers to pass parameters and cache per parameter; FutureProvider.family, NotifierProvider.family, autoDispose with family, overriding…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-from-provider
serverpod
Migrate from package:provider to Riverpod; ChangeNotifierProvider, ProxyProvider to ref.watch, context.watch to ref.watch, ConsumerWidget, incremental…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-containers
serverpod
Use ProviderScope in Flutter and ProviderContainer in Dart for Riverpod; where provider state is stored, overrides, observers, testing with…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-eager-initialization
serverpod
Eagerly initialize Riverpod providers at app startup by watching them in a root Consumer; handle loading/error in the initializer, AsyncValue.requireValue.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-consumers
serverpod
Use Riverpod Consumer, ConsumerWidget, and ConsumerStatefulWidget to read and watch providers in widgets; WidgetRef, builder ref parameter.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-faq-and-practices
serverpod
Answers Riverpod FAQ (ref.refresh vs invalidate, ConsumerWidget vs StatelessWidget, Ref vs WidgetRef, reset all providers, ref after unmount) and do/don't…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-testing
serverpod
Test Riverpod providers and widgets; ProviderContainer.test, unit tests, widget tests with ProviderScope, tester.container(), mocking with overrides…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-3-0-migration
serverpod
Migrate Riverpod from 2.0 to 3.0; automatic retry, paused listeners, legacy providers import, Ref simplification, FamilyNotifier removal, ProviderException…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-auto-dispose
serverpod
Enable automatic disposal of Riverpod providers when they have no listeners; keepAlive, onDispose, invalidate, ref.keepAlive.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-cancel
serverpod
Cancel or debounce Riverpod async requests with ref.onDispose; cancel when user leaves the page, debounce rapid refreshes.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-codegen-and-hooks
serverpod
Use Riverpod code generation (@riverpod, riverpod_generator) and hooks (hooks_riverpod, HookConsumerWidget, flutter_hooks with Riverpod).
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-migration
serverpod
Migrate Riverpod from StateNotifier to Notifier/AsyncNotifier, from ChangeNotifier to AsyncNotifier, or upgrade from 0.13/0.14/1.0; ref.onDispose, family…
SkillDFreshness: D★ 10Claude Code +9
Signals
- Stars
- 10
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 7, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- BSD-3-Clause
- Repository
- github.com/serverpod/skills-registry
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from serverpod
- 0.475score
riverpod-auto-dispose
serverpod
Enable automatic disposal of Riverpod providers when they have no listeners; keepAlive, onDispose, invalidate, ref.keepAlive.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-codegen-and-hooks
serverpod
Use Riverpod code generation (@riverpod, riverpod_generator) and hooks (hooks_riverpod, HookConsumerWidget, flutter_hooks with Riverpod).
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-testing
serverpod
Test Riverpod providers and widgets; ProviderContainer.test, unit tests, widget tests with ProviderScope, tester.container(), mocking with overrides…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-3-0-migration
serverpod
Migrate Riverpod from 2.0 to 3.0; automatic retry, paused listeners, legacy providers import, Ref simplification, FamilyNotifier removal, ProviderException…
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-cancel
serverpod
Cancel or debounce Riverpod async requests with ref.onDispose; cancel when user leaves the page, debounce rapid refreshes.
SkillDFreshness: D★ 10Claude Code +9 - 0.475score
riverpod-consumers
serverpod
Use Riverpod Consumer, ConsumerWidget, and ConsumerStatefulWidget to read and watch providers in widgets; WidgetRef, builder ref parameter.
SkillDFreshness: D★ 10Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get riverpod-getting-started running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
riverpod-getting-started skill. Agent Mart. https://agentmart.dev/skills/serverpod-riverpod-getting-started (last updated 2026-10-24)