rubberduckcast.com

rubberduckcast.com

Jekyll codebase for the Rubber Ducking podcast

Rubber Duck Cast

Working on this repo requires Ruby, Bundler, nodejs with npm and grunt-cli.

Getting Started

  1. Clone this repo
  2. Ensure Ruby is installed
  3. Ensure Bundler is installer
  4. Ensure NodeJS and NPM are installed
  5. Ensure the grunt-cli node module is installed globally
  6. Run npm install
  7. To build the site run grunt

Grunt Tasks

  • grunt test Runs jscs and jshint checks on the Gruntfile itself, and all configured tasks in build/tasks
  • grunt css Compiles styles/index.styl into dist/style.css using the stylus preprocessor
  • grunt dev Serves the content of _site on localhost:4000 then runs both a watch task to compile stylus files AND jekyll serve so all site modifications are automatically pushed to _site
  • grunt The default task runs test, css, and jekyll:build tasks outputting the static site into _site
  • grunt deploy-to-prod Runs the default task then attempts to push to the site's S3 bucket using AWS CLI which must already be locally installed and configured (which is outside the scope of this project).
  • grunt push-episodes Pushes the contents of the ignored _audio directory to the episodes S3 bucket with public-read access using the AWS CLI
  • grunt gen-stats Runs S3 log analyzer on download logs into the ignored _s3_logs directory and generates report.html for stats.
  • grunt oggify Uses ffmpeg in the ignored _audio directory to generate complimentary ogg files for any m4a file present.
jekyll logo

Want a Jekyll website built?

Hire a Jekyll developer