This is the website for OpenNews Data Institute, built with Jekyll and deployed via GitHub Actions to AWS S3.
-
Install Dependencies:
bundle install
-
Develop: Run
jekyll serveto preview locally at http://localhost:4000 -
Workflow:
- Make changes and test locally
- Push to
stagingbranch → auto-deploys to staging environment - Merge
stagingtomain→ auto-deploys to production
-
Validate: Run
bundle exec rake checkandbundle exec rake testbefore merging tomain
This project requires Ruby and Bundler. Check if you have them installed:
ruby --version # Should match .ruby-version
bundle --version # Should be 4.0 or higherInstall dependencies:
bundle installjekyll serve # Serve locally with live reload at http://localhost:4000
bundle exec rake build # Build the site to _site/
bundle exec rake clean # Clean the build directory
bundle exec rake # Run validate_yaml, check, build, and testbundle exec rake validate_yaml # Validate YAML syntax and duplicate keys
bundle exec rake check # Check _config.yml configuration
bundle exec rake test # Test the built sitebundle exec rake lint # Check Ruby code formatting with StandardRBIf you're using VSCode or a VSCode-based editor, install these recommended extensions:
# StandardRB - Ruby linting and formatting
code --install-extension testdouble.vscode-standard-ruby
# OR use Ruby LSP (includes StandardRB plus autocomplete, go-to-definition)
code --install-extension shopify.ruby-lsp
# Red Hat YAML - validates YAML syntax and flags duplicate keys
code --install-extension redhat.vscode-yamlThen reload your editor.
Deployment happens automatically via GitHub Actions:
- Push to
staging→ Staging environment (S3 only) - Merge to
main→ Production (S3 + CloudFront invalidation)
AWS access is configured automatically via GitHub Actions using OpenID Connect (OIDC). No additional AWS credentials needed for automated deployments.
Build won't start:
bundle exec rake clean
bundle install
jekyll serveChanges not showing:
- Hard refresh browser (Cmd/Ctrl+Shift+R)
- Clear Jekyll cache:
bundle exec rake clean
YAML errors:
bundle exec rake validate_yamlRuby version mismatch:
Check .ruby-version and ensure your Ruby version matches.