Pub.dev Scraper | Dart and Flutter Packages avatar

Pub.dev Scraper | Dart and Flutter Packages

Pricing

from $19.00 / 1,000 results

Go to Apify Store
Pub.dev Scraper | Dart and Flutter Packages

Pub.dev Scraper | Dart and Flutter Packages

Pull Dart and Flutter package data from pub.dev including name, version, publisher, pub points, popularity, likes, platforms, dependencies, and license. Track the Flutter ecosystem, audit deps, and build developer tooling for mobile, web, and desktop Dart projects.

Pricing

from $19.00 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

ParseForge Banner

📦 Pub.dev Flutter Package Scraper

🚀 Export Dart and Flutter package data from pub.dev with quality metrics in seconds. No API key required. No login needed.

🕒 Last updated: 2026-05-22 · 📊 17 fields per record · Unlimited packages · Global coverage

The Pub.dev Flutter Package Scraper pulls real-time data directly from pub.dev's public API. Each record includes the package name, version, description, publisher, like count, pub points, 30-day download count, SDK constraints, topics, homepage, repository link, and publish date. The dataset is sourced live from pub.dev's official REST API - no scraping of HTML, no stale cache.

Pub.dev is the official package repository for Dart and Flutter, hosting over 50,000 packages. This actor gives you structured, machine-readable access to every package's quality metrics and metadata - ideal for ecosystem analysis, dependency auditing, SDK compatibility research, and package discovery at scale.


Target Audience / Use Cases

WhoWhat they use it for
Flutter developersDiscover top packages by topic, check SDK compatibility
DevOps / platform teamsAudit dependencies for license, quality, and pub points
ResearchersAnalyze the Dart/Flutter ecosystem growth and trends
Open source maintainersBenchmark their packages against competitors
Data engineersBuild dashboards tracking package popularity over time
Security teamsMonitor packages for version updates and publisher changes

📋 What the Pub.dev Scraper does

  • Searches pub.dev by keyword (e.g. "http", "state management", "firebase") or browses all packages
  • Fetches package detail, score, and publisher in parallel for maximum speed
  • Returns 17 structured fields per package including likes, pub points, and 30-day downloads
  • Respects free/paid user tiers - free users get a 10-item preview automatically
  • Handles pagination automatically to collect any volume of results

💡 Why it matters: pub.dev has no official export feature. Getting structured package data requires reverse-engineering the API or scraping HTML - this actor does that work for you, giving clean JSON/CSV/Excel output in seconds.


🎬 Full Demo

🚧 Coming soon - video walkthrough of a full package discovery workflow


⚙️ Input

FieldTypeDefaultDescription
searchQueryString(empty)Search keyword - e.g. "http", "firebase", "state management". Leave empty to browse top packages.
maxItemsInteger10Max packages to collect. Free users: limited to 10. Paid users: up to 1,000,000.

Example 1 - Search for HTTP packages:

{
"searchQuery": "http",
"maxItems": 50
}

Example 2 - Browse top 100 packages:

{
"maxItems": 100
}

⚠️ Good to Know: Leave searchQuery empty to browse the full pub.dev catalog sorted by recent activity. When searching, results are ordered by pub.dev's relevance ranking.


📊 Output

Each record contains the following fields:

FieldTypeDescription
📦 nameStringPackage name (e.g. "http")
🔗 urlStringDirect URL to the package on pub.dev
🏷 latestVersionStringLatest published version string
📝 descriptionStringPackage description from pubspec
🏢 publisherString / nullPublisher domain (e.g. "dart.dev", "flutter.dev")
❤️ likeCountIntegerNumber of pub.dev likes
🏅 pubPointsIntegerGranted pub points (code quality score)
🔢 maxPubPointsIntegerMaximum possible pub points
📈 popularityScoreFloat / nullPopularity score 0.0-1.0 (deprecated by pub.dev, use downloadCount30Days)
📥 downloadCount30DaysIntegerDownloads in the last 30 days
🏷 topicsArrayTopics/tags assigned to the package
🎯 sdkConstraintStringDart SDK version constraint (e.g. ">=3.0.0 <4.0.0")
🦋 flutterConstraintString / nullFlutter SDK constraint if the package requires Flutter
🌐 homepageString / nullHomepage URL from pubspec
📁 repositoryString / nullSource repository URL (GitHub, GitLab, etc.)
🕒 publishedAtISO 8601Latest version publish timestamp
🕒 scrapedAtISO 8601When the record was collected
errorString / nullError message if collection failed for this package

Sample record:

{
"name": "http",
"url": "https://pub.dev/packages/http",
"latestVersion": "1.3.0",
"description": "A composable, Future-based library for making HTTP requests.",
"publisher": "dart.dev",
"likeCount": 5200,
"pubPoints": 160,
"maxPubPoints": 160,
"popularityScore": null,
"downloadCount30Days": 2847391,
"topics": ["http", "networking"],
"sdkConstraint": ">=3.0.0 <4.0.0",
"flutterConstraint": null,
"homepage": null,
"repository": "https://github.com/dart-lang/http",
"publishedAt": "2024-11-12T14:23:00.000Z",
"scrapedAt": "2026-05-21T01:46:48.000Z",
"error": null
}

✨ Why choose this Actor

FeatureThis Actor
✅ No API key requiredUses pub.dev's public REST API
✅ Real-time dataEvery run fetches live data - no cache
✅ Parallel fetchingDetail + score + publisher fetched simultaneously per package
✅ Publisher identificationUses the dedicated /publisher endpoint for accurate publisher info
✅ SDK constraintsExtracts both Dart and Flutter SDK version ranges
✅ 30-day download metricMore reliable than deprecated popularity score
✅ Full paginationCollects any volume - from 10 to 1,000,000 packages
✅ CSV / Excel / JSON / XMLAll Apify export formats supported

