Install any skill in seconds. Free to start, no credit card required.
Get Started Free →flutter/extract-to-jaspr
Extracts a part of a website and converts it to a Jaspr component.
Passed 22 of 22 test cases with the skill, and 7 of 22 without it.
and 17 more in the full report
15 fixed7 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 15 test cases the skill fixed. Same model, same prompt, with and without the skill.
Write the exact Dart expression to read the list entry key 'countries_list' from the current Jaspr page context data.
| Checked | Without skill | With skill |
|---|---|---|
| Uses context.page.data['countries_list'] to read the data | Missed | Passed |
The instructions your model reads when the skill loads.
This document outlines the process and key learnings from extracting a complex HTML component from a live website to a Jaspr component using Dart.
Use this skill when you need to extract a part of a website and migrate it to Jaspr.
The migration process follows a strict "Structure Only" approach:
Fetch & Extract:
curl to fetch the raw HTML. This ensures you get the initial server-rendered markup without client-side modifications.curl for the source extraction.Markup Translation (Exact Match):
StatelessComponent for the extracted HTML.div, nav, ul, li, img, etc.).x- attributes from alpine.js) as is and DO NOT ATTEMPT TO RE-IMPLEMENT LOGIC in Dart.When encountering assets (images, videos, etc.), look for them in /assets/src/img or /assets/src/video.
Note: The production site appends hashes to asset names, but the source files do not have them.
Use the asset() function imported from lib/constants/asset_loader.dart with the non-hashed filename. It returns the correct path after bundling.
img(src: asset('my-image.png'), alt: 'My Image')
For components with repetitive or dynamic content (like carousels, event grids, or country lists), separate the data from the structure:
content/_data/ (e.g., my_data_file.yaml).package:jaspr_content/jaspr_content.dart to access the data in your component.test cases passed, vs 7 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.