Skip to content

Základná orientácia

Obsah dokumentácie

  • Informácie dôležité pre údržbu stránky
  • Objasnenie zámerov, prečo boli použité niektoré technológie
  • Proces tvorby NYI

Použité technológie

  • Front-end: Svelte (veľmi málo 3rd party JS (len Axios a FontAwesome))
  • Back-end: CockpitCMS (vnútorne upravená verzia + addony)
  • Manažment: NPM (Node.js) pre všeobecnú údržbu projektu a balíkov
    • Príkazy sú vypísané v package.json pod scripts, prípadne nižšie, spúšťanie cez npm run PRÍKAZ
  • Niektoré ďaľšie balíky:
    • rollup ako súčasť predvolenej Svelte šablony pre manažment Svelte kompilácie
    • babel a terser pre polyfilling (momentálne implementované všeobecne pre všetky prehliadače bez rozdielu)
    • ftpdeploy pre jednosmerný FTP upload
    • mkdocs (externá inštalácia z PIP (Python)) pre generovanie interaktívnej HTML verzie tejto Markdown dokumentácie.

Ako sprevádzkovať všetky skripty pre kompiláciu / údržbu

1. Inštalácia packages

npm install

Len pre prípad že by niečo bolo rozbité je dobré použiť npm install bez ďaľších parametrov tento príkaz nainštaluje všetky balíky ktoré chýbajú, ale sú zároveň definované ako potrebné v package.json

Dokumentácia

pip install mkdocs mkdocs-material mdx_truly_sane_lists

Pre dokumentáciu treba mkdocs a mkdocs-material tému, ktoré sa dajú stiahnúť cez PIP (Python), viac tu, prípadne tu. Dodatočne je inštalované aj mdx_truly_sane_lists.

2. Jednotlivé príkazy

Momentálne možnosti Vysvetlivky
Package.json Screenshot npm run build - Skompiluje celý projekt do public zložky v stave, kde je pripravený pre verejnosť (celý JavaScript prejde cez Babel a Terser pre kompatibilitu s IE11 a pod.)
npm run dev - Rýchlo live skompiluje projekt pre lokálny development, zároveň spustí webserver, taktiež do tej istej public zložky, kvôli prerenderovaniu avšak všetko prechádza cez php súbor a treba pristupovať cez externý WAMP server, live reload funguje aj na ňom
npm run start - Spustí len webserver
npm run ftp_ - Použije ftpsync.js pre upload všetkých častí public stránky (okrem cockpit vecí) na FTP server (webhosting)
npm run ftp - ftpsync.js upload len nutných častí (bundle.js/css a svelte.html)
npm run ftpgc - ftpgetcockpit.js stiahne sqlite a uploads pre synchronizáciu obsahu zo servera
npm run docs - Skompiluje dokumentáciu .md do .html
npm run docsdev - Live kompilácia úprav + webserver dokumentácie

Ohľadom spúšťania live webservera (npm run dev / npm run serve)

Tieto live servery nepodporujú PHP, takže BEZ separátnej apache/nginx/php/wampserver/xampp/lamp/... inštancie na porte 80 (momentálne API hodnoty), ktorá smeruje taktiež na zložku public (kde je /cockpit), NEpôjde načítať API z Cockpitu a vyhodí chybu 500.

Odporúčaný je wampserver, pre zaručenie funkčnosti treba nainštalovať všetky C++ redist.