mirror of
https://github.com/makeplane/plane
synced 2024-06-14 14:31:34 +00:00
175 lines
5.7 KiB
TypeScript
175 lines
5.7 KiB
TypeScript
|
import React from "react";
|
|||
|
// next imports
|
|||
|
import Image from "next/image";
|
|||
|
|
|||
|
const features = [
|
|||
|
{
|
|||
|
title: "Plan",
|
|||
|
description:
|
|||
|
"Simple yet powerful planning features make it easy to create and prioritize issues, define milestones and deadlines, and assign tasks to team members.",
|
|||
|
cards: [
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Create <strong className="font-bold">Issues</strong> in seconds
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Create issues, sub-issues with context and detail in seconds. No distraction, no falling through cracks.",
|
|||
|
image: "/images/plan1.png"
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
<strong className="font-bold">View </strong>it as you like
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Kanban, or Lists, we’ve got you covered with the Views you want. Please, filters as you like.",
|
|||
|
image: "/images/plan2.png"
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Match with your <strong className="font-bold">Speed</strong>
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Speed up your work with number of Shortcuts, and increase your productivity by 3.3%.",
|
|||
|
image: "/images/plan3.png"
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
title: "Progress",
|
|||
|
description:
|
|||
|
"Create and assign tasks within cycles, track their progress over time, keep your team organized, and ensures that important tasks are completed on time.",
|
|||
|
cards: [
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Plan better with <strong className="font-bold">Cycles</strong>
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Sprint better with Cycles by setting fixed time within projects and delivering faster with precision.",
|
|||
|
image: "/images/progress1.png"
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Move faster with
|
|||
|
<strong className="font-bold"> Bulk </strong>ops
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Organise and move issues better within projects and cycles, with bulk operations and powerful search.",
|
|||
|
image: "/images/progress2.png"
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Track <strong className="font-bold">and take control</strong>
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Track Cycles with Simple stats for your team that’ll help you push and clear your backlogs.",
|
|||
|
image: ""
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
title: "Collaboration",
|
|||
|
description:
|
|||
|
"With its integration capabilities, Plane helps teams stay connected and aligned across different tools and platforms, ensuring that everyone is working towards the same goals.",
|
|||
|
cards: [
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
When in doubt,
|
|||
|
<strong className="font-bold"> Comment </strong>it out
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Collaborate and discuss the details of a specific issue within the project using Comments and Activity.",
|
|||
|
image: "/images/colab1.png"
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Get
|
|||
|
<strong className="font-bold"> Notified</strong> on your Slack
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"Never miss anything, integrate with your Slack workspace to get notification in real-time.",
|
|||
|
image: "",
|
|||
|
coming_soon: true
|
|||
|
},
|
|||
|
{
|
|||
|
title: (
|
|||
|
<div>
|
|||
|
Work in <strong className="font-bold">Real-time </strong>
|
|||
|
</div>
|
|||
|
),
|
|||
|
description:
|
|||
|
"[Coming soon] See updates in real-time within your teams across different tabs devices.",
|
|||
|
image: "/images/colab3.png",
|
|||
|
coming_soon: true
|
|||
|
}
|
|||
|
]
|
|||
|
}
|
|||
|
];
|
|||
|
|
|||
|
const PrimaryFeatures = () => {
|
|||
|
return (
|
|||
|
<div className="bg-[#00091F] py-20">
|
|||
|
<div className="container px-5 mx-auto">
|
|||
|
<div className="text-white">
|
|||
|
{features.map((feature: any, index: number) => (
|
|||
|
<div key={index} className="mt-10 md:mt-20">
|
|||
|
<div className="text-gradient text-2xl">0{index + 1}</div>
|
|||
|
<div className="mt-4 text-3xl">{feature.title}</div>
|
|||
|
<div className="mt-4 mb-10 max-w-2xl font-light">
|
|||
|
{feature.description}
|
|||
|
</div>
|
|||
|
<div className="mt-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4">
|
|||
|
{feature.cards.map((card: any, index: number) => (
|
|||
|
<div
|
|||
|
key={index}
|
|||
|
className="card-border-gradient p-[1.5px] rounded-lg h-full flex flex-col relative overflow-hidden"
|
|||
|
>
|
|||
|
{card.coming_soon && (
|
|||
|
<>
|
|||
|
<div className="absolute text-[8px] button-gradient text-center -rotate-45 w-24 top-4 -left-6">
|
|||
|
{" "}
|
|||
|
coming soon
|
|||
|
</div>
|
|||
|
</>
|
|||
|
)}
|
|||
|
<div className="bg-[#00091F] rounded-lg h-full">
|
|||
|
<div className="card-gradient rounded-lg h-full flex flex-col p-6">
|
|||
|
<div className="text-lg font-light">{card.title}</div>
|
|||
|
<div className="text-[#c0c0c0] mt-3 mb-6">
|
|||
|
{card.description}
|
|||
|
</div>
|
|||
|
<div className="w-full rounded-lg mt-auto relative">
|
|||
|
<img
|
|||
|
src={card.image ? card.image : "/images/plan1.png"}
|
|||
|
/>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
))}
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
))}
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
);
|
|||
|
};
|
|||
|
|
|||
|
export default PrimaryFeatures;
|