:sparkles: PWA :sparkles:
Twarz autora bloga

Piotr Kowalski

Organizator WarsawJS Trener YouTuber

Divshot vs GitHub - jako hosting do projektów webowych

Od kilku dni testuje Divshot. Narzędzie, które zostanie wykorzystane przy deploymencie aplikacji podczas zbliżającego się hackathon-u 2015.staticshowdown.com.

Deployment moich czysto webowych aplikacji polegał na wykorzystaniu GitHub-a. Czyżby czas na zmianę?

Baner reklamujący artykuł

GitHub

Często do swoich aplikacji wykorzystuje GitHub Pages aby kod aplikacji upublicznić.

Deployment aplikacji jest bardzo prosty wystarczy wgrać zmiany na origin/gh-pages i po chwili (Cache GitHub-a) mamy naszą aplikację na tzw. produkcji.

Divshot

Ciekawość mnie zżera na czym może polegać hosting Front-end-owy. Przecież bez hosting silnie wiąże się częścią aplikacji po stronie serwera. Zobaczmy czym się charakteryzuje taki hosting.

Wady i zalety

GitHub Divshot
Hosting z 3 trybami dostępu: dla developera, staging (czyli taka preprodukcja) oraz produkcja - +
Blokowanie dostępu za pomocą HTTP Authentication + (poprzez plik w projekcie) + (wyklikujemy przy danej trybie dostępu lub divshot protect [env] [user:pass])
Automatycznie tworzy się subdomena + (github.io) + (divshot.io)
Zarządzanie wersjami + (Tak jak zarządzanie rewizjami w projekcie. Niby jest, ale ma bardzo mocny wpływ na kod w repozytorium.) + (Bardzo ładne zarządzani releasami. Możliwość rollback-a do poprzedniej wersji.)
Możliwości konfiguracji projektu + (_config.yml) + (divshot.json)
Potrzebny dodatkowy soft + (Tylko Git) - (node, npm, divshot-cli)
Dodatkowe gałęzie w projekcie - (Branch: gh-pages) + (Nic nie trzeba)
Customowa domena + (Plik: CNAME) + (Polecenie: divshot domains:add www.example.net)
URL z poprzednimi wersjami - + (Np.: v25.my-app-name.production.divshot.io)
Włączony HTTPS + - (Trzeba dokupić)
Współpracownicy + (Bez limitu) + (Bez limitu)
Webhooks + (Polecenie: divshot hooks:add http://example.com/my/hook) + (Długa lista predefiniowanych)
Jekyll + +

Podsumowanie

Wygląda to tak, jeśli chcemy wypchnąć nasz projekt w świat, aby sobie leżał bez większego nakładu pracy w jego utrzymanie, to GitHub Pages będzie lepszym rozwiązaniem.

Jeśli jednak będziemy rozwijać ten projekt, albo jest on dla nas bardzo cenny z jakiegoś punktu widzenia i martwi nas jaka wersja jest obecnie na produkcji, a jaka na stagingu, to lepszym rozwiązaniem jest Divshot.

Bibliografia