diff --git a/src/components/WhyChooseCodeHarbor.tsx b/src/components/WhyChooseCodeHarbor.tsx index ad61d9391..cd341ec25 100644 --- a/src/components/WhyChooseCodeHarbor.tsx +++ b/src/components/WhyChooseCodeHarbor.tsx @@ -43,20 +43,20 @@ const reasons = [ const WhyChooseCodeHarbor = () => { return ( -
+
{/* Subtle Background Pattern */}
-
+
{/* Header */}
Why CodeHarborHub? -

+

Empowering Your Tech Journey

@@ -66,7 +66,7 @@ const WhyChooseCodeHarbor = () => {

{/* Feature Grid */} -
+
{reasons.map((item, index) => (
{
{/* Content */} -

+

{item.title}

diff --git a/src/pages/gsoc2026.tsx b/src/pages/gsoc2026.tsx new file mode 100644 index 000000000..84dacab62 --- /dev/null +++ b/src/pages/gsoc2026.tsx @@ -0,0 +1,259 @@ +import clsx from "clsx"; +import Layout from "@theme/Layout"; +import Heading from "@theme/Heading"; +import style from "./index.module.css"; +import Head from "@docusaurus/Head"; +import ScrollTopToButton from "../components/Buttons/bottom/ScrollTopToButton"; +import ScrollBottomToTop from "../components/Buttons/top/ScrollBottomToTop"; + +const PROJECT_DATA = [ + { + title: "AI-Driven Personalized Learning Paths", + difficulty: "Medium", + size: "350 Hours", + topics: ["Generative AI", "Vector DB", "LLM"], + techStack: ["React", "Node.js", "LangChain", "OpenAI"], + mentors: ["Ajay Dhangar", "TBD"], + description: "Build an AI engine that analyzes a user's GitHub profile and skill gaps to generate custom, interactive learning roadmaps with real-time progress tracking.", + goals: [ + "Implement Gemini/OpenAI integration for dynamic roadmap generation", + "Build a persistent progress tracker with MongoDB", + "Develop an interactive 'Roadmap-as-a-Service' UI component" + ] + }, + { + title: "Real-time Collaborative Code Lab", + difficulty: "Hard", + size: "350 Hours", + topics: ["WebSockets", "Collaboration", "Editor"], + techStack: ["TypeScript", "Socket.io", "Monaco Editor", "Redis"], + mentors: ["Ajay Dhangar", "TBD"], + description: "A 'Google Docs for Developers'—build a browser-based IDE where users can pair-program in real-time, share terminal outputs, and debug code together.", + goals: [ + "Implement CRDTs or Operational Transformation for conflict-free sync", + "Integrate a sandboxed execution environment (Docker/Piston API)", + "Develop a 'Live Mentor' request system with shared sessions" + ] + }, + { + title: "Open Source Contributor & Impact Dashboard", + difficulty: "Medium", + size: "175 Hours", + topics: ["GitHub API", "Analytics", "Gamification"], + techStack: ["Next.js", "GitHub GraphQL", "PostgreSQL", "Recharts"], + mentors: ["TBD"], + description: "Visualize the global impact of CodeHarborHub. This dashboard will track contributor streaks, project health metrics, and automate 'Top Contributor' awards.", + goals: [ + "Fetch and normalize real-time data using GitHub GraphQL API", + "Create interactive heatmaps for contribution activity", + "Automate Discord/Twitter announcements for merged PR milestones" + ] + }, + { + title: "CodeHarborHub CLI & Dev-Toolkit", + difficulty: "Medium", + size: "175 Hours", + topics: ["CLI", "DevTools", "Automation"], + techStack: ["Node.js", "Commander.js", "Inquirer", "ShellJS"], + mentors: ["Ajay Dhangar", "TBD"], + description: "Develop a unified command-line interface (CLI) to help contributors bootstrap projects, check for best practices, and submit issues directly from their terminal.", + goals: [ + "Build a project scaffolding engine for CodeHarborHub templates", + "Integrate local 'Good First Issue' finder via GitHub API", + "Implement automated code-quality checks before PR submission" + ] + }, + { + title: "Interactive Open Source Playground", + difficulty: "Hard", + size: "350 Hours", + topics: ["WebContainers", "Education", "Frontend"], + techStack: ["React", "WebContainer API", "Vite", "Tailwind"], + mentors: ["TBD"], + description: "Create an in-browser development environment that allows new contributors to run CodeHarborHub projects without cloning repositories locally.", + goals: [ + "Utilize StackBlitz WebContainers to run Node.js in the browser", + "Build a side-by-side tutorial and editor layout", + "Implement a 'One-click PR' feature from the browser sandbox" + ] + }, + { + title: "Documentation-as-Code (DaC) Engine", + difficulty: "Easy", + size: "175 Hours", + topics: ["Docs", "Automation", "Workflow"], + techStack: ["Docusaurus", "Markdown", "GitHub Actions", "Python"], + mentors: ["TBD"], + description: "Automate the generation of technical documentation by extracting comments and architecture patterns directly from the codebase into Docusaurus pages.", + goals: [ + "Develop a parser to convert JSDoc/Docstrings to Docusaurus MDX", + "Create a visual 'Architecture Map' generator for our repositories", + "Implement automated broken link and grammar checks in CI/CD" + ] + } +]; + +export default function GSoC2026() { + return ( + + + + + +

+ {/* Header Hero */} +
+
+ + Google Summer of Code 2026 + +

+ Join CodeHarborHub to build developer tools, collaborative platforms, and AI-driven educational resources. + Help us empower the next generation of open-source contributors. +

+
+ View Project Ideas + Join Discord + {/* https://discord.gg/codeharborhub */} +
+
+
+ + {/* Success Guide */} +
+
+
+
+
+
+
+ Candidate Success Roadmap +

GSoC is highly competitive. We evaluate contributors based on their technical skills, communication, and community involvement.

+
+
+
    +
  • 🎯 Active Participation: Join Discord and introduce yourself.
  • +
  • 🛠️ Code Contributions: Submit at least 2 quality PRs to our repos.
  • +
+
+
+
    +
  • 📝 Solid Proposals: Follow our template and define clear milestones.
  • +
  • 🤝 Mentorship: Be open to feedback during the drafting phase.
  • +
+
+
+
+
+
+ Application Deadline +

March 2026 (TBA)

+ Follow the official GSoC timeline for exact dates. +
+
+
+
+
+
+
+ +
+ + {/* Projects Grid */} +
+
+ + Explore Project Ideas + +

+ Find a project that matches your passion. We offer mentorship across various domains. +

+
+ +
+ {PROJECT_DATA.map((project, idx) => ( +
+
+
+
+
+ + {project.difficulty} + +
+
+ {project.size} +
+
+ {project.title} +
+
+

{project.description}

+ + Project Goals: + +
    + {project.goals.map((goal, gIdx) => ( +
  • {goal}
  • + ))} +
+
+ {project.techStack.map(tech => ( + {tech} + ))} +
+
+
+
+
+ Topics: {project.topics.join(", ")} +
+
+ Mentors: {project.mentors.join(", ")} +
+
+
+
+
+ ))} +
+
+
+ + {/* Call to Action Footer */} +
+
+ Have a Custom Project Idea? +

We welcome innovative proposals that align with our mission to empower developers.

+ +
+
+ + + +
+ + ); +} \ No newline at end of file diff --git a/src/pages/index.module.css b/src/pages/index.module.css index 1d7abed62..5e83cc1b7 100644 --- a/src/pages/index.module.css +++ b/src/pages/index.module.css @@ -48,3 +48,15 @@ cursor: pointer; text-align: center; } + +.gsocHero { + transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); + overflow: hidden; + position: relative; + z-index: 1; +} + +.gsocHero:hover { + transform: translateY(-5px); + box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15) !important; +} \ No newline at end of file diff --git a/src/theme/Footer/index.tsx b/src/theme/Footer/index.tsx index 49c0ea35d..2a29ab841 100644 --- a/src/theme/Footer/index.tsx +++ b/src/theme/Footer/index.tsx @@ -177,7 +177,7 @@ const Footer: React.FC = () => {
  • Our Team