dzikowski.github.io

Piszę o IT po polsku, więc z góry przepraszam za zagęszczenie kolokwializmów, ale co w angielskim brzmi naturalnie, w polskim często nie ma nawet odpowiedników.

Jak usunąć wszystkie branche oprócz master?

Podczas pracy z Gitem na branchach dochodzisz do takiego momentu, kiedy samo przełączenie się na inny branch w IntelliJ to w większości skrollowanie długiej listy nazw w poszukiwaniu tej właściwej. Oczywiście możesz na bieżąco czyścić swoje branche, ale da się też szybko wybrnąć z sytuacji, kiedy zrobił ci się bałagan. czytaj dalej

CouchDB i PouchDB. Schematy uwierzytelniania i autoryzacji

Załóżmy, że nasza aplikacja korzysta z PouchDB, synchronizowanej ze zdalną CouchDB. Szybko się okaże, że rezygnacja z backendu pozbawia nas komfortu łatwego ukrywania niektórych rzeczy po stronie serwerowej. Kiedy mamy tylko front i bazę, pojawiają się całkiem nowe wyzwania związane z bezpieczeństwem i architekturą aplikacji, a wiele rzeczy trzeba przemyśleć na nowo. czytaj dalej

Firebase, Realm i PouchDB

Ostatnio bawiłem się z React Native i Expo i chciałem dołączyć bazę danych, która działałaby offline. Okazało się, że nie jest to wcale takie proste i znane mi rozwiązania albo nie działają, albo nie działają offline. Odrzuciłem Firebase i Realm, Stanęło na starym dobrym PouchDB. czytaj dalej

CD z Travisem i GitHubem

Całe środowisko continuous deployment możesz postawić za darmo dla publicznego projektu. Fajną opcją dla aplikacji frontendowej jest repozytorium na GitHubie, CI na Travisie i automatyczny deployment na GitHub Pages. czytaj dalej

Komponenty wyższego rzędu

Tak jak w programowaniu funkcyjnym mamy funkcje wyższego rzędu, tak w React.js mamy komponenty wyższego rzedu, których rola jest podobna. Pozwalają na wyabstahowanie jakiejś części logiki na zewnątrz. W tym poście pokażę, jak zrefaktorowałem kilka formularzy z wykorzystaniem komponentów wyższego rzędu i jakie są z tego korzyści. czytaj dalej

Retro nr 3. Koniec konkursu

Niepostrzeżenie minął cały konkurs Daj się poznać, a tym samym skończył się wymóg pisania bloga dwa razy w tygodniu. Dużo zmieniło się projekcie, bo faktycznie sporo popracowałem nad wdrożeniem ulepszeń po poprzednim retro. Bardziej szczegółowo? Plany na przyszłość? Zapraszam do czytania. czytaj dalej

Testowanie Reacta z Jest

Mój projekt nie jest duży, a jednak wprowadzanie w nim zmian daje pewien dyskomfort. Żeby mieć pewność, że wszystko działa, po zmianach przeklikuję cały interfejs, żeby sprawdzić, czy wszystko działa. W dodatku denerwujące sią ciągłe maile od Travisa, że build nie przechodzi. Najwyższy czas napisać wreszcie testy! czytaj dalej

Yarn

Nie tak dawno temu pisałem o nieaktualnych zależnościach w projekcie i różnych dziwnych rzeczach, które się wydarzyły, kiedy usunąłem katalog `node_modules` i potem ponownie pobrałem zależności. Przez jakiś czas siłowałem się ze Shrinkwrapem, jednak ostatnio usłyszałem, że z tego typu problemami z zależnościami dobrze radzi sobie Yarn. Spróbowałem i efekt przerósł moje oczekiwania. czytaj dalej

Struktura katalogów

Oprócz wspólnego stylu, warto mieć jeszcze ustaloną strukturę katalogów. Dla Reacta nie znalazłem żadnych spójnych konwencji, jedynie powtarzające się od jakiegoś czasu rekomendacje, by utrzymywać funkcjonalny podział pakietów, a pliki z testami znajdowały się razem z pozostałymi plikami źródłowymi. czytaj dalej

ESLint. Twój kod może być piękny

Z roku na rok i miesiąca na miesiąc coraz bardziej przekonuję się do tego, jak bardzo ważna jest nie tylko znajomość języka, ale i narzędzi wspierających development. Jednym z nich jest ESLint, które sprawdzi, czy twój kod jest napisany zgodnie z założoną konwencją, a nawet częściowo go poprawi; zarówno czysty JavaScript, jak i pliki Reacta. czytaj dalej