Przejdź do głównej zawartości

Współtworzenie

  1. Utwórz fork i sklonuj

    Okno terminala
    git clone https://github.com/sqrcz/numerik-js.git
    cd numerik-js
  2. Zainstaluj zależności

    Okno terminala
    pnpm install
  3. Uruchom zestaw testów

    Okno terminala
    pnpm test
PolecenieOpis
pnpm testZestaw testów Vitest
pnpm test:watchVitest w trybie obserwowania
pnpm test:coverVitest z pokryciem kodu
pnpm typechecktsc --noEmit
pnpm lintSprawdzenie lint + formatowania Biome
pnpm lint:fixLint + formatowanie Biome — automatyczna naprawa
pnpm buildKompilacja do dist/
pnpm checktypecheck + lint + test po kolei

Uruchom pnpm check przed otwarciem PR, aby wykryć wszystkie problemy lokalnie.

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 (implementuje IdentifierInterface)
  • Utwórz src/identifiers/NewIdentifierIdentifier.ts (implementuje ValidatorInterface i ParserInterface; przyjmuje strict: boolean = true)
  • Dodaj nowe przypadki ValidationFailureReason, jeśli identyfikator wprowadza nowe typy błędów
  • Dodaj wpis do src/Numerik.ts i wyeksportuj go z src/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/ i docs/src/content/docs/pl/identifiers/
  • Zaktualizuj CHANGELOG.md
TypWzorzecPrzykład
Funkcjafeat/<krótka-nazwa>feat/passport-identifier
Poprawkafix/<krótka-nazwa>fix/pesel-century-calc
Porządkichore/<krótka-nazwa>chore/update-dependencies

Używaj Conventional Commits:

feat: add PassportIdentifier
fix: correct PESEL century calculation for 2000s
docs: update REGON algorithm description
test: add NIP fixtures for invalid tax office codes
chore: bump vitest to 4.x
refactor: extract checksum calculation to dedicated method
  1. Zrób fork repozytorium i utwórz gałąź od main.
  2. Dodaj testy dla każdego nowego zachowania — wszystkie testy muszą przechodzić.
  3. Upewnij się, że pnpm check przechodzi.
  4. Otwórz PR względem main i w pełni wypełnij szablon.

Użyj szablonu Bug Report na GitHub.

Prosimy nie otwierać publicznego zgłoszenia. Zgłoś przez prywatny system zgłoszeń GitHub. Zobacz SECURITY.md.