První portfolio projekt programátora – co postavit a jak ho ukázat
Jaký projekt do portfolia vybrat, aby zaujal, jak ho dotáhnout do nasazené podoby, co musí mít README a GitHub profil a kterým chybám se vyhnout.
Portfolio je pro začínajícího programátora důležitější než certifikát. Ukazuje, že dokážete dotáhnout věc od nápadu po funkční aplikaci. Jeden kvalitní, nasazený projekt má větší váhu než deset nedokončených tutoriálů. Tady je postup, jak ho vybrat, postavit a prezentovat.
Co nepatří do portfolia
- Kopie tutoriálu (todo list, kalkulačka, klon počasí ve stejné podobě jako na YouTube). Recenzent ho pozná na první pohled.
- Nedokončené projekty bez README a s posledním commitem „wip“.
- Projekty, kterým nerozumíte. Na pohovoru se vás zeptají, proč jste zvolili danou databázi nebo jak funguje přihlašování. „To vygenerovala AI“ nestačí.
Jak vybrat téma
Nejlepší projekty řeší skutečný problém – ideálně váš nebo někoho, koho znáte:
- rezervační systém pro kamarádčino kadeřnictví,
- přehled tréninků pro sportovní oddíl,
- nástroj, který stahuje a porovnává ceny produktů, které sledujete,
- Discord bot pro vaši komunitu,
- aplikace pro evidenci domácích výdajů s grafy.
Výhoda skutečného problému: máte skutečné uživatele, skutečnou zpětnou vazbu a příběh, který můžete vyprávět na pohovoru.
Rozsah: malé, ale kompletní
Typická chyba je příliš velký plán. Raději menší aplikace, která obsahuje celý „řez“ technologiemi:
| Vrstva | Co ukázat |
|---|---|
| Frontend | Formuláře, validace, responzivní layout |
| Backend | REST API nebo serverové renderování, autentizace |
| Databáze | Návrh tabulek, vztahy, migrace |
| Testy | Aspoň testy klíčové logiky |
| Nasazení | Běží na veřejné URL |
| Kvalita | Linter, CI, čitelný kód |
Plánujte v iteracích. Verze 1 = jedna hlavní funkce, funguje a je nasazená. Teprve pak přidávejte.
Nasazení je povinné
Projekt, který běží jen na localhost, si nikdo nevyzkouší. Možnosti:
- Statický frontend: GitHub Pages, Netlify, Cloudflare Pages.
- Backend: levný VPS, kde se naučíte i Linux, Nginx a systemd – a to je samo o sobě dovednost, kterou zaměstnavatelé oceňují. Případně platformy typu PaaS.
Na VPS si nastavte HTTPS (Let’s Encrypt přes certbot), aplikaci spouštějte jako službu a mějte základní zálohu databáze.
Git historie, která vypráví
Recenzent se podívá i na commity. Dobře:
feat: přidán export výdajů do CSV
fix: oprava součtu při prázdném měsíci
test: testy pro výpočet měsíční bilance
Špatně: jeden commit „initial“ s celým projektem, nebo padesát commitů „fix“, „asdf“, „funguje???“.
Zásady: commitujte často, malé logické celky, výstižná zpráva. Používejte větve a pull requesty i když pracujete sami – ukazuje to, že workflow znáte.
README je vaše vizitka
README je první, co recenzent uvidí. Musí odpovědět na otázky:
# Výdajníček
Webová aplikace pro evidenci domácích výdajů s měsíčními přehledy.
**Živá ukázka:** https://vydajnicek.example.cz (demo účet: demo / demo123)

## Funkce
- Evidence výdajů podle kategorií
- Měsíční grafy a export do CSV
- Přihlášení, každý uživatel vidí jen svá data
## Technologie
Python 3.12, Django 5, PostgreSQL, Chart.js, nasazeno na VPS (Nginx + Gunicorn)
## Spuštění lokálně
git clone https://github.com/jmeno/vydajnicek.git
cd vydajnicek
cp .env.example .env
docker compose up
## Co jsem se naučil / výzvy
- Jak řešit oprávnění, aby uživatel neviděl cizí data
- Optimalizace dotazů (N+1 problém v přehledu)
Sekce „Co jsem se naučil“ je zlatá – ukazuje, jak přemýšlíte. Na pohovoru se jí často přímo ptají.
GitHub profil
- Připněte (pin) 2–4 nejlepší repozitáře.
- Vytvořte profilové README (repozitář se stejným názvem jako vaše uživatelské jméno).
- Každý připnutý repozitář má popis, odkaz na demo a témata (topics).
- Zkontrolujte, že v historii nejsou tajné klíče a hesla (
.envpatří do.gitignore).
AI v portfoliovém projektu
Používat AI je v pořádku a je to normální součást práce. Ale:
- Musíte rozumět každé části kódu a umět ji vysvětlit.
- Architektonická rozhodnutí dělejte sami a zdůvodněte je.
- Na pohovoru buďte upřímní: „AI mi pomohla s X, ale Y jsem navrhl a řešil sám, protože…“
Dobrý způsob práce: navrhněte strukturu sami, AI používejte na konzultace, revize a rutinní části. V ColdHost AI můžete mít projekt nahraný v Projektech (třeba importem z GitHubu) a nechat si navrhovat úpravy, které pak sami zkontrolujete a pošlete jako pull request – přesně tak, jak se pracuje v týmu.
Kontrolní seznam před odesláním odkazu
- [ ] Aplikace běží na veřejné URL a demo účet funguje.
- [ ] README s popisem, screenshotem, technologiemi a návodem ke spuštění.
- [ ] Žádná tajemství v repozitáři.
- [ ] Aspoň základní testy a CI, které je spouští.
- [ ] Smysluplná git historie.
- [ ] Umíte vysvětlit každé technické rozhodnutí.