Współtworzenie
Konfiguracja środowiska deweloperskiego
Dział zatytułowany „Konfiguracja środowiska deweloperskiego”-
Utwórz fork i sklonuj
Okno terminala git clone https://github.com/sqrcz/numerik-js.gitcd numerik-js -
Zainstaluj zależności
Okno terminala pnpm install -
Uruchom zestaw testów
Okno terminala pnpm test
Lokalne sprawdzenia
Dział zatytułowany „Lokalne sprawdzenia”| Polecenie | Opis |
|---|---|
pnpm test | Zestaw testów Vitest |
pnpm test:watch | Vitest w trybie obserwowania |
pnpm test:cover | Vitest z pokryciem kodu |
pnpm typecheck | tsc --noEmit |
pnpm lint | Sprawdzenie lint + formatowania Biome |
pnpm lint:fix | Lint + formatowanie Biome — automatyczna naprawa |
pnpm build | Kompilacja do dist/ |
pnpm check | typecheck + lint + test po kolei |
Uruchom pnpm check przed otwarciem PR, aby wykryć wszystkie problemy lokalnie.
Dodawanie nowego identyfikatora
Dział zatytułowany „Dodawanie nowego identyfikatora”Dodanie nowego identyfikatora wymaga zmian w kilku miejscach — PR-y bez któregokolwiek z tych elementów nie zostaną scalone:
- Utwórz
src/value-objects/NewIdentifier.ts(implementujeIdentifierInterface) - Utwórz
src/identifiers/NewIdentifierIdentifier.ts(implementujeValidatorInterfaceiParserInterface; przyjmujestrict: boolean = true) - Dodaj nowe przypadki
ValidationFailureReason, jeśli identyfikator wprowadza nowe typy błędów - Dodaj wpis do
src/Numerik.tsi wyeksportuj go zsrc/index.ts - Dodaj schematy Zod w
src/zod/index.ts - Dodaj
tests/new-identifier.test.ts - Dodaj stronę identyfikatora w
docs/src/content/docs/identifiers/idocs/src/content/docs/pl/identifiers/ - Zaktualizuj
CHANGELOG.md
Nazewnictwo gałęzi
Dział zatytułowany „Nazewnictwo gałęzi”| Typ | Wzorzec | Przykład |
|---|---|---|
| Funkcja | feat/<krótka-nazwa> | feat/passport-identifier |
| Poprawka | fix/<krótka-nazwa> | fix/pesel-century-calc |
| Porządki | chore/<krótka-nazwa> | chore/update-dependencies |
Styl commitów
Dział zatytułowany „Styl commitów”Używaj Conventional Commits:
feat: add PassportIdentifierfix: correct PESEL century calculation for 2000sdocs: update REGON algorithm descriptiontest: add NIP fixtures for invalid tax office codeschore: bump vitest to 4.xrefactor: extract checksum calculation to dedicated methodProces pull requestów
Dział zatytułowany „Proces pull requestów”- Zrób fork repozytorium i utwórz gałąź od
main. - Dodaj testy dla każdego nowego zachowania — wszystkie testy muszą przechodzić.
- Upewnij się, że
pnpm checkprzechodzi. - Otwórz PR względem
maini w pełni wypełnij szablon.
Zgłaszanie błędu
Dział zatytułowany „Zgłaszanie błędu”Użyj szablonu Bug Report na GitHub.
Luki w zabezpieczeniach
Dział zatytułowany „Luki w zabezpieczeniach”Prosimy nie otwierać publicznego zgłoszenia. Zgłoś przez prywatny system zgłoszeń GitHub. Zobacz SECURITY.md.