Zasady ogólne
Organizacja zespołu
Dział zatytułowany „Organizacja zespołu”- Projekt realizowany w parach (2 osoby)
- Oboje muszą znać i rozumieć cały kod
- Podział pracy musi być równy — nauczyciel może to zweryfikować
- Podczas obrony każdy odpowiada na pytania dotyczące całości projektu
Wymagania techniczne
Dział zatytułowany „Wymagania techniczne”Obowiązkowe
Dział zatytułowany „Obowiązkowe”- React 18+ z funkcyjnymi komponentami i hookami
- Czysty JavaScript (ES6+) — bez TypeScript
- Minimum 3 komponenty (inne niż App)
- Minimum 2 widoki z React Router
- README.md z: opisem projektu, instrukcją instalacji i uruchomienia, screenshotami (opcjonalnie)
- Projekt uruchamia się komendą
npm install && npm run devlubnpm start
Zabronione
Dział zatytułowany „Zabronione”- Komponenty klasowe (
class extends Component) - Gotowe szablony / clone gotowych aplikacji bez zrozumienia
- Biblioteki komponentów UI zastępujące cały layout (np. Material UI bez własnego CSS)
- Plagiat, kopiowanie cudzych projektów
- AI-generated code bez zrozumienia i modyfikacji
Zalecane
Dział zatytułowany „Zalecane”- Vite jako bundler (szybszy niż CRA)
- CSS Modules lub zwykły CSS (Tailwind dozwolony)
- Fetch API lub axios do komunikacji z zewnętrznym API
- localStorage do persystencji danych (jeśli bez backendu)
Oddawanie projektu
Dział zatytułowany „Oddawanie projektu”- Termin podaje nauczyciel na początku semestru
- Forma oddania: archiwum ZIP lub link do repozytorium GitHub
- Archiwum nie może zawierać folderu
node_modules/ - Projekt musi się uruchamiać po
npm install
Obrona projektu
Dział zatytułowany „Obrona projektu”Obrona trwa 10-15 minut i obejmuje:
- Krótką demonstrację działania aplikacji (3-5 min)
- Pytania do kodu — np. “jak działa ten hook?”, “dlaczego taki podział komponentów?”
- Ewentualne modyfikacje na żywo (wariant C)