1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 nest-asyncio, 7 pydantic, 8 python-dotenv, 9 requests, 10 websockets, 11}: 12 13buildPythonPackage rec { 14 pname = "firecrawl-py"; 15 version = "1.7.0"; 16 pyproject = true; 17 18 src = fetchFromGitHub { 19 owner = "mendableai"; 20 repo = "firecrawl"; 21 tag = "v${version}"; 22 hash = "sha256-Tsw5OMjv/t9lt3seG31958R9o+s/6N7MGzHgqgkHrzQ="; 23 }; 24 25 sourceRoot = "${src.name}/apps/python-sdk"; 26 27 build-system = [ setuptools ]; 28 29 dependencies = [ 30 nest-asyncio 31 pydantic 32 python-dotenv 33 requests 34 websockets 35 ]; 36 37 # No tests 38 doCheck = false; 39 40 pythonImportsCheck = [ "firecrawl" ]; 41 42 meta = { 43 description = "Turn entire websites into LLM-ready markdown or structured data. Scrape, crawl and extract with a single API"; 44 homepage = "https://firecrawl.dev"; 45 changelog = "https://github.com/mendableai/firecrawl/releases/tag/${src.tag}"; 46 license = lib.licenses.mit; 47 maintainers = with lib.maintainers; [ drupol ]; 48 }; 49}