Koji: Gutenberg-Ready Theme

Free Minimal Gutenberg WordPress Theme

Looking for the best minimal WordPress theme compatible with Gutenberg? Here’s Koji. Developed by Anders Norén, Koji is a stunning light-weight theme that focuses on content. The Koji theme promises a pleasant browsing/scrolling experience also.

Note: This is not a promotion. Koji is simply great, and I’d recommend this minimal Gutenberg theme anytime.

Update: I’m using GeneratePress WordPress theme right now. Visit https://go.mighil.com/koji kaijudigital.org to view the demo of Koji. Kaiju Digital (WIP) will be based on this Gutenberg-friendly minimal WordPress theme.

Koji WordPress Theme Preview


Koji is ideal for freelancers and bloggers who embrace minimalism. The theme emphasizes your content and loads blazing fast on modern browsers and all devices.

Why I use Koji

I was in search of a Gutenberg compatible theme that’s minimal. I love GeneratePress (which is minimal and compatible with Gutenberg as well), but I wanted something even light-weight and easy to use. I didn’t need a lot of options and customizations GeneratePress offered. Koji looked ideal for me.

I do recommend GeneratePress if you prefer to make money from blogging. It’s a great framework. Check my GeneratePress review for more details.

Koji is ideal for small personal websites like mine with lots of images and text-based content.

Clean Design, Speed & Typography

As you can see, Koji renders your system font stack which makes the website load faster on all devices. The smooth animations also promise a better experience for your readers. This feature makes Koji the best fit for photography based blogs and portfolio websites.

Gutenberg Support

It’s clear that the developer has built Koji with the new WordPress Gutenberg editor in mind. The theme has full support for blocks and editor styles. It also supports the classic editor.

What I’ve Done With Koji

I’ve edited Koji’s stylesheet a bit to fit my needs. I’ve also replaced some png files with Base64 strings. My site’s sidebar area and headings are styled to render Sofia Pro font. I’m not using the social icons that came with Koji theme. I use Lightweight Social Icons developed by Thomas Usborne.

PageSpeed Insights & Pingdom Website Speed Test Result

Keep in mind that kaijudigital.org is based on CentOS, NGINX,MariaDB, & PHP-FPM, and the server is optimized for better load time. I use Autoptimize plugin developed by Frank Goossens (futtta) to reduce the file requests and compress other stuff.

These were the results of mighil.com + Koji WordPress theme. Go ahead and check kaijudigital.org’s performance score if you’re still worried about the page loading speed.

The speed score on Desktop
The speed score on Mobile.

Here’s the Pingdom Website Speed Test Result:

Take a look at the Pingdom Page Performance Grades:

No, I don’t use a CDN service. I’m using CloudFlare free service at the moment.

So, if you are looking to install a best minimal Gutenberg compatible WordPress theme, go ahead and get Koji for free from the WordPress theme directory, or install it through your WordPress administration panel at Appearance → Themes → Add New.

Need a hand?

Need help optimizing your WordPress website to achieve better load-time and search performance? Connect with me now.

Bash Script to Install WordPress on Vesta CP

How To Use Bash Script to Install WordPress on Vesta CP

The Vesta control panel (VestaCP) is an open source hosting control panel, which can be used to manage multiple websites, create and manage email accounts, FTP accounts, and MySQL databases, manage DNS records and more.

There are a lot of tutorials on how to install WordPress on VestaCP. The Vesta Control Panel comes with Softaculous, but you’ve to pay for the license to auto-install WordPress on your server using Softaculous.

If you’re looking for a free option, an auto install bash script would be the right choice to install WordPress on your server.


  1. You’ve to add a domain first (using the Vesta CP web interface).
  2. The script is only applicable to the admin group. i.e. username:admin.

Major features of the WordPress auto install bash script

