Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
Crawl4AI is an open-source web crawler and scraper built specifically for the LLM era. Where traditional crawlers hand back raw HTML, Crawl4AI turns the web into clean, LLM-ready Markdown — with headings, tables, code blocks, and citation hints preserved — so the output drops straight into retrieval-augmented generation pipelines, agent tool-calls, and data workflows. Created by Hossein (unclecode) out of frustration with gated, pay-per-use extraction services, it has grown into the most-starred crawler on GitHub, with a community north of 70,000 stars and heavy weekly download volume on PyPI. ## Clean Markdown for RAG and Agents The core value proposition is fidelity of output. Crawl4AI does not just strip tags; it produces smart Markdown that keeps document structure intact and adds citation hints, which is exactly what downstream LLMs need to ground answers and cite sources. That focus on "LLM-ready" output is what separates it from general-purpose scrapers, and it is why it has become a default building block for RAG systems and agent frameworks that need to read live web content rather than a stale index. ## An Async, Controllable Crawler Architecturally, Crawl4AI runs an asynchronous browser pool with caching and minimal network hops, which keeps it fast in practice even at scale. It gives developers full control over the crawl: sessions, proxies, cookies, custom user scripts, and hooks are all first-class. Recent releases added deep-crawl crash recovery through a resume_state mechanism and on_state_change callbacks for long-running jobs, plus a prefetch mode that speeds up URL discovery by five to ten times. An adaptive crawling mode learns site patterns and explores only the parts of a site that matter, cutting wasted requests. ## Structured Extraction Beyond Markdown, Crawl4AI supports structured data extraction two ways: fast, deterministic CSS/XPath selector schemas when the page layout is known, and LLM-driven extraction when it is not, letting a model pull typed fields out of messy pages. This dual approach lets teams keep costs and latency low for predictable sites while still handling the long tail of irregular pages. ## Deployment and Security Crawl4AI ships as a Python library, a CLI, and a Docker API server, so it can run from a notebook or scale out as a service. The Docker server has been through a pointed security arc: the v0.8.7 release hardened it against critical vulnerabilities (RCE, SSRF, auth bypass, arbitrary file write, XSS, and a hardcoded JWT secret), and v0.9.0 made it secure-by-default — authentication is on, the server binds to loopback unless given a token, and the request body is treated as an untrusted trust boundary. The current v0.9.2 line is a maintenance release fixing a dispatcher task/page leak, Docker playground config, and packaging issues. A closed-beta hosted Cloud API is also in the works for teams that want managed, large-scale extraction. ## Trade-offs and Limitations As a browser-based crawler, Crawl4AI carries the operational weight of running headless browsers — memory and CPU cost scale with concurrency, and Playwright/Docker packaging adds moving parts. The security history, while now addressed, is a reminder that self-hosting a crawl API exposes a real attack surface that must be locked down. LLM-based extraction adds token cost and latency compared to selector schemas, and as with any crawler, users are responsible for respecting robots.txt, rate limits, and the terms of service of the sites they crawl. The project also moves quickly across 0.x releases, so pinning versions is wise for production. ## Who Should Use This Crawl4AI is a strong fit for developers building RAG systems, AI agents, and data pipelines that need reliable, structured web content in a format LLMs can actually use. Hobbyists get a zero-key, install-and-go library; teams get a controllable, deployable service with proxies, sessions, and Docker support. Anyone standing up a self-hosted crawl API should adopt the v0.9+ secure-by-default posture and keep dependencies current, but for turning the open web into LLM-ready data, Crawl4AI is one of the most capable and widely adopted open-source options available.