<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.3">Jekyll</generator><link href="https://codequest.de//feed.xml" rel="self" type="application/atom+xml" /><link href="https://codequest.de//" rel="alternate" type="text/html" /><updated>2024-09-17T21:59:57+02:00</updated><id>https://codequest.de//feed.xml</id><title type="html">Codequest</title><entry><title type="html">Kickoff</title><link href="https://codequest.de//2024/09/04/kickoff.html" rel="alternate" type="text/html" title="Kickoff" /><published>2024-09-04T21:22:59+02:00</published><updated>2024-09-04T21:22:59+02:00</updated><id>https://codequest.de//2024/09/04/kickoff</id><content type="html" xml:base="https://codequest.de//2024/09/04/kickoff.html"><![CDATA[<p>This post documents me setting up this site using <a href="https://jekyllrb.com/">jekyll</a>. I have not been exposed to jekyll before 
and will describe my experience here. You can expect the following topics to be covered:</p>

<ul>
  <li>Repository setup and using jekyll to generate the project</li>
  <li>Specs: ruby, jekyll &amp; minima versions</li>
  <li>Theming: Jekyll’s default theme <em>minima</em>
    <ul>
      <li>What’s in a theme?</li>
    </ul>
  </li>
  <li>Hosting: Keep it simple
    <ul>
      <li>Webspace Hosting with FTP Upload</li>
    </ul>
  </li>
</ul>

<p>As I am not proficient in creating jekyll sites this will just be scratching the surface on most topics. Dont expect 
a deep dive here, that might maybe follow in future posts.</p>

<h2 id="getting-started">Getting Started</h2>

<p>I am hosting the source of this site using github. I created a repository there, created the project directory using <code class="language-plaintext highlighter-rouge">jekyll new codequest.de</code>,
<code class="language-plaintext highlighter-rouge">cd</code>ed into the directory and <code class="language-plaintext highlighter-rouge">git init</code>ed it. Then I pushed my inital commit. 
At that point I could start the project locally using <code class="language-plaintext highlighter-rouge">jekyll serve</code>.</p>

<p>Jekyll’s <a href="https://jekyllrb.com/docs/"><em>Quickstart</em></a> was helpful to begin. 
After installing ruby I just did</p>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>    gem <span class="nb">install </span>jekyll bundler
    jekyll new codequest.de
</code></pre></div></div>
<p>and had my project up and running.</p>

<p>Quick side note:
I read about some alternatives like <a href="https://gohugo.io/">Hugo</a> and <a href="https://www.11ty.dev/">11ty</a> but Jekyll seems to be battle tested, has a large community and, 
what matters the most, fits my current needs.</p>

<h2 id="specs">Specs</h2>

<p>I am using the following versions:\</p>

<p>Ruby: 3.2.2<br />
Jekyll: 4.3.3<br />
Minima: 2.5.1</p>

<h2 id="theming">Theming</h2>

<p>I soon realized jekyll comes with theming support and a default theme called <a href="https://github.com/jekyll/minima">minima</a>.
This means your site will have a default look and feel out of the box.
Jekyll, when generating the site, will use the theme specified in the <code class="language-plaintext highlighter-rouge">_config.yml</code> file (<code class="language-plaintext highlighter-rouge">theme: minima</code>).</p>

<p>You are ready to start writing posts inside the <em>posts directory. Just add a layout value of _post</em> in the frontmatter 
of your md-file and you use the layout specified by minima.</p>

<h3 id="how-is-minima-built">How is minima built?</h3>

<p>Minima is a gem that provides a default theme for jekyll. It is a collection of layouts, includes, sass and js files.
It basically is a <a href="https://github.com/jekyll/minima">repository</a> containing for example the following directories:</p>

<ul>
  <li>_layouts</li>
  <li>_includes</li>
  <li>_sass</li>
  <li>assets</li>
</ul>

<p>The _layouts directory contains the html files that define the structure of your site.
The _includes directory contains html snippets that can be included in your layouts.
The _sass directory contains the stylesheets that will be processed into the theme’s main stylesheet <code class="language-plaintext highlighter-rouge">main.css</code>.
The assets directory contains the js and css files that are used in the theme.</p>

<h3 id="overriding-theme-files">Overriding theme files</h3>

<p>To override the theme files you can just recreate the theme’s directory structure in your project and copy the files 
you want to override. Edit the files as you wish and jekyll will prefer the versions in your project over the ones in 
the theme.</p>

<h2 id="hosting">Hosting</h2>

<p>I want to get this site up and running with minimal inital effort. My hosting provider offers webspace, from which a 
site can be served. I just have to create a redirect from my domain to a subdirectory in the webspace and the site is 
live (assuming e.g. an index.html is presnt in the directory). I created an ftp user to connect and upload my generated 
_site to the webspaces directory.</p>]]></content><author><name></name></author><category term="jekyll" /><category term="website" /><summary type="html"><![CDATA[This post documents me setting up this site using jekyll. I have not been exposed to jekyll before and will describe my experience here. You can expect the following topics to be covered:]]></summary></entry></feed>