chromedp

chromedp/examples

Go MIT Dev Tools fragile-selectors-noted

chromedp code examples.

1.3k stars
240 forks
active
GitHub

1.3k

Stars

240

Forks

2

Open issues

11

Contributors

AI Analysis

This repository provides a curated collection of practical code examples demonstrating how to use chromedp, a headless browser automation library for Go. It serves developers building web scraping, testing, and browser automation tools who need reference implementations for common tasks like clicking, form submission, PDF generation, and device emulation. Not suitable for those seeking a complete browser automation framework—this is a companion to the chromedp library itself.

Dev Tools Developer Tool Discovery value: 4/10
Documentation 7/10
Activity 9/10
Community 8/10
Code quality 5/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 7/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

browser-automation headless-chrome web-scraping go examples
Actively maintained Well documented MIT licensed Niche/specialized use case Beginner friendly
Deep Analysis · Based on README and public signals
4d ago

Chromedp examples: curated Go automation scripts for browser automation learning

This is a companion examples repository for chromedp, a Go library that controls Chrome/Chromium via the DevTools protocol. It contains 23 worked examples covering common headless browser tasks: clicking, form submission, PDF generation, screenshot capture, JavaScript evaluation, and proxy authentication. Primarily used as a learning resource and reference implementation for developers adopting chromedp, not a standalone tool. Adoption appears limited to chromedp users who need concrete code samples.

Origin

Created December 2017 as the chromedp library matured and needed reference examples. It evolved in parallel with chromedp's development, providing practical demonstrations of the library's capabilities. The examples repository serves as the official companion to the core chromedp project.

Growth

1,261 stars accumulated over ~8.5 years represents modest but stable interest. Zero stars gained in the last 7 days and an infrequent push cadence (last update today, but likely maintenance rather than feature development) suggests the repository has reached a stable state. Growth appears driven by chromedp adoption rather than independent momentum. Fork rate (240 forks) indicates some developer customization for local use cases.

In production

Adoption not verified at scale. This is a examples-only repository without documented case studies or production deployment metrics. Usage is likely confined to developers learning chromedp or prototyping automation workflows. No telemetry, no known institutional adopters mentioned.

Code analysis
Architecture

Based on README, the repository appears to be organized as a flat collection of self-contained example programs, each in its own directory with a main.go file. Examples are built as standalone executables using Go's standard build tooling. No shared framework or abstraction layer is documented; each example likely demonstrates specific chromedp API patterns in isolation.

Tests

Not documented in README. No mention of automated tests, test fixtures, or CI pipelines for verifying examples remain functional.

Maintenance

Last push 2026-07-06 (today relative to analysis date) indicates active maintenance. However, the README explicitly acknowledges that 'examples may break occasionally' when target websites change, and that selectors may become stale. This is a realistic constraint for web scraping examples, not a maintenance failure. Update frequency appears tied to breaking changes rather than regular development cycles.

Honest verdict

ADOPT IF: you are learning chromedp or need reference implementations of common browser automation patterns in Go; you value focused, practical examples over exhaustive coverage. AVOID IF: you need comprehensive, guaranteed-working examples across many websites (README warns that selectors break when sites change); you require automated test coverage for the examples themselves; you prefer language-agnostic automation tools. MONITOR IF: you are evaluating chromedp for a new project and want to assess the quality and breadth of available examples before committing.

Independent dimensions

Mainstream potential

2/10

Technical importance

5/10

Adoption evidence

3/10

Risks
  • Examples frequently break when target websites change layout or selectors, as documented in README; maintenance burden falls on community contributors.
  • No automated testing of examples means bitrot is discovered through user reports rather than CI, leading to potential outdated or non-functional samples.
  • Repository depends entirely on chromedp adoption; if chromedp falls behind competing libraries (Playwright, Puppeteer), examples may become less relevant.
  • Learning-focused examples may oversimplify error handling, timeouts, or production-hardening patterns, leading developers to copy-paste fragile code.
  • Update lag: examples may lag behind new chromedp API features, leaving users without reference code for newer capabilities.
Prediction

Repository will remain stable and low-activity, serving as a passive reference resource for chromedp users. Unlikely to see rapid growth or significant feature expansion. Maintenance will be reactive (fixing broken examples when reported) rather than proactive. Success measured by continued relevance to chromedp community, not by independent adoption.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

Go
99.4%
Dockerfile
0.6%

Information

Language
Go
License
MIT
Last updated
5d ago
Created
104mo ago
Analyzed with
anthropic/claude-haiku-4-5

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Recent releases

No releases published yet.

Similar repos

chromedp

chromedp/chromedp

chromedp is a Go library for automating browser interactions via the Chrome...

13.2k Go Dev Tools
puppeteer

puppeteer/examples

A collection of practical, use case-driven examples demonstrating Puppeteer...

2.4k JavaScript Dev Tools
go-rod

go-rod/rod

Rod is a high-level Chrome DevTools Protocol driver for Go, purpose-built for...

chrome-php

chrome-php/chrome

Chrome PHP is a PHP library for instrumenting headless Chrome/Chromium...

2.7k PHP Dev Tools
GoogleChrome

GoogleChrome/samples

GoogleChrome/samples is a curated collection of code examples demonstrating new...

5.9k JavaScript Web Dev
vs. alternatives
Selenium (Go bindings)

Selenium is more mature and language-agnostic, but chromedp examples focus specifically on Chrome DevTools protocol with lower overhead; Selenium has larger ecosystem of examples and tutorials.

Playwright (Go via shim)

Playwright examples are more polished and cross-browser, but chromedp is lighter-weight and Go-native; chromedp examples are smaller in number but focused on direct Chrome automation.

Puppeteer (Node.js, plus Go ports)

Puppeteer has significantly more examples and broader adoption in JavaScript; chromedp examples serve Go developers specifically and are smaller in scope.

Colly (web scraping library)

Colly is simpler for static HTML parsing, but chromedp handles JavaScript-heavy sites; examples target different use cases.

Headless Chrome CLI + shell scripting

Direct Chrome CLI is minimal but requires manual protocol handling; chromedp examples abstract that complexity with library integration.