feature added 4 new components

This commit is contained in:
James Wyndham 2024-03-20 18:33:16 +08:00
parent 361416cfff
commit 971100f6c1
31 changed files with 1339 additions and 722 deletions

View File

@ -0,0 +1,119 @@
---
sidebar_position: 2
---
# Right Aligned Border Bottom FAQ
![Cards](/img/components-rightallignedborderbottom-faq.png)
```jsx title="Frontend/sections/FAQ/RightAlignedBorderBottomFAQ.tsx"
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
{/* Grid */}
<div className="grid md:grid-cols-5 gap-10">
<div className="md:col-span-2">
<div className="max-w-xs">
<h2 className="text-2xl font-bold md:text-4xl md:leading-tight text-base-content">
Frequently
<br />
asked questions
</h2>
<p className="mt-1 hidden md:block text-base-content/80 ">
Answers to the most frequently asked questions.
</p>
</div>
</div>
{/* End Col */}
{/* Accordion */}
<div className="md:col-span-3 space-y-6">
{/* My tech stack is different can I still use it? */}
<div className="collapse collapse-plus bg-base-200">
<input
type="radio"
name="my-accordion-3"
className="w-auto h-auto"
defaultChecked
/>
<div className="collapse-title text-xl font-medium">
My tech stack is different can I still use it?
</div>
<div className="collapse-content">
<p>
Yes, as long as you&apos;re comfortable with React & NextJS.
Libraries are independent. You can use SendGrid instead of Mailer,
LemonSqueezy instead of Stripe, or Supabase instead of Pocketbase,
for instance.
</p>
</div>
</div>
{/* What do I get exactly? */}
<div className="collapse collapse-plus bg-base-200">
<input type="radio" name="my-accordion-3" className="w-auto h-auto" />
<div className="collapse-title text-xl font-medium">
What do I get exactly?
</div>
<div className="collapse-content">
<p>
1/ The NextJS starter with all the boilerplate code you need to run
an online business: a payment system, a database, login, a blog, UI
components, and much more. The repo is available in: - Typescript -
/app router and /pages router. 2/ The documentation helps you set up
your app from scratch, write copy that sells, and ship fast. 3/
Access to deployment templates to self host your app for free
</p>
</div>
</div>
{/* Is it a website template? */}
<div className="collapse collapse-plus bg-base-200">
<input type="radio" name="my-accordion-3" className="w-auto h-auto" />
<div className="collapse-title text-xl font-medium">
Is it a website template?
</div>
<div className="collapse-content">
<p>
It&apos;s more than just a template. You can copy/paste sections to
build your site quickly, like a pricing section, an FAQ, and even an
entire blog. You also get a bunch of UI components like buttons,
modals, popovers, etc. The NextJS starter also comes with handy
tools you need to run an online business—payment processing, emails,
SEO, etc.
</p>
</div>
</div>
{/* How is FastPocket different from other boilerplates */}
<div className="collapse collapse-plus bg-base-200">
<input type="radio" name="my-accordion-3" className="w-auto h-auto" />
<div className="collapse-title text-xl font-medium">
Are there any other costs associated
</div>
<div className="collapse-content">
<p>
Many hosting platforms, like Vercel, let you host a project for free
(front-end + back-end) and we give you Pocketbase templates to host
your backend for free on Fly.io or PocketHost — so you can launch
for first app for $0/month.
</p>
</div>
</div>
{/* How is FastPocket different from other boilerplates */}
<div className="collapse collapse-plus bg-base-200">
<input type="radio" name="my-accordion-3" className="w-auto h-auto" />
<div className="collapse-title text-xl font-medium">
How is FastPocket different from other boilerplates
</div>
<div className="collapse-content">
<p>
FastPocket is all about giving you control over how you host your
app. You won't be locked into vendors when you scale and you get to
choose how much or how little you spend. We give you deployment
templates and hosting options (that you can migrate from when you
grow)
</p>
</div>
</div>
</div>
{/* End Accordion */}
{/* End Col */}
</div>
{/* End Grid */}
</div>
```

View File

@ -1,5 +1,5 @@
{ {
"label": "Web App", "label": "FAQ",
"position": 2, "position": 2,
"link": { "link": {
"type": "generated-index", "type": "generated-index",

View File

@ -0,0 +1,8 @@
{
"label": "Components",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn the most important Docusaurus concepts."
}
}

View File

@ -0,0 +1,215 @@
---
sidebar_position: 2
---
# Cards
![Cards](/img/components-cards-feature.png)
```jsx title="Frontend/sections/Features/CardsFeature.tsx"
<>
{/* Icon Blocks */}
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
<div className="grid sm:grid-cols-2 lg:grid-cols-3 items-center gap-6 md:gap-10">
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<circle cx="13.5" cy="6.5" r=".5" />
<circle cx="17.5" cy="10.5" r=".5" />
<circle cx="8.5" cy="7.5" r=".5" />
<circle cx="6.5" cy="12.5" r=".5" />
<path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Build your portfolio
</h3>
</div>
</div>
<p className="text-primary-content/80">
The simplest way to keep your portfolio always up-to-date.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M2 3h20" />
<path d="M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3" />
<path d="m7 21 5-5 5 5" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Get freelance work
</h3>
</div>
</div>
<p className="text-primary-content/80">
New design projects delivered to your inbox each morning.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7" />
<path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8" />
<path d="M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4" />
<path d="M2 7h20" />
<path d="M22 7v3a2 2 0 0 1-2 2v0a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12v0a2 2 0 0 1-2-2V7" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Sell your goods
</h3>
</div>
</div>
<p className="text-primary-content/80">
Get your goods in front of millions of potential customers with ease.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M5.5 8.5 9 12l-3.5 3.5L2 12l3.5-3.5Z" />
<path d="m12 2 3.5 3.5L12 9 8.5 5.5 12 2Z" />
<path d="M18.5 8.5 22 12l-3.5 3.5L15 12l3.5-3.5Z" />
<path d="m12 15 3.5 3.5L12 22l-3.5-3.5L12 15Z" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Get freelance work
</h3>
</div>
</div>
<p className="text-primary-content/80">
New design projects delivered to your inbox each morning.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M16.466 7.5C15.643 4.237 13.952 2 12 2 9.239 2 7 6.477 7 12s2.239 10 5 10c.342 0 .677-.069 1-.2" />
<path d="m15.194 13.707 3.814 1.86-1.86 3.814" />
<path d="M19 15.57c-1.804.885-4.274 1.43-7 1.43-5.523 0-10-2.239-10-5s4.477-5 10-5c4.838 0 8.873 1.718 9.8 4" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Sell your goods
</h3>
</div>
</div>
<p className="text-primary-content/80">
Get your goods in front of millions of potential customers with ease.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M8.3 10a.7.7 0 0 1-.626-1.079L11.4 3a.7.7 0 0 1 1.198-.043L16.3 8.9a.7.7 0 0 1-.572 1.1Z" />
<rect x={3} y={14} width={7} height={7} rx={1} />
<circle cx="17.5" cy="17.5" r="3.5" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold text-primary-content">
Build your portfolio
</h3>
</div>
</div>
<p className="text-primary-content/80">
The simplest way to keep your portfolio always up-to-date.
</p>
</div>
{/* End Card */}
</div>
</div>
{/* End Icon Blocks */}
</>
```

View File

@ -0,0 +1,249 @@
---
sidebar_position: 2
---
# Vertical Tabs
![Cards](/img/components-verticaltabs-feature.png)
```jsx title="Frontend/sections/Features/VerticalTabsFeature.tsx"
const [tab, setTab] = useState("1");
return (
<>
{/* Features */}
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
<div className="relative p-6 md:p-16">
{/* Grid */}
<div className="relative z-10 lg:grid lg:grid-cols-12 lg:gap-16 lg:items-center">
<div className="mb-10 lg:mb-0 lg:col-span-6 lg:col-start-8 lg:order-2">
<h2 className="text-2xl text-base-content font-bold sm:text-3xl ">
Save 20+ hours of app development with FastPocket
</h2>
{/* Tab Navs */}
<nav
className="grid gap-4 mt-5 md:mt-10"
aria-label="Tabs"
role="tablist"
>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "1" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl`}
id="tabs-with-card-item-1"
aria-controls="tabs-with-card-1"
role="tab"
onClick={() => setTab("1")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z" />
<path d="M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z" />
<path d="M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z" />
<path d="M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z" />
<path d="M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Simple Setup
</span>
<span className="block mt-1 text-base-content ">
FastPocket already has a codebase with all of the
necessary integrations to start an online business out of
the box AND excellent documentation
</span>
</span>
</span>
</button>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "2" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl `}
id="tabs-with-card-item-2"
aria-controls="tabs-with-card-2"
role="tab"
onClick={() => setTab("2")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m12 14 4-4" />
<path d="M3.34 19a10 10 0 1 1 17.32 0" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Copy Paste Components
</span>
<span className="block mt-1 text-base-content ">
We give you cookie cutter copy paste setup for your SaaS
with unopinionated SaaS styling that can be modified to
suite whatever app you are building
</span>
</span>
</span>
</button>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "3" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl `}
id="tabs-with-card-item-3"
aria-controls="tabs-with-card-3"
role="tab"
onClick={() => setTab("3")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z" />
<path d="M5 3v4" />
<path d="M19 17v4" />
<path d="M3 5h4" />
<path d="M17 19h4" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Simple Bring Your Own Backend
</span>
<span className="block mt-1 text-base-content ">
We offer deployment templates that allow you to deploy to
Digital Ocean, Fly.io, Pockethost or any other backend you
want to use. You have the control over your hosting
</span>
</span>
</span>
</button>
</nav>
{/* End Tab Navs */}
</div>
{/* End Col */}
<div className="lg:col-span-6">
<div className="relative">
{/* Tab Content */}
<div>
{tab == "1" && (
<div
id="tabs-with-card-1"
role="tabpanel"
aria-labelledby="tabs-with-card-item-1"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-1.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
{tab == "2" && (
<div
id="tabs-with-card-2"
role="tabpanel"
aria-labelledby="tabs-with-card-item-2"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-2.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
{tab == "3" && (
<div
id="tabs-with-card-3"
role="tabpanel"
aria-labelledby="tabs-with-card-item-3"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-3.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
</div>
{/* End Tab Content */}
{/* SVG Element */}
<div className="hidden absolute top-0 end-0 translate-x-20 md:block lg:translate-x-20">
<svg
className="w-16 h-auto text-secondary"
width={121}
height={135}
viewBox="0 0 121 135"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M5 16.4754C11.7688 27.4499 21.2452 57.3224 5 89.0164"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
<path
d="M33.6761 112.104C44.6984 98.1239 74.2618 57.6776 83.4821 5"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
<path
d="M50.5525 130C68.2064 127.495 110.731 117.541 116 78.0874"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
</svg>
</div>
{/* End SVG Element */}
</div>
</div>
{/* End Col */}
</div>
{/* End Grid */}
{/* Background Color */}
<div className="absolute inset-0 grid grid-cols-12 size-full">
<div className="col-span-full lg:col-span-7 lg:col-start-6 bg-gray-100 w-full h-5/6 rounded-xl sm:h-3/4 lg:h-full dark:bg-base-300/[.075]" />
</div>
{/* End Background Color */}
</div>
</div>
{/* End Features */}
</>
);
```

View File

@ -0,0 +1,8 @@
{
"label": "Features",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn the most important Docusaurus concepts."
}
}

View File

@ -0,0 +1,69 @@
---
sidebar_position: 2
---
# Not Found (404)
![Not Found - 404](/img/components-404.png)
```jsx title="Frontend/app/not-found.tsx"
<div className="max-w-[50rem] flex flex-col mx-auto size-full">
<div className="text-center py-10 px-4 sm:px-6 lg:px-8">
<h1 className="block text-7xl font-bold text-base-content sm:text-9xl">
404
</h1>
<h1 className="block text-2xl font-bold text-primary-content" />
<p className="mt-3 text-base-content/80">Oops, something went wrong.</p>
<p className="text-base-content/80">
Sorry, we couldn&apos;t find your page.
</p>
<div className="mt-5 flex flex-col justify-center items-center gap-2 sm:flex-row sm:gap-3">
<a
className="w-full sm:w-auto py-3 px-4 inline-flex justify-center items-center gap-x-2 text-sm font-semibold rounded-lg border border-transparent bg-primary text-primary-content hover:br-primary/80 disabled:opacity-50 disabled:pointer-events-none"
href="https://github.com/mrwyndham/pocketbase-stripe"
target="_blank"
>
<svg
className="flex-shrink-0 size-4"
xmlns="http://www.w3.org/2000/svg"
width={16}
height={16}
fill="currentColor"
viewBox="0 0 16 16"
>
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z" />
</svg>
Get the source code
</a>
<Link
className="w-full sm:w-auto py-3 px-4 inline-flex justify-center items-center gap-x-2 text-sm font-semibold rounded-lg border border-transparent text-base-content hover:text-secondary/80 disabled:opacity-50 disabled:pointer-events-none"
href="/"
>
<svg
className="flex-shrink-0 size-4"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m15 18-6-6 6-6" />
</svg>
Back to home
</Link>
</div>
</div>
</div>
```
## Requirements
you will need the below import statement at the top of your file
```js
import Link from "next/link";
```

View File

@ -0,0 +1,8 @@
{
"label": "Miscellaneous",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn the most important Docusaurus concepts."
}
}

View File

@ -1,57 +0,0 @@
---
sidebar_position: 2
---
# Create a Document
Documents are **groups of pages** connected through:
- a **sidebar**
- **previous/next navigation**
- **versioning**
## Create your first Doc
Create a Markdown file at `docs/hello.md`:
```md title="docs/hello.md"
# Hello
This is my **first Docusaurus document**!
```
A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello).
## Configure the Sidebar
Docusaurus automatically **creates a sidebar** from the `docs` folder.
Add metadata to customize the sidebar label and position:
```md title="docs/hello.md" {1-4}
---
sidebar_label: 'Hi!'
sidebar_position: 3
---
# Hello
This is my **first Docusaurus document**!
```
It is also possible to create your sidebar explicitly in `sidebars.js`:
```js title="sidebars.js"
export default {
tutorialSidebar: [
'intro',
// highlight-next-line
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
};
```

View File

@ -1,34 +0,0 @@
---
sidebar_position: 3
---
# Create a Blog Post
Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
## Create your first Post
Create a file at `blog/2021-02-28-greetings.md`:
```md title="blog/2021-02-28-greetings.md"
---
slug: greetings
title: Greetings!
authors:
- name: Joel Marcey
title: Co-creator of Docusaurus 1
url: https://github.com/JoelMarcey
image_url: https://github.com/JoelMarcey.png
- name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
tags: [greetings]
---
Congratulations, you have made your first post!
Feel free to play around and edit this post as much as you like.
```
A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings).

View File

@ -1,31 +0,0 @@
---
sidebar_position: 5
---
# Deploy your site
Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**).
It builds your site as simple **static HTML, JavaScript and CSS files**.
## Build your site
Build your site **for production**:
```bash
npm run build
```
The static files are generated in the `build` folder.
## Deploy your site
Test your production build locally:
```bash
npm run serve
```
The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/).
You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**).

View File

@ -1,43 +0,0 @@
---
sidebar_position: 1
---
# Create a Page
Add **Markdown or React** files to `src/pages` to create a **standalone page**:
- `src/pages/index.js``localhost:3000/`
- `src/pages/foo.md``localhost:3000/foo`
- `src/pages/foo/bar.js``localhost:3000/foo/bar`
## Create your first React Page
Create a file at `src/pages/my-react-page.js`:
```jsx title="src/pages/my-react-page.js"
import React from 'react';
import Layout from '@theme/Layout';
export default function MyReactPage() {
return (
<Layout>
<h1>My React page</h1>
<p>This is a React page</p>
</Layout>
);
}
```
A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page).
## Create your first Markdown Page
Create a file at `src/pages/my-markdown-page.md`:
```mdx title="src/pages/my-markdown-page.md"
# My Markdown page
This is a Markdown page
```
A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page).

View File

@ -1,152 +0,0 @@
---
sidebar_position: 4
---
# Markdown Features
Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
## Front Matter
Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
```text title="my-doc.md"
// highlight-start
---
id: my-doc-id
title: My document title
description: My document description
slug: /my-custom-url
---
// highlight-end
## Markdown heading
Markdown text with [links](./hello.md)
```
## Links
Regular Markdown links are supported, using url paths or relative file paths.
```md
Let's see how to [Create a page](/create-a-page).
```
```md
Let's see how to [Create a page](./create-a-page.md).
```
**Result:** Let's see how to [Create a page](./create-a-page.md).
## Images
Regular Markdown images are supported.
You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
```md
![Docusaurus logo](/img/docusaurus.png)
```
![Docusaurus logo](/img/docusaurus.png)
You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
```md
![Docusaurus logo](./img/docusaurus.png)
```
## Code Blocks
Markdown code blocks are supported with Syntax highlighting.
````md
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
````
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
## Admonitions
Docusaurus has a special syntax to create admonitions and callouts:
```md
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
```
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
## MDX and React Components
[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
```jsx
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`)
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !
```
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`);
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !

View File

@ -1,23 +0,0 @@
---
sidebar_position: 6
---
# Congratulations!
You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
Docusaurus has **much more to offer**!
Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
## What's next?
- Read the [official documentation](https://docusaurus.io/)
- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
- Add a [search bar](https://docusaurus.io/docs/search)
- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)

Binary file not shown.

After

Width:  |  Height:  |  Size: 652 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 520 KiB

View File

@ -5,7 +5,7 @@ import Background from "@/components/Utilities/Background";
import Footer from "@/components/Footer"; import Footer from "@/components/Footer";
import Payment from "@/sections/Payment"; import Payment from "@/sections/Payment";
import Spacer from "@/components/Utilities/Spacer"; import Spacer from "@/components/Utilities/Spacer";
import SolidBackgrondIconFeature from "@/sections/Feature/SolidBackgrondIconFeature"; import SolidBackgrondIconFeature from "@/sections/Features/SolidBackgrondIconFeature";
export default function PricingPage() { export default function PricingPage() {
return ( return (

View File

@ -1,7 +1,7 @@
import Footer from "@/components/Footer"; import Footer from "@/components/Footer";
import Background from "@/components/Utilities/Background"; import Background from "@/components/Utilities/Background";
import Spacer from "@/components/Utilities/Spacer"; import Spacer from "@/components/Utilities/Spacer";
import SolidBackgrondIconFeature from "@/sections/Feature/SolidBackgrondIconFeature"; import SolidBackgrondIconFeature from "@/sections/Features/SolidBackgrondIconFeature";
import PageHeader from "@/sections/PageHeader"; import PageHeader from "@/sections/PageHeader";
import React from "react"; import React from "react";

View File

@ -0,0 +1,74 @@
import Footer from "@/components/Footer";
import Background from "@/components/Utilities/Background";
import PageWrapper from "@/components/Utilities/PageWrapper";
import Link from "next/link";
export default function NotFound() {
return (
<>
<main
id="content"
role="main"
className="h-screen flex-grow flex flex-col bg-base-100 max-w-screen"
>
<Background>
<div className="self-center justify-self-center my-auto">
<div className="max-w-[50rem] flex flex-col mx-auto size-full">
<div className="text-center py-10 px-4 sm:px-6 lg:px-8">
<h1 className="block text-7xl font-bold text-base-content sm:text-9xl">
404
</h1>
<h1 className="block text-2xl font-bold text-primary-content" />
<p className="mt-3 text-base-content/80">
Oops, something went wrong.
</p>
<p className="text-base-content/80">
Sorry, we couldn&apos;t find your page.
</p>
<div className="mt-5 flex flex-col justify-center items-center gap-2 sm:flex-row sm:gap-3">
<a
className="w-full sm:w-auto py-3 px-4 inline-flex justify-center items-center gap-x-2 text-sm font-semibold rounded-lg border border-transparent bg-primary text-primary-content hover:br-primary/80 disabled:opacity-50 disabled:pointer-events-none"
href="https://github.com/mrwyndham/pocketbase-stripe"
target="_blank"
>
<svg
className="flex-shrink-0 size-4"
xmlns="http://www.w3.org/2000/svg"
width={16}
height={16}
fill="currentColor"
viewBox="0 0 16 16"
>
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z" />
</svg>
Get the source code
</a>
<Link
className="w-full sm:w-auto py-3 px-4 inline-flex justify-center items-center gap-x-2 text-sm font-semibold rounded-lg border border-transparent text-base-content hover:text-secondary/80 disabled:opacity-50 disabled:pointer-events-none"
href="/"
>
<svg
className="flex-shrink-0 size-4"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m15 18-6-6 6-6" />
</svg>
Back to home
</Link>
</div>
</div>
</div>
</div>
</Background>
</main>
</>
);
}

View File

@ -4,24 +4,34 @@ import { WaitingListWithImageHero } from "@/sections/Hero";
import PageWrapper from "@/components/Utilities/PageWrapper"; import PageWrapper from "@/components/Utilities/PageWrapper";
import Footer from "@/components/Footer"; import Footer from "@/components/Footer";
import PageHeader from "@/sections/PageHeader"; import PageHeader from "@/sections/PageHeader";
import ContainerImageIconBlocksFeature from "@/sections/Feature/ContainerImageIconBlocksFeature"; import ContainerImageIconBlocksFeature from "@/sections/Features/ContainerImageIconBlocksFeature";
import Background from "@/components/Utilities/Background"; import Background from "@/components/Utilities/Background";
import CardTestemonial from "@/sections/Testemonial/CardTestemonial"; import CardTestemonial from "@/sections/Testemonial/CardTestemonial";
import Payment from "@/sections/Payment"; import Payment from "@/sections/Payment";
import CardsFeature from "@/sections/Features/CardsFeature";
import FAQ from "@/sections/FAQ/RightAlignedBorderBottomFAQ";
import VerticalTabsFeature from "@/sections/Features/VerticalTabsFeature";
export default function Home() { export default function Home() {
return ( return (
<> <>
<PageWrapper> <PageWrapper>
<WaitingListWithImageHero /> <WaitingListWithImageHero />
<VerticalTabsFeature />
<div className="bg-primary/2"> <div className="bg-primary/2">
<ContainerImageIconBlocksFeature /> <ContainerImageIconBlocksFeature />
</div> </div>
<PageHeader
title={"You Will Hate FastPocket If..."}
className="!pt-16"
subtitle={<></>}
/>
<CardsFeature />
<Background> <Background>
<CardTestemonial /> <CardTestemonial />
</Background> </Background>
<PageHeader <PageHeader
title={"Want to start building your apps faster?"} title={"Want To Start Building Your Apps Faster?"}
className="!pt-16" className="!pt-16"
subtitle={ subtitle={
<> <>
@ -34,6 +44,7 @@ export default function Home() {
} }
/> />
<Payment /> <Payment />
<FAQ />
<Footer /> <Footer />
</PageWrapper> </PageWrapper>
</> </>

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

View File

@ -1,6 +1,6 @@
import React from "react"; import React from "react";
function RightAlignedBorderBottom() { function RightAlignedBorderBottomFAQ() {
return ( return (
<> <>
{/* FAQ */} {/* FAQ */}
@ -9,334 +9,130 @@ function RightAlignedBorderBottom() {
<div className="grid md:grid-cols-5 gap-10"> <div className="grid md:grid-cols-5 gap-10">
<div className="md:col-span-2"> <div className="md:col-span-2">
<div className="max-w-xs"> <div className="max-w-xs">
<h2 className="text-2xl font-bold md:text-4xl md:leading-tight dark:text-white"> <h2 className="text-2xl font-bold md:text-4xl md:leading-tight text-base-content">
Frequently Frequently
<br /> <br />
asked questions asked questions
</h2> </h2>
<p className="mt-1 hidden md:block text-gray-600 dark:text-gray-400"> <p className="mt-1 hidden md:block text-base-content/80 ">
Answers to the most frequently asked questions. Answers to the most frequently asked questions.
</p> </p>
</div> </div>
</div> </div>
{/* End Col */} {/* End Col */}
<div className="md:col-span-3">
{/* Accordion */} {/* Accordion */}
<div className="hs-accordion-group divide-y divide-gray-200 dark:divide-gray-700"> <div className="md:col-span-3 space-y-6">
<div {/* My tech stack is different can I still use it? */}
className="hs-accordion pb-3 active" <div className="collapse collapse-plus bg-base-200">
id="hs-basic-with-title-and-arrow-stretched-heading-one" <input
> type="radio"
<button name="my-accordion-3"
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" className="w-auto h-auto"
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-one" defaultChecked
> />
Can I cancel at anytime? <div className="collapse-title text-xl font-medium">
<svg My tech stack is different can I still use it?
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400" </div>
xmlns="http://www.w3.org/2000/svg" <div className="collapse-content">
width={24} <p>
height={24} Yes, as long as you&apos;re comfortable with React & NextJS.
viewBox="0 0 24 24" Libraries are independent. You can use SendGrid instead of
fill="none" Mailer, LemonSqueezy instead of Stripe, or Supabase instead of
stroke="currentColor" Pocketbase, for instance.
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-one"
className="hs-accordion-content w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-one"
>
<p className="text-gray-600 dark:text-gray-400">
Yes, you can cancel anytime no questions are asked while you
cancel but we would highly appreciate if you will give us
some feedback.
</p> </p>
</div> </div>
</div> </div>
<div {/* What do I get exactly? */}
className="hs-accordion pt-6 pb-3" <div className="collapse collapse-plus bg-base-200">
id="hs-basic-with-title-and-arrow-stretched-heading-two" <input
> type="radio"
<button name="my-accordion-3"
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" className="w-auto h-auto"
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-two" />
> <div className="collapse-title text-xl font-medium">
My team has credits. How do we use them? What do I get exactly?
<svg </div>
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400" <div className="collapse-content">
xmlns="http://www.w3.org/2000/svg" <p>
width={24} 1/ The NextJS starter with all the boilerplate code you need
height={24} to run an online business: a payment system, a database,
viewBox="0 0 24 24" login, a blog, UI components, and much more. The repo is
fill="none" available in: - Typescript - /app router and /pages router. 2/
stroke="currentColor" The documentation helps you set up your app from scratch,
strokeWidth={2} write copy that sells, and ship fast. 3/ Access to deployment
strokeLinecap="round" templates to self host your app for free
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-two"
className="hs-accordion-content hidden w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-two"
>
<p className="text-gray-600 dark:text-gray-400">
Once your team signs up for a subscription plan. This is
where we sit down, grab a cup of coffee and dial in the
details.
</p> </p>
</div> </div>
</div> </div>
<div {/* Is it a website template? */}
className="hs-accordion pt-6 pb-3" <div className="collapse collapse-plus bg-base-200">
id="hs-basic-with-title-and-arrow-stretched-heading-three" <input
> type="radio"
<button name="my-accordion-3"
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" className="w-auto h-auto"
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-three" />
> <div className="collapse-title text-xl font-medium">
How does Preline&apos;s pricing work? Is it a website template?
<svg </div>
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400" <div className="collapse-content">
xmlns="http://www.w3.org/2000/svg" <p>
width={24} It&apos;s more than just a template. You can copy/paste
height={24} sections to build your site quickly, like a pricing section,
viewBox="0 0 24 24" an FAQ, and even an entire blog. You also get a bunch of UI
fill="none" components like buttons, modals, popovers, etc. The NextJS
stroke="currentColor" starter also comes with handy tools you need to run an online
strokeWidth={2} businesspayment processing, emails, SEO, etc.
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-three"
className="hs-accordion-content hidden w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-three"
>
<p className="text-gray-600 dark:text-gray-400">
Our subscriptions are tiered. Understanding the task at hand
and ironing out the wrinkles is key.
</p> </p>
</div> </div>
</div> </div>
<div {/* How is FastPocket different from other boilerplates */}
className="hs-accordion pt-6 pb-3" <div className="collapse collapse-plus bg-base-200">
id="hs-basic-with-title-and-arrow-stretched-heading-four" <input
> type="radio"
<button name="my-accordion-3"
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" className="w-auto h-auto"
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-four" />
> <div className="collapse-title text-xl font-medium">
How secure is Preline? Are there any other costs associated
<svg </div>
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400" <div className="collapse-content">
xmlns="http://www.w3.org/2000/svg" <p>
width={24} Many hosting platforms, like Vercel, let you host a project
height={24} for free (front-end + back-end) and we give you Pocketbase
viewBox="0 0 24 24" templates to host your backend for free on Fly.io or
fill="none" PocketHost so you can launch for first app for $0/month.
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-four"
className="hs-accordion-content hidden w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-four"
>
<p className="text-gray-600 dark:text-gray-400">
Protecting the data you trust to Preline is our first
priority. This part is really crucial in keeping the project
in line to completion.
</p> </p>
</div> </div>
</div> </div>
<div {/* How is FastPocket different from other boilerplates */}
className="hs-accordion pt-6 pb-3" <div className="collapse collapse-plus bg-base-200">
id="hs-basic-with-title-and-arrow-stretched-heading-five" <input
> type="radio"
<button name="my-accordion-3"
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" className="w-auto h-auto"
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-five" />
> <div className="collapse-title text-xl font-medium">
How do I get access to a theme I purchased? How is FastPocket different from other boilerplates
<svg
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-five"
className="hs-accordion-content hidden w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-five"
>
<p className="text-gray-600 dark:text-gray-400">
If you lose the link for a theme you purchased, don&apos;t
panic! We&apos;ve got you covered. You can login to your
account, tap your avatar in the upper right corner, and tap
Purchases. If you didn&apos;t create a login or can&apos;t
remember the information, you can use our handy Redownload
page, just remember to use the same email you originally
made your purchases with.
</p>
</div> </div>
</div> <div className="collapse-content">
<div <p>
className="hs-accordion pt-6 pb-3" FastPocket is all about giving you control over how you host
id="hs-basic-with-title-and-arrow-stretched-heading-six" your app. You won&apos;t be locked into vendors when you scale
> and you get to choose how much or how little you spend. We
<button give you deployment templates and hosting options (that you
className="hs-accordion-toggle group pb-3 inline-flex items-center justify-between gap-x-3 w-full md:text-lg font-semibold text-start text-gray-800 rounded-lg transition hover:text-gray-500 dark:text-gray-200 dark:hover:text-gray-400 dark:focus:outline-none dark:focus:ring-1 dark:focus:ring-gray-600" can migrate from when you grow)
aria-controls="hs-basic-with-title-and-arrow-stretched-collapse-six"
>
Upgrade License Type
<svg
className="hs-accordion-active:hidden block flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m6 9 6 6 6-6" />
</svg>
<svg
className="hs-accordion-active:block hidden flex-shrink-0 size-5 text-gray-600 group-hover:text-gray-500 dark:text-gray-400"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m18 15-6-6-6 6" />
</svg>
</button>
<div
id="hs-basic-with-title-and-arrow-stretched-collapse-six"
className="hs-accordion-content hidden w-full overflow-hidden transition-[height] duration-300"
aria-labelledby="hs-basic-with-title-and-arrow-stretched-heading-six"
>
<p className="text-gray-600 dark:text-gray-400">
There may be times when you need to upgrade your license
from the original type you purchased and we have a solution
that ensures you can apply your original purchase cost to
the new license purchase.
</p> </p>
</div> </div>
</div> </div>
</div> </div>
{/* End Accordion */} {/* End Accordion */}
</div>
{/* End Col */} {/* End Col */}
</div> </div>
{/* End Grid */} {/* End Grid */}
</div> </div>
{/* End FAQ */} \{/* End FAQ */}
</> </>
); );
} }
export default RightAlignedBorderBottom; export default RightAlignedBorderBottomFAQ;

View File

@ -0,0 +1,218 @@
import React from "react";
function CardsFeature() {
return (
<>
{/* Icon Blocks */}
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
<div className="grid sm:grid-cols-2 lg:grid-cols-3 items-center gap-6 md:gap-10">
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<circle cx="13.5" cy="6.5" r=".5" />
<circle cx="17.5" cy="10.5" r=".5" />
<circle cx="8.5" cy="7.5" r=".5" />
<circle cx="6.5" cy="12.5" r=".5" />
<path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You Like Useless Features
</h3>
</div>
</div>
<p className="text-primary-content/80">
When every feature is a treasure, even the ones that don&apos;t
seem to do much.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M2 3h20" />
<path d="M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3" />
<path d="m7 21 5-5 5 5" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You Like Debugging
</h3>
</div>
</div>
<p className="text-primary-content/80">
In the realm of code, where only the time rich heroes are the ones
who can fix the bugs.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7" />
<path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8" />
<path d="M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4" />
<path d="M2 7h20" />
<path d="M22 7v3a2 2 0 0 1-2 2v0a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12v0a2 2 0 0 1-2-2V7" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You love solving solved problems
</h3>
</div>
</div>
<p className="text-primary-content/80">
Where every challenge is a puzzle, and the key is already in your
hand.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M5.5 8.5 9 12l-3.5 3.5L2 12l3.5-3.5Z" />
<path d="m12 2 3.5 3.5L12 9 8.5 5.5 12 2Z" />
<path d="M18.5 8.5 22 12l-3.5 3.5L15 12l3.5-3.5Z" />
<path d="m12 15 3.5 3.5L12 22l-3.5-3.5L12 15Z" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You hate shipping fast
</h3>
</div>
</div>
<p className="text-primary-content/80">
In the race of development, where the finish line is not the
destination.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M16.466 7.5C15.643 4.237 13.952 2 12 2 9.239 2 7 6.477 7 12s2.239 10 5 10c.342 0 .677-.069 1-.2" />
<path d="m15.194 13.707 3.814 1.86-1.86 3.814" />
<path d="M19 15.57c-1.804.885-4.274 1.43-7 1.43-5.523 0-10-2.239-10-5s4.477-5 10-5c4.838 0 8.873 1.718 9.8 4" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You love process more than dev
</h3>
</div>
</div>
<p className="text-primary-content/80">
Where the journey is more important than the destination.
</p>
</div>
{/* End Card */}
{/* Card */}
<div className="size-full bg-neutral shadow-lg rounded-lg p-5">
<div className="flex items-center gap-x-4 mb-3">
<div className="inline-flex justify-center items-center size-[62px] rounded-full border-4 border-primary/10 bg-primary/10">
<svg
className="flex-shrink-0 size-6 text-primary dark:text-primary/80"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M8.3 10a.7.7 0 0 1-.626-1.079L11.4 3a.7.7 0 0 1 1.198-.043L16.3 8.9a.7.7 0 0 1-.572 1.1Z" />
<rect x={3} y={14} width={7} height={7} rx={1} />
<circle cx="17.5" cy="17.5" r="3.5" />
</svg>
</div>
<div className="flex-shrink-0">
<h3 className="block text-lg font-semibold capitalize text-primary-content">
You hate fast profits
</h3>
</div>
</div>
<p className="text-primary-content/80">
In the world of finance, where the race to the bottom is not the
goal.
</p>
</div>
{/* End Card */}
</div>
</div>
{/* End Icon Blocks */}
</>
);
}
export default CardsFeature;

View File

@ -0,0 +1,248 @@
"use client";
import Image from "next/image";
import React, { useState } from "react";
function VerticalTabsFeature() {
const [tab, setTab] = useState("1");
return (
<>
{/* Features */}
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
<div className="relative p-6 md:p-16">
{/* Grid */}
<div className="relative z-10 lg:grid lg:grid-cols-12 lg:gap-16 lg:items-center">
<div className="mb-10 lg:mb-0 lg:col-span-6 lg:col-start-8 lg:order-2">
<h2 className="text-2xl text-base-content font-bold sm:text-3xl ">
Save 20+ hours of app development with FastPocket
</h2>
{/* Tab Navs */}
<nav
className="grid gap-4 mt-5 md:mt-10"
aria-label="Tabs"
role="tablist"
>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "1" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl`}
id="tabs-with-card-item-1"
aria-controls="tabs-with-card-1"
role="tab"
onClick={() => setTab("1")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z" />
<path d="M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z" />
<path d="M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z" />
<path d="M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z" />
<path d="M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Simple Setup
</span>
<span className="block mt-1 text-base-content ">
FastPocket already has a codebase with all of the
necessary integrations to start an online business out
of the box AND excellent documentation
</span>
</span>
</span>
</button>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "2" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl `}
id="tabs-with-card-item-2"
aria-controls="tabs-with-card-2"
role="tab"
onClick={() => setTab("2")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m12 14 4-4" />
<path d="M3.34 19a10 10 0 1 1 17.32 0" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Copy Paste Components
</span>
<span className="block mt-1 text-base-content ">
We give you cookie cutter copy paste setup for your SaaS
with unopinionated SaaS styling that can be modified to
suite whatever app you are building
</span>
</span>
</span>
</button>
<button
type="button"
className={`hover:bg-base-content/5 ${
tab === "3" && "bg-base-300 shadow-lg hover:bg-base-300"
} text-start p-4 md:p-5 rounded-xl `}
id="tabs-with-card-item-3"
aria-controls="tabs-with-card-3"
role="tab"
onClick={() => setTab("3")}
>
<span className="flex">
<svg
className="flex-shrink-0 mt-2 size-6 md:size-7 text-base-content "
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth={2}
strokeLinecap="round"
strokeLinejoin="round"
>
<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z" />
<path d="M5 3v4" />
<path d="M19 17v4" />
<path d="M3 5h4" />
<path d="M17 19h4" />
</svg>
<span className="grow ms-6">
<span className="block text-lg font-semibold text-base-content ">
Simple Bring Your Own Backend
</span>
<span className="block mt-1 text-base-content ">
We offer deployment templates that allow you to deploy
to Digital Ocean, Fly.io, Pockethost or any other
backend you want to use. You have the control over your
hosting
</span>
</span>
</span>
</button>
</nav>
{/* End Tab Navs */}
</div>
{/* End Col */}
<div className="lg:col-span-6">
<div className="relative">
{/* Tab Content */}
<div>
{tab == "1" && (
<div
id="tabs-with-card-1"
role="tabpanel"
aria-labelledby="tabs-with-card-item-1"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-1.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
{tab == "2" && (
<div
id="tabs-with-card-2"
role="tabpanel"
aria-labelledby="tabs-with-card-item-2"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-2.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
{tab == "3" && (
<div
id="tabs-with-card-3"
role="tabpanel"
aria-labelledby="tabs-with-card-item-3"
>
<Image
className="shadow-xl shadow-gray-200 rounded-xl dark:shadow-gray-900/[.2] bg-base-300"
src="/images/vertical-tabs-feature-3.png"
alt="Image Description"
width="987"
height="1220"
/>
</div>
)}
</div>
{/* End Tab Content */}
{/* SVG Element */}
<div className="hidden absolute top-0 end-0 translate-x-20 md:block lg:translate-x-20">
<svg
className="w-16 h-auto text-secondary"
width={121}
height={135}
viewBox="0 0 121 135"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M5 16.4754C11.7688 27.4499 21.2452 57.3224 5 89.0164"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
<path
d="M33.6761 112.104C44.6984 98.1239 74.2618 57.6776 83.4821 5"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
<path
d="M50.5525 130C68.2064 127.495 110.731 117.541 116 78.0874"
stroke="currentColor"
strokeWidth={10}
strokeLinecap="round"
/>
</svg>
</div>
{/* End SVG Element */}
</div>
</div>
{/* End Col */}
</div>
{/* End Grid */}
{/* Background Color */}
<div className="absolute inset-0 grid grid-cols-12 size-full">
<div className="col-span-full lg:col-span-7 lg:col-start-6 bg-gray-100 w-full h-5/6 rounded-xl sm:h-3/4 lg:h-full dark:bg-base-300/[.075]" />
</div>
{/* End Background Color */}
</div>
</div>
{/* End Features */}
</>
);
}
export default VerticalTabsFeature;

View File

@ -1,66 +0,0 @@
import FAQQuestion from "@/components/FAQQuestion";
import Link from "next/link";
import React from "react";
export const FrequentlyAsked = () => {
return (
<div className="max-w-[85rem] px-4 py-10 sm:px-6 lg:px-8 lg:py-14 mx-auto">
<div className="max-w-2xl mx-auto text-center mb-10 lg:mb-14">
<h2 className="text-2xl font-bold md:text-4xl md:leading-tight text-black ">
Your questions, answered
</h2>
<p className="mt-1 text-gray-600 dark:text-gray-200">
Answers to the most frequently asked questions.
</p>
</div>
<div className="max-w-2xl mx-auto">
<div className="hs-accordion-group">
<FAQQuestion title="Why Is Sign365 Better Than Competitors?">
<p className="text-gray-800 dark:text-gray-200">
While we have articles that break down the exact{" "}
<Link href="/blogs">differences</Link>, the easiest way to put it
is that we aren&apos;t but we have 2 killer features that makes us
standout. 1. Your forms are able to talk with your systems and get
them to perform business tasks. 2. We are an offline first
platform
</p>
</FAQQuestion>
<FAQQuestion title="What guarentees can you make?">
<p className="text-gray-800 dark:text-gray-200">
We believe so strongly in our offering that we are prepared to bet
a 50% reduction in your forms processing work or your money back
</p>
</FAQQuestion>
<FAQQuestion title="How does Sign365 work with my systems?">
<p className="text-gray-800 dark:text-gray-200">
We take information written on the forms and turn it into
information your business systems can understand. Signups,
contracts, surveys and notes can be taken and turned into events,
tickets and purchases using APIs like Zapier as well as native
API&apos;s like in the case of Workforce One. We upgrade your
workflow based on your specifications and then give you the tools
to manage it
</p>
</FAQQuestion>
<FAQQuestion title="Is Sign365 easy to use?">
<p className="text-gray-800 dark:text-gray-200">
We were born as a company because SignNow had too many options for
the people using it. Everyday people filling out their
survey&apos;s were struggling to use it and so we simplified our
application to only offer core functionalities
</p>
</FAQQuestion>
<FAQQuestion title="What about support?">
<p className="text-gray-800 dark:text-gray-200">
We believe that support should be face to face and quick.
Therefore we don&apos;t have any pricing tiers offering better
support for more money. We want to get your issue fixed as soon as
possible.
</p>
</FAQQuestion>
</div>
</div>
</div>
);
};