πŸš€ GSoC 2026 Org Finder

July 19, 2026 Β· View on GitHub

πŸš€ GSoC 2026 Org Finder

Find your perfect Google Summer of Code 2026 organization

Discover organizations based on tech stack, domains, competition level, GitHub activity, and beginner-friendly issues β€” all in one place.

Live Demo badge Discord badge

GitHub Stars GitHub Forks GitHub Issues GitHub License

Project Banner

✨ What is this?

GSoC 2026 Org Finder is a fast, modern, and beginner-friendly platform for exploring Google Summer of Code organizations based on tech stack, domains, interests, and contribution goals.

Instead of manually browsing through 184+ organizations, users can:

  • πŸ” Search by technology, domain, or keyword
  • 🏷️ Filter by languages, categories, and competition level
  • βš–οΈ Compare organizations side-by-side
  • 🟒 Discover beginner-friendly Good First Issues
  • πŸ“ˆ Track live GitHub activity and project insights

Built with a responsive and lightweight architecture, the platform delivers a seamless experience across desktop and mobile devices.

No sign-up. No setup. Just explore, compare, and begin your open-source journey πŸš€


πŸ“– Table of Contents

SectionDescription
✨ What is this?Overview of the project
🎯 FeaturesCore functionalities and highlights
πŸ“ˆ FlowchartVisual representation of project workflow
πŸ“ Project StructureRepository folder structure
πŸ” URL ValidationURL validation system and checks
πŸš€ Deploy Your OwnDeployment and setup guide
πŸ› TroubleshootingCommon issues and fixes
🀝 ContributingContribution guidelines and workflow
πŸ‘₯ GSSoC MentorsMentors supporting the project
πŸ“… Key DatesImportant GSoC 2026 timeline
πŸ’‘ Tips for UsersHelpful usage tips and shortcuts
πŸ“„ LicenseProject license information

πŸ“ˆ Flowchart

Flowchart showing the user action flow for discovering and filtering GSoC organizations

🎯 Features

🎯 Features at a Glance

✨ FeatureπŸ“– Description
πŸ” Smart SearchSearch across 184+ organizations
🏷️ Advanced FiltersFilter by domains and languages
βš–οΈ Organization CompareCompare up to 3 organizations
🟒 Good First IssuesFind beginner-friendly issues
⌨️ Keyboard NavigationFull accessibility support
πŸŒ™ Dark ModeClean dark/light interface
πŸ“± Fully ResponsiveWorks on all screen sizes

πŸ”Ž Discovery & Filtering

Easily explore organizations using powerful and beginner-friendly filtering tools designed to simplify the GSoC organization discovery process.

FeatureDescription
πŸ” Full-text SearchSearch organizations by name, tech stack, or topic
🏷️ Language FiltersFilter using multiple programming languages
πŸ“Š Competition FilterExplore high, medium, or low competition orgs
🟒 Activity BadgesIdentify actively maintained organizations
⚑ Quick Category ChipsInstantly filter by domains and interests
🌱 Beginner RecommendationsDiscover newcomer-friendly organizations

πŸ“Š Live GitHub Integration

FeatureDescription
🌟 Live GitHub StatsView Stars, Forks, Issues, and Last Commit data
🟒 Good First IssuesTrack beginner-friendly issues on every org card
πŸŽ–οΈ Activity BadgeShows Active, Moderate, or Low repository activity
πŸ”— Smart Repo LinksRedirects to project repos or GitHub org pages
πŸ“ˆ Project InsightsAnalyze repository health and activity
⚑ Fast FetchingLightweight and optimized GitHub integration

flowchart TD
    A([🏒 Organization Card])

    A --> B[πŸ“– Tech Stack]
    A --> C[πŸ“… GSoC Timeline]
    A --> D[πŸ“ˆ Competition Metrics]
    A --> E[🟒 Good First Issues]
    A --> F[πŸ’‘ Ideas Page]
    A --> G[βš–οΈ Compare System]

    D --> H[⭐ Stars & Forks]
    D --> I[πŸ”₯ Activity Badge]

    style A fill:#d4af37,color:#000,stroke:#2c2420,stroke-width:3px
    style B fill:#1f2937,color:#fff
    style C fill:#5d4037,color:#fff
    style D fill:#0f766e,color:#fff
    style E fill:#166534,color:#fff
    style F fill:#7c3aed,color:#fff
    style G fill:#b45309,color:#fff
    style H fill:#374151,color:#fff
    style I fill:#991b1b,color:#fff

