02 Rozjetí DevStacku
Aktuální verze
Aktuální verzi šablon najdete na GitLabu, který si prosím naklonujte do svého počítače.
Windows
- Před rozjetím projektu je potřeba nainstalovat
-
Nyní je potřeba nastavit PHP
- Přidat PHP do PATH – ukázka
- Přidat npm do PATH stejně jako PHP, cesta k npm: C:\Users\__your_account__\AppData\Roaming\npm (namísto __your_acount__ zadejte název vašeho účtu na PC)
-
Nainstalovat globální balíčky pomocí npm
- Bower – v command line: npm install bower -g
- Gulp – v command line: npm install gulp-cli -g
-
Nyní je vše nainstalováno a můžeme přejít k rozjetí projektu
- Nainstalovat npm balíčky - v command line: npm install
- Nainstalovat bower balíčky - v command line: bower install
- Spustit gulp - v command line: gulp (při dalším spouštění stačí již pouze příkaz gulp, pokud tedy není potřeba doinstalovat nové bower/npm balíčky)
Mac
-
Před rozjetím projektu je potřeba naistalovat
- xCode z AppStoru + projít prvním spuštěním
- Command Line Tools z Apple Developers (musí být k nainstalované verzi xCodu)
- Homebrew - $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- Node.js – $ brew install node
-
Přidat cesty k nodu do souboru .profile, který naleznete /Users/uživatel/.profile
homebrew=/usr/local/bin:/usr/local/sbin
export PATH=/usr/local/share/npm/bin:$PATH
export PATH=$homebrew:$PATH -
Nainstalovat další závislosti
- Bower – $ npm install bower -g
- Gulp – $ npm install gulp-cli -g
- ImageMagick – $ brew install imagemagick
-
PHP
- $ brew tap homebrew/dupes
- $ brew tap josegonzalez/homebrew-php
- $ brew install php54
-
Spuštění projektu
- $ sh start.sh
-
Tento příkaz automaticky spustí:
- npm install --no-progress
- bower install
- gulp (při dalším spouštění stačí již pouze příkaz gulp, pokud tedy není potřeba doinstalovat nové bower/npm balíčky)
Linux (Ubuntu)
# install git, PHP CGI, ImageMagick sudo apt install git php-cgi imagemagick # clone repository git clone https://gitlab.ics.muni.cz/DIS/MuniWeb.git cd MuniWeb # install nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash source ~/.bashrc # install Node.js v10.20.1 nvm install v10.20.1 nvm use v10.20.1 # install bower and gulp npm install bower -g npm install gulp-cli -g # install npm packages npm install # install bower packages bower install # run gulp tasks gulp # later run gulp again nvm use v10.20.1 gulp
Linux (CentOS 7)
# (na CentOS 8 kompilacia zlyhava) # doplnime EPEL yum -y install epel-release # nainstalujeme zavislosti yum -y install nodejs git ImageMagick php gcc-c++ libpng12-devel zip unzip vim # nainstalujeme bower (ten je vraj uz deprecated, ale prezijeme) a gulp, oboje globalne (-g) npm install -g bower gulp # vyrobime dedikovaneho pouzivatela a prepneme sa pod neho useradd -m jvs su - jvs # stiahneme si JVS git clone https://gitlab.TODO/TODO/MuniWeb.git cd MuniWeb # prepneme sa do vetvy redesign # (tu by mal spravne byt namiesto `HEAD` commitu checkout nejakeho release podla tagu) git checkout --track origin/muni-redesign # nainstalujeme balicky z NPM npm install # chyba s jpegoptim a jquery nie je zasadna # nainstalujeme webove frameworky bower install # uprava zdrojakov v pripade potreby # (napr. primarna farba fakulty/pracoviska a pod.) : # uloha Gulpu s nazvom imagemin vyzaduje libjpeg.so.8, ktory nie je mozne # jednoducho dostat do systemu; pre aspon nejaku kompilaciu tuto ulohu # odstranime, hoci to nie je korektne riesenie sed -i '/imagemin/d' tasks/export.coffee # vygenerujeme CSS/JS a spol. + vyrobime ZIP gulp export cd _zip # tu najdeme skompilovany a pripraveny dizajn (CSS, JS, ...) # unzip muni-*.zip
Příkazy k práci s devstackem
- gulp - Příkaz pro vykompilování již nastaveného projektu a spuštění watcherů
- gulp min - Příkaz pro vykompilování minifikovaného projektu (minifikují se JS, CSS a obrázky). U tohoto příkazu se nepouští watcher
- gulp minwatch - Příkaz pro vykompilování minifikovaného projektu a spuštění watcherů
- gulp export - Příkaz pro vyexportování minifikovaného projektu do zipu (ideální pro verzování)
Další Gulp tasky
Zobrazení vykompilované verze v prohlížeči
Po rozjetí devstacku šablony běží na virtuální adrese http://localhost:3000/tpl (není-li obsazen port - přesná adresa se případně zobrazí v konzoli po spuštění příkazu gulp) nebo lze klasicky otevřít index.html z /web/tpl/
Dokumentace jednotlivých složek devstacku
- Node.js - balíčkovací ekosystém
- NPM - balíčkovací manager pro Node.js
- ImageMagick - knihovna pro práci s obrázky
- Gulp - nástroj pro automatizaci workflow
- Bower - package manager pro web
- SASS - preprocesor pro CSS
- CoffeeScript - preprocesor pro JS
- PHP - skriptovací jazyk použitý ke generování statických HTML šablon
- xCode - vývojářské nástroje pro OSx
- Brew - package manager pro OSx