Widoki dodawania postów w projekcie Atena

Data opublikowania:

W ostatnim tygodniu kontynuowałem swoją prace nad makietami do mojego projektu Atena. Widoki dodawania postów to kluczowa funkcjonalność platformy, więc musiałem poświęcić im trochę uwagi.

Typy postów

Zakładam, że użytkownik będzie mógł publikować posty różnego typu:

  • zdjęcie
  • film
  • poradnik
  • informacja
  • pytanie

Każdy typ postu ma swoje uwarunkowania. Wybór określonego typu będzie miał wpływ na ostateczny wygląd posta np. typ „zdjęcie” określa, ze post musi mieć minimum 1 zdjęcie do maksimum trzech + opis składający się maksymalnie z 300 znaków.

Wszystkie uwarunkowania wstępnie opisałem na makietach.

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