Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Basta 2017: Jekyll, Markdown & co. (DE)

Basta 2017: Jekyll, Markdown & co. (DE)

Talk @ Basta 2017 in German about Jekyll, Markdown & co.

Demos: https://github.com/Code-Inside/Samples/tree/master/2017/jekyll-demo

Robert Muehsig

September 28, 2017
Tweet

More Decks by Robert Muehsig

Other Decks in Programming

Transcript

  1. Wer bin ich und was mach ich? • Robert Mühsig

    • Software Entwickler bei der Sevitec Informatik AG in der Schweiz • Microsoft MVP • Tech-Stack: „MSFT-lastig“ und Web-affin • Blog: https://blog.codeinside.eu • Twitter: @robert0muehsig
  2. Motivation für unser Produktteam: • „Uneinheitliche“ Dokumentation – Wiki, Word,

    TFS, OneNote... • Dokumentation für: • Endbenutzer • Support • Partner • Entwicklung „Uh… das war vor 2 Jahren als ich das Modul gebaut habe…“ ☺
  3. Jekyll – Demo – Recap: “Jekyll” $ cd /mnt/d/Temp/ $

    jekyll new my-awesome-site $ cd /my-awesome-site $ bundle exec jekyll serve
  4. Jekyll Install Quick Start (Windows) – Via Bash on Ubuntu

    Make & GCC $ sudo -s $ apt update $ apt install make gcc Ruby $ apt-add-repository ppa:brightbox/ruby-ng $ apt update $ apt install ruby2.3 ruby2.3-dev ruby-switch
  5. Jekyll Install Quick Start (Windows) – Via Bash on Ubuntu

    Jekyll $ gem install Jekyll bundler “gem” Package Manager in der Ruby Welt
  6. Jekyll – Demo – Recap: Jekyll $ cd /mnt/d/Temp/ $

    jekyll new my-awesome-site $ cd /my-awesome-site $ bundle exec jekyll serve = Package-Manager (Package “gems”)in der Ruby Welt
  7. Jekyll – Demo – Recap: Bundler $ cd /mnt/d/Temp/ $

    jekyll new my-awesome-site $ cd /my-awesome-site $ bundle exec jekyll serve = Package-Manager (Package “gems”)in der Ruby Welt
  8. Jekyll – Content is King • *.md-Files • *.html-Files •

    *.* = alles was irgendwie Textbasiert ist
  9. Kurzausflug: Markdown # Überschrift – Hallo! Text _fetter Text_ und

    vll. ein [Link](http://...) * Liste 1 * Liste 2 <p>HTML geht auch!</p>
  10. Kurzausflug: Markdown - Editoren • Typora (Win, macOS, Linux) https://typora.io/

    • VS Code (Win, macOS, Linux) • iA Writer (macOS, iOS, Android) https://ia.net/writer/
  11. Jekyll Aufbau - Ordner = Blog Post Dir = Out

    Dir = Config = Statische Seite
  12. Variables & Data {{ page.* }} Page Data im Header

    YAML {{ site.* }} _config.yml {{ site.data.* }} Daten aus _data {{ site.pages.* }} {{ site.posts.* }} {{ site. * }} Collections Posts & Pages sind immer dabei {{ content }} Page Content
  13. Quick Start on GH Pages • https://pages.github.com/ • gh-page Branch

    für bestehende Projekte • /docs Folder • * Branch • GH Pages unterstützt nur wenige Plugins!
  14. GH Pages: Features • Jekyll… • Automatischer Build • Custom

    Domains via CNAME • Achtung: SSL Support funktioniert nur mit GitHub.io Adressen • Workaround z.B. über Cloudflare
  15. „The Bad Parts“ • Static Sites: • Keine (bzw. wenig)

    Dynamik (Menüs, Kommentare etc.) • Suchen … solala… • Markdown: mal so, mal so…
  16. Demo: docs.OneOffixx.com • Jekyll, gehostet auf GitHub Pages • Dokumentation

    im Markdown Format • Mehrsprachig • „Dev-Freundlich“ • https://github.com/Sevitec/oneoffixx-docs
  17. Demo: blog.codeinside.eu • Jekyll, gehostet auf GitHub Pages • Blogposts

    im Markdown Format • Mehrsprachig, Clientseitige Suche • https://blog.codeinside.eu/
  18. Demo: EinKofferVollerReisen.de • Jekyll, gehostet auf GitHub Pages • Blogposts

    im Markdown Format • Navigation im YAML Header • https://www.einkoffervollerreisen.de/
  19. DocFX • Static Page Generator • X-Platform Doc Generator •

    „.NET-Affin“ • Swagger Support • „Mächtiger“, aber komplizierter
  20. DocFX – Quick Start • cinst docfx –y • docfx

    init –q • docfx docfx_project\docfx.json --serve