This repository contains the source code for the GitHub Pages blog hosted at metasimple.org (mrrodriguez.github.io).
This project explicitly requires Ruby to run the site locally.
- Ruby Version: The expected version is defined in the
.ruby-versionfile (currently3.3.6). Environment managers likemise,rbenv, orrvmwill automatically detect this and switch to the correct version. - Dependency Management: Gems are managed via Bundler. The
Gemfileusesruby RUBY_VERSION, which tells Bundler to expect the Ruby version that is currently active (set by.ruby-version). - GitHub Pages Sync: We use the
github-pagesgem to mirror the environment used by GitHub Pages' automated build system. This ensures that the local build behaves exactly like the live site.
The site is built with Jekyll. To preview changes locally with live reloading, follow these steps:
Make sure you have Ruby and Bundler installed. If using mise, ensure you have installed the Ruby version specified in .ruby-version (mise install).
-
Install dependencies:
bundle install
-
Run the local development server (with live reloading):
bundle exec jekyll serve --livereload -
View the site: Open your browser and navigate to
http://127.0.0.1:4000/. When you save changes to posts or layouts, the browser will automatically refresh.
To keep the local environment up-to-date with the latest GitHub Pages versions and security patches, you should periodically update the gems.
-
Update the GitHub Pages gem (and other dependencies):
bundle update
To only update the GitHub Pages gem, you can run
bundle update github-pages. -
Commit the new lockfile: After upgrading,
Gemfile.lockwill have changes. Commit these changes to ensure the locked versions are tracked in Git.
Note: This README.md file is explicitly excluded in _config.yml so it will not be generated as a page on the live site.