il tuo github, decoded
CodePrint è un'applicazione web che analizza profili GitHub pubblici e genera una dashboard visiva con statistiche, stack tecnologico, attività e metriche sui repository.
- Next.js 16 — Pages Router
- TypeScript
- Material UI v7
- Zustand — state management
- Axios — HTTP client
- React Hook Form — gestione form
- Notistack — notifiche
- JSON Server — database locale per ricerche recenti
- GitHub REST API v3
- Node.js >= 18
- Yarn
git clone https://github.com/tuo-username/ts-codeprint.git
cd ts-codeprint
yarn installCrea un file .env.local nella root del progetto:
NEXT_PUBLIC_GITHUB_TOKEN=il_tuo_tokenPer generare un token: GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens.
Permessi necessari: sola lettura su repository e profili pubblici.
Senza token il rate limit è di 60 richieste/ora. Con token sale a 5000 richieste/ora.
Per avviare Next.js e JSON Server contemporaneamente:
yarn dev:allOppure separatamente:
# Next.js → http://localhost:3000
yarn dev
# JSON Server → http://localhost:3001
yarn serversrc/
assets/ # logo e wordmark SVG
components/ # micro componenti riutilizzabili
constants/ # costanti (colori linguaggi, path, ecc)
features/ # componenti macro per feature (Profile, ecc)
hooks/ # custom hooks (useUserSearch, useUserAnalyze, ecc)
layouts/ # layout di pagina
libs/ # client axios (GitHub + JSON Server)
pages/ # pagine Next.js
providers/ # provider (FormProvider, ecc)
sections/ # sezioni di pagina con logica
services/ # chiamate HTTP crude (github, db)
stores/ # Zustand stores
styles/ # stili globali e font
theme/ # tema MUI (palette, typography, breakpoints)
types/ # TypeScript interfaces
utils/ # utility functions
db.json # database JSON Server
- Ricerca profilo GitHub con autocomplete (dal 3° carattere)
- Dashboard con statistiche del developer
- Dev Score calcolato su followers, repo, stelle e commit
- Stack dominante con percentuali reali per linguaggio
- Ultimi 10 eventi pubblici del profilo
- Repository pubblici con dettaglio linguaggi e stelle
- Storico ricerche recenti con possibilità di eliminazione