How did I build this personal website? I found a blog post (My experience in building a personal academic website) written by Jordi Pont-Tuset, forked Jordi’s GitHub repository and made mine. That is it:)
Basically, the website is built by Jekyll, a static site generator, using the Minimal Mistakes theme. In the following, I will briefly go through the steps (on my RPM-based OS) to build a GitHub page. You may read the Jordi’s blog post for more details.
1. Run the website locally
# Clone the repository
git clone https://github.com/jponttuset/jponttuset.github.io homepage && cd homepage
# Install Jekll
gem install jekyll
# Run the website
bundle install
bundle exec jekyll serve
Now you should see the website at localhost:4000
. Chances are you encounter some issues. Two basic ones will be fixed using the following commands and the rest with the help of StackOverflow:)
# Fix the dependency error
bundle install --path vendor/bundle
# Kill jekyll process
ps aux |grep jekyll |awk '{print $2}' | xargs kill -9
2. Customize your website
There is a ton of different things you can do to customize your website. It is a good idea to first get familiar with the structure of the Minimal Mistakes theme in which _layouts
, _includes
, and _config.yml
are the most important folders/files. In addition, you can look into the GitHub toturial on building a personal website. Finally, you can check out this pull request for my initial updates on top of the sample website.
3. Run the GitHub page
Once you are happy with your customized website, create a GitHub repository named username.github.io
(where username
is your actual GitHub username), and push the local website to this repository. In just a few seconds, your website is up and running at username.github.io
. You can learn more about GitHub pages here.
Easy-to-mantain publications page
Per Jordi’s suggestion, you can easily collect and organize your publications using a free cross-platform tool called JabRef. That helps you to directly export publications from JabRef to your webpage using PubListX. A quick setup is as follows:
Step1: Install JabRef
$ dnf install jabref
Step2: Download and extract PubListX
$ wget https://github.com/fitheart/PubListX/archive/master.zip && unzip master.zip
Step3: Add PublistX to JabRef
- Open JabRef and select menu Options | Manage custom exports.
- Click Add to create a new export.
- Enter PubListX as the 'Export format name' and .html as the 'File extension'.
- Click Browse and select file publistx.layout in the PubListX directory as the main layout file.
- Click 'Save exporter' then OK. Now if you select menu File | Export, PubListX should be available in the export list.