βš–οΈ Comparison System

Easily compare up to 3 organizations side-by-side to identify the best fit for your skills and contribution goals.

MetricComparison
πŸ“Š CompetitionHigh, medium, or low competition
πŸ“… GSoC ExperienceYears participating in GSoC
⭐ GitHub StatsStars, forks, and activity
🟒 Good First IssuesBeginner-friendly opportunities
πŸ’» Tech StackLanguages and domains
πŸ”₯ Repository HealthActivity and maintenance status

✨ User Experience Features

⌨️ Smart Navigation

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ↑ ↓ ← β†’ Navigateβ”‚
β”‚ Enter β†’ Open    β”‚
β”‚ C β†’ Compare     β”‚
β”‚ Esc β†’ Close     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

⚑ Fast keyboard-first browsing

πŸ“Š Local Analytics

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ πŸ‘€ Org Views    β”‚
β”‚ πŸ”Ž Searches     β”‚
β”‚ ⏱ Session Time  β”‚
β”‚ πŸ“ˆ Trends       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ”’ 100% private browser storage

πŸŒ™ Theme Engine

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β˜€οΈ Light Mode   β”‚
β”‚        β‡…        β”‚
β”‚ πŸŒ™ Dark Mode    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ’Ύ Preferences saved automatically

πŸ“± Responsive UI

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ πŸ’» Desktop      β”‚
β”‚ πŸ“Ÿ Tablet       β”‚
β”‚ πŸ“± Mobile       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

⚑ Optimized for all screen sizes


πŸ—‚οΈ All 184 GSoC 2026 Organizations

DomainExamples
Science & MedicineOpenAstronomy, DeepChem, MDAnalysis, ArduPilot, CERN-HSF
Programming LanguagesLLVM, GCC, Haskell.org, The Rust Foundation, Swift, Python SF
DataMariaDB, PostgreSQL, DBpedia, OpenStreetMap, MetaBrainz
WebDjango, Drupal, Wagtail, Wikimedia, webpack
SecurityMetasploit, OWASP, Rizin, AFLplusplus, The Honeynet Project
Operating SystemsDebian, FreeBSD, GNOME, NetBSD, Haiku, KDE
MediaFFmpeg, Blender, Synfig, Jitsi, VideoLAN
InfrastructureKubeflow, KubeVirt, QEMU, Meshery, CNCF
Dev ToolsMIT App Inventor, OpenVINO, Gemini CLI, API Dash
OtherAnkiDroid, Joplin, Zulip, CCExtractor, Neovim

πŸ› οΈ Tech Stack

LayerWhat
FrontendVanilla HTML/CSS/JS β€” zero frameworks, zero build step
HostingVercel (static)
APIVercel Edge Function (/api/github.js)
Data sourceManually curated from summerofcode.withgoogle.com
AnalyticsBrowser localStorage only β€” no external tracking

πŸ“ Project Structure

gsoc-2026-org-finder/
β”œβ”€β”€ index.html                    # Main frontend HTML
β”œβ”€β”€ api/github.js                 # Vercel Edge Function β€” GitHub API proxy
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/og-image.jpeg      # Social preview image
β”‚   β”œβ”€β”€ js/app.js                 # Application logic
β”‚   β”œβ”€β”€ js/org.js                 # Organization data source
β”‚   └── styles.css                # Styling
β”œβ”€β”€ agent/
β”‚   β”œβ”€β”€ scripts/                  # Automation and helper scripts
β”‚   └── tenet_agent/              # TENET PR review agent
β”œβ”€β”€ data/issues.json
└── README.md

No node_modules. No build step. No bundler. Just deploy.


πŸ” URL Validation

The project includes a validation script to ensure all organization ideas URLs are safe and properly formatted:

node agent/scripts/validate-ideas-urls.js

This script checks:

  • βœ… URL format validity
  • βœ… Protocol restrictions (http/https only)
  • ⚠️ Placeholder/generic URLs that need updating
  • πŸ“Š Summary statistics and protocol distribution

