awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
kblok avatar

kblok/puppeteer-sharp

0
View on GitHub↗
3,901 stars·482 forks·C#·MIT·28 viewswww.puppeteersharp.com↗

Puppeteer Sharp

Puppeteer Sharp is a web browser automation library and a headless Chrome .NET API. It provides a type-safe C# interface for controlling headless browsers, functioning as a Chrome DevTools Protocol wrapper that translates .NET method calls into JSON-RPC messages.

The project enables programmatic navigation of pages, interaction with elements, and the execution of JavaScript within a .NET environment. It serves as an end-to-end testing framework for simulating user workflows and verifying web application behavior.

Additional capabilities include automated screenshot generation for visual regression testing and reporting. The library facilitates the integration of browser engine capabilities into .NET applications to perform data extraction and web automation tasks.

Features

  • Browser Automation - Provides programmatic control of headless browsers for web automation and end-to-end testing.
  • DotNet Wrappers - Provides a type-safe C# interface for controlling headless Chrome browsers using the Chrome DevTools Protocol.
  • End-to-End Testing - Simulates complete user workflows across an entire application stack to verify functional correctness.
  • End-to-End Testing Frameworks - Provides a comprehensive framework for validating application stacks by simulating user interactions via browsers.
  • Headless Browser Automation Libraries - Provides a programmatic interface to drive headless browsers for scraping, testing, and document generation within .NET.
  • Headless Browser Controllers - Provides a control layer for managing headless browser instances to navigate and interact with dynamic content.
  • Headless Rendering Engines - Integrates a headless rendering engine into .NET applications to execute JavaScript and interact with web content.
  • DevTools Protocol Clients - Acts as a client that translates high-level .NET calls into Chrome DevTools Protocol messages for browser control.
  • Remote Object Mappings - Synchronizes browser-side elements with local object instances via a mapping of remote identifiers.
  • CDP Screenshot Captures - Captures page screenshots at specific viewport sizes using the Chrome DevTools Protocol.
  • JSON-RPC Implementations - Uses the JSON-RPC protocol for structured communication between the .NET client and the browser engine.
  • Browser Process Lifecycle Management - Programmatically manages the full lifecycle of the external browser executable as a child process.
  • Remote Object Proxies - Maps remote browser objects to local type-safe C# classes using proxy objects for remote state management.
  • On-Demand Web Page Screenshot Automations - Generates precise visual snapshots of web pages for visual regression testing and automated reporting.
  • RPC Over WebSocket - Implements remote procedure calls over a persistent WebSocket connection using the Chrome DevTools Protocol.
  • Chromium Drivers - .NET port of the official Chrome automation API.
  • General Utilities - Headless browser automation library.

Star history

Star history chart for kblok/puppeteer-sharpStar history chart for kblok/puppeteer-sharp

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does kblok/puppeteer-sharp do?

Puppeteer Sharp is a web browser automation library and a headless Chrome .NET API. It provides a type-safe C# interface for controlling headless browsers, functioning as a Chrome DevTools Protocol wrapper that translates .NET method calls into JSON-RPC messages.

What are the main features of kblok/puppeteer-sharp?

The main features of kblok/puppeteer-sharp are: Browser Automation, DotNet Wrappers, End-to-End Testing, End-to-End Testing Frameworks, Headless Browser Automation Libraries, Headless Browser Controllers, Headless Rendering Engines, DevTools Protocol Clients.

Which projects share features with kblok/puppeteer-sharp?

Projects with overlapping indexed features include: executeautomation/mcp-playwright — This project is a Model Context Protocol server that enables Large Language Models to control Playwright browsers for… cyrus-and/chrome-remote-interface — This project is a Node.js library and browser automation framework that provides a JavaScript interface for the Chrome… ultrafunkamsterdam/nodriver — nodriver is an asynchronous Chromium browser automation framework that provides headless control and web scraping… rust-headless-chrome/rust-headless-chrome — This library provides a framework for controlling headless Chrome or Chromium instances through the Chrome DevTools… hardkoded/puppeteer-sharp — Puppeteer Sharp is a .NET wrapper and automation library used to programmatically drive headless Chrome and Chromium… facebook/php-webdriver — php-webdriver is a browser automation library and PHP language binding for the Selenium WebDriver protocol. It serves…

Projects sharing features with Puppeteer Sharp

These projects share indexed features with Puppeteer Sharp. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • executeautomation/mcp-playwrightexecuteautomation avatar

    executeautomation/mcp-playwright

    5,237View on GitHub↗

    This project is a Model Context Protocol server that enables Large Language Models to control Playwright browsers for web automation, scraping, and end-to-end testing. It functions as a programmable interface for executing JavaScript, capturing screenshots, and interacting with web elements across multiple browser engines. The server exposes browser automation capabilities as a set of standardized tools that models can discover and invoke. It supports session-based browser isolation to ensure unique contexts for each client connection and provides a transport layer using either standard input

    TypeScript
    View on GitHub↗5,237
  • cyrus-and/chrome-remote-interfacecyrus-and avatar

    cyrus-and/chrome-remote-interface

    4,539View on GitHub↗

    This project is a Node.js library and browser automation framework that provides a JavaScript interface for the Chrome DevTools Protocol. It functions as a headless browser controller, enabling the programmatic management of browser targets, the execution of scripts, and the monitoring of network activity via WebSocket connections. The interface includes an interactive shell and REPL for real-time command execution and event binding. It also provides utilities for retrieving protocol descriptors and inspecting embedded documentation to identify available commands and parameter types. The lib

    JavaScript
    View on GitHub↗4,539
  • ultrafunkamsterdam/nodriverultrafunkamsterdam avatar

    ultrafunkamsterdam/nodriver

    3,578View on GitHub↗

    nodriver is an asynchronous Chromium browser automation framework that provides headless control and web scraping capabilities. It functions as a Chrome DevTools Protocol client, allowing for granular engine control by attaching directly to the browser's debug port without the need for external driver binaries. The framework is specifically designed as an anti-bot detection bypass tool. It modifies browser fingerprints and protocol headers to evade automated security systems, handle security warnings, and bypass common obstacles like insecure connection alerts. The system covers a broad rang

    Python
    View on GitHub↗3,578
  • rust-headless-chrome/rust-headless-chromerust-headless-chrome avatar

    rust-headless-chrome/rust-headless-chrome

    2,919View on GitHub↗

    This library provides a framework for controlling headless Chrome or Chromium instances through the Chrome DevTools Protocol. It functions as a controller for orchestrating browser lifecycles, enabling developers to automate interactions, extract data, and manage browser processes programmatically within Rust applications. The project distinguishes itself by providing a synchronous interface that wraps asynchronous browser operations, simplifying the control flow for linear automation scripts. It maintains process isolation by spawning independent browser instances as child processes, ensurin

    Rust
    View on GitHub↗2,919
  • Compare all 30 related projects→