I forked the theme from dark-poole with the goal of hosting a "simple" site that I can publish to and write using markdown files and hopefully as little fuss as possible.
To serve locally use:
bundle exec jekyll serveOn every change to the main branch the Github action should 🤞 run to deploy the latest version of the site to the gh-pages branch.
- Install Homebrew
- Install
chruby - Install
ruby-install- I've upgraded to use Ruby 3.3.0
- Use chruby for managing the local version of Ruby
Poole is built on Jekyll and uses its built-in SCSS compiler to generate our CSS. Before getting started, you'll need to install the Jekyll gem and related dependencies:
$ gem install jekyll jekyll-gist jekyll-sitemap jekyll-seo-tagYou must have bundler installed. If you already have bundler installed, skip this step.
# Update Rubygems
$ gem update --system
# Update bundler
$ gem install bundlerNow install the bundle:
$ bundle installTo see your Jekyll site with Poole applied, start a Jekyll server. In Terminal, from /dark-poole (or whatever your Jekyll site's root directory is named):
$ bundle exec jekyll serveAh, but say you want to include draft posts. Add this build flag:
$ bundle exec jekyll serve --draftDrafts should be added to the _drafts folder without a date as a prefix in the filename.
Open http://localhost:4000 in your browser, and voilà.
You can use GitHub Pages to host your project.
- Fork this repo and switch to the
gh-pagesbranch. - If you're using a custom domain name, modify the
CNAMEfile to point to your new domain. - If you're not using a custom domain name, modify the
urlin_config.ymlto point to your GitHub Pages URL. Example: for a site hosted atusername.github.io, usehttp://username.github.io. - If you want to use your repo name as a base url, set the
urlto your repo link and set thebaseurlto your repo name in_config.yml. Example: for site hosted onhttps://username.github.io/dark-poole, seturlashttps://username.github.io/dark-pooleandbaseurlas/dark-poole. - Done! Head to your GitHub Pages URL or custom domain.
No matter your production or hosting setup, be sure to verify the baseurl option file and CNAME settings. Not applying this correctly can mean broken styles on your site.
If you are using a base url for your site, (for example, hosted on https://username.github.io/dark-poole) you have to make some changes to get jekyll-pagination to work correctly:
In _config.yml, add this line:
paginate_path: "/baseurl/page:num/"In archive.md, add {{ site.baseurl }} before {{ post.url }}
<!-- Add "{{ site.baseurl }}" -->
<li><a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a></li>In index.html, remove the prepend::
<!-- Remove "prepend:" in "prepend: relative_url" -->
<a
class="pagination-item newer"
href="{{ paginator.previous_page_path | relative_url }}"
>Newer</a
>CSS is handled via Jeykll's built-in Sass compiler. Source Sass files are located in _sass/, included into styles.scss, and compile to styles.css.
You can easily customize the navbar by tweaking the _config.yml file. Simply change the title and url of each of the nav elements, or add more. The order will be preserved in the site.
nav:
- title: Blog
url: /posts
- title: About
url: /aboutI love the intent behind Quoteback and my goal is to use them whenever I cite someone else.
Instead of remembering the embed setup for each post there's now an include _includes/quoteback.html. The inputs are:
- title
- author
- sourceURL
- quote
Here's an example usage:
{% include quoteback.html title="Nonzero: The Logic of Human Destiny" author="Robert Wright" sourceURL="https://en.wikipedia.org/wiki/Nonzero:_The_Logic_of_Human_Destiny"
quote="... over the long run, non-zero-sum situations produce more positive sums than negative sums, more mutual benefit than parasitism. As a result, people become embedded in larger and richer webs of interdependence.
<br><br>
This basic sequence - the conversion of non-zero-sum situations into mostly positive sums - had started happening at least as early as 15,000 years ago. Then it happened again. And again. And again. Until - voila - here we are, riding in airplanes, sending emails, living in a global village." %}I made a simple include for Vimeo videos.
{% include vimeo.html videoID="1043727748" vimeoh="dda654edc3" %}The h parameter appears to be important for Vimeo to be able to render the embed.
I'd like to try writing some interactive explorable explanations. The main tools I've looked at are Curvenote and idyll. I used idyll-embed to create the first explorable on the site - Exploring the Drake Equation.
Something broke again. Did I / you / me remember to:
Did you set the version of ruby using chruby?
chruby 2.7.2Did you try to install Ruby on a Mac with Apple silicon and read through several blog posts? Read this and update ffi https://www.moncefbelyamani.com/how-to-install-homebrew-and-ruby-on-a-mac-with-the-m1-apple-silicon-chip/
(This might be a poor choice for the future...) The maximum width of the stylesheet right now is 672 pixels so I've been resizing images down for faster loading and to limit the bloat in the repo.
Open sourced under the MIT license.
<3