Jak zintegrować Travis CI z repozytorium Githuba

Data opublikowania:

W dzisiejszym artykule pokażę jak jak zintegrować Travis CI  z repozytorium Githuba. Travis jest to narzędzie wspomagające continuous integration. Dzięki niemu podczas każdego pusha, czy wystawienia Pull requesta automatycznie mogą wykonywać się różne skrypty np. testy jednostkowe, statyczna analiza kodu itp.

Co to jest continuous integration?

Continous integration jest to praktyka polegająca na regularnej integracji wytwarzanego kodu z głównym repozytorium.  W praktyce powinno wyglądać to tak, że każdy developer w zespole powinien przynajmniej raz dziennie wypychać swój piękny kod do repozytorium. Bardzo istotnym elementem jest zapewnienie poprawności kodu ze standardami projektu oraz jego przetestowanie. Tutaj wkracza Travis CI, dzięki któremu możemy przetestować nasz kod automatycznie.

Instalacja Magento 2 przy pomocy oficjalnego DevBoxa

Data opublikowania:

Instalacja Magento 2 na swoim komputerze to dosyć skomplikowany proces, a najtrudniejsze  jest skonfigurowanie maszyny wirtualnej tak aby spełniała wszystkie wymagania. Dla ludzi, którzy nie mają doświadczenia z serwerami może być to droga nie do przejścia. Na szczęście Magento przygotowało oficjalny devBox zbudowany na Dockerze, który upraszcza ten proces do minimum.

Co prawda devBox jest jeszcze w wersji beta, ale moim zdaniem warto już zacząć go używać.

Planowanie i pierwszy commit

Data opublikowania:

Dzisiaj pierwszy wpis o projekcie, który będę realizował w ramach konkursu  Daj się poznać 2017. Na pierwszy etap idzie planowanie i pierwszy commit do repozytorium.

poprzednim moim wpisie pisałem co to za projekt i dlaczego to robię. Jeśli nie czytałeś tamtego wpisu to zachęcam do nadrobienia zaległości.

Najważniejsze jest logo (i nazwa)

Mój projekt będzie połączeniem forum z mikroblogiem, generalnie użytkownicy będą mogli się w nim dzielić swoją mądrością. 🙂 W związku z tym postanowiłem, że nazwę go Atena od imienia greckiej bogini mądrości. Nie wiem czy to dobra nazwa ale wymyślenie jej zajęło mi mniej niż 5 minut, dlatego będę kontynuował z tą nazwą.

Co do logo to ostatnio oglądałem prezentację Jaya Phelpsa na temat Redux, React i RxJS i urzekło mnie jak Jay opowiadał, że w każdym projekcie najważniejsze jest logo. Niestety na tym etapie nic mi nie przychodzi do głowy i logo będzie po prostu jakimś zwykłym tekstem.

Funkcjonalności projektu

Dobrym pomysłem jest zacząć od zastanowienia się jakie funkcjonalności ma mieć projekt. Pomyślałem o tym chwilę i to jest minimum jakie chciałbym osiągnąć:

  • dodawanie postów
  • możliwość dodawania tagów do posta
  • kategoryzowanie postów
  • możliwość komentowania postów
  • możliwość oceniania postów (coś jak facebook like)
  • możliwość przeglądania postów innych użytkowników (wraz z sortowaniem i filtrowaniem)
  • możliwość śledzenia innych użytkowników
  • możliwość zalogowania przez facebook
  • możliwość edycji swojego konta

Pewnie w trakcie pracy wyjdzie jeszcze coś ale nie boje się, jestem agile! Oczywiście to tylko zarys a poszczególne funkcjonalności będę opisywał dokładniej podczas pracy nad nimi.

Patrząc na te funkcje jestem w stanie wydzielić 3 funkcjonalne obszary mojego portalu:

  • listing
  • widok pojedynczego postu
  • konto użytkownika

Daj się poznać

Data opublikowania:

Daj się poznać 2017

Daj się poznać to konkurs programistyczny, który polega na tym, że robisz projekt open source w dowolnej, wybranej przez Ciebie technologii i jednocześnie piszesz o tym co robisz na swoim blogu. Dwa posty tygodniowo z czego jeden o projekcie, który robisz, a drugi może być o czymś innym związanym z IT. Kod projektu musi być dostępny na GitHubie.

Typy produktów w Magento 2

Data opublikowania:

typy produktów magento 2

Magento 2 to platforma, która daje duże możliwości budowy e-sklepów. W tym poście opiszę typy produktów w Magento 2 i wyjaśnię czym się charakteryzują.

Typy produktów w Magento 2 możemy podzielić na:

  • produkty proste
  • produkty zgrupowane
  • produkty powiązane
  • produkty konfigurowalne
  • produkty wirtualne
  • produkty do pobrania

Przestrzenie nazw w JavaScript

Data opublikowania:

Przestrzenie nazw w JavaScript

W mojej codziennej pracy dosyć często pracuje nad rozwojem kodu JavaScript w dużych projektach, w których owy kod JS pisało kilku developerów. Przestrzenie nazw w JavaScript nie są wbudowane w język przez co rozbudowane aplikacje narażone są na szereg niebezpieczeństw takich jak nadpisywanie zmiennych i funkcji oraz wszechobecny bałagan, który w znaczący sposób utrudnia rozwój aplikacji. W tym artykule chciałem przedstawić podejście do pisania kodu JS tak, aby nasza aplikacja była łatwa w rozbudowie, czytelna i przede wszystkim odporna na konflikty nazw.

Automatyzacja pracy przy pomocy generatora

Data opublikowania:

automatyzacja pracy - generator yeoman front-end sass

Automatyzacja pracy front-end developera to złożona sprawa. W społeczności Developerów zajmujących się front-end’em jest znanych wiele popularnych generatorów Yeoman. Cenie sobie wiele z nich jak np. Webapp generator, Angular generator i używam ich w niektórych swoich projektach. Czasem jednak potrzebuję czegoś prostszego i szybszego, dlatego napisałem swój własny generator, który spełnia podstawowe potrzeby fromt-end develoepra takie jak chociażby kompilacja plików sass i serwer lokalny. W tym artykule przedstawię Ci podstawowe funkcje mojego generatora.