Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
113 changes: 113 additions & 0 deletions src/components/WhyChooseCodeHarbor.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
import Link from "@docusaurus/Link";
import {
BookOpen,
Code2,
Users2,
Zap,
Trophy,
Github
} from 'lucide-react';

const reasons = [
{
title: "Free Education",
desc: "Comprehensive tech curriculum taught by industry masters, 100% free.",
icon: <BookOpen className="w-10 h-10" />,
},
{
title: "Open Source",
desc: "Contribute to real-world projects and build your GitHub profile.",
icon: <Github className="w-10 h-10" />,
},
{
title: "Live Editor",
desc: "Practice coding in real-time with our integrated browser-based IDE.",
icon: <Code2 className="w-10 h-10" />,
},
{
title: "Active Community",
desc: "Join over 100+ contributors and thousands of learners worldwide.",
icon: <Users2 className="w-10 h-10" />,
},
{
title: "DSA Mastery",
desc: "Curated problems and solutions to help you crack technical interviews.",
icon: <Zap className="w-10 h-10" />,
},
{
title: "Expert Guidance",
desc: "Roadmaps and tutorials designed for both beginners and pros.",
icon: <Trophy className="w-10 h-10" />,
},
];

const WhyChooseCodeHarbor = () => {
return (
<section className="py-24 px-6 bg-[var(--ifm-bg-color)] transition-colors duration-300 font-sans relative overflow-hidden">
{/* Subtle Background Pattern */}
<div className="absolute inset-0 opacity-[0.03] dark:opacity-[0.05] pointer-events-none">
<svg width="100%" height="100%"><pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse"><path d="M 40 0 L 0 0 0 40" fill="none" stroke="currentColor" strokeWidth="1"/></pattern><rect width="100%" height="100%" fill="url(#grid)" /></svg>
</div>

<div className="max-w-7xl mx-auto relative z-10">

{/* Header */}
<div className="text-center mb-20">
<span className="inline-block px-4 py-1.5 mb-6 text-xs font-bold tracking-[0.2em] uppercase text-[var(--ifm-color-primary)] bg-[var(--ifm-color-primary)]/10 rounded-full border border-[var(--ifm-color-primary)]/20">
Why CodeHarborHub?
</span>
<h2 className="text-4xl md:text-6xl font-black text-[var(--ifm-text-color)] leading-tight tracking-tight">
Empowering Your <span className="text-[var(--ifm-color-primary)]">Tech Journey</span>
</h2>
<p className="mt-6 text-lg opacity-70 text-[var(--ifm-text-color)] max-w-2xl mx-auto leading-relaxed">
We shatter limitations by offering an exclusive open-source platform for mastering
in-demand skills and launching your dream career.
</p>
</div>

{/* Feature Grid */}
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8">
{reasons.map((item, index) => (
<div
key={index}
className="relative group p-10 bg-white dark:bg-slate-800/40 rounded-3xl border border-slate-200 dark:border-slate-700/50 shadow-sm hover:shadow-2xl hover:border-[var(--ifm-color-primary)]/50 transition-all duration-500 hover:-translate-y-2 overflow-hidden"
>
{/* Animated Glow Effect */}
<div className="absolute -right-10 -top-10 w-32 h-32 bg-[var(--ifm-color-primary)] opacity-0 group-hover:opacity-10 blur-3xl transition-opacity duration-500" />

{/* Icon Container */}
<div className="mb-8 inline-flex items-center justify-center w-20 h-20 rounded-2xl bg-slate-50 dark:bg-slate-800 text-[var(--ifm-color-primary)] group-hover:bg-[var(--ifm-color-primary)] group-hover:text-white transition-all duration-500 shadow-inner group-hover:shadow-[var(--ifm-color-primary)]/40 group-hover:scale-110">
{item.icon}
</div>

{/* Content */}
<h3 className="text-2xl font-bold text-[var(--ifm-text-color)] mb-4">
{item.title}
</h3>
<p className="opacity-60 text-[var(--ifm-text-color)] leading-relaxed text-base">
{item.desc}
</p>

{/* Bottom Accent Line */}
<div className="absolute bottom-0 left-0 h-1.5 bg-[var(--ifm-color-primary)] w-0 group-hover:w-full transition-all duration-700 ease-in-out" />
</div>
))}
</div>

{/* Call to Action */}
<div className="mt-20 text-center">
<Link
href="https://github.com/codeharborhub"
className="group inline-flex items-center gap-3 px-10 py-4 bg-[var(--ifm-color-primary)] text-white font-black rounded-2xl hover:brightness-110 transition-all hover:shadow-[0_0_25px_rgba(var(--ifm-color-primary-rgb),0.4)] hover:no-underline hover:text-gray-100"
>
<Github className="w-6 h-6 group-hover:rotate-12 transition-transform" />
<span>Join Our Open Source Mission</span>
</Link>
</div>

</div>
</section>
);
};

export default WhyChooseCodeHarbor;
68 changes: 68 additions & 0 deletions src/data/team.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
export interface Socials {
github?: string;
twitter?: string;
linkedin?: string;
}

export interface Member {
slug: string;
name: string;
role: string;
image: string;
bio: string;
email: string;
location: string;
skills: string[];
socials: Socials;
}

export const teamMembers: Member[] = [
{
slug: "ajay-dhangar",
name: "Ajay Dhangar",
role: "Founder & CEO",
image: "https://github.com/ajay-dhangar.png",
bio: "Visionary developer and open-source advocate. Ajay founded CodeHarborHub to democratize tech education and build a collaborative ecosystem for developers worldwide.",
email: "ajaydhangar49@gmail.com",
location: "Mandsaur, MP, India",
skills: ["Full Stack Dev", "System Design", "Open Source", "Leadership"],
socials: {
twitter: "https://x.com/CodesWithAjay",
github: "https://github.com/ajay-dhangar",
linkedin: "https://www.linkedin.com/in/ajay-dhangar/",
},
},
{
slug: "sarah-jenkins",
name: "Sarah Jenkins",
role: "Full Stack Developer",
image: "https://images.unsplash.com/photo-1494790108377-be9c29b29330?auto=format&fit=crop&q=80&w=500",
bio: "Expert in building scalable MERN stack applications. Sarah leads the frontend architecture and ensures a seamless user experience across the platform.",
email: "sarah@example.com",
location: "London, UK",
skills: ["React", "Node.js", "MongoDB", "Tailwind CSS"],
socials: { twitter: "#", github: "#", linkedin: "#" },
},
{
slug: "jhon-smith",
name: "Jhon Smith",
role: "Web Designer",
image: "https://images.unsplash.com/photo-1506794778202-cad84cf45f1d?auto=format&fit=crop&q=80&w=500",
bio: "Passionate about clean UI and accessible design. Jhon crafts the visual identity of CodeHarborHub, making complex documentation easy to navigate.",
email: "jhon@example.com",
location: "New York, USA",
skills: ["UI/UX", "Figma", "Accessibility", "CSS3"],
socials: { twitter: "#", github: "#", linkedin: "#" },
},
{
slug: "jake-nackos",
name: "Product Manager",
role: "Product Manager",
image: "https://images.unsplash.com/photo-1580489944761-15a19d654956?auto=format&fit=crop&q=80&w=500",
bio: "Strategist focused on community growth. Jake bridges the gap between user feedback and technical implementation to keep our roadmap on track.",
email: "jake@example.com",
location: "Berlin, Germany",
skills: ["Product Strategy", "Agile", "Community Building"],
socials: { twitter: "#", github: "#", linkedin: "#" },
},
];
62 changes: 62 additions & 0 deletions src/pages/gsoc-2026-ideas.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
---
title: GSoC 2026 Project Ideas
description: "Join CodeHarborHub for Google Summer of Code 2026 and help us bridge the gap between education and innovation."
---

Welcome to the **CodeHarborHub** project ideas page. We are a global community dedicated to transforming ideas into reality through open-source collaboration.

---

## Contributor Checklist
Before reaching out to mentors, please complete the following:
- [ ] Join our [Discord/Slack Community](YOUR_LINK_HERE).
- [ ] Star our [GitHub Repositories](https://github.com/codeharborhub).
- [ ] Set up the local development environment for the project you are interested in.
- [ ] Look for issues labeled `good-first-issue` to make your first contribution.

---

## Project Ideas for 2026

### 1. AI-Powered Learning Path Generator
**Difficulty:** Medium (175 hours)
**Tech Stack:** Python, LangChain, OpenAI/Gemini API, React

**Description:** Develop an intelligent system that analyzes a user's career goals and current skill level to generate a personalized roadmap using CodeHarborHub resources.
- **Goal:** Implement a RAG system to index our educational content.
- **Expected Outcome:** A functional dashboard where users receive a step-by-step learning guide.
- **Mentors:** [@ajay-dhangar]

---

### 2. Interactive "Live Code" Playground
**Difficulty:** Large (350 hours)
**Tech Stack:** React, Monaco Editor, Web Workers

**Description:** Build an integrated, browser-based code editor for our platform so students can practice coding without leaving the lesson page.
- **Goal:** Create a secure sandbox to execute HTML/CSS/JS with real-time preview.
- **Expected Outcome:** A reusable component for our educational modules.
- **Mentors:** [@ajay-dhangar]

---

### 3. Gamified Contribution Dashboard
**Difficulty:** Medium (175 hours)
**Tech Stack:** Node.js, GitHub REST API, MongoDB

**Description:** Create a platform that tracks community contributions and awards digital badges and XP to encourage long-term engagement.
- **Goal:** Automate badge distribution based on merged Pull Requests.
- **Expected Outcome:** A public leaderboard and user profile pages.
- **Mentors:** [@ajay-dhangar]

---

## Proposal Guidelines
Your proposal is the most important part of your application. Please follow our [Proposal Template](./proposal-template) and include:
1. **Detailed Timeline:** A week-by-step breakdown.
2. **Technical Implementation:** How do you plan to solve the problem?
3. **About You:** Your experience and why you chose CodeHarborHub.

---

> **Note:** We value quality over quantity. A single well-researched proposal is better than multiple generic ones.
9 changes: 8 additions & 1 deletion src/pages/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import { CommunityStatsProvider } from "../context/CommunityStats";
import Faq from "./Faq";
import Organizations from "../components/HomePage/organizations";
import TweetsSection from "../components/HomePage/TweetsSection";
import WhyChooseCodeHarbor from "../components/WhyChooseCodeHarbor";

export default function Home() {
const { siteConfig } = useDocusaurusContext();
Expand Down Expand Up @@ -42,6 +43,12 @@ export default function Home() {

<hr className={style.home__hr} />

<div className={style.home__header}>
<WhyChooseCodeHarbor />
</div>

<hr className={style.home__hr} />

<div>
<ResourcesSection />
</div>
Expand Down Expand Up @@ -80,4 +87,4 @@ export default function Home() {
</main>
</Layout>
);
}
}
Loading
Loading