A blog from developers to developers. Developer-oriented insights from the folks at Solita. Check it out at dev.solita.fi!
If you want to write a post, here's how:
-
Fork this repository under your own GitHub account
-
Clone your own fork to your local computer
-
Add your author details to
_config.yml
- The email value is a MD5 hash of your email
- Optional: to have your avatar show up, make sure you have a Gravatar account registered with your solita.fi email address and a photo of yourself
-
Write a new post under the
_posts
folder using Markdown-
Name the file with this format:
YYYY-MM-DD-post-name.md
-
You might want to copy some previous post as a template
-
If you don't see your blog post, change the date on the file to today or a past date
-
Normally the publication date of the post is read from the filename. In this case the publishing time will show up as 00:00:00. If you want to specify the exact time your post was published, you can add a date field to your post's front matter. In the date field you can specify the publication time in the format
YYYY-MM-DD HH:MM:SS +/-TTTT
. For example:--- title: Post Title date: 2016-04-25 13:30:00 +0200 .... ---
-
-
Preview and proof read your post. You have three options for previewing:
- Use your IDE
- VS Code: Command palette -> Markdown: Open preview
- IDEA: Just open the file
- Sublime Text: MarkdownPreview
- Preview the post in GitHub (Pull request -> Files changed -> ... on your post -> View file)
- Run the site locally and preview the post in it's natural habitat
- Use your IDE
-
- Select compare accross forks
- Choose your fork on the right
- Write an informative description for your pull request
-
Ask someone to review your post
-
Publish by merging the branch
To render double curly braces ({{...text...}}
) in post content, you must surround it with raw-tags:
{%- raw -%}
printf("Hello, {{foo}}", foo)
{% endraw %}
There are no workflows in this repo for the deploy - Github has builtin Jekyll based workflows as part of the Github Pages support. You can learn more about it at https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll or in the Actions run logs that show which actions are being invoked (to see eg Jekyll and Ruby versions involved).
- Install Docker or Podman (with
alias docker=podman
) - Run
./docker/init.sh
(need to be run only the first time launching the site) - Run
./docker/start.sh
- The blog should now be live at localhost:4444
- Stop the container with
ctrl+c
./docker/destroy.sh
-> Delete image./docker/troubleshoot.sh
-> Open bash to container without starting jekyl and compass
- Install Vagrant
- Install Virtualbox
- Run
cd vagrant
- Run
vagrant up blag
- Wait patiently as the ruby goodness is downloaded and configured
- The blog should now be live at localhost:4444
- If anything goes wrong, good luck.
vagrant ssh blag
and try figure it out. - When you're done you might want to shutdown the virtual machine.
vagrant destroy
or something like that.
- Navigate to your working directory and make sure you are running a comatible version of Ruby with
ruby -v
gem install bundler -v 2.4.22
bundle install
bundle exec jekyll serve --watch
- The blog should now be live at localhost:4000
- It's highly recommended to use a Ruby version manager like rvm or rbenv.
- For maximum compatibility, use the same version of Ruby as GitHub pages is using.