Jekyll+Github Pages — Bloq qurulması üzrə dərslik
Giriş
Düşünmürəm ki, başlayan blogerlərdən (və çox zaman, İT ilə əlaqəli yeni peşə sahiblərindən) kimsə WordPress, Blogger kimi rahat və çox funksiyalı CMS-ləri atıb hər məqalə üçün yeni səhifəni, özüdə heç bir admin panelsiz düzəltməyə, daha doğrusu hazırlamağa başlasın. Bu təxmini olaraq saytın front-end hissəsinin hər dəfə yenidən hazırlanmasına oxşayır. Amma fərqliliklər var, həm də çox. – Bu və digər məsələləri, bu məqalədə oxuya bilərsiniz.
Giriş davam edir…
Gəlin əvvəlcə, bir şeyə aydınlıq gətirək. Saytların qurulmasında iştirak edən, bəlkə də əsas yeri tutan (mənim portfoliomda) WordPress-dən şəxsi praktikamda və bir neçə digər layihələr üçün istifadə etmişəm. Çox funksionallığı bu VBİS-in kommersiya məqsədlərindən, ən adi vizitka saytının hazırlanmasına qədər müxtəlif layihələrin icrasına imkan verdiyini bilirik. Amma əsasən, məqalələrlə iş üçün istifadə olunan bu sistem, bloq üçün həddindən çox funksionallığının istifadəsiz qalması ilə əlaqədar olaraq artıq resurs istifadəsinə gətirib çıxarır. Bu da təbii ki, əlavə verilənlər bazası və hostinq deməkdir.
– Xaricdən alınan hostinq indiki halda, ikiqat çox vəsait tələb edir.
Mən — öz saytlarım üçün – hostinqi xaricdən almadığıma görə, burada məni narahat edə biləcək, komfortluq zonasıdır. Bu da təbii ki, bu məqalədə müzakirə üçün, yaxşı mövzu deyil…
Qısası, mən komfort zonasından çıxmaq istədim, bunun üçün statik saytların generasiyalarını öyrənməyə başladım…
Jekyll
Jekyll — Ruby dilində yazılmış, statik saytların generatorasiyası (Static Site Generator) üçün bir sistemdir. Yəni müəyyən şablon üzrə səhifəni hazırlayırsız, sistem isə öz növbəsində onu, statik səhifəyə çevirir.
Jekyll daha çox bloqların hazırlanması üçün istifadə olunur və əsas vəzifəsidə bunu reallaşdırmaqdır. Əsasən, Github Pages ilə birlikdə istifadə olunduğuna görə, əsas xüsusiyyəti elə bu hesab olunur.
Jekyll haqqında İnternetdə çox məlumat var, elə öz saytından bütün sənədləri tapa bilərsiniz.
Statik Səhifələr
Statik saytlara nifrət etməyiniz üçün bir neçə səbəb mövcuddur, amma onların araşdırılmasından və özünüz üçün mühitin yaradılmasından sonra bütün problemlər, hətta sizin xoşunuza gələ bilər.
- Statiklik
Hazırladığınız saytların statik olması, sizə CMS-də olan böyük funksionallıqdan istifadəyə maneçilik törədəcəkdir. Saytların qurulmasında siz «əlaqə», «şərhlər», «axtarış» kimi funksiyaları istifadə edə bilməyəcəksiniz. Bunun yeganə çıxış yolu kənar servislərdir.
Məsələn, əlaqə üçün mən, Formspree.io servisindən istifadə edirəm. Doğrudur ki, müxtəlif template-lərdən istifadə edərkən bu seçim dəyişir. Amma Jekyll üçün bu servisdən bütün template üçün quraşdırmaq olar.
Axtarış üçün isə növbəti servislər var:
– Google Custom Search;
– site parametri ilə Google-a sorğu göndərməklə, forma;
– və digər xüsusi servislər.
- Məqalə/Səhifə əlavəsi
«WYSIWYM»in (what you see is what you mean — sizin gördüyünüz, nəzərdə tutduğunuzdur) sisteminin olmaması, ilk vaxtlar sizi narahat edə bilər. Amma unutmaq lazım deyil ki, hər şey müəyyən zamandan sonra komfortluq zonasına keçir. Hansısa, «WYSIWYM»də ilk yazı yazdığınızı yadınıza gətirin…
GitHub Pages üzərində olan saytlar üçün bu üsullar çox yaxşıdır:
– Prose.io — bu veb proqramdan istifadə edərək, WYSIWYM kimi nəticə əldə etməsək də, bir-başa nəticəni repozitoriyaya yazmaq funksiyasını əldə edirik;
– «git»i clone edib desktop redaktorda işləmək;
– ya da GitHub vasitəsilə əlavələr etmək.
Bütün bu üsullar aktualdır. Müxtəlif zövqlü developerlər tərəfindən istifadə olunur.
Nəzərə almaq lazımdır ki, veb proqram təminatından istifadədən sonra, əgər Markdown dilində işləməyi bacarmırsınızsa, HTML kodu yeni məqaləyə/səhifəyə əlavə etmək lazımdır.
Mövzular
Jekyll-də mövzular demək olar ki, istənilən zövqə uyğun var. Onları həm rəsmi, həm də əlavə servislərdən tapa bilərsiniz. Sadəcə Google-da axtarın: jekyll themes
İstədiyiniz mövzunu tapandan sonra Git repozitoriyasına keçin və «Fork» düyməsi vasitəsilə, öz hostinq hesabınıza yükləyin və istifadəyə başlayın.
Mühitin yaradılması
Jekyll-in istifadəsi üçün həm lokal, həm də Git repozitoriya vasitəsilə mühit yaratmaq mümkündür. Lazım olan softların quraşdırılmasına çox vaxt sərf etməmək üçün, lokalda, müəyyən hazır paketləri yükləmək olar. Amma bu çox zaman çətin olur. Quraşdırılmaqda heç bir maneə yoxdur, sadəcə paketin daxilində olan proqramların köhnə versiyada olması, və hətta yenilənən zaman bir-birinə uyğun olmaması ya Jekyll-in ya da, məsələn, Ruby-nin ən yeni versiyasında olması, generasiyaya maneə yaradır. Bəzən isə, ümumiyyətlə, başladıla bilmir.
Ona görə də bu kiçik «Jekyll-ə giriş» məqaləsində, biz GitHub-dan istifadə edəcəyik.
- Lokal və ya Github:
- a) Amma Windows və Mac istifadəçilərinin, tamamilə bütünyenilənmələri dəsktəkləyən RailsInstaller paketi vardır. Bu ƏS-lərdə Ruby Dev. üçün iş mühiti yaratmaq praktiki olaraq problem yaratmır. Quraşdırılma asandır.
Proqram təminatının saytına keçib lazımi quraşdırılma fayllarını yükləmək lazımdır. Daha sonra onu başlatmaq və bir neçə vizual düymələri klikləməklə quraşdırılma sona çatır.
- b) Əgər mənim üsulumdan istifadə edərək GitHub üzərində işləmək istəyirsinizsə, «git»i uyğun olaraq öz ƏS-nizə quraşdırın. Mən Ubuntu-da, Sudo Terminaldan (sudo gnome-terminal) bu əmri yerinə yetirdim:
apt-get install git
Lisenziya və Quraşdırmağa razılıq («Y») verdikdən sonra bir neçə saniyəyə hər şey hazır olur.
- Jekyll Quraşdırılması:
Əvvəl yazdığım hər iki üsuldan yalnız, lokal üçün Jekyll-i quraşdırmaq olar. Lakin sürətli seçiminizdıAmma generasiyanı GitHub Page ilə etmək sürətlidir. Yeganə minus bundadır ki, siz öz sevimli redaktorunuzdan istifadə edə bilməyəcəksiniz.
Lokal üçün bu komandalardan istifadə edin:
Quraşdırılma: apt-get install git
Yeni saytın yaradılması (technet-blog — yeni saytın adıdır): jekyll new technet-blog
Saytı lokalda yayımlamaq:
– Əvvəl saytın qovluğuna keçirik: cd technet-blog
– Saytı yayımlayırıq: jekyll serve
– Sayt burdadır: localhost:4000
GitHub Pages-in istifadəsi çox rahatdır. Bundan danışmağa ehtiyac yoxdur. Çünki istədiyiniz dəyişiklikləri həm bir-başa saytda həm də clone edib lokal edə bilərsiniz, bu sənədlər sizə kömək edə bilər:
– Jekyll Doc (jekyllrb.com)
– Wiki
Jekyll üzərində qurulan sayt və mənbə kodları: mənbə / sayt.
Son:
Mən Jekyll-i öyrəndiyim dövrdə yaxşı praktika aldım. Bunu bəyəndim, və çoxdandır istifadəsində çətinlik çəkdiyim GitHub-ın hostinq kimi əslində, asan olduğunu anladım.
Jekyll+Github Pages = Mənim saytım
Yenidən qeyd etmək istəyirəm ki, bütün çətinliklərə alışdığınızdan sonra, rahat-rahat məqaləyə və ya kontentə diqqətinizi tam cəmləməyə çalışın.
İlk günlər bu çətindir, amma «Learning is fun»!
Mirzə İskəndərov