From 184d8633d7afafdfa6df22117055719543944f1b Mon Sep 17 00:00:00 2001 From: "Builder.io" Date: Fri, 7 Nov 2025 23:47:58 +0000 Subject: [PATCH] Create FoundationContribute.tsx cgen-dc48ffb85fe84e678e0e659d6837af75 --- .../pages/foundation/FoundationContribute.tsx | 336 ++++++++++++------ 1 file changed, 226 insertions(+), 110 deletions(-) diff --git a/client/pages/foundation/FoundationContribute.tsx b/client/pages/foundation/FoundationContribute.tsx index 199c261a..c5f725a7 100644 --- a/client/pages/foundation/FoundationContribute.tsx +++ b/client/pages/foundation/FoundationContribute.tsx @@ -2,65 +2,137 @@ import Layout from "@/components/Layout"; import { Button } from "@/components/ui/button"; import { Badge } from "@/components/ui/badge"; import { Card, CardContent } from "@/components/ui/card"; -import { Github, BookOpen, Users, CheckCircle, ArrowRight } from "lucide-react"; +import { + Code, + GitBranch, + Users, + Star, + ArrowRight, + CheckCircle, + Lightbulb, +} from "lucide-react"; import { useNavigate } from "react-router-dom"; export default function FoundationContribute() { const navigate = useNavigate(); - const projects = [ + const contributionWays = [ { - name: "AeThex Game Engine", - description: "High-performance game engine for web and native platforms", - stars: "2.5K", - language: "Rust", - difficulty: "Intermediate", - goodFirst: ["docs", "examples", "tests"], + icon: Code, + title: "Code Contributions", + description: "Help develop and improve our open-source projects", + ways: [ + "Submit pull requests", + "Fix bugs and issues", + "Add new features", + "Improve documentation", + ], }, { - name: "Roblox Toolkit", - description: "Professional Roblox development library and utilities", - stars: "1.8K", - language: "Lua", - difficulty: "Beginner", - goodFirst: ["bug fixes", "documentation", "examples"], + icon: Lightbulb, + title: "Ideas & Feedback", + description: "Share your ideas for new features and improvements", + ways: [ + "Report issues", + "Suggest features", + "Provide user feedback", + "Review pull requests", + ], }, { - name: "Procedural Generation Library", - description: "Advanced PCG algorithms for game content", - stars: "980", - language: "Rust", - difficulty: "Advanced", - goodFirst: ["tests", "optimization", "examples"], + icon: Users, + title: "Community Support", + description: "Help other developers in our community", + ways: [ + "Answer questions", + "Help on Discord", + "Mentor newcomers", + "Share knowledge", + ], + }, + { + icon: Star, + title: "Sponsorship", + description: "Support our mission financially", + ways: [ + "GitHub sponsorship", + "Monthly donations", + "Corporate support", + "In-kind support", + ], }, ]; - const contributionTypes = [ + const projects = [ { - title: "Code Contributions", - description: "Submit bug fixes, features, or optimizations", - benefits: ["Build portfolio", "Earn recognition", "Shape projects"], + name: "AeThex Game Engine", + description: + "Lightweight, performant game engine optimized for web and native platforms", + stars: "2.5K", + language: "Rust", + issues: "12 open", + difficulty: "Intermediate", }, { - title: "Documentation", - description: "Improve guides, README files, and API docs", - benefits: ["Help community", "Easy to start", "High impact"], + name: "Roblox Toolkit", + description: + "Comprehensive library for building professional Roblox experiences", + stars: "1.8K", + language: "Lua", + issues: "8 open", + difficulty: "Beginner", }, { - title: "Bug Reports", - description: "Find and report issues with clear details", - benefits: ["Free to start", "No coding needed", "Helps everyone"], + name: "Developer CLI", + description: "Command-line tools for streamlined game development workflow", + stars: "1.2K", + language: "Go", + issues: "15 open", + difficulty: "Intermediate", }, { - title: "Translations", - description: "Help translate docs and guides to other languages", - benefits: ["Global impact", "Flexible work", "Community valued"], + name: "Multiplayer Framework", + description: + "Drop-in networking layer for real-time multiplayer games", + stars: "980", + language: "TypeScript", + issues: "10 open", + difficulty: "Advanced", + }, + ]; + + const steps = [ + { + step: "1", + title: "Fork the Repository", + description: "Start by forking the project on GitHub", + }, + { + step: "2", + title: "Create a Branch", + description: "Create a feature branch for your changes", + }, + { + step: "3", + title: "Make Changes", + description: "Implement your improvements or fixes", + }, + { + step: "4", + title: "Submit Pull Request", + description: "Submit your PR with a clear description", + }, + { + step: "5", + title: "Review & Merge", + description: "Community reviews and merges your contribution", }, ]; return (
+ {/* Background */}
@@ -68,6 +140,7 @@ export default function FoundationContribute() {
+ {/* Header */}
+ {/* Contribution Ways */}

- Featured Projects + Get Involved

-
+
+ {contributionWays.map((way, idx) => { + const Icon = way.icon; + return ( + + + +

+ {way.title} +

+

+ {way.description} +

+
    + {way.ways.map((w, i) => ( +
  • + + {w} +
  • + ))} +
+
+
+ ); + })} +
+
+
+ + {/* How to Contribute */} +
+
+

+ Contribution Process +

+
+ {steps.map((item, idx) => ( +
+ + +
+ {item.step} +
+

+ {item.title} +

+

+ {item.description} +

+
+
+ {idx < steps.length - 1 && ( +
+ +
+ )} +
+ ))} +
+
+
+ + {/* Featured Projects */} +
+
+

+ Open Projects +

+
{projects.map((project, idx) => ( -
+
-

+

{project.name}

-

+

{project.description}

-
-
- - ⭐ {project.stars} - - - {project.language} - -
-
- -
-

- Good for Beginners -

-
- {project.goodFirst.map((tag, i) => ( - - {tag} +
+ + + {project.stars} - ))} + + {project.language} + + + {project.issues} + +
+
+
+
+

+ DIFFICULTY +

+ + {project.difficulty} + +
+
-
@@ -148,54 +297,21 @@ export default function FoundationContribute() {
-
-
-

- Ways to Contribute -

-
- {contributionTypes.map((type, idx) => ( - - -

- {type.title} -

-

- {type.description} -

-
    - {type.benefits.map((benefit, i) => ( -
  • - - {benefit} -
  • - ))} -
-
-
- ))} -
-
-
- + {/* CTA */}

Ready to Contribute?

- Choose a project and start making an impact today. + Check out our GitHub repositories and start contributing today. + Even small contributions make a big difference!