I edited the bash script posted by @jetonr on GitHub Gist. I modified a little bit for VestaCP admin group. The main features of the script include:

  1. Downloads the latest.tar.gz to the public_html of the user and domain you enter.
  2. Removes unnecessary files (wp-config-sample.php, readme.html, license.txt and latest.tar.gz)
  3. Creates a secure .htaccess file & set correct permissions for the file.
  4. Generates a robots.txt file with right ownership.
  5. Creates a database with user and password you enter. Which will go to the wp-config file.
  6. Creates a wp-config.php file with generated configuration and SALT included.

How to use the WordPress auto install bash script for VestaCP

How to Automate WordPress Installs

Choose from the two methods below:

Method 1: Add this line your Bashrc file.

Stick with this method if you plan to set up a lot of WordPress sites. This method will make things easier the next time when you want to install WordPress.

What is Bashrc?

bashrc is a shell script that Bash runs whenever it is started interactively. It initializes an interactive shell session. You can put any command in that file that you could type at the command prompt.

On CentOS, you’ll find the bashrc file inside the /etc directory. Visit this thread if you can’t locate the file.

Edit the file bashrc file and add this line:

alias wpinstall="curl -L -o 'vesta-wp.sh' https://gist.githubusercontent.com/mighildotcom/7205442783534792a606df39629e22d3/raw/a02564e5eb9931da31e3f4988717b6119a82ea6e/vesta-wp.sh && bash vesta-wp.sh"

Save the file and run:

source ~/.bashrc

That’s about it. Just type


anywhere to begin the installation process.

Method 2: Download the script and run it

This is pretty straight-forward also.

curl -O https://gist.githubusercontent.com/mighildotcom/7205442783534792a606df39629e22d3/raw/a02564e5eb9931da31e3f4988717b6119a82ea6e/vesta-wp.sh


bash vesta-wp.sh

The script will do the rest. Good luck!

Hire me to optimize your WordPress site

How to Find Non-Teaching Jobs in China

How to Find Non-Teaching Jobs in China - Expert Tips With Resources

Where can I find non-teaching jobs in China? Here are the answers you need. Here’s the definitive guide to finding a non-teaching job in China. Not applicable to English teachers.

Update: I’ve compiled a list of non-teaching job vacancies in China. Give it a try if you’d like.

Find Non-Teaching Jobs in China

It is a fact that there are various kinds of job opportunities available in China. But, without prior knowledge about the current job market, it might be a bit hard for you to find non-teaching jobs in China.

This blog is not for “English teachers.” Do not read to further if you’re a native speaker of English with no little experience and want to teach in China. This article isn’t for you. 🙂

With a little bit of research, planning and hard work, it is possible for anyone to find and get a job in China.

Find a job in China
With Team ugChain, 2017

I’m Mighil, a Chengdu-based digital consultant. I’ve been living in China since 2015. When time permits, you can learn a bit more about me and my life in Chengdu.

Finding jobs in China

In case you don’t want to spend a lot of time on research, you can always try getting the help of headhunters or recruiting agencies to obtain employment in China.

Other than that, you can refer to various career websites, expat blogs and resources available online which would help you to find non-teaching jobs in China.

There are many prominent Chinese job websites (some have English interface) available for finding the right kind of non-teaching jobs in China.

If you’re a student or fresh graduate, you could also try enrolling for internships in various companies or institutions in China to find a relevant job.

Get ready to GET BUSY!
The subway routine

Given below are specific tips and techniques for the job seekers who want to find a non-teaching job in China.

Attending Networking Events

Understand the concept of ‘guanxi.’

Guanxi (Chinese: 關係) defines the rudimentary dynamic in personalized social networks of power and is a crucial system of beliefs in Chinese culture. Simply put, guanxi is a relationship in the business context, based on mutual trust and benefits.

You can try to build your networks by attending certain networking events some of which should be specifically related to China.

You can gain knowledge about a variety of contacts related to various job sectors such as the corporate sector, management, etc. through these events and meetups.

Using Job Websites

Job websites are one of the best ways to find a relevant job in any province in China. Go ahead and register an account in some of the popular job websites and search for the desired non-teaching jobs in China.

Such websites also allow individuals to gain access to specific contacts of in-house recruiters which are almost unavailable outside the mainland.

