Skip to content

V1 9 0 beta #433

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/(default)/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export default function Home() {
<>
<Hero />
<Features />
<OpenSource />
{/* <OpenSource /> */}
<Showcase />
</>
);
Expand Down
5 changes: 5 additions & 0 deletions app/tools/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import ToolsComponent from "@/components/tools";

export default function ToolsPage() {
return <ToolsComponent />;
}
6 changes: 4 additions & 2 deletions components/about.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,10 @@ const AboutComponent: React.FC = () => {
</h2>
<div className="max-w-2xl text-gray-500">
<p className="mt-6 text-center">
PearAI is fueled by its most important thing, the community. Join
our <a href="https://discord.gg/7QMraJUsQt">Discord</a> with +2000
PearAI is{" "}
<a href="https://github.com/trypear/pearai-master">open source</a>{" "}
and backed by a wonderful community. Join our{" "}
<a href="https://discord.gg/7QMraJUsQt">Discord</a> with +2000
developers and friends all trying to create the best AI code editor
in the world together. Feel free to ask questions about your own
projects, or ask for help from the community!
Expand Down
21 changes: 11 additions & 10 deletions components/header.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -111,9 +111,6 @@ export default async function Header() {
<NavigationMenuList className="text-black/60 dark:text-gray-500">
<DropdownNavItem trigger="Resources">
<ul className="grid w-[400px] gap-3 bg-background p-4 md:w-[500px] md:grid-cols-2 lg:w-[600px]">
<ListItem href="/about" title="About">
Learn more about PearAI
</ListItem>
<ListItem href="/blog" title="Blog">
Read insights on PearAI&apos;s development by our
contributors
Expand All @@ -127,16 +124,20 @@ export default async function Header() {
<ListItem href="/beta" title="Beta">
Download the latest beta version
</ListItem>
<ListItem href="/docs" title="Documentation">
Learn how to use PearAI effectively
</ListItem>
<ListItem
href="https://github.com/trypear/pearai-master"
title="GitHub"
>
Explore our open source code
</ListItem>
</ul>
</DropdownNavItem>
<NavItem href="/about">About</NavItem>
<NavItem href="/tools">Tools</NavItem>
<NavItem href="/pricing">Pricing</NavItem>
<NavItem href="/docs">Documentation</NavItem>
<NavItem
href="https://github.com/trypear/pearai-master"
target="_blank"
>
GitHub
</NavItem>
</NavigationMenuList>
</NavigationMenu>
</nav>
Expand Down
43 changes: 36 additions & 7 deletions components/privacy-policy-app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export default function PrivacyPolicyComponent() {
PearAI App Privacy Policy
</h1>
<p className="mb-6 leading-relaxed text-gray-600">
<strong>Last updated: October 18th, 2024</strong>
<strong>Last updated: April 1st, 2025</strong>
</p>
<p className="text-xl text-gray-600">
Welcome to the PearAI Privacy Policy regarding the main PearAI
Expand Down Expand Up @@ -63,21 +63,28 @@ export default function PrivacyPolicyComponent() {
<div className="mx-auto max-w-3xl text-lg">
<h2 className="mb-4 text-2xl font-bold text-gray-900">Your Code</h2>
<p className="mb-6 leading-relaxed text-gray-600">
Your code is not stored by PearAI when using your own API key.
Your codebase is not directly stored by PearAI. As a technical
necessity of our prompt logging system, any content within your
prompts - including any incidental code snippets - is captured as
part of the prompt text. This logging is solely used for debugging
and improving the user experience.
</p>
<p className="mb-6 leading-relaxed text-gray-600">
Your code is not stored by PearAI servers. We have a zero-data
retention policy for Anthropic models and zero-data retention
policies are currently pending for other models.
For model interactions, we have a zero-data retention policy for
Anthropic models and zero-data retention policies are currently
pending for other models.
</p>
<p className="mb-6 leading-relaxed text-gray-600">
All indexing for your codebase (for PearAI to have codebase
knowledge) happens locally on your machine.
knowledge) happens locally on your machine, ensuring your complete
codebase remains private and secure on your system.
</p>
</div>

<div className="mx-auto max-w-3xl text-lg">
<h2 className="mb-4 text-2xl font-bold text-gray-900">Logging</h2>
<h2 className="mb-4 text-2xl font-bold text-gray-900">
Anonymous Logging
</h2>
<p className="mb-6 leading-relaxed text-gray-600">
When using PearAI, we collect anonymous usage information to help
us improve the product. All data collected by PearAI is anonymized
Expand All @@ -102,6 +109,14 @@ export default function PrivacyPolicyComponent() {
</li>
<li>System information: name of your operating system</li>
</ul>
<p className="mb-6 leading-relaxed text-gray-600">
For quality assurance and product improvement, we persist logs of
user prompts. While we do not explicitly store code, any code
snippets included within your prompts will be logged as part of
the prompt text. These logs are solely used to help us understand
how users interact with the app, identify potential issues, and
improve the overall user experience.
</p>
<p className="mb-6 leading-relaxed text-gray-600">
We do not track your actual request contents to LLM when you use
your own API key. On PearAI&apos;s hosted servers, if you opt to
Expand All @@ -122,6 +137,20 @@ export default function PrivacyPolicyComponent() {
</p>
</div>

<div className="mx-auto max-w-3xl text-lg">
<h2 className="mb-4 text-2xl font-bold text-gray-900">
Server-side Logging
</h2>
<p className="mb-6 leading-relaxed text-gray-600">
For quality assurance and product improvement, we persist logs of
user prompts. While we do not explicitly store code, any code
snippets included within your prompts will be logged as part of
the prompt text. These logs help us understand how users interact
with the app, identify potential issues, and improve the overall
user experience.
</p>
</div>

<div className="mx-auto max-w-3xl text-lg">
<h2 className="mb-4 text-2xl font-bold text-gray-900">
Updates to This Privacy Policy
Expand Down
8 changes: 5 additions & 3 deletions components/showcase.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -145,10 +145,12 @@ export default function Showcase() {
<div className="showcase-gradient-light relative mx-auto flex min-h-[80vh] w-full max-w-full -translate-y-24 items-center justify-center sm:min-h-[120vh]">
<div className="mt-12 flex max-w-3xl flex-col items-center px-6 text-center">
<p className="max-w-xl text-4xl font-semibold text-black sm:text-6xl">
Try PearAI for free.
Make Your Next Project Today.
</p>

<p className="mt-4 max-w-md text-xl font-semibold text-black sm:text-3xl">
Built on top of{" "}
Try PearAI for free.
{/* Built on top of{" "}
<TooltipProvider>
<Tooltip delayDuration={50}>
<TooltipTrigger className="underline decoration-dotted">
Expand All @@ -163,7 +165,7 @@ export default function Showcase() {
</TooltipContent>
</Tooltip>
</TooltipProvider>{" "}
for a seamless transition.
for a seamless transition. */}
</p>
<Button className="mt-10 bg-black px-20 py-4 text-sm hover:bg-black dark:hover:bg-black sm:text-base">
<Link href="/pricing">Download</Link>
Expand Down
72 changes: 72 additions & 0 deletions components/tools.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
"use client";

import React from "react";

const ToolsComponent: React.FC = () => {
return (
<section className="mt-36">
<div className="mx-auto max-w-4xl px-4">
<h1 className="mb-8 text-4xl font-bold">PearAI Tools</h1>
<ul className="space-y-6">
<li>
<h2 className="text-xl font-semibold">PearAI Creator</h2>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Agent</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Roo Code)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Chat</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Continue)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Design</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Figma)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Login</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Supabase)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Database</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Supabase)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Launch</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Netlify)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Search</h2>
<span className="ml-2 text-sm text-gray-500">
(Powered by Perplexity)
</span>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Memory</h2>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Community</h2>
</li>
<li>
<h2 className="text-xl font-semibold">PearAI Language</h2>
</li>
</ul>
<p className="mt-8 text-gray-500">Many more coming soon!</p>
</div>
</section>
);
};

export default ToolsComponent;
11 changes: 7 additions & 4 deletions components/ui/expandable-cards.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,11 @@ const CARDS: Card[] = [
id: 1,
title: "Code with",
company: {
name: "Roo Code / Cline",
name: "PearAI Agent",
url: "https://github.com/RooVetGit/Roo-Code",
},
description:
"Roo Cline / Cline is the leading AI Coding Agent on the market. It has access to your development environment (with your permission) for a feedback loop to add features, fix bugs, and more.",
"PearAI (Powered by Roo Cline / Cline) has access to your development environment (with your permission) for a feedback loop to add features, fix bugs, and more.",
icon: RooCodeLogo,
bgColor: "rgba(201, 255, 226, 1)",
iconBgColor: "rgba(4, 40, 26, 1)",
Expand Down Expand Up @@ -140,9 +140,12 @@ export default function ExpandableCards() {
<div className="hidden items-center justify-center px-6 pb-6 pt-2 lg:flex">
<div className="w-full max-w-[1049px] rounded-xl border-2 border-gray-200 p-5 dark:border-gray-50">
<h1 className="pb-5 text-[28px] font-semibold leading-tight dark:text-gray-900">
PearAI Inventory natively integrates the best AI tools <br />
into a single, powerful editor.
You Can Build Software.
</h1>
<p className="text-base text-black/60 dark:text-gray-500 sm:text-lg">
PearAI natively integrates the best AI tools for you to make your
idea - no matter your technical skill level or language.
</p>
<div className="flex gap-5">
{CARDS.map((card) => (
<motion.div
Expand Down
20 changes: 10 additions & 10 deletions components/ui/integrationBox.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,75 +38,75 @@ const IntegrationItem = ({
const INTEGRATIONS = [
{
margin: "lg:ml-2 mr-1",
label: "Code with",
label: "Create with",
product: (
<a
href="https://github.com/RooVetGit/Roo-Code/"
target="_blank"
rel="noopener noreferrer"
className="hover:underline"
>
Roo Code / Cline
PearAI Creator
</a>
),
Icon: RooCodeLogo,
},
{
margin: "lg:ml-24 ml-2",
label: "Predict with",
label: "Code with",
product: (
<a
href="https://supermaven.com/"
target="_blank"
rel="noopener noreferrer"
className="hover:underline"
>
Supermaven
PearAI Agent
</a>
),
Icon: SupermavenLogo,
},
{
margin: "lg:ml-44",
label: "Remember with",
label: "Store with",
product: (
<a
href="https://mem0.ai/"
target="_blank"
rel="noopener noreferrer"
className="hover:underline"
>
MemO
PearAI Database
</a>
),
Icon: Mem0Logo,
},
{
margin: "lg:ml-56 -ml-3",
label: "Search with",
label: "Authenticate with",
product: (
<a
href="https://www.perplexity.ai/"
target="_blank"
rel="noopener noreferrer"
className="hover:underline"
>
Perplexity
PearAI Login
</a>
),
Icon: PerplexityLogo,
},
{
margin: "lg:ml-48 -mr-5 lg:mr-0",
label: "Chat & edit with",
label: "Ship with",
product: (
<a
href="https://www.continue.dev/"
target="_blank"
rel="noopener noreferrer"
className="hover:underline"
>
Continue
PearAI Deploy
</a>
),
Icon: ContinueLogo,
Expand Down
29 changes: 29 additions & 0 deletions components/ui/tool-card.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import React from "react";

interface ToolCardProps {
title: string;
description: string;
poweredBy?: string;
}

const ToolCard: React.FC<ToolCardProps> = ({
title,
description,
poweredBy,
}) => {
return (
<div className="rounded-lg border border-gray-200 bg-white-50 p-6 transition-all duration-300 hover:shadow-lg dark:border-black/50 dark:bg-gray-800">
<h3 className="dark:text-white mb-2 text-xl font-semibold text-gray-900">
{title}
</h3>
<p className="mb-4 text-gray-600 dark:text-gray-400">{description}</p>
{poweredBy && (
<div className="text-sm text-gray-500">
Powered by <span className="font-medium">{poweredBy}</span>
</div>
)}
</div>
);
};

export default ToolCard;