Run this before committing changes to src/js/org.js to catch invalid URLs early.

πŸ”’ Hardened Frontend Architecture

To ensure the GSoC Org Finder is extremely secure, accessible, resilient, and maintainable, the codebase has been hardened with a robust vanilla architecture:

1. Unified Event-Driven Flow & Delegation (100% Programmatic & CSP-Compliant)

All frontend scripting, bookmarking, complexity filtering, modal controls, and dynamic templates have been migrated to a 100% programmatic model:

  • Zero Inline Handlers: All scattered onclick and onerror attributes in both static HTML (index.html) and dynamic template strings (app.js, recommendation-ui.js) are completely eliminated.
  • Global Capturing Image Error Interceptor: A centralized recapturing error listener registered on document seamlessly intercepts failed image load events and triggers styled initial-based fallbacks.
  • Centralized Event Delegation: Dynamic interactive collections (like trending cards, selected language badges, and mentor contact cards) cleanly route clicks via unified delegated listeners on their parent elements (#trendingScroll, #selectedLangsStrip, #mentorsContainer).

2. πŸ›‘οΈ Safe Rendering & Sanitization (XSS Mitigation)

  • HTML Escaping: All dynamic insertions of user-supplied or external API content are safely wrapped via a rigid escapeHtml() text filter to block HTML markup injections.
  • Protocol-Restricted Hrefs: External anchor elements (like organization repository pages or ideas boards) are strictly validated via sanitizeHrefUrl() and validateIdeasUrl() to enforce only safe absolute protocols (http: and https:), explicitly rejecting active protocol wrappers (javascript:, data:, vbscript:).

3. β™Ώ Accessible Modal Management

All overlays (orgModal, compareModal, and helpModal) implement full semantic accessibility matching the WAI-ARIA standard:

  • Modals are marked up using role="dialog", aria-modal="true", and mapped with specific label headers via aria-labelledby.
  • Open/close interactions trigger strict focus restoration (returning focus to the activating button upon closing).
  • Modals implement dynamic focus trapping ensuring Tab/Shift+Tab operations cycle exclusively within dialog controls.

4. πŸ›œ Offline Resilience (Service Worker Caching)

  • Static Manifest: A robust cache list (sw.js) collects and version-controls all essential UI assets, scripts, stylesheets, and custom Google Fonts.
  • Dual Caching Interceptors: Intercepted requests deploy Stale-While-Revalidate patterns for static assets (for zero-latency responsiveness) and Network-First strategies for Edge proxy stats and JSON issue lists (for high data reliability).

5. πŸ§ͺ Zero-Dependency Testing Suite

A modular test bed under /tests utilizes Node.js's built-in node:test framework and mock DOM stubs, covering:

  • tests/sanitization.test.js: Validates escaping and URL sanitizers.
  • tests/skills.test.js: Validates language aliases and technical context matching for single-letter tags.
  • tests/recommendation.test.js: Validates recommender scores and veteran status bonuses.
  • tests/filtering.test.js: Validates tag matching.
  • tests/modal.test.js: Upgraded interactive test suite validating focus traps, focus restorations, and API fetching.
  • tests/browser.test.js: Simulated browser DOM smoke test dry-running page load event bindings.
  • tests/cache.test.js: Service Worker offline caching strategy fetch intercept test.

Run the test suite locally:

npm test

πŸš€ Deploy Your Own

1. Fork & Clone

git clone https://github.com/your-username/gsoc-2026-org-finder.git
cd gsoc-2026-org-finder

2. Add GitHub Token (for live stats + Good First Issues)

In your Vercel dashboard β†’ Project Settings β†’ Environment Variables:

GITHUB_TOKEN = ghp_your_token_here

Generate a token at github.com/settings/tokens β€” only public_repo scope needed.

3. Deploy

vercel --prod

Or connect the repo to Vercel and it deploys automatically on every push.

4. Run Locally

open index.html   # macOS β€” works without API (GitHub stats won't load)

For full functionality locally, run vercel dev to start the Edge Function.


πŸ› Troubleshooting

GitHub stats not loading?

  • Set GITHUB_TOKEN environment variable
  • Check rate limits: curl -H "Authorization: token YOUR_TOKEN" https://api.github.com/rate_limit

Ideas link not working?

  • Run node agent/scripts/validate-ideas-urls.js to check all URLs

Issues page empty?

  • GitHub API might be rate-limited; wait 1 hour and refresh

🀝 Contributing

Found a missing org, wrong category, or incorrect tags? PRs are very welcome!

Read the guide for your contribution track before getting started:

TrackGuide
GSSoC'26 ContributorsGSSoC Contributor Guide
GSSoC'26 MentorsGSSoC Mentor Guide
NSoC'26 ContributorsNSoC Guide
General ContributorsGeneral Contributor Guide

For the full contributing reference (architecture, rules, PR workflow), see CONTRIBUTING.md.

Assignment Process

This repo uses a maintainer-verified assignment system:

  1. Find an issue and comment /assign gssoc or /assign nsoc
  2. Your request is queued (not immediately assigned)
  3. A maintainer verifies the issue and runs /approve-assignment
  4. You get notified and can begin work

Do not start working before you are assigned.

Quick Start

  1. Fork the repo
  2. Edit the ORGS array in index.html
  3. Open a pull request using the appropriate template

Each org entry looks like this:

{
  name: "Organization Name",
  cat: "science",           // science | programming | data | web | os | security | media | infra | dev | other
  years: 5,                 // number of GSoC years participated
  firstYear: 2021,          // first year they participated
  competition: "moderate",  // hot | moderate | chill
  github: "owner/repo",     // main repo (or just "owner" for umbrella orgs)
  ideas: "https://github.com/org/repo/wiki/Ideas",  // project ideas page URL (optional)
  tags: ["python", "c++", "machine learning"],
  desc: "Short description of what the org does.",
  fit: ["Python devs", "ML researchers"]
}

Ideas URL Requirements:

  • Must use http:// or https:// protocol (or protocol will be added automatically)
  • Should link to the organization's specific project ideas page
  • Generic GSoC organization pages are acceptable as placeholders but should be updated when possible
  • Run node agent/scripts/validate-ideas-urls.js to check all URLs before submitting

Competition levels (subjective, based on org popularity + slot count):

  • hot β€” high applicant volume, very competitive (Django, LLVM, Git, KDE…)
  • moderate β€” good balance of applicants and slots
  • chill β€” fewer applicants, easier to stand out

PR Review Pipeline

All PRs pass through a 3-stage pipeline:

StageWhatWho
Stage 1DCO, format, AI/slop, diff sizeAutomated
Stage 2Code review, qualityMentor
Stage 3Final merge decisionProject Admin

Stage 2 unlocks only after Stage 1 passes. The pipeline status comment on your PR updates only when the stage actually changes (no spam).


πŸ“… GSoC 2026 Key Dates

DateMilestone
February 2026Organizations announced
March 16, 2026Student applications open
March 31, 2026Application deadline
April 30 2026Accepted students announced
May – November 2026Coding period

πŸ”Œ API Reference (/api/github.js)

The Edge Function proxies GitHub API calls so your token never hits the client.

EndpointDescription
GET /api/github?repo=owner/repoRepo stats: stars, forks, issues, last commit, activity, GFI count
GET /api/github?repo=owner/repo&gfi=1Good First Issue count only (faster, cached separately)
GET /api/github?repo=owner/repo&gfi=1&issues=1Full list of up to 30 open Good First Issues

All responses are cached in-memory for 1 hour on the Edge runtime.

πŸš€ Official Open Source Program Project

🌟 Proudly Participating In

Nexus Spring of Code 2026 (NSoC'26)

GirlScript Summer of Code 2026 (GSSoC'26)

GSSoC & NSoC Banner


πŸ”‘ Project Admin

S3DFX-CYBER

@S3DFX-CYBER β€” Project Admin (PA) for GSSoC'26 and NSoC'26. Responsible for final merge decisions, mentor coordination, repository maintenance, and ensuring contribution quality across all programs.


πŸ‘₯ GSSoC Mentors

These mentors help guide and review contributions for the GSSoC program:

12fahed 4f4d aanjalii01 adithyan-css AditthyaSS AnirbansarkarS AnirudhPhophalia anubhavxdev Anushreebasics aryanbhutani26 ayu-yishu13 Ayush-Patel-56 Ayushh-Sharmaa Balaji91221 BandhiyaHardik coder-zs-cse CoderOggy78 deepak0x deepaksinghh12 DevROHIT11 Haile-12 itsdakshjain JoeCelaster kallal79 KaranGupta2005 knoxiboy Kota-Jagadeesh KumarNirupam1 lourduradjou lovestaco magic-peach Manan-Chawla Maxd646 MAYANKSHARMA01010 Mohit-368 morningstarxcdcode Mrigakshi-Rathore MUKUL-PRASAD-SIGH Neilblaze nihalawasthi nitinog10 oasis-parzival piyushdotcomm Precise-Goals preetbiswas12 rounakkraaj-1744 sabeenaviklar Sagar-Datkhile Satya900 saurabh24thakur Shravanthi20 sparshagarwal0411 SparshM8 stealthwhizz subratamondalnsec Suvanwita SyedImtiyaz-1 TarunyaProgrammer thakurutkarsh22 uddalak2005 vanshaggarwal07

We thank all our Contributors for improving this project

πŸ’‘ Tips for Users

  1. New to GSoC? Start with "Newcomers First" filter + sort by Good First Issues
  2. Experienced? Check "Veterans" filter + sort by Competition for challenges
  3. Building a comparison? Use keyboard shortcut C to quickly add orgs
  4. Mobile browsing? Try portrait mode β€” everything scrolls smoothly

✨ Contributors

0000001abhishek-debug 4f4d AAKASH22269796 ANKITDANDOTIYA AbhishekVinod-dev Aditya-debugs141 Aditya8369 AdityaM-IITH Akshayaqueen Ashish241 Ashusf90 Ashvin-KS Ayushi-hi Ayushia5 Bushra-gh Chizaram-Igolo D4rk-Pho3nix DAYHARIKA Deepakvarna02 Dhruvil135 Dhruvil20060 Dj-Shortcut G-Ganesh83 HarshaVardhan31012007 Harshith1702 Harxhit IshitaSingh0822 Itheshjs Itzzavdheshh Jagriti-yadav Jay-Jay-Tee Konarksharma13 Kuldeeps1505 KumarNirupam1 Lathika11 Manasa-2303 Manav5234 MehtabSandhu11 Namish06 NayansiDupare Nightkilller Nilamma19 Nirula23 OmkarAKadam Pallavi-vi-1234 Pranathi-Kunjeti Pranav-IIITM PrincePundir123 PriyaanshPandey Rachit-Kakkad1 S3DFX-CYBER SHUBHAM2775 Sha-lini3 ShailiBoddula Shivansh181003 Soquixx Taru-Sharma0503 TarunyaProgrammer ThePrabhu Trrr10 UjsGit VaibhavMP Vedhant26 Vishee02 Vrinda-28 YLaxmikanth Yashvijain1234 a638011 aasthakhatri11 abdussamad567 ajitkumarsaini02 amrita-a-menon angelina-2206 anirudh645 anshul23102 anushka146 arghya29 arpit2006 arushiranjan ash1shkumar bhaktiyadav08 bhavyanjain3004 bipinchaudhary28899 charu2210 chavanGaneshDatta ckprojects77 deekshithayadav-16 diksha78dev dishamaurya081-create garimatiwari1912-alt gloooomed imayuss jatinrwt01 kejriwalkaushal04 kiranShamsHere maanyadanayak maitrak18 mdudhe2007 meghna-cs mohanteja781112 mramansayyad mudit-codez neeraj477 nimkarprachi17 nitinog10 omkartike opinder8699 parneetbrar234-svg poorvasingh1610 pranav-pachn prisha-sh rajdeep-yadav riddhima25bet10005-a11y riddhimagupta2 riyanshigupta890-cloud rudra1337-dev saiprasad578 saumyasargam shivam-kakkar shravanithouta108 shreyjoshi73 shrutisd739 shrutssss srishav3 syedrazamd v4rshh vaibhavi-vaishnav yuvraj-k-singh


Star History

Star History Chart

πŸ“„ License

Apache 2.0 β€” made for GSoC beginners, by people who've been there. Share it with anyone applying! Applications open March 16, 2026. πŸ™Œ

-----------------------------------------------------