mruby.org
This is the Jekyll source of the mruby.org website.
Prerequisites
- Ruby — version is specified in
.ruby-version - Bundler —
gem install bundler ghCLI — required bygen:mrbdocandgen:releasedatato query the GitHub API
Local development
git clone https://github.com/mruby/mruby.github.io
cd mruby.github.io
bundle installServe the site locally with live reload:
bundle exec rake serve # or use the convenience script: ./server
Build
Runs all data generation tasks then builds the Jekyll site:
Data generation tasks
Each task can also be run individually:
rake gen:mgemdata
Regenerates _data/mgems.yml from the mrbgems registry. Do not edit this file manually.
bundle exec rake gen:mgemdatarake gen:mrbdoc
Clones the latest stable mruby release into mruby/, generates YARD API documentation, and copies it to docs/api/. Requires the gh CLI.
bundle exec rake gen:mrbdocrake gen:contributors
Generates _data/contributors.yml from the mruby AUTHORS file. Requires mruby/ to exist (run gen:mrbdoc first). The CONTRIBUTOR_THRESHOLD environment variable sets the minimum commit count (default: 10).
bundle exec rake gen:contributors CONTRIBUTOR_THRESHOLD=20 bundle exec rake gen:contributors
rake gen:releasedata
Generates _data/releases.yml from the GitHub API. Requires the gh CLI.
bundle exec rake gen:releasedataDeployment
GitHub Actions (.github/workflows/pages.yml) triggers on push to master. It runs bundle exec rake build (with GH_TOKEN set for the gh CLI calls) and deploys the result to GitHub Pages via actions/deploy-pages.
CI
The lint workflow (.github/workflows/lint.yml) runs on all pull requests and checks for spelling errors (misspell) and merge conflict markers.