These websites also offer various tips and suggestions regarding how to get a job in any place.

Bookmark the websites below:

    1. https://www.zhaopin.com/
    2. https://www.51job.com/
    3. https://www.lagou.com/
    4. https://www.zhipin.com/
    5. https://www.liepin.com/
    6. LinkedIn (Yes, it works!)

51job comes with an English interface and every other site is only available in Chinese. I do offer job consulting and CV translation services if you’re interested. I’ll tailor your résumé in Chinese so that more employers will be interested in reviewing your profile. Based on my previous experience with Chinese companies, medium-sized companies ask for résumé in Chinese along with the one in English. Contact me by email to discuss further.

Find Non-Teaching Jobs in China
zhipin.com UI. open image in new tab for better viewing.

Websites like liepin.com, lagou.com, and zhipin.com come with a real-time chat feature so that you can have a chat with the potential employer before applying.

Internship and Certificate Programs of Chinese Universities

A lot of universities in China provide a wide variety of certificate programs related to Chinese business, finance, sales, marketing, management, etc. Also, check whether your home country has an internship program in China or not.

Internships in China
Internships in China – As seen on www.britishcouncil.org

Moreover, some of these universities also offer internship programs at large scale companies which will ensure a solid non-teaching job in the future.

Here’s Why You Should Move to Chengdu

So, if you’re a fresh graduate, you can try getting enrolled in any of these universities and attend such certificate or internship programs which would later help you to get non-teaching jobs in China.

Having a Basic Knowledge Of The Chinese Language

Although this may not be compulsory all the time, it is necessary for the individuals to have a little knowledge about the Chinese language.

Individuals who can speak the Chinese language tend to get more attention from the employment givers as a result of having a basic knowledge of the language.

Chengdu Expat, Mighil
Miss that pitch!

There are tons of Chinese courses available online for free. And there numerous apps for Android and iOS that’ll help you learn Chinese. Go ahead and start learning Chinese today!

Few resources:

  1. https://www.coursera.org/learn/learn-chinese-mandarin
  2. www.bbc.co.uk/languages/chinese/
  3. https://www.duolingo.com/course/zh/en/Learn-Chinese-Online

Finding Non-teaching Jobs in China

Legends say finding non-teaching jobs in China might seem to be a pretty difficult task and is almost impossible if you don’t have connections.

Don’t listen to them. There are various kinds of companies and organizations which offer good non-teaching jobs in China.

Given below are certain tips and techniques for specifically finding a non-teaching job in China:

Enhancing The Skills and Qualifications

Companies usually want to hire only those individuals who possess not only certain degrees or certificates but also specific professional skills.

Get One-On-One Consulting on How to Find A Job in China.

Having professional skills is one of the most important eligibilities for acquiring a non-teaching job in China.

You should have a look at your resume, analyze it properly and then add all kinds of professional skills that you possess, for instance, computer programming skills, projects, achievements, etc.

Do not boast a lot on your resume. It’s not a common practice here. That being said, it is vital to possess industry-specific professional skills for employment opportunities in China.

Analyzing The Various Jobs And The Skills Required for Doing Them

You should carefully examine the job description and match them with your professional skills to make sure whether that particular job is relevant for you or not.

For instance, engineering jobs require having certain software or hardware programming skills which should definitely be a solid requirement for applying for that job. Do not waste your time by applying to the wrong ads.

Again, you can start looking for jobs in various online websites such as zhipin.com, lagou.com in order to match your eligibility with the particular non-teaching job. Instead of searching the “job title”, use industry specific keywords.

Starting a Business

It would not be a bad idea to start your own business in China. There are various opportunities available for opening a startup business in China. With the advent of time, there has been a rapid increase in the growth and development of China.

This has opened a lot of opportunities for the various aspiring entrepreneurs for starting their business in China.

Technode - A curated guide to Beijing’s startup scene, part 1
Article courtesy: technode.

If started in a proper and well efficient manner, you can accumulate a lot of income as well as profit from starting a business in China. China is one of the best places for starting a business of various products and services. There are many startup accelerators here and there’s a massive community for the same.