📈 How it compares to alternatives

ApproachSpeedStructureScaleMaintenance
This ActorFast (API)Full 17-field schema1M+ packagesMaintained
Manual browsingVery slowNo export10-20 packagesN/A
Custom scriptsRequires setupDIYUnlimitedSelf-maintained
pub.dev UI searchSlowNo export20 per pageN/A

🚀 How to use

  1. Create a free Apify account (includes $5 credit)
  2. Open the Pub.dev Flutter Package Scraper actor
  3. Set searchQuery to a keyword or leave empty for top packages
  4. Set maxItems to the number of packages you want
  5. Click Start and wait for results (typically seconds)
  6. Download your dataset as JSON, CSV, Excel, or XML

💼 Business use cases

Package Discovery and Evaluation

Find the best packages for a specific use case. Search "state management" and compare likes, pub points, and download counts across all competing packages. Filter by SDK constraint to ensure compatibility with your project's Dart version.

Dependency Auditing

Export your dependency list and cross-reference against pub.dev data to identify packages with low pub points, no publisher, or infrequent updates. Flag potential security or maintenance risks before they become production problems.

Flutter Ecosystem Analysis

Track the growth and health of the Flutter ecosystem over time. Monitor which publishers are most active, which topics are trending, and how download counts evolve across package categories.

SDK Compatibility Research

Identify all packages compatible with a specific Dart or Flutter SDK version range. Essential when planning SDK upgrades - know which packages you'll need to update or replace before migrating.


🔌 Automating Pub.dev Scraper

Connect this actor to your workflow tools:

  • Make (formerly Integromat) - Schedule weekly package audits, send results to Google Sheets
  • Zapier - Trigger on new results, create Jira tickets for dependency updates
  • Slack - Post weekly ecosystem digest to your Flutter dev channel
  • Google Sheets - Live dashboard of your monitored packages
  • Webhooks - Integrate with any internal tooling via Apify webhooks

🌟 Beyond business use cases

Research and Academia

Study the evolution of the Dart/Flutter ecosystem. Analyze how package quality metrics correlate with adoption rates. Track the rise and fall of competing solutions to common problems.

Open Source Contribution

Identify underserved niches in the Flutter ecosystem. Find packages with high like counts but low pub points - good candidates for forks or improvements.

Learning and Experimentation

Explore how top-rated packages are structured. Compare SDK constraints across packages to understand Dart versioning practices in the community.

Community and Content Creation

Generate data-driven articles about the Flutter ecosystem. "Top 50 Flutter packages by downloads this month" becomes trivial with this actor.


🤖 Ask an AI assistant about this scraper

You can ask an AI assistant things like:

  • "Which packages have more than 1000 likes and a Flutter constraint?"
  • "Show me all packages published by dart.dev"
  • "Compare pub points across packages with the 'networking' topic"
  • "Find packages with sdkConstraint compatible with Dart 3.0"

Load your dataset export into any AI chat tool and start exploring.


❓ Frequently Asked Questions

❓ Does this require authentication? No. pub.dev's API is fully public. No API key, no login, no rate limit headers needed.

❓ How fresh is the data? Every run fetches live data from pub.dev's API. Results are as fresh as pub.dev itself.

❓ Can I search for multiple keywords? Currently the actor accepts one search query per run. For multiple keywords, start multiple runs or use Apify's schedule feature.

❓ Why is popularityScore null for some packages? pub.dev deprecated the popularityScore field in their API. Use downloadCount30Days instead - it's a more reliable indicator of actual usage.

❓ What does publisher being null mean? Packages without a verified publisher show null. The package may still be active and high quality - publisher verification is optional on pub.dev.

❓ How many packages can I collect? Free users are limited to 10 packages per run (preview). Paid users can collect up to 1,000,000 packages.

❓ Can I filter by SDK version? Not directly in the input - collect all results and filter by sdkConstraint in your spreadsheet or data pipeline.

❓ What's the difference between pubPoints and maxPubPoints? pubPoints is the score actually granted (0-160). maxPubPoints is the ceiling (usually 160). High-quality packages score 140-160.

❓ Does the actor follow pagination automatically? Yes. It fetches page after page until maxItems is reached or all results are exhausted.

❓ Can I run this on a schedule? Yes - use Apify's built-in scheduler to run weekly ecosystem snapshots automatically.

❓ Is this actor maintained? Yes. ParseForge monitors pub.dev's API for changes and updates the actor accordingly.

❓ What export formats are available? JSON, CSV, Excel (XLSX), and XML - all standard Apify dataset export formats.


🔌 Integrate with any app

This actor works with every tool that connects to Apify:

Spreadsheets: Google Sheets, Microsoft Excel, Airtable Automation: Make, Zapier, n8n, Activepieces Databases: PostgreSQL, MySQL, MongoDB, BigQuery, Snowflake BI Tools: Tableau, Power BI, Looker, Metabase Dev Tools: REST API, Python client, JavaScript client, CLI Notifications: Slack, Email, Discord, PagerDuty (via webhooks)


ActorDescription
GitHub Repositories ScraperScrape GitHub repo metadata, stars, and topics
npm Package ScraperExtract npm package stats and dependency data
PyPI Package ScraperPython ecosystem package metadata and download counts

💡 Pro Tip: browse the complete ParseForge collection to find scrapers for 100+ platforms - all maintained, all real-time.


Disclaimer: This actor uses pub.dev's public REST API in accordance with their terms of service. All data is publicly available without authentication. ParseForge is not affiliated with pub.dev, the Dart team, or Google. Use this data responsibly and in compliance with applicable laws.