Český výukový repozitář pro junior frontend trainee a začínající programátory.
Projekt ukazuje, jak se jednoduchý web dostane z kódu do prohlížeče a jak do toho zapadá lokální server, Git, GitHub, DevTools a HTTP.
Nejde o framework projekt. Není tu React, TypeScript, databáze ani Docker. Cílem je pochopit základy na malém, čitelném projektu.
Tento repozitář je pro člověka, který:
- zná úplné základy HTML a CSS;
- začíná s JavaScriptem;
- učí se používat Git a GitHub;
- chce pochopit, co znamená
localhost; - chce umět najít běžné chyby v prohlížeči;
- potřebuje praktický trénink před větším projektem.
- Jak spolupracují HTML, CSS a JavaScript.
- Co dělá prohlížeč a co dělá server.
- Co je
localhost- adresa tvého vlastního počítače při lokálním vývoji. - Co je
request- požadavek z prohlížeče na server. - Co je
response- odpověď serveru prohlížeči. - Co je
status code- číselný výsledek HTTP požadavku, například200,302nebo404. - Jak používat DevTools - nástroje prohlížeče pro kontrolu HTML, CSS, JavaScriptu a síťových požadavků.
- Co je
branch- samostatná větev práce v Gitu. - Co je
commit- uložený krok v historii změn. - Co je
pull request- žádost o kontrolu a začlenění změn na GitHubu. - Co je
issue- úkol nebo problém zapsaný na GitHubu.
Nejprve si repozitář stáhni z GitHubu:
git clone https://github.com/MARMIXTOP/web-basics-practice-lab.git
cd web-basics-practice-lab
npm install
npm startPotom otevři v prohlížeči:
http://localhost:3000
V terminálu uvidíš logy požadavků, například:
GET / -> 200
GET /css/style.css -> 200
GET /api/server-time -> 200
Server zastavíš klávesovou zkratkou Ctrl+C v terminálu.
web-basics-practice-lab/
README.md
PRACTICE-DAY-1.md
GIT-CHEATSHEET.md
TROUBLESHOOTING.md
package.json
server.js
public/
index.html
about.html
broken-page.html
css/
style.css
js/
app.js
images/
README.md
favicon.svg
request-response-diagram.svg
exercises/
exercise-01-git-branch.md
exercise-02-browser-devtools.md
exercise-03-local-server.md
exercise-04-http-status-codes.md
exercise-05-fix-broken-assets.md
exercise-06-create-pull-request.md
Když dvakrát klikneš na public/index.html, prohlížeč otevře soubor přes file://.
To není totéž jako běžící server.
Při otevření přes file:// nefungují některé věci stejně jako na reálném webu. Například požadavek na /api/server-time potřebuje lokální server, takže funguje na http://localhost:3000, ale ne při přímém otevření souboru.
Když spustíš npm start, Node.js spustí malý lokální server. Prohlížeč pak posílá HTTP požadavky na localhost:3000 a server vrací HTML, CSS, JavaScript, obrázky a JSON data.
Issue je úkol na GitHubu. V tomto repozitáři jsou issues připravené jako cvičení.
Postup:
- Otevři záložku
Issuesna GitHubu. - Vyber první otevřený úkol.
- Přečti si cíl, kroky a kritéria hotovo.
- Vytvoř si vlastní branch.
- Udělej změnu v kódu nebo dokumentaci.
- Ověř projekt lokálně.
- Otevři pull request.
Branch je větev, ve které pracuješ odděleně od main.
Nepracuj přímo v main.
git checkout -b practice/day-1-tvoje-jmeno
git statusKdyž uděláš změny, zkontroluj je:
git statusPotom je ulož do historie:
git add .
git commit -m "Complete day 1 practice"
git push origin practice/day-1-tvoje-jmenoPull request je návrh změn, který má mentor zkontrolovat před sloučením do main.
Postup:
- Pushni svoji branch na GitHub.
- Otevři GitHub repozitář.
- Klikni na
Compare & pull request. - Zkontroluj, že cíl je
main. - Vyplň šablonu pull requestu.
- Přidej screenshot, pokud se měnil vzhled.
- Odešli pull request mentorovi ke kontrole.
Doporučený název prvního pull requestu:
Practice Day 1: Git, Browser, Server Basics
DevTools otevřeš pomocí F12, Ctrl+Shift+I nebo pravým klikem a volbou Inspect.
V záložce Elements:
- najdi hero sekci;
- vyber kartu;
- dočasně změň barvu nebo odsazení;
- všimni si, že změna v DevTools se neuloží do souboru.
V záložce Console:
- sleduj zprávy z
public/js/app.js; - klikni na tlačítko na homepage;
- otevři
broken-page.htmla najdi záměrnou chybu.
V záložce Network:
- obnov stránku;
- najdi požadavky na HTML, CSS, JS, SVG a API;
- zkontroluj status codes
200,302a404; - otevři
/redirect-demoa sleduj redirect.
PRACTICE-DAY-1.mdGIT-CHEATSHEET.mdexercises/exercise-01-git-branch.mdexercises/exercise-02-browser-devtools.mdexercises/exercise-03-local-server.mdexercises/exercise-04-http-status-codes.mdexercises/exercise-05-fix-broken-assets.mdexercises/exercise-06-create-pull-request.md
Před vytvořením pull requestu si zkontroluj:
- Vytvořil jsem vlastní branch.
- Nepracoval jsem přímo v
main. - Spustil jsem projekt lokálně.
- Zkontroloval jsem stránku v prohlížeči.
- Zkontroloval jsem Console pro chyby.
- Zkontroloval jsem Network pro
404. - Otestoval jsem mobilní zobrazení.
- Napsal jsem jasnou commit message.
- Přidal jsem screenshot, pokud se měnil vzhled.
Mentor by měl zkontrolovat:
- trainee pracoval ve vlastní branch;
- pull request míří do
main; - commit message je srozumitelná;
- změny odpovídají zadání v issue;
- projekt jde spustit přes
npm start; - homepage funguje na
http://localhost:3000; - Console na běžných stránkách neobsahuje nečekané chyby;
- Network neukazuje nečekané
404; - trainee rozumí tomu, co změnil;
- pokud se měnil vzhled, pull request obsahuje screenshot.
U cvičení broken-page.html je část chyb záměrná. Mentor má rozlišit, které chyby trainee řešil a které mají zůstat jako výukový materiál.