Wynaleźć druk na nowo – Gutenberg

„Opowiada się, że niedaleko Moguncji żył pewien Johannes z przydomkiem Gutenberg, który jako pierwszy ze wszystkich wymyślił sztukę drukarską, dzięki czemu wytwarza się książki nie za pomocą trzciny (jak w starożytności) i nie piórem (jak dotychczas u nas), tylko metalowymi literami i do tego znakomicie, wykwintnie i pięknie”

Tak o wynalazcy pisma drukowanego pisał Sorbony Guillaume Fichet w wydanym w 1471 r. dziele „Ortograhia”. Dzisiaj książki, artykuły, notatki coraz częściej zastępuje się dokumentami elektronicznymi. Dlatego autorzy najpopularniejszego systemu zarządzania treścią postanowili (jak Gutenberg) opracować nowy mechanizm do tworzenia popularnie dostępnej treści.

Jaki problem rozwiązuje projekt ?

Aktualny edytor WordPress’a z całą pewnością nie należy do najprostszych i najwydajniejszych. Użytkownik może spersonalizować wpis/stronę według własnych zachcianek, musi jednak do tego znać HTML/CSS. Bez tej umiejętności użytkownik skazany jest na korzystanie z podstawowych, bardzo okrojonych opcji edycji tekstu i widoku strony. Potwierdzeniem moich słów jest duża ilość wtyczek zastępujących podstawowy edytor m.in. najpopularniejszy Elementor. W 2017 roku zespół odpowiedzialny za rozwój WordPress’a obiecał swoim użytkownikom zmiany w zarządzaniu stronami i już niedługo po tym mogliśmy usłyszeć pierwsze wzmianki o projekcie Gutenberg.

Innowacja Gutenberga polega na tym, że pozwoli on zarządzać nie tylko tekstem, ale całą stroną wpisu. Użytkownik będzie miał możliwość dostosowywać menu, zarządzać grafikami i wideo oraz dodawać pluginy do poszczególnych wpisów. Pozwoli nam to tworzyć interaktywne wpisy bogate w media. Zarządzanie stroną będzie odbywało się poprzez dodawanie na nią sekcji, dających możliwość wstawienia dowolnych elementów. Od razu nasuwa się skojarzenie z działaniem wtyczki Elementor. Autorzy obiecują jednak, że projekt Gutenberg da więcej możliwości.

Jak zacząć kontrybuować ?

Już na samym wstępie do pliku CONTRIBUTING.md twórcy serdecznie zapraszają do współpracy. Obiecują, że nie będą stawiać “ścian warunków” oraz zachęcają do zadawania pytań w postaci Issue. Przygotowali również podręcznik, aby łatwiej było wgryźć się w projekt.  Wszystkie projekty WordPress działają na licencji GPLv2+.

Przygodę z Gutenberg powinieneś zacząć od pobrania pliku zip z projektem. Następnie musisz przygotować lokalne środowisko do uruchomienia aplikacji. W tym celu będziesz potrzebował najnowszej wersji Node.js, docker w którym osadzisz aplikację oraz docker compose, czyli narzędzie obsługujące multi kontenerowe aplikacje. Dalej jest już z górki- wystarczy odpalić przygotowany przez autorów skrypt znajdujący się w lokalizacji ./bin/setup-local-env.sh.

Jeżeli wszystko wykonałeś poprawnie powinieneś zobaczyć wiadomość:

Welcome to...

,⁻⁻⁻·       .                 |
|  ،⁓’.   . |---  ,---. ,---. |---. ,---. ,---. ,---.
|   | |   | |     |---' |   | |   | |---' |     |   |
`---' `---' `---’ `---’ '   ` `---' `---’ `     `---|
                                                `---'

a Twoja instancja WordPress’a będzie dostępna pod adresem http://localhost:8888 (login: admin, hasło: admin).

Teraz możesz przystąpić do wyszukania błędów do poprawy !
Lista wykrytych błędów znajduje się pod tym adresem, oznaczone są znacznikiem “Good First Issue”.

Jeżeli znalazłeś już robotę dla siebie :

  1. Zrób Fork na repozytorium Gutenberg
  2. Sklonuj repozytorium
  3. Utwórz nowego Branch
  4. Zrób zmiany w kodzie
  5. Commit’uj zmiany na utworzonego Branch
  6. Push na Fork’owane repozytorium
  7. Utwórz Pull Request do repozytorium Gutenberga

Idealny sposób nazywania Branch’ów to trzymanie się następującego szablonu [TypZmiany]/[Zmiana], gdzie typy zmian to np. Add, Update, Try.
Dla przykładu [Add/gallery-block] oznacza, że pracujesz nad dodaniem nowego bloku z galerią.

Jeżeli chcesz projektować front-end, możesz tworzyć Issue z propozycjami swoich zmian dodając do nich etykietę Design. Błędy związane z bezpieczeństwem opisane są w SECURITY.md.

Jaką technologię wykorzystują ?

WordPress Gutenberg został napisany w większości przy użyciu języka JavaScript, bazując na framework’u Node.Js. Kod JavaScript stanowi ponad 75% projektu. Wykorzystany został również PHP (11%), CSS(6,2%) i HTML(3,8%) Do uruchomienia aplikacji niezbędna będzie także wiedza na temat kontenerów.

Na jakim etapie jest projekt ?

Gutenberg zaplanowany jest na trzy etapy rozwoju. Pierwszy z nich to wprowadzenie w WordPress 5.0 implementacji bloków pozwalających na zarządzanie wpisami w WordPress. Da to możliwość pokazania użytkownikowi, jak docelowo będzie działał edytor.

W następnych fazach zacznie być wprowadzana możliwość zarządzania całą stroną, a nie tylko wpisem. Gutenberg będzie wielką zmianą i na każdym z etapów autorzy chcą mieć pewność, że będzie ona kompatybilna z aktualnymi funkcjami, jak np. meta-box. Jednakże zmiana ta pozwoli programistom tworzyć nowe pluginy o szerszych możliwościach.

daxter
marcinek44@windowslive.com

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *