Twoje rozszerzenie do Chrome wciąż odrzucane? Oto co robisz źle

Twoje rozszerzenie do Chrome wciąż odrzucane? Oto co robisz źle

Cze 30, 2026 chrome-extensions manifest-v3 web-development developer-tools open-source

Dlaczego każdy developer Chrome extensions potrzebuje lintera compliance

Budowanie rozszerzeń do Chrome to świetna forma dystrybucji — użytkownicy instalują je jednym kliknięciem, integracja z przeglądarką działa out of the box, a baza potencjalnych odbiorców jest ogromna. Problem zaczyna się w momencie, gdy chcesz swoje rozszerzenie wrzucić do Chrome Web Store. Weryfikacja potrafi zająć dni, a rezultat bywa... zaskakujący.

W społeczności developerów narzekających na proces review panuje pewna zgodność: najgorsze nie są same wymagania, tylko sposób, w jaki się o nich komunikuje. Dostajesz odrzucenie z feedbackiem, który brzmi jak zagadka. Kod napisany — wyrzucisz go do kosza. I tak w kółko.

Dlatego coraz więcej osób sięga po narzędzia, które wychwytują problemy zanim w ogóle myślisz o wysyłce. Jednym z nich jest tabsmith-lint — open-source'owy linter compliance stworzony specjalnie dla rozszerzeń w Manifest V3.

Manifest V3 — nie tylko numer版本 update

Dla tych, którzy pisali rozszerzenia przed wielką migracją: zmiana z V2 na V3 to nie była kosmetyka. Google przepisało fundamenty tego, jak rozszerzenia działają. Chodziło o bezpieczeństwo, prywatność i wydajność — cele szczytne, ale realizacja boleśnie dotknęła developerów.

Co się zmieniło na poziomie kodu:

  • Service workers zamiast background pages — logika działająca w tle działa teraz inaczej, ma swój cykl życia
  • Declarative Net Request zamiast webRequest — filtrowanie ruchu sieciowego przeszło totalny remake
  • Restrykcyjne uprawnienia hostów — zapomnij o żądaniu pełnego dostępu do wszystkich stron
  • Zmiany w content security policy — skrypty działają w bardziej restrykcyjnym sandbox

I tutaj pojawia się clou problemu. Te zmiany nie są opcjonalne. Chrome Web Store wymusza je podczas weryfikacji bezwzględnie. Jedno nieprecyzyjne żądanie permission albo wywołanie deprecated API — i Twoje rozszerzenie wraca z odpowiedzią, która niewiele wyjaśnia.

tabsmith-lint — jak to właściwie działa

Linting w kontekście Chrome Web Store to jak sprawdzanie pisowni, ale dla polityk compliance sklepu. tabsmith-lint analizuje Twój manifest.json i strukturę projektu, szukając potencjalnych problemów zanim cokolwiek wyślesz.

Co konkretnie wyłapuje:

  • Żądania uprawnień, które automatycznie uruchamiają dodatkową weryfikację — możesz ich unikać świadomie
  • Deprecated API calls — te, które na pewno spowodują odrzucenie
  • Błędy konfiguracji manifestu — niezgodne z aktualnymi wytycznymi sklepu
  • Problemy ze strukturą plików — mogące powodować błędy ładowania

Narzędzie działa lokalnie, integruje się z workflow developerskim i zwraca konkretne wskazówki — nie losowy walls of red text.

Czas to pieniądz — dosłownie

Każdy, kto przeszedł przez cykl review-weryfikacja-wróć-do-punktu-zero, wie ile kosztuje jedno odrzucenie. Dla startupów i firm liczy się każdy dzień. Każdy dzień bez obecności w sklepie to dzień bez użytkowników, bez przychodów, bez walidacji produktu.

Wychwytywanie problemów compliance podczas разработки — kiedy i tak myślisz o strukturze kodu — jest nieporównanie efektywniejsze niż czekanie na email odrzucenia i reverse-engineering tego, co poszło nie tak.

Poza oszczędnością czasu jest też benefit psychologiczny. Świadomość, że Twoje rozszerzenie prawdopodobnie przejdzie weryfikację, usuwa jedno źródło stresu z procesu release. Zamiast gonić za policy, budujesz features.

Pierwsze kroki

Projekt znajdziesz na GitHubie i jest zaprojektowany tak, by wskoczyć do istniejącego workflow bezboleśnie. Nieważne czy startujesz od zera, czy migrujesz starsze rozszerzenie — linter powinien być na Twojej liście pre-commit.

Typowy scenariusz:

  1. Zainstaluj tabsmith-lint w projekcie
  2. Uruchamiaj przed każdym commitem albo jako część CI/CD pipeline
  3. Popraw zgłoszone problemy
  4. Wysyłaj z czystym sumieniem

Open-source'owa natura projektu oznacza, że społeczność może go aktualizować w miarę jak Google będzie wprowadzać nowe wymagania czy deprecated kolejne API. W przeciwieństwie do proprietarnych narzędzi — nie jesteś uzależniony od cudzego harmonogramu release'ów.

Większy obrazek

Tabsmith-lint to symptom szerszego trendu: validation shifted left. Zamiast odkrywać problemy w najgorszym możliwym momencie (produkcja, wysyłka, skargi użytkowników), doświadczeni developerzy budują walidację w każdym etapie procesu.

Dla twórców rozszerzeń Chrome ta zmiana jest krytyczna. Plik manifest.json wygląda banalnie prosto, ale rządzi dosłownie wszystkim — od zachowania po uprawnienia. Jeden zły wpis może cicho zepsuć całą wysyłkę.

Narzędzia takie jak tabsmith-lint dojrzewają w ekosystemie Manifest V3. W miarę jak Google przyspiesza migrację i ostatecznie wyłączy Manifest V2, developerzy będą potrzebować czegoś więcej niż dokumentacji — potrzebują praktycznych narzędzi działających w czasie rzeczywistym.

Na koniec

Rozszerzenia Chrome nadal stanowią wartościowy kanał dystrybucji dla narzędzi webowych, aplikacji productivity i usług opartych na przeglądarce. Wymagania Manifest V3 są rygorystyczne, ale nie znikną. Pytanie brzmi: czy Twój czas разработки spędzisz na budowaniu funkcji, czy na gonieniu za compliance?

tabsmith-lint nie rozwiąże każdego problemu, ale adresuje jedną z najbardziej frustrujących części procesu: rozłam między napisaniem kodu a uzyskaniem akceptacji. Jeśli poważnie myślisz o shippingu rozszerzeń, które zostają — dodanie compliance lintera do toolkitu to obvious move.

Sprawdź projekt na GitHubie, zostaw star, a jeśli trafisz na edge case'y których jeszcze nie łapie — rozważ contribute. Najlepsze narzędzia tworzą ci, którzy ich faktycznie używają.


A jakie Twoje doświadczenia z Chrome Web Store submissions? Znalazłeś inne narzędzia czy workflowy, które pomagają? Podziel się w komentarzach.

Read in other languages:

RU BG EL CS UZ TR SV FI RO PT NB NL HU IT FR ES DE DA ZH-HANS EN