The Decision Of Moving To China

This is one of the essential points to remember before applying for non-teaching jobs in China.

You should make a firm decision of moving into China before applying for any job here.

How to survive your first week in China
How to survive your first week in China 😉

You should also make necessary arrangements for shifting to the country like getting a passport and the right visa.

The most important thing to do before applying for a job in China is to first spend some time in the country. Do it, this will give you a picture about how things roll here.

This would help you in gaining more information about the various kinds of non-teaching job opportunities available in China.

This would also help you to get information regarding the various kinds of eligibility, certificates, degrees, valuable skills and experience required for finding and getting non-teaching jobs in China.

So, these are some of the various tips and techniques for getting a non-teaching job in China.

China is a land of opportunities. Without a doubt, it is a superpower has emerged to be one of the most rapidly growing and developing countries of Asia.

Need Help Translating & Formatting Your CV in Chinese?

This means that there is a bulk of job opportunities available in the country for aspiring individuals.

With a little bit of planning, devotion and hard work, you would be able to find your dream job in China.

Don’t care what others say. Non-teaching jobs are abundantly available all around the world including countries like China too.

Old friends in China, Mighil
They all left China though.

So, what are you waiting for? Start today!

Go ahead… start your research and devote your time well to find a stunning non-teaching job in China.

Contact me by email if you need job consulting. 

SparrowX, Jekyll + Netlify CMS Boilerplate

Jekyll + Netlify CMS with SparrowX Theme

SparrowX is a clean, minimal, SEO-friendly Jekyll theme you can download right now. It is 100% Netlify compatible. Updated demo link – https://sparrowx.netlify.com

The SparrowX

So, I’ve been testing Netlify last week and came across Netlify CMS. The CMS is pretty easy to set up, and it’d be a wise choice for people who don’t want to spend money on hosting.

But SEO… yeah that’s a problem when it comes to Jekyll themes. Sure, you can optimize Jekyll a lot, but it’s hard for people with no development knowledge to setup Jekyll + Netlify CMS manually.

My search for a clean, minimal Jekyll theme ended when I found sparrow on GitHub. Developed by lingxz, it’s a solid theme that can be used as a boilerplate.

So I took the base theme, improved loading speed, added many features for SEO and made it to a Jekyll + Netlify-CMS boilterplate.

SparrowX Jekyll Theme for Netlify CMS
Home page screenshot.

Legacy Features

  • Fully compatible with Github Pages
  • Configurable and responsive multi layer menu, adapted from slimmenu
  • Disqus integration
  • Font Awesome icons included
  • Google analytics
  • Social sharing using rrssb
  • 404 page included
  • Typographic optimization for Chinese fonts
  • Atom feed generated with jekyll-feed
  • Pagination enabled for blog using jekyll-paginate
  • Basic SEO with Facebook Open Graph tags and Twitter cards

New Features

  • Fully compatible with Netlify CMS (one-click setup).
  • Added new custom variables like updated, headerimage, feature-img, sitemap and tag.
  • The theme renders system font-stack.
  • Compressed JS.
  • Improved load time and reduced file requests.
  • _redirects feature

Website Speed Test

How To Use This Theme

Visit this page to read the SparrowX documentation for Netlify CMS.


Just fork this repo and replace the posts with your own. Also, rename the sample poetry collection to replace it with your own collection, or just delete it if you don’t need to use collections. The example is poetry, but you can easily revamp this into essays, short stories, portfolio, or whatever your creative work is.

General configuration

Customize these values in the  _config.yml file:

title                    : "SparrowX"
description              : "A clean minimal Jekyll theme for SEO-focused writers."
favicon                  : "/assets/images/image.png" # You can use base64 encoded images.
url                      : "https://sparrowx.mighil.com" # the base hostname & protocol for your site e.g. "https://mmistakes.github.io"
baseurl                  : "" # the subpath of your site, e.g. "/blog" leave blank if no subpath

