├── .changeset └── config.json ├── .github └── CONTRIBUTING.md ├── .gitignore ├── .turbo └── daemon │ └── f1b45fcfd175b7f9-turbo.log.2024-05-28 ├── README.md ├── apps ├── api │ ├── .gitignore │ ├── README.md │ ├── api │ │ └── index.ts │ ├── constants │ │ └── components.json │ ├── package.json │ ├── tsconfig.json │ └── vercel.json └── www │ ├── .gitignore │ ├── .turbo │ └── turbo-build.log │ ├── @ │ ├── components │ │ ├── form-feild.tsx │ │ └── ui │ │ │ ├── avatar.tsx │ │ │ ├── button.tsx │ │ │ ├── calendar.tsx │ │ │ ├── card.tsx │ │ │ ├── carousel.tsx │ │ │ ├── chart.tsx │ │ │ ├── command.tsx │ │ │ ├── dialog.tsx │ │ │ ├── dropdown-menu.tsx │ │ │ ├── form.tsx │ │ │ ├── input.tsx │ │ │ ├── label.tsx │ │ │ ├── resizable.tsx │ │ │ ├── separator.tsx │ │ │ ├── tabs.tsx │ │ │ ├── textarea.tsx │ │ │ ├── toast.tsx │ │ │ ├── toaster.tsx │ │ │ ├── toggle-group.tsx │ │ │ ├── toggle.tsx │ │ │ ├── tooltip.tsx │ │ │ └── use-toast.ts │ └── lib │ │ ├── auth │ │ ├── lucia.auth.ts │ │ └── provider │ │ │ └── lucia.client.tsx │ │ ├── utils.ts │ │ └── validations │ │ └── schema.ts │ ├── CONTRIBUTING.md │ ├── LICENSE.md │ ├── README.md │ ├── actions │ ├── auth.main.ts │ ├── emailSubRelated.ts │ └── oauth.main.ts │ ├── app │ ├── (eg) │ │ ├── example │ │ │ ├── _components │ │ │ │ └── template-toast.tsx │ │ │ ├── farmui-auth-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-auth-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-auth-02 │ │ │ │ └── page.tsx │ │ │ ├── farmui-auth-03 │ │ │ │ └── page.tsx │ │ │ ├── farmui-bento-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-chart-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-cta-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-cta-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-dashboard-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-faq-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-faq-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-feature-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-form-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-heading-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-02 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-03 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-04 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-05 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-06 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-07 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-08 │ │ │ │ └── page.tsx │ │ │ ├── farmui-hero-09 │ │ │ │ └── page.tsx │ │ │ ├── farmui-newsletter-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-pricing-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-pricing-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-pricing-02 │ │ │ │ └── page.tsx │ │ │ ├── farmui-pricing-03 │ │ │ │ └── page.tsx │ │ │ ├── farmui-testimonial-00 │ │ │ │ └── page.tsx │ │ │ ├── farmui-testimonial-01 │ │ │ │ └── page.tsx │ │ │ ├── farmui-testimonial-02 │ │ │ │ └── page.tsx │ │ │ └── layout.tsx │ │ └── not-found.tsx │ ├── (www) │ │ ├── blogs │ │ │ ├── [slug] │ │ │ │ └── page.tsx │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ │ ├── changelog │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ │ ├── coming-soon │ │ │ └── page.tsx │ │ ├── components │ │ │ ├── [slug] │ │ │ │ └── page.tsx │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ │ ├── demo │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ │ ├── join │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ │ ├── layout.tsx │ │ ├── license │ │ │ └── page.tsx │ │ ├── login │ │ │ ├── _components │ │ │ │ ├── Login.tsx │ │ │ │ ├── SignUp.tsx │ │ │ │ └── SubmitChild.tsx │ │ │ └── page.tsx │ │ ├── page.tsx │ │ ├── pricing │ │ │ ├── _components │ │ │ │ └── PricingCard.tsx │ │ │ └── page.tsx │ │ ├── privacy-policy │ │ │ └── page.tsx │ │ └── templates │ │ │ ├── [slug] │ │ │ └── page.tsx │ │ │ ├── layout.tsx │ │ │ └── page.tsx │ ├── android-chrome-192x192.png │ ├── api │ │ ├── auth │ │ │ ├── github │ │ │ │ └── callback │ │ │ │ │ └── route.ts │ │ │ └── google │ │ │ │ └── callback │ │ │ │ └── route.ts │ │ ├── limiter │ │ │ └── route.ts │ │ ├── login │ │ │ └── github │ │ │ │ └── route.ts │ │ ├── subs │ │ │ └── route.ts │ │ └── subscribe │ │ │ └── route.ts │ ├── customize.css │ ├── favicon.ico │ ├── layout.tsx │ ├── prismjs-theme.css │ ├── robots.txt │ └── tailwind.css │ ├── auth.ts │ ├── components.json │ ├── components │ ├── Blog │ │ └── Border.tsx │ ├── BlurBackground.tsx │ ├── ButtonShiny.tsx │ ├── CTA.tsx │ ├── Calendly.tsx │ ├── Callout.tsx │ ├── Changelog │ │ ├── AnimatedTooltip.tsx │ │ ├── ChangelogCard.tsx │ │ ├── ChangelogDisplay.tsx │ │ └── TracingBeam.tsx │ ├── CirclePattern │ │ └── Ripple.tsx │ ├── Dashbboad │ │ └── ShowCase.tsx │ ├── DashboardSlider.tsx │ ├── FeaturesAsGrid.tsx │ ├── Github.tsx │ ├── GlareCard.tsx │ ├── GradualSpacing.tsx │ ├── GridPattern │ │ └── DotGrid.tsx │ ├── HeroAnimated.tsx │ ├── HeroBgGradient.tsx │ ├── HeroNit │ │ └── hero.module.css │ ├── HighlightCodeSeobot.tsx │ ├── LazyMotionWrapper.tsx │ ├── LineUtils.tsx │ ├── MDXRemoteClient.tsx │ ├── Maq.tsx │ ├── MdxComponent.tsx │ ├── MdxTab.tsx │ ├── NumberCounter.tsx │ ├── Scrolls.tsx │ ├── SectionSvg.tsx │ ├── SectionView.tsx │ ├── ShinyButton │ │ ├── button.module.css │ │ └── index.tsx │ ├── ShipButton.tsx │ ├── Svgs │ │ ├── OssChips.tsx │ │ ├── OssLights.tsx │ │ └── ShinyLighs.tsx │ ├── SyntaxHeighlight.tsx │ ├── TailwindIndicator.tsx │ ├── TemplateShows.tsx │ ├── ThemeProvider.tsx │ ├── UsermavenSetup.tsx │ ├── farmui │ │ ├── CopyButton.tsx │ │ ├── FUIFeatureCard.tsx │ │ └── FUIHeroWithGridSimple.tsx │ ├── icons │ │ ├── IconAlpinejs.tsx │ │ ├── IconArrowsexpandLeft.tsx │ │ ├── IconBxCustomize.tsx │ │ ├── IconGithub.tsx │ │ ├── IconHTML.tsx │ │ ├── IconLoading.tsx │ │ ├── IconPennibLine.tsx │ │ ├── IconRadix.tsx │ │ ├── IconRadixVue.tsx │ │ ├── IconReact.tsx │ │ ├── IconSvelte.tsx │ │ ├── IconVue.tsx │ │ └── index.ts │ ├── ui │ │ ├── Banner │ │ │ └── Banner.tsx │ │ ├── BgGradient │ │ │ └── index.tsx │ │ ├── BlogCard │ │ │ └── index.tsx │ │ ├── BorderBeam.tsx │ │ ├── Brand │ │ │ └── index.tsx │ │ ├── Button.tsx │ │ ├── Button │ │ │ └── index.tsx │ │ ├── CTA │ │ │ └── index.tsx │ │ ├── CTAShow.tsx │ │ ├── CodeBlockContainer │ │ │ └── index.tsx │ │ ├── CodeSwitchBar │ │ │ └── index.tsx │ │ ├── DemoHeader │ │ │ ├── DemoHeader.tsx │ │ │ └── index.ts │ │ ├── FeatureBenito │ │ │ ├── bento-show.tsx │ │ │ ├── index.tsx │ │ │ └── marquee.tsx │ │ ├── Features │ │ │ ├── Card.tsx │ │ │ └── Features.tsx │ │ ├── Footer │ │ │ ├── BgGradient.tsx │ │ │ ├── BorderGradient.tsx │ │ │ ├── Footer.tsx │ │ │ └── index.tsx │ │ ├── Grid.tsx │ │ ├── Hero │ │ │ ├── HeroBgGradient.Client.tsx │ │ │ └── index.tsx │ │ ├── Input.tsx │ │ ├── LinkItem │ │ │ └── index.tsx │ │ ├── Modal.tsx │ │ ├── Navbar │ │ │ ├── JoinUs.tsx │ │ │ ├── Navbar.tsx │ │ │ ├── NavbarLists.tsx │ │ │ └── index.tsx │ │ ├── NewsletterModal.tsx │ │ ├── Pagination.tsx │ │ ├── Preview │ │ │ ├── PreviewApp.tsx │ │ │ ├── Viewport.tsx │ │ │ ├── codeblock.tsx │ │ │ ├── index.tsx │ │ │ ├── parser.ts │ │ │ ├── toolbar.tsx │ │ │ ├── ts.js │ │ │ └── utils.tsx │ │ ├── PreviewSwitch │ │ │ └── index.tsx │ │ ├── RotateBetween.tsx │ │ ├── ShowRetro │ │ │ └── index.tsx │ │ ├── Sidebar │ │ │ ├── NavLink.tsx │ │ │ └── index.tsx │ │ ├── Subscribe │ │ │ └── index.tsx │ │ ├── SupportedFrameworks │ │ │ ├── FrameworksTabs.tsx │ │ │ ├── PreviewCard.tsx │ │ │ └── index.tsx │ │ ├── SupportedLibraries │ │ │ └── index.tsx │ │ ├── Tabs │ │ │ └── TabsTrigger.tsx │ │ ├── TechStackSwitch │ │ │ └── index.tsx │ │ ├── TemplateCTA │ │ │ ├── BgGradient.tsx │ │ │ ├── TemplateScoresCard.tsx │ │ │ ├── TemplatesOverview.tsx │ │ │ └── index.tsx │ │ ├── TemplateCard │ │ │ ├── ImageCarousel.tsx │ │ │ ├── TemplateDisplay.tsx │ │ │ └── index.tsx │ │ └── TemplateTechStackGroup │ │ │ └── index.tsx │ └── variants.ts │ ├── componentsDB │ ├── 404-pages │ │ ├── 404-pages-1d62afb9a2ef.mdx │ │ ├── 404-pages-708eee4dee17.mdx │ │ ├── 404-pages-7b5bede66a5a.mdx │ │ ├── 404-pages-c9848c731519.mdx │ │ └── 404-pages-f1893ab05a18.mdx │ ├── auth-section │ │ ├── signup-100.mdx │ │ ├── signup-101.mdx │ │ ├── signup-102.mdx │ │ └── signup-103.mdx │ ├── bento │ │ └── bento-100.mdx │ ├── charts │ │ └── chart-100.mdx │ ├── cta │ │ ├── cta-100.mdx │ │ └── cta-101.mdx │ ├── dashboard │ │ └── dashboard-100.mdx │ ├── faqs │ │ ├── faqs-7c1180404b4e.mdx │ │ └── faqs-86cc9726a658.mdx │ ├── features │ │ └── feature-sections-100.mdx │ ├── form-field │ │ └── form-field-01.mdx │ ├── heading │ │ └── heading-100.mdx │ ├── hero-section │ │ ├── here-section-101.mdx │ │ ├── hero-section-100.mdx │ │ ├── hero-section-102.mdx │ │ ├── hero-section-103.mdx │ │ ├── hero-section-104.mdx │ │ ├── hero-section-105.mdx │ │ ├── hero-section-106.mdx │ │ ├── hero-section-107.mdx │ │ ├── hero-section-108.mdx │ │ └── hero-section-109.mdx │ ├── heroes │ │ ├── heroes-40b102808fb4.mdx │ │ ├── heroes-6424ed2d84bc.mdx │ │ ├── heroes-799910ad7f15.mdx │ │ ├── heroes-88a21442bae9.mdx │ │ ├── heroes-8cbb7080120b.mdx │ │ ├── heroes-acaa71156254.mdx │ │ ├── heroes-ce11e6ea7764.mdx │ │ └── heroes-e5fdc83c631d.mdx │ ├── inputs │ │ ├── inputs-076325d8e787.mdx │ │ ├── inputs-0abece2c72f5.mdx │ │ ├── inputs-65adedb2e30a.mdx │ │ ├── inputs-7b42ef3d3325.mdx │ │ ├── inputs-97bcab681cbc.mdx │ │ ├── inputs-9c0928e9bc52.mdx │ │ ├── inputs-a3ba8df65622.mdx │ │ ├── inputs-bf0855c269f3.mdx │ │ ├── inputs-e9e3f04488a4.mdx │ │ ├── inputs-f28b45e133a6.mdx │ │ └── inputs-ff2bb089cf05.mdx │ ├── newsletter │ │ └── newsletter-100.mdx │ ├── pricing │ │ ├── pricing-section-100.mdx │ │ ├── pricing-section-101.mdx │ │ ├── pricing-section-102.mdx │ │ └── pricing-section-103.mdx │ ├── section-headers │ │ ├── section-headers-0e48b8f61cbf.mdx │ │ ├── section-headers-1bb6aac58666.mdx │ │ ├── section-headers-a50f5cf7b48d.mdx │ │ ├── section-headers-bc6f81d07d99.mdx │ │ └── section-headers-cad019ac8b7d.mdx │ ├── select-menus │ │ ├── select-menus-3b23bd8a97e1.mdx │ │ ├── select-menus-6346a9db37da.mdx │ │ ├── select-menus-757dbb5bff06.mdx │ │ ├── select-menus-8f8830d17b53.mdx │ │ ├── select-menus-97760aa45255.mdx │ │ ├── select-menus-ad8f8006c239.mdx │ │ └── select-menus-c864235a7a0a.mdx │ ├── sidebars │ │ ├── sidebars-1f142eb36aba.mdx │ │ ├── sidebars-8d301e81fb4d.mdx │ │ ├── sidebars-ad4b5210ef57.mdx │ │ └── sidebars-f462b4d034da.mdx │ ├── stats │ │ ├── stats-107fcab08c89.mdx │ │ ├── stats-146359b8ee6f.mdx │ │ ├── stats-37f2976dd0e8.mdx │ │ ├── stats-5081ec2639f3.mdx │ │ ├── stats-7f0b9d26569a.mdx │ │ └── stats-aa9fbac873a9.mdx │ ├── steps │ │ ├── steps-12ae72a1a7d4.mdx │ │ ├── steps-79a787b6535e.mdx │ │ ├── steps-7b010f6574f6.mdx │ │ ├── steps-a9dfb5212762.mdx │ │ └── steps-dd28d0306f17.mdx │ ├── sucess │ │ └── sucess-1.mdx │ ├── tables │ │ ├── tables-263cf08c1c36.mdx │ │ ├── tables-26d85d4a0cc6.mdx │ │ ├── tables-4fc343d81b73.mdx │ │ ├── tables-5304dcf25d65.mdx │ │ ├── tables-7ac34fe1bc83.mdx │ │ ├── tables-7f4565159e80.mdx │ │ ├── tables-9513f502a160.mdx │ │ └── tables-ee6597e4652c.mdx │ ├── tabs │ │ ├── tabs-47e5f52687cd.mdx │ │ ├── tabs-519ce1885d98.mdx │ │ ├── tabs-a5e1caa4ba5a.mdx │ │ ├── tabs-bb5a5023cf65.mdx │ │ ├── tabs-edec7e621082.mdx │ │ └── tabs-ef72b74a807f.mdx │ ├── team-sections │ │ ├── team-sections-5097f1bf7638.mdx │ │ ├── team-sections-55ff68e2a191.mdx │ │ ├── team-sections-569a052486c0.mdx │ │ ├── team-sections-5918c241d485.mdx │ │ ├── team-sections-59fca7b97734.mdx │ │ └── team-sections-eb43deb82099.mdx │ └── testimonial │ │ ├── testimonial-100.mdx │ │ ├── testimonial-101.mdx │ │ └── testimonial-102.mdx │ ├── componentsNames.ts │ ├── constants │ ├── featuredIcons.tsx │ └── techStackIcon.tsx │ ├── content │ ├── authors │ │ └── kinfish.mdx │ ├── blogs │ │ └── tools-for-use.mdx │ ├── changelogs │ │ ├── 2024-06-01.mdx │ │ ├── 2024-06-07.mdx │ │ ├── 2024-06-29.mdx │ │ ├── 2024-07-08.mdx │ │ └── 2024-12-09.mdx │ ├── intro.mdx │ ├── license.mdx │ ├── nativeComponents │ │ └── intro.mdx │ └── templates │ │ ├── afri-farm.mdx │ │ ├── arc.mdx │ │ ├── assetx.mdx │ │ ├── builder.mdx │ │ ├── chacha.mdx │ │ ├── curves.mdx │ │ ├── docy.mdx │ │ ├── dumper.mdx │ │ ├── ease.mdx │ │ ├── mdify.mdx │ │ ├── megamess.mdx │ │ ├── perkai.mdx │ │ ├── remak.mdx │ │ ├── revamp-ai.mdx │ │ ├── shadow.mdx │ │ ├── sharps.mdx │ │ ├── spacehole.mdx │ │ ├── spotter.mdx │ │ ├── steel.mdx │ │ ├── xlabs.mdx │ │ └── xship.mdx │ ├── contentlayer.config.js │ ├── db │ ├── index.ts │ ├── migrations │ │ ├── 0000_common_rafael_vega.sql │ │ ├── 0001_flimsy_wasp.sql │ │ ├── 0002_simple_vision.sql │ │ └── meta │ │ │ ├── 0000_snapshot.json │ │ │ ├── 0001_snapshot.json │ │ │ ├── 0002_snapshot.json │ │ │ └── _journal.json │ ├── migrator.ts │ └── schema.ts │ ├── demo │ ├── dashboard-100.mdx │ ├── faqs-86cc9726a658.mdx │ ├── hero-section-102.mdx │ ├── hero-section-103.mdx │ ├── hero-section-105.mdx │ ├── hero-section-106.mdx │ ├── pricing-00.mdx │ └── signup-102.mdx │ ├── drizzle.config.ts │ ├── metatag.ts │ ├── middleware.ts │ ├── next-env.d.ts │ ├── next.config.mjs │ ├── package.json │ ├── pnpm-lock.yaml │ ├── postcss.config.js │ ├── posts │ └── getting-started.mdx │ ├── previewsComponents │ ├── FUI404PageWithImage.jsx │ ├── FUI404PageWithListOfItems.jsx │ ├── FUI404PageWithLogo.jsx │ ├── FUIAlertDanger.jsx │ ├── FUIAlertDangerWithDescription.jsx │ ├── FUIAlertDangerWithLink.jsx │ ├── FUIAlertInfo.jsx │ ├── FUIAlertInfoLinear.jsx │ ├── FUIAlertInfoWithLink.jsx │ ├── FUIAlertSuccess.jsx │ ├── FUIAlertSuccessWithLink.jsx │ ├── FUIAlertWarning.jsx │ ├── FUIAlertWarningWithBorder.jsx │ ├── FUIAmountInput.jsx │ ├── FUIAmountInputWithSelectInRight.jsx │ ├── FUIAvatarGroupStacked.jsx │ ├── FUIAvatarGroupStackedWithJoinButton.jsx │ ├── FUIAvatarGroupStackedWithText.jsx │ ├── FUIAvatarWithLinkAndButton.jsx │ ├── FUIAvatars.jsx │ ├── FUIAvatarsWithInfo.jsx │ ├── FUIAvatarsWithNotification.jsx │ ├── FUIBannerCentred.jsx │ ├── FUIBannerCentredWithBadge.jsx │ ├── FUIBannerCentredWithLink.jsx │ ├── FUIBannerWithLink.jsx │ ├── FUIBannerWithUnderlineLink.jsx │ ├── FUIBasic404Page.jsx │ ├── FUIBasicContextMenu.jsx │ ├── FUIBasicFeatureSection.jsx │ ├── FUIBasicLoginForm.jsx │ ├── FUIBasicPricingSection.jsx │ ├── FUIBasicRadioGroup.jsx │ ├── FUIBasicStats.jsx │ ├── FUIBasicSteps.jsx │ ├── FUIBasicTable.jsx │ ├── FUIBasicTabs.jsx │ ├── FUIBentoGridDark.tsx │ ├── FUIBlogCardsPrimary.jsx │ ├── FUIBlogCardsSecondary.jsx │ ├── FUIBlogSectionWithPostsCard.jsx │ ├── FUIButtonsWithIconAndText.jsx │ ├── FUIButtonsWithIcons.jsx │ ├── FUIButtonsWithLowColors.jsx │ ├── FUIButtonsWithShadow.jsx │ ├── FUICTAWithGithub.tsx │ ├── FUICTAWithInput.tsx │ ├── FUICentered404PageWithTowLinks.jsx │ ├── FUICenteredContactSection.jsx │ ├── FUICentredCta.jsx │ ├── FUICentredCtaWithTwoLinks.jsx │ ├── FUIChartsWithIndicators.tsx │ ├── FUIColorPickerRadioGroup.jsx │ ├── FUIContactSectionWithDividedColumns.jsx │ ├── FUIContactSectionWithFourColumns.jsx │ ├── FUIContactSectionWithImage.jsx │ ├── FUIContactSectionWithInfo.jsx │ ├── FUIContextMenuWithSubmenu.jsx │ ├── FUICtaWithBlueBackground.jsx │ ├── FUICtaWithImage.jsx │ ├── FUICtaWithLinkOnTheSide.jsx │ ├── FUIDarkContactSection.jsx │ ├── FUIDarkCta.jsx │ ├── FUIDarkCtaWithLinkOnTheSide.jsx │ ├── FUIDarkFaqsWithDividedRows.jsx │ ├── FUIDarkFeatureSection.jsx │ ├── FUIDarkFooter.jsx │ ├── FUIDarkHeroSection.tsx │ ├── FUIDarkLogoGrid.jsx │ ├── FUIDarkPricingSectionWithTwoPlans.jsx │ ├── FUIDarkStats.jsx │ ├── FUIDarkStatsWithInCards.jsx │ ├── FUIDashbaordSells.tsx │ ├── FUIDefaultButtonsWithIcons.jsx │ ├── FUIDefaultSelectMenu.jsx │ ├── FUIDisabledButtons.jsx │ ├── FUIDividedFeatureSection.jsx │ ├── FUIDividedLogoGrid.jsx │ ├── FUIEmailInput.jsx │ ├── FUIFaqsWithDividedRows.jsx │ ├── FUIFaqsWithSearchBox.jsx │ ├── FUIFaqsWithShadow.jsx │ ├── FUIFaqsWithTitles.jsx │ ├── FUIFeatureSectionWithCards.jsx │ ├── FUIFeatureSectionWithCheckIcons.jsx │ ├── FUIFeatureSectionWithImage.jsx │ ├── FUIFeatureSectionWithLinks.jsx │ ├── FUIFeatureSectionWithThreeColumns.jsx │ ├── FUIFooterWithDescriptionAndTitle.jsx │ ├── FUIFooterWithDownloadLinks.jsx │ ├── FUIFooterWithNewsletter.jsx │ ├── FUIForm.tsx │ ├── FUIHeadingBlog.tsx │ ├── FUIHeroSectionWithBottomImage.jsx │ ├── FUIHeroSectionWithGradientBackground.jsx │ ├── FUIHeroSectionWithImage.jsx │ ├── FUIHeroSectionWithLogoClouds.jsx │ ├── FUIHeroSectionWithVideo.jsx │ ├── FUIHeroWithBorders.tsx │ ├── FUIHeroWithGrid.tsx │ ├── FUIHeroWithJelly.tsx │ ├── FUIHeroWithScrolls.tsx │ ├── FUIHeroWithSimple.tsx │ ├── FUIHeroWithSlayBackground.tsx │ ├── FUIIntegrationsCard.jsx │ ├── FUIJobCards.jsx │ ├── FUIJobCardsWithInformation.jsx │ ├── FUILoginWithCardLayout.tsx │ ├── FUILoginWithGoogleProvider.jsx │ ├── FUILoginWithGridProvider.tsx │ ├── FUILoginWithListedProvider.jsx │ ├── FUILogoGridWithHeader.jsx │ ├── FUILogoGridWithTitle.jsx │ ├── FUILogoGridWithTowRows.jsx │ ├── FUIModalDanger.jsx │ ├── FUIModalDialog.jsx │ ├── FUIModalSuccess.jsx │ ├── FUIModalWithNewsletter.jsx │ ├── FUIModalWithShareableLink.jsx │ ├── FUINavbarWithAdvencedDropdown.jsx │ ├── FUINavbarWithBlackButton.jsx │ ├── FUINavbarWithDividedItems.jsx │ ├── FUINavbarWithSearchBox.jsx │ ├── FUINavbarWithSubmenu.jsx │ ├── FUINewsletterStacked.jsx │ ├── FUINewsletterWithAGradientBackground.jsx │ ├── FUINewsletterWithBackground.jsx │ ├── FUINewsletterWithDescription.jsx │ ├── FUIPaginationStacked.jsx │ ├── FUIPaginationWithCurrentPageInfo.jsx │ ├── FUIPaginationWithPreviousAndNextLink.jsx │ ├── FUIPasswordInput.jsx │ ├── FUIPaymentCardsRadioGroup.jsx │ ├── FUIPhoneNumberInput.jsx │ ├── FUIPricingCardsRadioGroup.jsx │ ├── FUIPricingSectionWithBadge.jsx │ ├── FUIPricingSectionWithOnePlan.jsx │ ├── FUIPricingSectionWithTable.jsx │ ├── FUIPricingSectionWithTwoPlans.jsx │ ├── FUIPricingWithSpecialTwo.tsx │ ├── FUIPrimaryButtons.jsx │ ├── FUIPrimaryCta.jsx │ ├── FUIPrimaryFaqs.jsx │ ├── FUIPrimaryFooter.jsx │ ├── FUIPrimaryHeroSection.jsx │ ├── FUIPrimaryNavbar.jsx │ ├── FUIPrimaryNewsletter.jsx │ ├── FUIPrimarySelectMenu.jsx │ ├── FUIRoundedButtons.jsx │ ├── FUISearchInput.jsx │ ├── FUISearchInputWithSelectMenu.jsx │ ├── FUISearchInputWithSelectMenuAndAvatars.jsx │ ├── FUISecondaryButtons.jsx │ ├── FUISecondaryCta.jsx │ ├── FUISecondaryFaqs.jsx │ ├── FUISecondaryFooter.jsx │ ├── FUISecondaryHeroSection.jsx │ ├── FUISecondaryNavbar.jsx │ ├── FUISecondaryNewsletter.jsx │ ├── FUISectionHeaderWithButtons.jsx │ ├── FUISectionHeaderWithButtonsAndNavigations.jsx │ ├── FUISectionHeaderWithDescriptionAndButton.jsx │ ├── FUISectionHeaderWithNavigations.jsx │ ├── FUISectionHeaderWithSearchBox.jsx │ ├── FUISelectMenuWithAvatars.jsx │ ├── FUISelectMenuWithIcon.jsx │ ├── FUISelectMenuWithSearchBox.jsx │ ├── FUISelectMenuWithSearchBox2.jsx │ ├── FUISidebarWithItemsInBottom.jsx │ ├── FUISidebarWithListOfLessons.jsx │ ├── FUISidebarWithSubmenu.jsx │ ├── FUISidebarWithTooltip.jsx │ ├── FUISignInGradient.tsx │ ├── FUISignUpWithGoogleProvider.jsx │ ├── FUISignUpWithLeftBackground.jsx │ ├── FUISignUpWithNameEmailPasswordOrGoogle.jsx │ ├── FUIStatsOnTheSide.jsx │ ├── FUIStatsWithImage.jsx │ ├── FUIStatsWithTitleAndDescription.jsx │ ├── FUIStatusSelectMenu.jsx │ ├── FUIStepsWithChevrons.jsx │ ├── FUIStepsWithLine.jsx │ ├── FUIStepsWithTitlesOnTheBottom.jsx │ ├── FUIStepsWithTitlesOnTheSide.jsx │ ├── FUITableWithAvatars.jsx │ ├── FUITableWithAvatarsAndEditDelete.jsx │ ├── FUITableWithBorderedColumn.jsx │ ├── FUITableWithCheckbox.jsx │ ├── FUITableWithEditAndDelete.jsx │ ├── FUITableWithManageButton.jsx │ ├── FUITableWithTabs.jsx │ ├── FUITabsWithBackgroundColor.jsx │ ├── FUITabsWithIcons.jsx │ ├── FUITabsWithoutUnderline.jsx │ ├── FUITeamMembersCard.jsx │ ├── FUITeamSectionCentredWithLargeImages.jsx │ ├── FUITeamSectionWithAvatars.jsx │ ├── FUITeamSectionWithCentredAvatars.jsx │ ├── FUITeamSectionWithInfo.jsx │ ├── FUITeamSectionWithVerticalImages.jsx │ ├── FUITeamWithLargeAvatars.jsx │ ├── FUITest.jsx │ ├── FUITestimonialCentered.jsx │ ├── FUITestimonialCenteredWithLogo.jsx │ ├── FUITestimonialGrid.jsx │ ├── FUITestimonialGrid.tsx │ ├── FUITestimonialWithBackgroundColor.jsx │ ├── FUITestimonialWithSlider.jsx │ ├── FUITestimonialWithThreeColumn.jsx │ ├── FUITestomonialSlide.tsx │ ├── FUIUploadFileCard.jsx │ ├── FUIUsernameInput.jsx │ ├── FUIVerificationCodeInput.jsx │ ├── FUIVerticalTabs.jsx │ ├── FUIVerticalTabsWithoutLine.jsx │ ├── FUIWebsiteUrlInput.jsx │ └── FUIWithPreviousAndNextLink.jsx │ ├── public │ ├── android-chrome-192x192.png │ ├── android-chrome-512x512.png │ ├── apple-touch-icon.png │ ├── authors │ │ └── kinfe.jpeg │ ├── bg-back.png │ ├── bg.png │ ├── changelogs │ │ ├── changelog-0.png │ │ ├── changelog-02.png │ │ ├── changelog-03-b.png │ │ └── changelog-03.png │ ├── circle.png │ ├── circly.png │ ├── components.json │ ├── cube.png │ ├── dashboard-2.png │ ├── dashboard.png │ ├── ellipse-back.png │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── favicon.ico │ ├── feature-cover.svg │ ├── fonts │ │ └── cal.ttf │ ├── github.webp │ ├── githubs.svg │ ├── header-bg.png │ ├── icons │ │ ├── nextjs.svg │ │ ├── reactjs.svg │ │ ├── tailwind.svg │ │ └── vuejs.svg │ ├── images │ │ ├── fb-icon.svg │ │ ├── logo.svg │ │ └── tw-icon.svg │ ├── img.png │ ├── logo-dark.svg │ ├── logo-letter.png │ ├── logo.svg │ ├── og.png │ ├── opengraph-image.jpg │ ├── preview-1.svg │ ├── preview-2.svg │ ├── preview-3.svg │ ├── robots.txt │ ├── showcase-1.png │ ├── showcase-2.png │ ├── site.webmanifest │ ├── tailwind.css │ ├── templates │ │ ├── Pasted image.png │ │ ├── afri-farm │ │ │ ├── afri-farm-01.png │ │ │ ├── afri-farm-02.png │ │ │ ├── afri-farm-03.png │ │ │ ├── afri-farm-04.png │ │ │ ├── afri-farm-05.png │ │ │ ├── afri-farm-06.png │ │ │ ├── afri-farm-07.png │ │ │ └── afri-farm.png │ │ ├── arc │ │ │ ├── arc-1.png │ │ │ ├── arc-10.png │ │ │ ├── arc-11.png │ │ │ ├── arc-12.png │ │ │ ├── arc-13.png │ │ │ ├── arc-14.png │ │ │ ├── arc-15.png │ │ │ ├── arc-2.png │ │ │ ├── arc-3.png │ │ │ ├── arc-4.png │ │ │ ├── arc-5.png │ │ │ ├── arc-6.png │ │ │ ├── arc-7.png │ │ │ ├── arc-8.png │ │ │ └── arc-9.png │ │ ├── assetx │ │ │ ├── assetx-1.png │ │ │ ├── assetx-2.png │ │ │ ├── assetx-3.png │ │ │ ├── assetx-4.png │ │ │ ├── assetx-5.png │ │ │ ├── assetx-6.png │ │ │ ├── assetx-7.png │ │ │ └── assetx-8.png │ │ ├── blinder.png │ │ ├── builder │ │ │ ├── builder-1.png │ │ │ ├── builder-2.png │ │ │ ├── builder-3.png │ │ │ ├── builder-4.png │ │ │ ├── builder-5.png │ │ │ ├── builder-6.png │ │ │ ├── builder-7.png │ │ │ └── builder-8.png │ │ ├── chacha.png │ │ ├── chacha │ │ │ ├── chacha-1.png │ │ │ ├── chacha-2.png │ │ │ ├── chacha-3.png │ │ │ ├── chacha-4.png │ │ │ ├── chacha-5.png │ │ │ └── chacha.png │ │ ├── curves │ │ │ ├── curves-1.png │ │ │ ├── curves-2.png │ │ │ ├── curves-3.png │ │ │ ├── curves-4.png │ │ │ ├── curves-5.png │ │ │ └── curves.png │ │ ├── docy │ │ │ ├── docy-1.png │ │ │ ├── docy-10.png │ │ │ ├── docy-11.png │ │ │ ├── docy-12.png │ │ │ ├── docy-2.png │ │ │ ├── docy-3.png │ │ │ ├── docy-4.png │ │ │ ├── docy-5.png │ │ │ ├── docy-6.png │ │ │ ├── docy-7.png │ │ │ ├── docy-8.png │ │ │ └── docy-9.png │ │ ├── dumper.png │ │ ├── dumper │ │ │ ├── dumper-1.png │ │ │ ├── dumper-2.png │ │ │ ├── dumper-3.png │ │ │ ├── dumper-4.png │ │ │ └── dumper.png │ │ ├── ease │ │ │ ├── ease-1.png │ │ │ ├── ease-2.png │ │ │ ├── ease-3.png │ │ │ ├── ease-4.png │ │ │ ├── ease-5.png │ │ │ ├── ease-6.png │ │ │ ├── ease-7.png │ │ │ └── ease-8.png │ │ ├── ioacademy.png │ │ ├── mailgo.png │ │ ├── mdify │ │ │ ├── mdify-1.png │ │ │ ├── mdify-2.png │ │ │ ├── mdify-3.png │ │ │ ├── mdify-4.png │ │ │ ├── mdify-5.png │ │ │ ├── mdify-6.png │ │ │ ├── mdify-7.png │ │ │ └── mdify.png │ │ ├── megamess │ │ │ ├── megamess-1.png │ │ │ ├── megamess-2.png │ │ │ ├── megamess-3.png │ │ │ ├── megamess-4.png │ │ │ └── megamess.png │ │ ├── perkai │ │ │ ├── perkai-1.png │ │ │ ├── perkai-10.png │ │ │ ├── perkai-2.png │ │ │ ├── perkai-3.png │ │ │ ├── perkai-4.png │ │ │ ├── perkai-5.png │ │ │ ├── perkai-6.png │ │ │ ├── perkai-7.png │ │ │ ├── perkai-8.png │ │ │ └── perkai-9.png │ │ ├── remak │ │ │ ├── remak-1.png │ │ │ ├── remak-2.png │ │ │ ├── remak-3.png │ │ │ ├── remak-4.png │ │ │ ├── remak-5.png │ │ │ ├── remak-6.png │ │ │ ├── remak-7.png │ │ │ └── remak-8.png │ │ ├── revamp-ai │ │ │ ├── revamp-ai-1.png │ │ │ ├── revamp-ai-2.png │ │ │ ├── revamp-ai-3.png │ │ │ ├── revamp-ai-4.png │ │ │ ├── revamp-ai-5.png │ │ │ ├── revamp-ai-6.png │ │ │ ├── revamp-ai-7.png │ │ │ └── revamp-ai-8.png │ │ ├── shadow.png │ │ ├── sharps │ │ │ ├── sharps-1.png │ │ │ ├── sharps-10.png │ │ │ ├── sharps-2.png │ │ │ ├── sharps-3.png │ │ │ ├── sharps-4.png │ │ │ ├── sharps-5.png │ │ │ ├── sharps-6.png │ │ │ ├── sharps-7.png │ │ │ ├── sharps-8.png │ │ │ └── sharps-9.png │ │ ├── spacehole │ │ │ ├── spacehole-1.png │ │ │ ├── spacehole-2.png │ │ │ ├── spacehole-3.png │ │ │ ├── spacehole-4.png │ │ │ ├── spacehole-5.png │ │ │ ├── spacehole-6.png │ │ │ ├── spacehole-7.png │ │ │ ├── spacehole-8.png │ │ │ └── spacehole-9.png │ │ ├── split.png │ │ ├── spotter │ │ │ ├── spotter-1.png │ │ │ ├── spotter-2.png │ │ │ ├── spotter-3.png │ │ │ ├── spotter-4.png │ │ │ ├── spotter-5.png │ │ │ ├── spotter-6.png │ │ │ └── spotter.png │ │ ├── starboard.png │ │ ├── steel.png │ │ ├── xlabs │ │ │ ├── xlabs-1.png │ │ │ ├── xlabs-2.png │ │ │ ├── xlabs-3.png │ │ │ ├── xlabs-4.png │ │ │ ├── xlabs-5.png │ │ │ ├── xlabs-6.png │ │ │ ├── xlabs-7.png │ │ │ └── xlabs-8.png │ │ └── xship │ │ │ ├── xship-1.png │ │ │ ├── xship-10.png │ │ │ ├── xship-11.png │ │ │ ├── xship-3.png │ │ │ ├── xship-4.png │ │ │ ├── xship-5.png │ │ │ ├── xship-6.png │ │ │ ├── xship-7.png │ │ │ ├── xship-8.png │ │ │ └── xship-9.png │ ├── thumbnail.png │ ├── thumbnails │ │ ├── Alerts.png │ │ ├── Authentication.png │ │ ├── Avatars.png │ │ ├── Banner.png │ │ ├── Buttons.png │ │ ├── CTA-Section.png │ │ ├── Cards.png │ │ ├── Contact.png │ │ ├── Context-menu.png │ │ ├── FAQS.png │ │ ├── Feature.png │ │ ├── Footers.png │ │ ├── Heroes.png │ │ ├── Inputs.png │ │ ├── Logo.png │ │ ├── Modals.png │ │ ├── Navbars.png │ │ ├── Newsletter.png │ │ ├── Pagination.png │ │ ├── Pricing.png │ │ ├── Radio.png │ │ ├── Section-Header.png │ │ ├── Select-Menus.png │ │ ├── Sidebar.png │ │ ├── Stats.png │ │ ├── Steps.png │ │ ├── Table.png │ │ ├── Tabs.png │ │ ├── Team.png │ │ ├── Testimonial.png │ │ └── page404.png │ ├── tw-output.css │ ├── twitter-image.jpg │ └── up-logo.svg │ ├── sections │ └── sections.json │ ├── styles │ ├── customize.css │ ├── prismjs-theme.css │ └── tailwind.css │ ├── tailwind.config.js │ ├── tsconfig.json │ ├── types │ └── types.ts │ ├── utils │ ├── animationConfig.ts │ ├── getBaseURL.ts │ ├── mergeTW.ts │ ├── ratelimit.ts │ ├── seobot.ts │ └── supportedFrameworksJSON.ts │ └── viewport │ ├── components │ └── reactComponents.tsx │ └── template │ └── index.ts ├── package.json ├── packages ├── cli │ ├── .gitignore │ ├── README.md │ ├── dist │ │ ├── index.d.ts │ │ ├── index.js │ │ └── index.js.map │ ├── package.json │ ├── src │ │ ├── commands │ │ │ └── add.ts │ │ ├── comp.json │ │ ├── index.ts │ │ └── utils │ │ │ ├── ascii-arts.ts │ │ │ ├── get-config.ts │ │ │ ├── get-package-info.ts │ │ │ ├── get-package-manager.ts │ │ │ ├── get-project-info.ts │ │ │ ├── get-suppoted.ts │ │ │ ├── handle-error.ts │ │ │ ├── logger.ts │ │ │ ├── resolve-import.ts │ │ │ └── templates.ts │ ├── test │ │ └── commands │ │ │ ├── add.test.ts │ │ │ └── index.test.ts │ ├── tsconfig.json │ └── tsup.config.ts ├── db │ ├── .gitignore │ ├── dist │ │ ├── index.js │ │ ├── index.js.map │ │ ├── index.mjs │ │ └── index.mjs.map │ ├── drizzle.config.ts │ ├── package.json │ ├── src │ │ ├── index.ts │ │ └── schema │ │ │ └── subscription.ts │ ├── tsconfig.json │ └── tsup.config.ts ├── transactions │ └── .gitignore └── ui │ └── package.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── tsconfig.json ├── turbo.json └── vitest.config.ts /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@2.0.0/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "linked": [], 6 | "access": "restricted", 7 | "baseBranch": "main", 8 | "updateInternalDependencies": "patch", 9 | "ignore": [] 10 | } 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | i# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | 27 | # local env files 28 | .env.local 29 | .env.development.local 30 | .env.test.local 31 | .env.production.local 32 | .env 33 | 34 | # vercel 35 | .vercel 36 | .contentlayer 37 | 38 | #vsconfigs 39 | .vscode 40 | 41 | 42 | 43 | # Turborepo 44 | .turbo 45 | -------------------------------------------------------------------------------- /.turbo/daemon/f1b45fcfd175b7f9-turbo.log.2024-05-28: -------------------------------------------------------------------------------- 1 | 2024-05-28T07:36:53.966277Z WARN build:resolve_lockfile: turborepo_repository::package_graph::builder: Issues occurred when constructing package graph. Turbo will function, but some features may not be available: could not resolve workspaces: Unable to convert to yaml: missing field `importers` 2 | 2024-05-28T07:44:29.769195Z WARN turborepo_filewatch: encountered error watching filesystem enumerating recursive watch: IO error for operation on /home/kinfish/oss/ui-mess/.git/.gitstatus.akkGfj/a/1: No such file or directory (os error 2) 3 | -------------------------------------------------------------------------------- /apps/api/.gitignore: -------------------------------------------------------------------------------- 1 | # dev 2 | .vercel/ 3 | .yarn/ 4 | !.yarn/releases 5 | .vscode/* 6 | !.vscode/launch.json 7 | !.vscode/*.code-snippets 8 | .idea/workspace.xml 9 | .idea/usage.statistics.xml 10 | .idea/shelf 11 | 12 | # deps 13 | node_modules/ 14 | 15 | # env 16 | .env 17 | .env.production 18 | 19 | # logs 20 | logs/ 21 | *.log 22 | npm-debug.log* 23 | yarn-debug.log* 24 | yarn-error.log* 25 | pnpm-debug.log* 26 | lerna-debug.log* 27 | 28 | # misc 29 | .DS_Store 30 | .vercel 31 | -------------------------------------------------------------------------------- /apps/api/README.md: -------------------------------------------------------------------------------- 1 | ``` 2 | npm install 3 | npm run start 4 | ``` 5 | -------------------------------------------------------------------------------- /apps/api/api/index.ts: -------------------------------------------------------------------------------- 1 | import { Hono } from "hono"; 2 | import { handle } from "hono/vercel"; 3 | import components from "../constants/components.json"; 4 | export const config = { 5 | runtime: "edge", 6 | }; 7 | 8 | const app = new Hono().basePath("/ui"); 9 | app.get("/", (c) => { 10 | return c.json({ status: "farming" }); 11 | }); 12 | app.get("/components", (c) => { 13 | return c.json(components); 14 | }); 15 | app.get("/components/:id", async (c) => { 16 | const compId = c.req.param("id"); 17 | const comp = components.find((comp) => comp.id === compId); 18 | return c.json(comp); 19 | }); 20 | export default handle(app); 21 | -------------------------------------------------------------------------------- /apps/api/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "api", 3 | "version": "0.0.1", 4 | "private": "true", 5 | "scripts": { 6 | "start": "vercel dev", 7 | "deploy": "vercel" 8 | }, 9 | "dependencies": { 10 | "hono": "^4.4.0" 11 | }, 12 | "devDependencies": { 13 | "vercel": "^32.4.1" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /apps/api/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "node", 6 | "esModuleInterop": true, 7 | "skipLibCheck": true, 8 | "strict": true, 9 | "resolveJsonModule": true, 10 | }, 11 | } -------------------------------------------------------------------------------- /apps/api/vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "framework": null, 3 | "installCommand": null, 4 | "buildCommand": "", 5 | "outputDirectory": "public", 6 | "rewrites": [ 7 | { 8 | "source": "/ui/(.*)", 9 | "destination": "/api" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /apps/www/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # dependencies 3 | /node_modules 4 | /.pnp 5 | .pnp.js 6 | 7 | # testing 8 | /coverage 9 | 10 | # next.js 11 | /.next/ 12 | /out/ 13 | 14 | # production 15 | /build 16 | 17 | # misc 18 | .DS_Store 19 | *.pem 20 | 21 | # debug 22 | npm-debug.log* 23 | yarn-debug.log* 24 | yarn-error.log* 25 | 26 | # local env files 27 | .env.local 28 | .env.development.local 29 | .env.test.local 30 | .env.production.local 31 | .env 32 | 33 | # vercel 34 | .vercel 35 | .contentlayer 36 | 37 | #vsconfigs 38 | .vscode 39 | 40 | 41 | -------------------------------------------------------------------------------- /apps/www/.turbo/turbo-build.log: -------------------------------------------------------------------------------- 1 | 2 | > web@0.1.0 build /home/kinfish/oss/ui-mess/apps/www 3 | > next build 4 | 5 |  ▲ Next.js 14.0.3 6 | - Environments: .env 7 | 8 | [?25l   Creating an optimized production build .   Creating an optimized production build ..   Creating an optimized production build ... -------------------------------------------------------------------------------- /apps/www/@/components/ui/input.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | 3 | import { cn } from "@/lib/utils" 4 | 5 | export interface InputProps 6 | extends React.InputHTMLAttributes {} 7 | 8 | const Input = React.forwardRef( 9 | ({ className, type, ...props }, ref) => { 10 | return ( 11 | 20 | ) 21 | } 22 | ) 23 | Input.displayName = "Input" 24 | 25 | export { Input } 26 | -------------------------------------------------------------------------------- /apps/www/@/components/ui/label.tsx: -------------------------------------------------------------------------------- 1 | "use client" 2 | 3 | import * as React from "react" 4 | import * as LabelPrimitive from "@radix-ui/react-label" 5 | import { cva, type VariantProps } from "class-variance-authority" 6 | 7 | import { cn } from "@/lib/utils" 8 | 9 | const labelVariants = cva( 10 | "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" 11 | ) 12 | 13 | const Label = React.forwardRef< 14 | React.ElementRef, 15 | React.ComponentPropsWithoutRef & 16 | VariantProps 17 | >(({ className, ...props }, ref) => ( 18 | 23 | )) 24 | Label.displayName = LabelPrimitive.Root.displayName 25 | 26 | export { Label } 27 | -------------------------------------------------------------------------------- /apps/www/@/components/ui/separator.tsx: -------------------------------------------------------------------------------- 1 | "use client" 2 | 3 | import * as React from "react" 4 | import * as SeparatorPrimitive from "@radix-ui/react-separator" 5 | 6 | import { cn } from "@/lib/utils" 7 | 8 | const Separator = React.forwardRef< 9 | React.ElementRef, 10 | React.ComponentPropsWithoutRef 11 | >( 12 | ( 13 | { className, orientation = "horizontal", decorative = true, ...props }, 14 | ref 15 | ) => ( 16 | 27 | ) 28 | ) 29 | Separator.displayName = SeparatorPrimitive.Root.displayName 30 | 31 | export { Separator } 32 | -------------------------------------------------------------------------------- /apps/www/@/components/ui/textarea.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | 3 | import { cn } from "@/lib/utils" 4 | 5 | export interface TextareaProps 6 | extends React.TextareaHTMLAttributes {} 7 | 8 | const Textarea = React.forwardRef( 9 | ({ className, ...props }, ref) => { 10 | return ( 11 |