gitextract__mw591t9/ ├── .cursor/ │ └── mcp.json ├── .env.example ├── .gitignore ├── LICENSE ├── README.md ├── app/ │ ├── api/ │ │ ├── analyze-edit-intent/ │ │ │ └── route.ts │ │ ├── apply-ai-code/ │ │ │ └── route.ts │ │ ├── apply-ai-code-stream/ │ │ │ └── route.ts │ │ ├── check-vite-errors/ │ │ │ └── route.ts │ │ ├── clear-vite-errors-cache/ │ │ │ └── route.ts │ │ ├── conversation-state/ │ │ │ └── route.ts │ │ ├── create-ai-sandbox/ │ │ │ └── route.ts │ │ ├── create-ai-sandbox-v2/ │ │ │ └── route.ts │ │ ├── create-zip/ │ │ │ └── route.ts │ │ ├── detect-and-install-packages/ │ │ │ └── route.ts │ │ ├── extract-brand-styles/ │ │ │ └── route.ts │ │ ├── generate-ai-code-stream/ │ │ │ └── route.ts │ │ ├── get-sandbox-files/ │ │ │ └── route.ts │ │ ├── install-packages/ │ │ │ └── route.ts │ │ ├── install-packages-v2/ │ │ │ └── route.ts │ │ ├── kill-sandbox/ │ │ │ └── route.ts │ │ ├── monitor-vite-logs/ │ │ │ └── route.ts │ │ ├── report-vite-error/ │ │ │ └── route.ts │ │ ├── restart-vite/ │ │ │ └── route.ts │ │ ├── run-command/ │ │ │ └── route.ts │ │ ├── run-command-v2/ │ │ │ └── route.ts │ │ ├── sandbox-logs/ │ │ │ └── route.ts │ │ ├── sandbox-status/ │ │ │ └── route.ts │ │ ├── scrape-screenshot/ │ │ │ └── route.ts │ │ ├── scrape-url-enhanced/ │ │ │ └── route.ts │ │ ├── scrape-website/ │ │ │ └── route.ts │ │ └── search/ │ │ └── route.ts │ ├── builder/ │ │ └── page.tsx │ ├── generation/ │ │ └── page.tsx │ ├── globals.css │ ├── landing.tsx │ ├── layout.tsx │ └── page.tsx ├── atoms/ │ └── sheets.ts ├── colors.json ├── components/ │ ├── CodeApplicationProgress.tsx │ ├── FirecrawlIcon.tsx │ ├── FirecrawlLogo.tsx │ ├── HMRErrorDetector.tsx │ ├── HeroInput.tsx │ ├── SandboxPreview.tsx │ ├── app/ │ │ ├── (home)/ │ │ │ └── sections/ │ │ │ ├── ai-readiness/ │ │ │ │ ├── ControlPanel.tsx │ │ │ │ ├── InlineResults.tsx │ │ │ │ ├── MetricBars.tsx │ │ │ │ ├── RadarChart.tsx │ │ │ │ └── ScoreChart.tsx │ │ │ ├── endpoints/ │ │ │ │ ├── EndpointsCrawl/ │ │ │ │ │ └── EndpointsCrawl.tsx │ │ │ │ ├── EndpointsExtract/ │ │ │ │ │ └── EndpointsExtract.tsx │ │ │ │ ├── EndpointsMap/ │ │ │ │ │ └── EndpointsMap.tsx │ │ │ │ ├── EndpointsScrape/ │ │ │ │ │ └── EndpointsScrape.tsx │ │ │ │ ├── EndpointsSearch/ │ │ │ │ │ └── EndpointsSearch.tsx │ │ │ │ ├── Extract/ │ │ │ │ │ └── Extract.tsx │ │ │ │ └── Mcp/ │ │ │ │ └── Mcp.tsx │ │ │ ├── hero/ │ │ │ │ ├── Background/ │ │ │ │ │ ├── Background.tsx │ │ │ │ │ ├── BackgroundOuterPiece.tsx │ │ │ │ │ └── _svg/ │ │ │ │ │ └── CenterStar.tsx │ │ │ │ ├── Badge/ │ │ │ │ │ └── Badge.tsx │ │ │ │ ├── Hero.tsx │ │ │ │ ├── Pixi/ │ │ │ │ │ ├── Pixi.tsx │ │ │ │ │ └── tickers/ │ │ │ │ │ ├── ascii.ts │ │ │ │ │ └── features/ │ │ │ │ │ ├── cell.ts │ │ │ │ │ ├── cellReveal.ts │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── AnimatedRect.ts │ │ │ │ │ │ ├── BlinkingContainer.ts │ │ │ │ │ │ └── Dot.ts │ │ │ │ │ ├── crawl.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── mapping.ts │ │ │ │ │ ├── scrape.ts │ │ │ │ │ └── search.ts │ │ │ │ └── Title/ │ │ │ │ └── Title.tsx │ │ │ ├── hero-flame/ │ │ │ │ ├── HeroFlame.tsx │ │ │ │ └── data.json │ │ │ ├── hero-input/ │ │ │ │ ├── Button/ │ │ │ │ │ └── Button.tsx │ │ │ │ ├── HeroInput.tsx │ │ │ │ ├── Tabs/ │ │ │ │ │ ├── Mobile/ │ │ │ │ │ │ └── Mobile.tsx │ │ │ │ │ └── Tabs.tsx │ │ │ │ └── _svg/ │ │ │ │ ├── ArrowRight.tsx │ │ │ │ └── Globe.tsx │ │ │ └── hero-scraping/ │ │ │ ├── Code/ │ │ │ │ ├── Code.tsx │ │ │ │ └── Loading/ │ │ │ │ ├── Loading.tsx │ │ │ │ └── _svg/ │ │ │ │ └── Check.tsx │ │ │ ├── HeroScraping.css │ │ │ ├── HeroScraping.tsx │ │ │ ├── Tag/ │ │ │ │ └── Tag.tsx │ │ │ └── _svg/ │ │ │ ├── BrowserMobile.tsx │ │ │ └── BrowserTab.tsx │ │ ├── .cursor/ │ │ │ └── rules/ │ │ │ └── home-page-components.md │ │ └── generation/ │ │ ├── SidebarInput.tsx │ │ └── SidebarQuickInput.tsx │ ├── shared/ │ │ ├── Playground/ │ │ │ └── Context/ │ │ │ └── types.ts │ │ ├── animated-dot-icon.tsx │ │ ├── animated-height.tsx │ │ ├── ascii-background.tsx │ │ ├── ascii-flame-background.tsx │ │ ├── button/ │ │ │ ├── Button.css │ │ │ └── Button.tsx │ │ ├── buttons/ │ │ │ ├── capsule-button.tsx │ │ │ ├── fire-action-link.tsx │ │ │ ├── index.ts │ │ │ └── slate-button.tsx │ │ ├── color-styles/ │ │ │ └── color-styles.tsx │ │ ├── combobox/ │ │ │ └── combobox.tsx │ │ ├── effects/ │ │ │ ├── .cursor/ │ │ │ │ └── rules/ │ │ │ │ └── flame-effects.md │ │ │ ├── flame/ │ │ │ │ ├── Flame.tsx │ │ │ │ ├── ascii-explosion.tsx │ │ │ │ ├── auth-pulse/ │ │ │ │ │ ├── auth-pulse.tsx │ │ │ │ │ └── pulse-data.json │ │ │ │ ├── core-flame.json │ │ │ │ ├── core-flame.tsx │ │ │ │ ├── explosion-data.json │ │ │ │ ├── flame-background.tsx │ │ │ │ ├── hero-flame-data.json │ │ │ │ ├── hero-flame.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── slate-grid/ │ │ │ │ │ ├── grid-data.json │ │ │ │ │ └── slate-grid.tsx │ │ │ │ ├── subtle-explosion.tsx │ │ │ │ └── subtle-wave/ │ │ │ │ ├── subtle-wave.tsx │ │ │ │ └── wave-data.json │ │ │ ├── index.ts │ │ │ └── subtle-ascii-animation.tsx │ │ ├── firecrawl-icon/ │ │ │ ├── firecrawl-icon-static.tsx │ │ │ └── firecrawl-icon.tsx │ │ ├── header/ │ │ │ ├── BrandKit/ │ │ │ │ ├── BrandKit.tsx │ │ │ │ └── _svg/ │ │ │ │ ├── Download.tsx │ │ │ │ ├── Guidelines.tsx │ │ │ │ └── Icon.tsx │ │ │ ├── Dropdown/ │ │ │ │ ├── Content/ │ │ │ │ │ ├── Content.tsx │ │ │ │ │ └── NavItemRow.tsx │ │ │ │ ├── Github/ │ │ │ │ │ ├── Flame/ │ │ │ │ │ │ ├── Flame.tsx │ │ │ │ │ │ └── data.json │ │ │ │ │ └── Github.tsx │ │ │ │ ├── Mobile/ │ │ │ │ │ ├── Item/ │ │ │ │ │ │ └── Item.tsx │ │ │ │ │ └── Mobile.tsx │ │ │ │ ├── Stories/ │ │ │ │ │ ├── Flame/ │ │ │ │ │ │ └── Flame.tsx │ │ │ │ │ ├── Stories.tsx │ │ │ │ │ └── _svg/ │ │ │ │ │ ├── ArrowUp.tsx │ │ │ │ │ └── Replit.tsx │ │ │ │ └── Wrapper/ │ │ │ │ └── Wrapper.tsx │ │ │ ├── Github/ │ │ │ │ ├── GithubClient.tsx │ │ │ │ └── _svg/ │ │ │ │ └── GithubIcon.tsx │ │ │ ├── HeaderContext.tsx │ │ │ ├── Nav/ │ │ │ │ ├── Item/ │ │ │ │ │ ├── Item.tsx │ │ │ │ │ └── _svg/ │ │ │ │ │ └── ChevronDown.tsx │ │ │ │ ├── Nav.tsx │ │ │ │ ├── RenderEndpointIcon.tsx │ │ │ │ └── _svg/ │ │ │ │ ├── Affiliate.tsx │ │ │ │ ├── Api.tsx │ │ │ │ ├── ArrowRight.tsx │ │ │ │ ├── Careers.tsx │ │ │ │ ├── Changelog.tsx │ │ │ │ ├── Chats.tsx │ │ │ │ ├── Lead.tsx │ │ │ │ ├── MCP.tsx │ │ │ │ ├── Platforms.tsx │ │ │ │ ├── Research.tsx │ │ │ │ ├── Student.tsx │ │ │ │ └── Templates.tsx │ │ │ ├── Toggle/ │ │ │ │ └── Toggle.tsx │ │ │ ├── Wrapper/ │ │ │ │ └── Wrapper.tsx │ │ │ └── _svg/ │ │ │ └── Logo.tsx │ │ ├── hero-flame.tsx │ │ ├── icons/ │ │ │ ├── GitHub.tsx │ │ │ ├── Logo.tsx │ │ │ ├── animated-chevron.tsx │ │ │ ├── animated-icons.tsx │ │ │ ├── arrow-animated.tsx │ │ │ ├── check.tsx │ │ │ ├── chevron-slide.tsx │ │ │ ├── copied.tsx │ │ │ ├── copy.tsx │ │ │ ├── curve.tsx │ │ │ ├── fingerprint-icon.tsx │ │ │ ├── openai.tsx │ │ │ ├── source-icon.tsx │ │ │ ├── symbol-colored.tsx │ │ │ ├── symbol-white.tsx │ │ │ ├── tremor-placeholder.tsx │ │ │ ├── wordmark-colored.tsx │ │ │ └── wordmark-white.tsx │ │ ├── image/ │ │ │ ├── Image.tsx │ │ │ └── getImageSrc.ts │ │ ├── layout/ │ │ │ ├── animated-height.tsx │ │ │ ├── animated-width.tsx │ │ │ ├── curvy-rect-divider.tsx │ │ │ └── curvy-rect.tsx │ │ ├── loading/ │ │ │ ├── Shimmer.tsx │ │ │ └── usage-loading.tsx │ │ ├── lockBody.tsx │ │ ├── logo-cloud/ │ │ │ ├── index.ts │ │ │ ├── logo-cloud.tsx │ │ │ └── logo-cloud2/ │ │ │ ├── Logocloud.css │ │ │ └── Logocloud.tsx │ │ ├── notifications/ │ │ │ └── slack-notification.tsx │ │ ├── pixi/ │ │ │ ├── Pixi.tsx │ │ │ ├── PixiAssetManager.ts │ │ │ └── utils.ts │ │ ├── portal-to-body/ │ │ │ └── PortalToBody.tsx │ │ ├── preview/ │ │ │ ├── json-error-highlighter.tsx │ │ │ ├── live-preview-frame.tsx │ │ │ ├── multiple-web-browsers.tsx │ │ │ └── web-browser.tsx │ │ ├── pylon.tsx │ │ ├── search-params-provider/ │ │ │ └── search-params-provider.tsx │ │ ├── section-head/ │ │ │ ├── SectionHead.css │ │ │ └── SectionHead.tsx │ │ ├── section-title/ │ │ │ └── SectionTitle.tsx │ │ ├── tabs/ │ │ │ └── Tabs.tsx │ │ ├── ui/ │ │ │ ├── app-dialog.tsx │ │ │ ├── ascii-dot-loader.tsx │ │ │ ├── dot-grid-loader.tsx │ │ │ ├── empty-state.tsx │ │ │ ├── index.ts │ │ │ ├── loading-state.tsx │ │ │ ├── mobile-sheet.tsx │ │ │ └── stat-card.tsx │ │ └── utils/ │ │ └── portal-to-body.tsx │ └── ui/ │ ├── button.tsx │ ├── checkbox.tsx │ ├── code.tsx │ ├── input.tsx │ ├── label.tsx │ ├── motion/ │ │ └── scramble-text.tsx │ ├── select.tsx │ ├── shadcn/ │ │ ├── accordion.tsx │ │ ├── alert-dialog.tsx │ │ ├── badge.tsx │ │ ├── button.css │ │ ├── button.tsx │ │ ├── card.tsx │ │ ├── checkbox.tsx │ │ ├── collapsible.tsx │ │ ├── combobox.tsx │ │ ├── context-menu.tsx │ │ ├── data-table.tsx │ │ ├── dialog.tsx │ │ ├── dropdown-menu.tsx │ │ ├── form.tsx │ │ ├── input.tsx │ │ ├── label.tsx │ │ ├── navigation-menu.tsx │ │ ├── popover.tsx │ │ ├── progress.tsx │ │ ├── scroll-area.tsx │ │ ├── select.tsx │ │ ├── separator.tsx │ │ ├── sheet.tsx │ │ ├── slider.tsx │ │ ├── switch.tsx │ │ ├── tabs.tsx │ │ ├── textarea.tsx │ │ ├── toast.tsx │ │ ├── toggle.tsx │ │ ├── tooltip-radix.tsx │ │ └── tooltip.tsx │ ├── spinner.tsx │ └── textarea.tsx ├── config/ │ └── app.config.ts ├── eslint.config.mjs ├── hooks/ │ ├── useDebouncedCallback.ts │ ├── useDebouncedEffect.ts │ └── useSwitchingCode.ts ├── lib/ │ ├── ai/ │ │ └── provider-manager.ts │ ├── build-validator.ts │ ├── context-selector.ts │ ├── edit-examples.ts │ ├── edit-intent-analyzer.ts │ ├── file-parser.ts │ ├── file-search-executor.ts │ ├── icons.ts │ ├── morph-fast-apply.ts │ ├── sandbox/ │ │ ├── factory.ts │ │ ├── providers/ │ │ │ ├── e2b-provider.ts │ │ │ └── vercel-provider.ts │ │ ├── sandbox-manager.ts │ │ └── types.ts │ └── utils.ts ├── next.config.ts ├── package.json ├── packages/ │ └── create-open-lovable/ │ ├── index.js │ ├── lib/ │ │ ├── installer.js │ │ └── prompts.js │ ├── package.json │ └── templates/ │ ├── e2b/ │ │ ├── .env.example │ │ └── README.md │ └── vercel/ │ ├── .env.example │ └── README.md ├── postcss.config.mjs ├── public/ │ ├── compressor.json │ └── firecrawl-logo ├── styles/ │ ├── additional-styles/ │ │ ├── custom-fonts.css │ │ ├── theme.css │ │ └── utility-patterns.css │ ├── chrome-bug.css │ ├── colors.json │ ├── components/ │ │ ├── .cursor/ │ │ │ └── rules/ │ │ │ └── component-styles.md │ │ ├── button.css │ │ ├── code.css │ │ └── index.css │ ├── design-system/ │ │ ├── .cursor/ │ │ │ └── rules/ │ │ │ └── design-system.md │ │ ├── animations.css │ │ ├── base/ │ │ │ ├── body.css │ │ │ ├── layout.css │ │ │ └── reset.css │ │ ├── colors.css │ │ ├── fonts.css │ │ ├── typography.css │ │ └── utilities.css │ ├── fire.css │ ├── inside-border-fix.css │ └── main.css ├── tailwind.config.ts ├── tsconfig.json ├── types/ │ ├── conversation.ts │ ├── file-manifest.ts │ └── sandbox.ts └── utils/ ├── cn.ts ├── init-canvas.ts ├── set-timeout-on-visible.ts └── sleep.ts