# Site Author
  name                   : "Mighil" # appears in the footer and atom feed


To activate Disqus, fill in your disqus shortname:

comments                 : true # set it to false to disable comments
  shortname              : your_shortname

Google analytics

Enable google analytics by filling in your tracking ID:

    tracking_id          : # add your google tracking id here


If you are using collections, be sure to replace this with your collection name:

    output: true
    permalink: /:collection/:title/


Currently, pagination is set to a the blog page. Unfortunately Jekyll does not yet support pagination on multiple pages.

If you want to paginate on a different page, simply change the  paginate_path value in the config file and create the relevant page.

paginate: 5 # amount of posts to show
paginate_path: "/blog/page:num/"
timezone: # http://en.wikipedia.org/wiki/List_of_tz_database_time_zones


You can change the navigation links in  _data/navigation.yml.

Front matter defaults

At the bottom of the config file, you can also set front matter defaults so that you don’t have to repeat the same front matter for every post. This is an example:

# Front matter defaults
  # _pages
  - scope:
      path: ""
      type: pages
      layout: page
      comments: false
  # _posts
  - scope:
      path: ""
      type: posts
      layout: post
      comments: true
      share: true
  # _poetry
  - scope:
      path: ""
      type: poetry
      layout: post
      share: false

How tags work

You should create specific .md files within  /tag/ before using the variable.

Other Stuff

To enhance SEO, you can add your twitter username to  _config.yml.

You can also add an image path for the  og_image value in the config file, for a default open graph sharing image. This value can be overridden in individual posts by using headerimage variable.

Your default image Netlify CMS uploads will go to /images/.

For the various config options see the sample config file for the demo site

The color schemes and fonts can also be customized through scss, by editing the relevant variable in  _variables.scss.

Getting Started on Netlify CMS

Visit this page to read the SparrowX documentation for Netlify CMS.

  • Create a Netlify account if you don’t have one.
  • Fork SparrowX. (No need enable GitHub pages since we’ll be using Netlify CMS to fetch, build the repo and point the domain.)
  • Visit https://app.netlify.com/ and click “New site from Git”

Netlify deploy settings for SparrowX

  • Select  master branch to deploy. Use  jekyll build build command and set the Publish directory as  _site.

Netlify deploy settings for Jekyll

/admin/ directory explained

The /admin/ directory contains the  index.html and  config.yml for Netlify CMS.

Here’s how the  config.yml looks for now.

name: git-gateway
branch: master

publish_mode: editorial_workflow

media_folder: "images" # Media files will be stored in the repo under images
public_folder: "/images" # The src attribute for uploaded media will begin with /images

- name: "post"
label: "Post"
folder: "_posts"
create: true
slug: "{{year}}-{{month}}-{{day}}-{{slug}}"
- {label: "Type", name: "type", widget: "hidden", default: "post"}
- {label: "Title", name: "title", widget: "string"}
- {label: "SEO Title", name: "seotitle", widget: "string"}
- {label: "Author", name: "author", widget: "string"}
- {label: "Description", name: "description", widget: "string", required: false}
- {label: "OG Image", name: "headerimage", widget: "string", required: false}
- {label: "Updated Date", name: "updated", widget: "string", required: false}
- {label: "Body", name: "body", widget: "markdown", required: false}
- {label: "Tags", name: "tags", widget: "string"}
- {label: "URL", name: "url", widget: "string"}

- name: "page"
label: "Page"
folder: "_pages"
create: true
slug: ".md"
- {label: "Type", name: "type", widget: "hidden", default: "page"}
- {label: "Title", name: "title", widget: "string"}
- {label: "SEO Title", name: "seotitle", widget: "string"}
- {label: "Description", name: "description", widget: "string", required: false}
- {label: "URL", name: "url", widget: "string"}
- {label: "Body", name: "body", widget: "markdown", required: false}

You may edit this according to your preference.

The Netlify CMS Dashboard

The dashboard looks the way as configured on  config.yml inside  /admin.

Here are the basics:

Netlify CMS dashboard

Go ahead and test SparrowX if you’ve time. Thanks for reading.

