samrocketman / blog

A personal technical blog. Full featured complete with automated peer review.
http://sam.gleske.net/blog/
Other
5 stars 0 forks source link
blog blog-engine entertainment hacktoberfest jekyll-blog jekyll-site

My blog - Build Status

This is a blogging website where I post technical information for myself, Sam Gleske. If others find it useful then more power to 'em. If you'd like to learn more about me then check out my first post.

Features of my blog

Copy my blog and make it your own

  1. Fork or clone this blog. I recommend you clone and copy so you get stats in your GitHub profile.
  2. Remove all posts from _posts and _drafts.
  3. Customize _config.yml with your own information.
  4. Update LICENSE.txt and make it your own.
  5. Publish back to GitHub.
# Step 1
git clone https://github.com/samrocketman/blog
# Step 2
rm _posts/*.md* _drafts/*.md
# Step 3
vim _config.yml
# Step 4
vim LICENSE.txt
# Step 5
git remote add myblog git@github.com:<your_username>/<your_blog>.git
git push myblog 'refs/heads/main:refs/heads/gh-pages'

Note: gh-pages branch automatically gets published to GitHub pages. However, if you'd rather be more like this blog publishing from main, then you can customize the branch to main from the repository settings.

Legal note: the 3rd_party/ directory must remain intact in order to satisfy license requirements of both work provided by myself and authors in which I built upon. It contains all notices and licenses for using other peoples' source code.

Getting started with development

Prerequisites

If you're using a Mac, then building the blog won't work. It's due to differences in the BSD toolset vs the GNU toolset.

The blog requires Ruby 2.4 to be installed. It's best to use rvm for Ruby.

Set up with rvm.

rvm install 2.4
#optionally install within a "blog" gemset
rvm use 2.4@blog --create

If you encounter an error about not being in a login shell then use bash -l to create one. Now when you open a new terminal be sure to execute the following commands before modifying the blog.

rvm use 2.4@blog --create

Install dependencies.

make deps

Developing the site

There a "make" commands which make developing this blog easier and performing more complex tasks.

Other make commands:

Automated peer review

What is it? It performs common and repeatable tasks a person would normally do when checking this blog. Rather than having to do it you're able to rely on computers to check it for you.

What sort of tasks are performed in automated peer review for this blog?

Automated peer review is useful to run before you even publish the website for readers to see. I use GitHub pull requests and Travis CI for automated peer review when publishing my new blog posts.

Note: Grammar and spell checking isn't perfect due to the technical nature of my blog. I have added grammar_ignore.dict for skipping keywords and grammar_skip.sentences for skipping whole sentences when I'm writing. It doesn't always get it right but it still forces me to double check the sentences it calls out.

Tips for myself

Sign any changed blog posts:

make sign

Force re-signing all blog posts:

make sign FILES="$(echo _posts/*.md)"

Force re-signing a specific blog post:

make sign FILES="_posts/somepost.md"

Sign a commit:

git commit -S

Summary of Licenses

All source code is MIT Licensed by LICENSE.txt with exception for: