Geek Culture

A new tech publication by Start it up (https://medium.com/swlh).

How to create a Medium-like personal blog for free in a day

David Chong
Geek Culture
Published in
7 min readJan 6, 2022

--

Screenshot of landing page (left) and sample post (right) — [Photo by Author]

1. Create a GitHub repository

2. Initialize GitHub repository with template files

git clone <repo_name>
cd <repo_name>
git add .
git commit -m "Initial commit"
git push origin master
GitHub workflow trigger (Photo by Author)

3. Customize to make it your own!

3a. Setup our local environment using rbenv

brew uninstall ruby
brew install rbenv
rbenv install 2.7.5  # Install version 2.7.5
rbenv local 2.7.5 # Use version 2.7.5
ruby -v
>>> ruby 2.7.5
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash>>> Checking for `rbenv' in PATH: /usr/local/bin/rbenv
>>> Checking for rbenv shims in PATH: OK
>>> Checking `rbenv install' support: /usr/local/bin/rbenv-install (ruby-build 20211227)
>>> Counting installed Ruby versions: 1 versions
>>> Checking RubyGems settings: OK
>>> Auditing installed plugins: OK
# To add `rbenv`to PATH
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc# To add rbenv shims to PATH
echo 'export PATH="$HOME/.rbenv/shims:$PATH"' >> ~/.bashrc
set -Ux fish_user_paths $HOME/.rbenv/bin $fish_user_paths
set -Ux fish_user_paths $HOME/.rbenv/shims $fish_user_paths

3b. Serve webpage locally

bundle install  # install required dependencies
bundle exec jekyll serve --watch # served and changes are watched

3c. Editing posts

---
layout: post
title: "hello world"
author: david
...
<other options below>
---

3d. Editing the `_config.yml`

Screenshots by Author
Screenshot by Author

Final Words

--

--

David Chong
David Chong

Written by David Chong

Software Engineer @ Shopee; Closet n3rd; Husband & Father; LinkedIn → bit.ly/3CmUbUf; Medium — tinyurl.com/2rk9ub8k; Support me → tinyurl.com/davidcjw