diff --git a/src/components/CommunityInvolvementSection/CommunityInvolvementSection.ts b/src/components/CommunityInvolvementSection/CommunityInvolvementSection.ts new file mode 100644 index 0000000..142868e --- /dev/null +++ b/src/components/CommunityInvolvementSection/CommunityInvolvementSection.ts @@ -0,0 +1,8 @@ +export interface ContributionItemProps { + title: string; + description: string; +} + +export interface CommunityInvolvementSectionProps { + // No props needed for now, but keeping for future extensibility +} diff --git a/src/components/CommunityInvolvementSection/CommunityInvolvementSection.tsx b/src/components/CommunityInvolvementSection/CommunityInvolvementSection.tsx new file mode 100644 index 0000000..4521a04 --- /dev/null +++ b/src/components/CommunityInvolvementSection/CommunityInvolvementSection.tsx @@ -0,0 +1,107 @@ +import React from "react"; +import { CheckCircle } from "lucide-react"; +import { Card, CardContent } from "../ui/card"; +import { + CommunityInvolvementSectionProps, + ContributionItemProps, +} from "./CommunityInvolvementSection.ts"; + +const ContributionItem: React.FC = ({ + title, + description, +}) => { + return ( +
+ +
+

{title}

+

{description}

+
+
+ ); +}; + +const CommunityInvolvementSection: React.FC< + CommunityInvolvementSectionProps +> = () => { + const contributions: ContributionItemProps[] = [ + { + title: "Framework optimizations and plugins", + description: "Performance improvements and extended functionality", + }, + { + title: "Security and compliance utilities", + description: "Open-source security scanning and compliance tools", + }, + { + title: "Development automation tools", + description: "CI/CD pipelines and deployment automation", + }, + { + title: "Documentation and best practices", + description: "Comprehensive guides and development standards", + }, + ]; + + return ( +
+
+
+

+ Community Involvement +

+

+ The SpaceCorps team actively contributes to the open-source + community, sharing tools, libraries, and frameworks that benefit + developers worldwide. +

+
+ +
+

+ Our Contributions: +

+
+ +
+ {contributions.map((contribution, index) => ( + + ))} +
+ + {/* Get Involved Card */} +
+ + +

+ Get Involved +

+

+ Join our growing community of developers and contributors. + Whether you're looking to use our tools or contribute to their + development, we welcome collaboration. +

+ +
+
+
+
+
+ ); +}; + +export { CommunityInvolvementSection }; diff --git a/src/components/CommunityInvolvementSection/index.ts b/src/components/CommunityInvolvementSection/index.ts new file mode 100644 index 0000000..1bc277d --- /dev/null +++ b/src/components/CommunityInvolvementSection/index.ts @@ -0,0 +1,5 @@ +export { CommunityInvolvementSection } from "./CommunityInvolvementSection.tsx"; +export type { + CommunityInvolvementSectionProps, + ContributionItemProps, +} from "./CommunityInvolvementSection.ts"; diff --git a/src/components/ui/card.tsx b/src/components/ui/card.tsx index 113d66c..3adac87 100644 --- a/src/components/ui/card.tsx +++ b/src/components/ui/card.tsx @@ -7,7 +7,7 @@ function Card({ className, ...props }: React.ComponentProps<"div">) {
{ return ( @@ -14,6 +15,7 @@ const Portfolio: React.FC = () => { +
);