cloudflare/kitesurf

Source
GitHub
First trending
Category
Data collection
GitHub stars
545
Main language
TypeScript
Website
kitesurf.dev (opens in a new tab)

This page introduces an external open-source repository. It is not an HDATF product.

What it does

Kitesurf is an experimental browser engine for developers and automation clients that need page execution on Cloudflare Workers without Chrome or a browser container. It accepts page URLs and Chrome DevTools Protocol commands and returns browser state, screenshots, and supported PDF output. Rust components compiled to WebAssembly combine Blitz for HTML and layout, Stylo for CSS, Boa for page JavaScript, and graphics libraries for rendering. A Worker Loader binding creates separate page and renderer workers, and the renderer replays recorded scenes into image or PDF bytes. Puppeteer can connect through the browser WebSocket endpoint, with HTTP discovery and a DevTools interface also documented. Local development uses Bazelisk, Node.js 22 or newer, pnpm 9.15.4, and Wrangler, with additional GNU tar on macOS. Cloud deployment requires paid Dynamic Workers and an external authentication layer such as Cloudflare Access because the engine has no built-in authentication. It is not a complete Chrome implementation, so CDP compatibility, target-site rendering, resource use, and operating cost require independent validation.

License

Apache-2.0 Permissive, with a patent grant. Commercial use is allowed; keep the notices and state your changes.

More in this category

  • ZiChuanLan/freebie-radar
    Resource Radar is a self-hosted information aggregation application for people who want to separate genuine free offers from discounts, trials, promotions, open-source projects and news. It takes posts and feed items from communities, game services, GitHub, Telegram and custom RSS, then presents a browser feed and sends Telegram notifications or digests. Its processing pipeline normalizes text and URLs, extracts prices, redemption codes and expiry dates, deduplicates items, and applies blocking rules before optional AI review. An OpenAI-compatible model endpoint classifies content type, subject category and acquisition conditions, returning retention decisions, quality scores and reasons rather than training a new model. Routing rules further filter notifications by content, keywords, price and score, with immediate or batched delivery and quiet hours. Starting requires Docker or Node.js 22.5 or later with pnpm, writable SQLite storage, an administration token for public deployment, and model credentials or Telegram bot settings when those features are enabled. Collection depends on each source's availability and permissions, and authenticated sites need separately managed browser sessions or cookies rather than becoming openly accessible through the application. The README says login credentials stay local, but the inspected cookie-store and collector code also support saving raw cookies in SQLite settings and forwarding them to a configured collection runner, so that privacy claim cannot be applied to every supported configuration.
  • anefzaoui/misterdownloadmanager
    Mister Download Manager is a desktop download manager for people collecting files from links, browsers and scheduled queues. File addresses, browser handoffs or link lists become local downloads with progress, pause, resume and destination controls. Its Rust engine probes file size and validators, splits remaining ranges among connections, writes them into a partial file and saves segment state for recovery. Video lookup uses separate yt-dlp and ffmpeg helpers, while torrent support and experimental debrid integrations are separate components using the user's own service access. An MCP server, a standard connection for AI tools, passes download requests to the running application through a token-protected local channel. Full listing and control require the optional automation API, although adding downloads remains possible without that API. Browser capture requires its extension and native messaging host, and the documented macOS builds remain untested while Linux lacks Orca and Flatpak browser support. Advertised speed comparisons come from the maintainer's local test server rather than arbitrary internet connections, and the documentation explicitly rejects DRM downloads and does not circumvent Google Drive access or download refusals.
  • Usagi-org/ai-goofish-monitor
    ai-goofish-monitor is a Web-managed system for monitoring listings on the Xianyu secondhand marketplace. It accepts search terms, prices, regions, schedules, account login state and either natural-language requirements or keyword rules. Playwright gathers listings, item details, seller information and images, while the analysis path applies a multimodal AI model or keyword matching. It stores tasks, results and price history in SQLite and can notify configured channels about recommended items. The Web interface manages tasks, accounts, criteria, logs and result browsing, with multiple tasks and scheduled runs. It needs a Python and browser environment or the provided container, plus an external image-capable model endpoint for AI analysis. Login cookies require protection, and AI analysis can transmit item and seller information to an external provider. Account and proxy rotation and automation-concealment behavior require platform-policy and security review, and neither reliable continued collection nor the accuracy of recommendations has been independently verified here.
  • developeryj1992/ai-trend-studio
    AI Trend Studio is a local browser dashboard for people tracking AI topics and turning videos or live discussions into notes. It reads public Douyin, Bilibili, Weibo, and Zhihu signals, filters them by configurable keywords, and supports Bilibili keyword search. Users import descriptions, comments, transcripts, or SRT and VTT subtitles, and available public Bilibili subtitles can be fetched. Live sessions store user-entered speaker events rather than automatically recognizing audio or identifying speakers. Outputs include conclusions, key points, actions, risks, keywords, and a JSON workspace export. A Chinese extractive summarizer scores sentences locally, while an optional OpenAI-compatible Chat Completions endpoint can generate summaries and receives the submitted content. The Python 3.10 or newer standard-library server and static frontend start on localhost port 8765 and store state, including configured API keys, in data/db.json. Public interfaces can fail or change, protected content requires authorized input, and exposing the server requires additional authentication and transport protection.
  • punitarani/fli
    Fli is a library for querying Google Flights information from software. Its main users are developers building travel search and conversational assistants. Inputs include origin and destination airport codes, dates, passenger counts, cabin class and stop preferences. It returns prices, durations, airlines and departure and arrival details for individual legs. It provides a Python library, a command line interface and an MCP server, using the standard through which AI calls external tools. Although the introduction emphasizes direct API access, the current implementation fetches search pages and decodes the flight data embedded in them. Getting started requires Python 3.10 or later and the flights package, with separate optional dependencies for MCP. The current transport cannot perform multi-city searches or retrieve booking options, and some filters, including baggage, are unsupported. Date searches fetch one page per date and cover at most 93 dates per call, so an empty result does not establish that no flights exist.

Only repositories in the ranked Trendshift lists are included, and the lists are used only to find candidates. We do not copy their ranks. Descriptions, licenses and star counts come from each GitHub repository. The notes are our own reading. We have not tested these projects, and a place on a trending list does not prove quality.

View on GitHub (opens in a new tab)