Zo maak je van je GitHub-profiel een Ultimate Team-voetbalplaatje
De meeste GitHub-profielen zien er hetzelfde uit. Een saai groen raster van commits, een paar standaard badges die programmeertalen tonen, en een bezoekenteller rechtstreeks uit het midden van de jaren 2000. Een paar dagen geleden stuitte ik op het GitFut-project, dat dit probleem op een onverwachte manier oplost. Het transformeert developeractiviteit in een volwaardig FIFA Ultimate Team-achtig spelerkaartje met een rating tot 99, een veldpositie en een set trofeeën.
De auteur van het project, Younesfdj, ging dit als een nauwgezette sportanalist te werk. De service haalt geen cijfers uit de lucht en vraagt je niet om vragenlijsten in te vullen. Hij raakt de GraphQL API van GitHub, downloadt de accountgeschiedenis en wijst de metrics toe aan zes voetbalattributen.
Zes attributen en positieberekening
In plaats van de gebruikelijke regels code evalueert de service je daadwerkelijke bijdrage aan open source en werkende repositories. Elk voetbalattribuut is gekoppeld aan een specifieke actie:
- PAC (Pace) wordt berekend op basis van het aantal commits in het afgelopen kalenderjaar. Hoe regelmatiger je code pusht, hoe hoger de pace.
- SHO (Schoten) hangt af van het aantal sterren dat je repositories hebben verzameld.
- PAS (Passen) weerspiegelt teamwork, gecombineerd met verzonden pull requests en het aantal volgers.
- DRI (Dribbelen) toont de verscheidenheid aan programmeertalen in je portfolio.
- DEF (Verdedigen) is gebaseerd op het aantal code reviews en gesloten issues.
- PHY (Fysiek) evalueert het totale bijdragevolume gedurende de hele levensduur van het account.
Basisattributen hebben een harde bovengrens van 88. Om in de 90+ categorie te komen en Icon-status te verdienen, is één succesvol jaar niet genoeg. Je hebt jaren van consistent werk en echte impact op de community nodig.
De positiebepaling werkt op een interessante manier. De algoritme kijkt naar de statbalans: een developer die gericht is op sterren en populaire releases wordt naar de aanval gestuurd (positie ST of RW), terwijl iemand die issues sluiten en reviews doen leuk vindt een diepe spelverdeler wordt.
Bescherming tegen commitspam
Het belangrijkste probleem met elke GitHub-rating zijn spam bots en auto-commits. GitFut heeft dit wiskundig opgelost.
Alle jaarlijkse activiteit wordt gewogen met behulp van een logaritmische formule:
yearScore = 4·log(commits) + 3·log(PRs) + 3·log(reviews) + 2·log(issues) + 2·log(private)
De logaritme verzadigt snel. Als een script 20.000 commits genereert in een lege repository, draagt het 17,2 punten bij. Ondertussen krijgt een echte developer met 800 commits, 80 PR's, 80 reviews en 40 issues over een jaar 26 punten. Veelzijdige activiteit wordt door het algoritme veel hoger gewaardeerd dan dom counter-stuffing.
Trofeeënkamer en Gouden Ballen
Als de kaart de drempel van 80 overall rating heeft overschreden, komt het profiel in aanmerking voor awards:
- Ballon d'Or. Toegekend voor een kalenderjaar dat je carrièregemiddelde aanzienlijk overtrof. Je moet minstens 2.000 bijdragen accumuleren en een resultaat tonen dat 1,2 keer hoger is dan de mediaan.
- WK Gouden Bal. Gegeven voor een productiviteitsstijging tijdens echte WK-toernooien (van 2010 tot 2026). De vereisten zijn bescheidener voor oudere toernooien, aangezien in 2010 alleen al het hebben van commits al een account deed opvallen.
- Gouden Boot. Een dynamische trofee voor de huidige vorm. Het wordt bekleed door aanvallende posities met een Shooting-rating van 80 of hoger. Als sterren op verse repositories dalen, gaat de boot naar iemand anders.
- WK Trofee. Een speciale trofee voor alle developers die Spanje in hun profiel hebben staan (de winnaar van WK-2026 in de instellingen van de service).
Trofeeën op de profielpagina worden weergegeven met voorgebakken sprites (script bake-award-sprites.ts), dus de browser hoeft geen zware 3D-engine te laden.
Hoe de kaart in je profiel in te bedden
De kaart wordt on the fly gegenereerd en geleverd als een statische afbeelding. Voeg gewoon één regel toe aan de Markdown van je profiel:
[](https://gitfut.com/YOUR_USERNAME)
De afbeelding wordt gecachet via Redis en wordt bijgewerkt naarmate je code pusht en reviews verzamelt. Als je een landvlag-wijziging op de kaart wilt forceren, kun je een parameter aan de URL toevoegen: ?country=KZ of ?country=RS.
Het project heeft een compacte stack: Next.js, TypeScript, Tailwind voor styling en Redis voor het cachen van GraphQL API-responses.
Voor wie is dit project
GitFut helpt je waarschijnlijk niet om een streng enterprise-interview te halen, maar het is een geweldig alternatief voor saaie README-widgets. Het project is met liefde gemaakt, de formules houden eerlijk rekening met teamwork, en het award-systeem voegt spanning toe aan het regelmatig sluiten van pull requests. Ga naar de website, voer je gebruikersnaam in en check welke positie het algoritme je toewijst.
Gerelateerde projecten