My Top 100 Movies (Updated On October 2018)

Hotel Rwanda (2004)

Cover: Hotel Rwanda (2004)

I’ll share the reviews separately when I get time. Guru (1997) and Amma Ariyan (1986) are probably the only Malayalam films I genuinely love. Guru’s story is influenced by HG Wells’ short story, The Country of the Blind. Amma Ariyan is more like a low-budget, black and white 2001 with several layers of meaning.

Without further ado, here’s the list:

  1. M
  2. The Big Lebowski
  3. Eraserhead
  4. Hotaru no haka
  5. 2001: A Space Odyssey
  6. Rashômon
  7. I’m Taraneh, 15
  8. Breakfast on Pluto
  9. No Country for Old Men
  10. Three Billboards Outside Ebbing, Missouri
  11. Guru (1997)
  12. The Thing (1982)
  13. Seven Psychopaths
  14. Marvellous (Brit TV movie)
  15. Peeping Tom
  16. High and Low
  17. Antikörper (2005)
  18. Baraka
  19. Pedar (1996)
  20. Heart is…
  21. Offside (Persian)
  22. Take Shelter
  23. A Clockwork Orange
  24. How Angels Are Born
  25. Chronos
  26. Tesis (1996)
  27. The Abominable Dr. Phibes
  28. Pulp Fiction
  29. Carandiru
  30. The Killing of a Chinese Bookie
  31. Trainspotting
  32. The Fisher King
  33. One Hour Photo
  34. Hotel Rwanda
  35. Dr. Strangelove or: How I Learned to Stop Worrying and Love the Bomb
  36. Escape from New York
  37. Down by Law
  38. Dog Day Afternoon
  39. Django (1966)
  40. Lock, Stock and Two Smoking Barrels
  41. Sin Nombre
  42. Tinker Tailor Soldier Spy
  43. My Winnipeg
  44. The Naked City
  45. Taxi Driver
  46. Man About Dog
  47. Fire (1996)
  48. Clerks
  49. Nosferatu
  50. Strangers on a Train
  51. Brute Force
  52. Gojira (1954)
  53. Memento
  54. L.A. Confidential
  55. Deep Red
  56. A Bay of Blood
  57. Dead Man
  58. Deja Vu
  59. The Seventh Seal
  60. Hunt for the Wilderpeople
  61. Rebecca
  62. Tetsuo: The Iron Man
  63. Donnie Darko
  64. Kuky se vrací
  65. Onibaba
  66. Godzilla vs. Destoroyah
  67. A Girl Walks Home Alone at Night
  68. Those Magnificent Men in their Flying Machines
  69. Nebraska
  70. Predestination
  71. Ordinary People
  72. The Drop
  73. Dancer in the Dark
  74. They Live
  75. Kwaidan
  76. Magnolia
  77. Nightcrawler
  78. Nil by Mouth
  79. The Book of Eli
  80. Trollhunter
  81. Videodrome
  82. Goodnight Mommy
  83. The Secret Life of Walter Mitty
  84. The Young Offenders
  85. Things Change
  86. Midnight Run
  87. Men Behind the Sun
  88. Sightseers
  89. Dead Man’s Shoes
  90. Casualties of War
  91. Rang De Basanti
  92. Robin Williams: Come Inside My Mind
  93. The Babadook
  94. Amma Ariyan (What I want my mother to know)
  95. Housebound
  96. Primer
  97. TPB AFK
  98. Bølgen
  99. Ravenous (2017)
  100. What We Do in the Shadows

What's faster than a VPN?

Use SocketPro. Best VPN alternative for expats in China. Just $2.41/m.

Set up a fast website in China

Hire me. I provide top-notch website optimization services for China.

Other Links

Free DigitalOcean CreditCheap VPS HostingSet up a blog in ChinaExpat life in ChengduSpeed up website for ChinaBest VPNs for ChinaHackintosh Journal Sponsor or Donate to Mighil.com.

© 2020 Site Notice. Powered by DigitalOcean & GP.