From 63264644e1081fc5b194144eda63c0c3e6aac87a Mon Sep 17 00:00:00 2001 From: Nicolas Date: Thu, 29 Aug 2024 20:06:55 -0300 Subject: [PATCH 1/5] Nick: fixed js-sdk map params --- apps/js-sdk/firecrawl/package.json | 2 +- .../firecrawl/src/__tests__/e2e_withAuth/index.test.ts | 1 - apps/js-sdk/firecrawl/types/index.d.ts | 9 +++------ 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/apps/js-sdk/firecrawl/package.json b/apps/js-sdk/firecrawl/package.json index 6eb37a22..4ca7e800 100644 --- a/apps/js-sdk/firecrawl/package.json +++ b/apps/js-sdk/firecrawl/package.json @@ -1,6 +1,6 @@ { "name": "@mendable/firecrawl-js", - "version": "1.0.3", + "version": "1.0.4", "description": "JavaScript SDK for Firecrawl API", "main": "build/cjs/index.js", "types": "types/index.d.ts", diff --git a/apps/js-sdk/firecrawl/src/__tests__/e2e_withAuth/index.test.ts b/apps/js-sdk/firecrawl/src/__tests__/e2e_withAuth/index.test.ts index d71688b5..7d107afe 100644 --- a/apps/js-sdk/firecrawl/src/__tests__/e2e_withAuth/index.test.ts +++ b/apps/js-sdk/firecrawl/src/__tests__/e2e_withAuth/index.test.ts @@ -189,7 +189,6 @@ describe('FirecrawlApp<"v0"> E2E Tests', () => { 10 )) as FirecrawlDocumentV0[]; expect(response).not.toBeNull(); - console.log({ response }); expect(response[0].content).toContain("_Roast_"); }, 60000 diff --git a/apps/js-sdk/firecrawl/types/index.d.ts b/apps/js-sdk/firecrawl/types/index.d.ts index e785cfd4..3ca10744 100644 --- a/apps/js-sdk/firecrawl/types/index.d.ts +++ b/apps/js-sdk/firecrawl/types/index.d.ts @@ -246,13 +246,10 @@ export interface CrawlStatusResponseV0 { * Defines options for mapping URLs during a crawl. */ export interface MapParams { - includePaths?: string[]; - excludePaths?: string[]; - maxDepth?: number; - limit?: number; - allowBackwardLinks?: boolean; - allowExternalLinks?: boolean; + search?: string; ignoreSitemap?: boolean; + includeSubdomains?: boolean; + limit?: number; } /** * Response interface for mapping operations. From 7caaee28c5537fc5852aef87c47d9b6602aa6205 Mon Sep 17 00:00:00 2001 From: Eric Ciarla Date: Thu, 29 Aug 2024 21:40:44 -0400 Subject: [PATCH 2/5] Update ui component to v1 --- apps/ui/ingestion-ui/README.md | 4 +- apps/ui/ingestion-ui/package-lock.json | 105 +++ apps/ui/ingestion-ui/package.json | 1 + apps/ui/ingestion-ui/src/App.tsx | 28 +- .../src/components/ingestionV1.tsx | 603 ++++++++++++++++++ .../src/components/ui/radio-group.tsx | 42 ++ 6 files changed, 780 insertions(+), 3 deletions(-) create mode 100644 apps/ui/ingestion-ui/src/components/ingestionV1.tsx create mode 100644 apps/ui/ingestion-ui/src/components/ui/radio-group.tsx diff --git a/apps/ui/ingestion-ui/README.md b/apps/ui/ingestion-ui/README.md index e6b49b95..61f9f983 100644 --- a/apps/ui/ingestion-ui/README.md +++ b/apps/ui/ingestion-ui/README.md @@ -20,7 +20,7 @@ This template provides an easy way to spin up a UI for Firecrawl using React. It ``` 2. Set up your Firecrawl API key: - Open `src/components/FirecrawlComponent.tsx` and replace the placeholder API key: + Open `src/components/ingestion.tsx` and replace the placeholder API key: ```typescript const FIRECRAWL_API_KEY = "your-api-key-here"; @@ -36,7 +36,7 @@ This template provides an easy way to spin up a UI for Firecrawl using React. It ## Customization -The main Firecrawl component is located in `src/components/FirecrawlComponent.tsx`. You can modify this file to customize the UI or add additional features. +The main Firecrawl component is located in `src/components/ingestion.tsx`. You can modify this file to customize the UI or add additional features. ## Security Considerations diff --git a/apps/ui/ingestion-ui/package-lock.json b/apps/ui/ingestion-ui/package-lock.json index 7038a1f2..e48e99b8 100644 --- a/apps/ui/ingestion-ui/package-lock.json +++ b/apps/ui/ingestion-ui/package-lock.json @@ -11,6 +11,7 @@ "@radix-ui/react-checkbox": "^1.1.1", "@radix-ui/react-collapsible": "^1.1.0", "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-radio-group": "^1.2.0", "@radix-ui/react-slot": "^1.1.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", @@ -1192,6 +1193,32 @@ } } }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.0.tgz", + "integrity": "sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, "node_modules/@radix-ui/react-compose-refs": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", @@ -1220,6 +1247,21 @@ } } }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.0.tgz", + "integrity": "sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/@radix-ui/react-id": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", @@ -1304,6 +1346,69 @@ } } }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.2.0.tgz", + "integrity": "sha512-yv+oiLaicYMBpqgfpSPw6q+RyXlLdIpQWDHZbUKURxe+nEh53hFXPPlfhfQQtYkS5MMK/5IWIa76SksleQZSzw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-presence": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-roving-focus": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-use-previous": "1.1.0", + "@radix-ui/react-use-size": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.0.tgz", + "integrity": "sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, "node_modules/@radix-ui/react-slot": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", diff --git a/apps/ui/ingestion-ui/package.json b/apps/ui/ingestion-ui/package.json index 48009648..01a754b2 100644 --- a/apps/ui/ingestion-ui/package.json +++ b/apps/ui/ingestion-ui/package.json @@ -13,6 +13,7 @@ "@radix-ui/react-checkbox": "^1.1.1", "@radix-ui/react-collapsible": "^1.1.0", "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-radio-group": "^1.2.0", "@radix-ui/react-slot": "^1.1.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", diff --git a/apps/ui/ingestion-ui/src/App.tsx b/apps/ui/ingestion-ui/src/App.tsx index eb0e6954..b80a5ad8 100644 --- a/apps/ui/ingestion-ui/src/App.tsx +++ b/apps/ui/ingestion-ui/src/App.tsx @@ -1,9 +1,35 @@ +import { useState } from "react"; import FirecrawlComponent from "./components/ingestion"; +import FirecrawlComponentV1 from "./components/ingestionV1"; +import { RadioGroup, RadioGroupItem } from "@/components/ui/radio-group"; +import { Label } from "@/components/ui/label"; function App() { + const [selectedComponent, setSelectedComponent] = useState<"v0" | "v1">("v1"); + return ( <> - +
+ setSelectedComponent(value as "v0" | "v1")} + className="flex space-x-6 mt-6" + > +
+ + +
+
+ + +
+
+
+ {selectedComponent === "v1" ? ( + + ) : ( + + )} ); } diff --git a/apps/ui/ingestion-ui/src/components/ingestionV1.tsx b/apps/ui/ingestion-ui/src/components/ingestionV1.tsx new file mode 100644 index 00000000..b34c0d6b --- /dev/null +++ b/apps/ui/ingestion-ui/src/components/ingestionV1.tsx @@ -0,0 +1,603 @@ +import { useState, ChangeEvent, FormEvent, useEffect } from "react"; +import { + Card, + CardHeader, + CardTitle, + CardContent, + CardFooter, +} from "@/components/ui/card"; +import { Input } from "@/components/ui/input"; +import { Button } from "@/components/ui/button"; +import { Checkbox } from "@/components/ui/checkbox"; +import { Label } from "@/components/ui/label"; +import { + Collapsible, + CollapsibleContent, + CollapsibleTrigger, +} from "@/components/ui/collapsible"; +import { ChevronDown, ChevronLeft, ChevronRight } from "lucide-react"; + +//! Hardcoded values (not recommended for production) +//! Highly recommended to move all Firecrawl API calls to the backend (e.g. Next.js API route) +const FIRECRAWL_API_URL = "https://api.firecrawl.dev"; // Replace with your actual API URL whether it is local or using Firecrawl Cloud +const FIRECRAWL_API_KEY = "fc-YOUR_API_KEY"; // Replace with your actual API key + +interface FormData { + url: string; + crawlSubPages: boolean; + search: string; + limit: string; + maxDepth: string; + excludePaths: string; + includePaths: string; + extractMainContent: boolean; +} + +interface CrawlerOptions { + includes?: string[]; + excludes?: string[]; + maxDepth?: number; + limit?: number; + returnOnlyUrls: boolean; +} + +interface ScrapeOptions { + formats?: string[]; + onlyMainContent?: boolean; +} + +interface PageOptions { + onlyMainContent: boolean; +} + +interface RequestBody { + url: string; + crawlerOptions?: CrawlerOptions; + pageOptions?: PageOptions; + search?: string; + excludePaths?: string[]; + includePaths?: string[]; + maxDepth?: number; + limit?: number; + scrapeOptions?: ScrapeOptions; + formats?: string[]; +} + +interface ScrapeResultMetadata { + title: string; + description: string; + language: string; + sourceURL: string; + pageStatusCode: number; + pageError?: string; + [key: string]: string | number | undefined; +} + +interface ScrapeResultData { + markdown: string; + content: string; + html: string; + rawHtml: string; + metadata: ScrapeResultMetadata; + llm_extraction: Record; + warning?: string; +} + +interface ScrapeResult { + success: boolean; + data: ScrapeResultData; +} + +export default function FirecrawlComponentV1() { + const [formData, setFormData] = useState({ + url: "", + crawlSubPages: false, + search: "", + limit: "", + maxDepth: "", + excludePaths: "", + includePaths: "", + extractMainContent: false, + }); + const [loading, setLoading] = useState(false); + const [scrapingSelectedLoading, setScrapingSelectedLoading] = + useState(false); + const [crawledUrls, setCrawledUrls] = useState([]); + const [selectedUrls, setSelectedUrls] = useState([]); + const [scrapeResults, setScrapeResults] = useState< + Record + >({}); + const [isCollapsibleOpen, setIsCollapsibleOpen] = useState(true); + const [crawlStatus, setCrawlStatus] = useState<{ + current: number; + total: number | null; + }>({ current: 0, total: null }); + const [elapsedTime, setElapsedTime] = useState(0); + const [showCrawlStatus, setShowCrawlStatus] = useState(false); + const [isScraping, setIsScraping] = useState(false); + const [currentPage, setCurrentPage] = useState(1); + const urlsPerPage = 10; + + useEffect(() => { + let timer: NodeJS.Timeout; + if (loading) { + setShowCrawlStatus(true); + timer = setInterval(() => { + setElapsedTime((prevTime) => prevTime + 1); + }, 1000); + } + return () => { + if (timer) clearInterval(timer); + }; + }, [loading]); + + const handleChange = (e: ChangeEvent) => { + const { name, value, type, checked } = e.target; + setFormData((prevData) => { + const newData = { + ...prevData, + [name]: type === "checkbox" ? checked : value, + }; + + // Automatically check "Crawl Sub-pages" if limit or search have content + if (name === "limit" || name === "search") { + newData.crawlSubPages = !!value || !!newData.limit || !!newData.search; + } + + return newData; + }); + }; + + const handleSubmit = async (e: FormEvent) => { + e.preventDefault(); + setLoading(true); + setIsCollapsibleOpen(false); + setElapsedTime(0); + setCrawlStatus({ current: 0, total: null }); + setIsScraping(!formData.crawlSubPages); + setCrawledUrls([]); + setSelectedUrls([]); + setScrapeResults({}); + setScrapingSelectedLoading(false); + setShowCrawlStatus(false); + + try { + const endpoint = `${FIRECRAWL_API_URL}/v1/${ + formData.crawlSubPages ? "map" : "scrape" + }`; + + const requestBody: RequestBody = formData.crawlSubPages + ? { + url: formData.url, + search: formData.search || undefined, + limit: formData.limit ? parseInt(formData.limit) : undefined, + } + : { + url: formData.url, + formats: ["markdown"], + }; + + const response = await fetch(endpoint, { + method: "POST", + headers: { + Authorization: `Bearer ${FIRECRAWL_API_KEY}`, + "Content-Type": "application/json", + }, + body: JSON.stringify(requestBody), + }); + + if (!response.ok) { + throw new Error(`HTTP error! status: ${response.status}`); + } + + const data = await response.json(); + if (formData.crawlSubPages) { + if (data.success === true && Array.isArray(data.links)) { + setCrawledUrls(data.links); + setSelectedUrls(data.links); + setCrawlStatus({ + current: data.links.length, + total: data.links.length, + }); + + // Set scrape results with the links + const linkResults: Record = {}; + data.links.forEach((link: string) => { + linkResults[link] = { + success: true, + data: { + metadata: { + sourceURL: link, + title: "", + description: "", + language: "", + pageStatusCode: 200, + }, + markdown: "", + content: "", + html: "", + rawHtml: "", + llm_extraction: {}, + }, + }; + }); + } else { + console.error("Unexpected response format from map endpoint"); + console.log(data); + } + } else { + setScrapeResults({ [formData.url]: data }); + setCrawlStatus({ current: 1, total: 1 }); + } + } catch (error) { + console.error("Error:", error); + setScrapeResults({ + error: { + success: false, + data: { + metadata: { + pageError: "Error occurred while fetching data", + title: "", + description: "", + language: "", + sourceURL: "", + pageStatusCode: 0, + }, + markdown: "", + content: "", + html: "", + rawHtml: "", + llm_extraction: {}, + }, + }, + }); + } finally { + setLoading(false); + } + }; + + const handleScrapeSelected = async () => { + setLoading(true); + setElapsedTime(0); + setCrawlStatus({ current: 0, total: selectedUrls.length }); + setIsScraping(true); + setScrapingSelectedLoading(true); + const newScrapeResults: Record = {}; + + for (const [index, url] of selectedUrls.entries()) { + try { + const response = await fetch(`${FIRECRAWL_API_URL}/v1/scrape`, { + method: "POST", + headers: { + Authorization: `Bearer ${FIRECRAWL_API_KEY}`, + "Content-Type": "application/json", + }, + body: JSON.stringify({ + url: url, + formats: ["markdown"], + }), + }); + + if (!response.ok) { + throw new Error(`HTTP error! status: ${response.status}`); + } + + const data: ScrapeResult = await response.json(); + newScrapeResults[url] = data; + setCrawlStatus((prev) => ({ ...prev, current: index + 1 })); + setScrapeResults({ ...scrapeResults, ...newScrapeResults }); + } catch (error) { + console.error(`Error scraping ${url}:`, error); + newScrapeResults[url] = { + success: false, + data: { + markdown: "", + content: "", + html: "", + rawHtml: "", + metadata: { + title: "", + description: "", + language: "", + sourceURL: url, + pageStatusCode: 0, + pageError: (error as Error).message, + }, + llm_extraction: {}, + }, + }; + } + } + + setLoading(false); + setIsScraping(false); + }; + + const handlePageChange = (newPage: number) => { + setCurrentPage(newPage); + }; + + const paginatedUrls = crawledUrls.slice( + (currentPage - 1) * urlsPerPage, + currentPage * urlsPerPage + ); + + return ( +
+ + + + Extract web content (V1) + + Powered by Firecrawl 🔥 + + +
+ Use this component to quickly give your users the ability to connect + their AI apps to web data with Firecrawl. Learn more on the{" "} + + Firecrawl docs! + +
+
+ +
+
+ + +
+ + + + + +
+ + setFormData((prev) => ({ + ...prev, + crawlSubPages: checked, + })) + } + /> + +
+ +
+
+ + +
+
+ + +
+
+
+
+
+ {showCrawlStatus && ( +
+
+ {!isScraping && + crawledUrls.length > 0 && + !scrapingSelectedLoading && ( + <> + { + if (checked) { + setSelectedUrls([...crawledUrls]); + } else { + setSelectedUrls([]); + } + }} + /> + + + )} +
+
+ {isScraping + ? `Scraped ${crawlStatus.current} page(s) in ${elapsedTime}s` + : `Crawled ${crawlStatus.current} pages in ${elapsedTime}s`} +
+
+ )} + + {crawledUrls.length > 0 && + !scrapingSelectedLoading && + !isScraping && ( + <> +
    + {paginatedUrls.map((url, index) => ( +
  • + + setSelectedUrls((prev) => + prev.includes(url) + ? prev.filter((u) => u !== url) + : [...prev, url] + ) + } + /> + + {url.length > 70 ? `${url.slice(0, 70)}...` : url} + +
  • + ))} +
+
+ + + Page {currentPage} of{" "} + {Math.ceil(crawledUrls.length / urlsPerPage)} + + +
+ + )} +
+ + {crawledUrls.length > 0 && !scrapingSelectedLoading && ( + + )} + +
+ + {Object.keys(scrapeResults).length > 0 && ( +
+

Scrape Results

+

+ You can do whatever you want with the scrape results. Here is a + basic showcase of the markdown. +

+
+ {Object.entries(scrapeResults).map(([url, result]) => ( + + + {result.data.metadata.title} + + {url + .replace(/^(https?:\/\/)?(www\.)?/, "") + .replace(/\/$/, "")} + + + +
+ {result.success ? ( + <> +
+                          {result.data.markdown.trim()}
+                        
+ + ) : ( + <> +

+ Failed to scrape this URL +

+

+ {result.toString()} +

+ + )} +
+
+
+ ))} +
+
+ )} +
+ ); +} diff --git a/apps/ui/ingestion-ui/src/components/ui/radio-group.tsx b/apps/ui/ingestion-ui/src/components/ui/radio-group.tsx new file mode 100644 index 00000000..43b43b48 --- /dev/null +++ b/apps/ui/ingestion-ui/src/components/ui/radio-group.tsx @@ -0,0 +1,42 @@ +import * as React from "react" +import * as RadioGroupPrimitive from "@radix-ui/react-radio-group" +import { Circle } from "lucide-react" + +import { cn } from "@/lib/utils" + +const RadioGroup = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => { + return ( + + ) +}) +RadioGroup.displayName = RadioGroupPrimitive.Root.displayName + +const RadioGroupItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => { + return ( + + + + + + ) +}) +RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName + +export { RadioGroup, RadioGroupItem } From 8b7ee46dabc2eb6fae6b6e17306bddc20747c422 Mon Sep 17 00:00:00 2001 From: Eric Ciarla Date: Thu, 29 Aug 2024 22:13:23 -0400 Subject: [PATCH 3/5] Add Firecrawl logo --- img/firecrawl_logo.png | Bin 0 -> 75664 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/firecrawl_logo.png diff --git a/img/firecrawl_logo.png b/img/firecrawl_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..bd72322239393f399c1ff144c13b4820c406e76a GIT binary patch literal 75664 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 Date: Thu, 29 Aug 2024 22:47:42 -0400 Subject: [PATCH 4/5] Update README.md --- README.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/README.md b/README.md index 21f480cc..6309b853 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,38 @@ +

+ +

+
+ + # 🔥 Firecrawl Crawl and convert any website into LLM-ready markdown or structured data. Built by [Mendable.ai](https://mendable.ai?ref=gfirecrawl) and the Firecrawl community. Includes powerful scraping, crawling and data extraction capabilities. From 4be51cee004b2492253bd83f3605689f5d13bfd5 Mon Sep 17 00:00:00 2001 From: Eric Ciarla <43451761+ericciarla@users.noreply.github.com> Date: Thu, 29 Aug 2024 22:51:38 -0400 Subject: [PATCH 5/5] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 6309b853..22a2c12f 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,9 @@ _This repository is in its early development stages. We are still merging custom _Pst. hey, you, join our stargazers :)_ - + + GitHub stars + ## How to use it?