Weston Ganger BCIS

Rails Software Architect / Web Developer

I am an expert in Ruby-on-Rails, jQuery, and Linux through extensive usage across many projects.

About Me

I am 28 and have a Bachelor of Computer Information Systems (BCIS) from the University of the Fraser Valley since 2014.

After this, I started a software development consultancy for myself called Solid Foundation Web Development.

Since 2014, I have been developing Ruby-on-Rails applications for internal-use at BC Hydro that manage various complex technical processes and business workflows. This involved creating many new applications and maintenance of legacy/existing Rails applications.

Since 2020, I have been working for Vericatch as a Senior Rails developer working on their products.

When I am not coding, I enjoy automobile building & driving, outdoors, camping, extreme sports, and socializing with friends and family.

If you want to know more about who I am, you are free to read my manifesto.

Profile Links

In an effort to optimize the use of my time and energy, I will no longer be maintaining boatloads of public and professional profiles. Listed here are the only public profiles I support.

Hobbies

I used to be very good at skateboarding. You can view a time arranged collection of my skate videos here.

My Articles

I try to document anything notable that I do or come across on my journeys. Here you will find a list of topics that I sometimes post on.


My Open Source Software Libraries

Here is a list of open source coding libraries that I have created and maintain. They aid in some part of the software development process. These libraries are publicly available for use within any software development project.

Crystal

NotableProjectDescriptionRolePopularity
form_builder.crFormBuilder is a library for dead simple HTML form builder for Crystal with built-in support for many popular UI libraries such as Bootstrap. I created this to address a need in the Crystal community for an HTML form builder. This appears to be the only shard dedicated solely to form building for the Crystal language so far.Creator & Maintainer
GitHub Stars

Ruby

NotableProjectDescriptionRolePopularity
active_snapshotSimplified snapshots and restoration for ActiveRecord models and associations with a transparent white-box implementation.Creator & MaintainerRubyGems Downloads
GitHub Stars
axlsx_stylerBuild clean and maintainable styles for your axlsx spreadsheets. Build your spreadsheeet with data and then apply styles later. I utilize this gem within my other software, Spreadsheet Architect. I also implemented functionality to the Ruby gem axlsx_styler to be able to add styles after the document has been generated. This is probably the most important missing features of the widely adopted axlsx spreadsheet library. I needed to ensure the projects future so I now handle all maintenance of this library as of 2018.Project Maintainer since 2018RubyGems Downloads
GitHub Stars
capistrano-precompile-chooserCapistrano plugin to precompile your Rails assets locally, remotely, or not at all provided with a very convenient default terminal promptCreator & MaintainerRubyGems Downloads
GitHub Stars
minitest_change_assertionsProvides assertions for your Minitest suite to determine if an object has been changed Creator & MaintainerRubyGems Downloads
GitHub Stars
paper_trail-association_trackingPlugin for the PaperTrail gem to track and reify associations. I spearheaded the extraction of the code for association tracking and restoration of PaperTrail versions. This enables to developers to contribute to the association related code much more easily.Project Maintainer since 2018RubyGems Downloads
GitHub Stars
paperclip_utilsA collection of processors and helper methods for easier dynamic processors and styles on your Paperclip uploads. The first gem I ever created.Creator & MaintainerRubyGems Downloads
GitHub Stars
prawn-railsPrawn Handler for Rails. I utilize this gem within my other software. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since January 2017RubyGems Downloads
GitHub Stars
protected_attributes_continuedProtected Attributes for Rails 5. I created this plugin to address a need in upgrading legacy Ruby-on-Rails applications.Creator & MaintainerRubyGems Downloads
GitHub Stars
rails_nested_layoutsDead simple nested layouts for RailsCreator & MaintainerRubyGems Downloads
GitHub Stars
rearmed-rbRearmed-RB helpful methods and monkey patches for Objects, Strings, Enumerables, Arrays, Hash, Dates, etc.Creator & MaintainerRubyGems Downloads
GitHub Stars
rearmed_railsA collection of helpful methods and monkey patches for RailsCreator & MaintainerRubyGems Downloads
GitHub Stars
RODFRODF is a library for writing to ODF output from Ruby. It mainly focuses creating ODS spreadsheets. I utilize this gem within my other software, Spreadsheet Architect. I needed to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since July 2016RubyGems Downloads
GitHub Stars
sexy_form.rbSexyForm is a library for dead simple HTML form builder for Ruby with built-in support for many popular UI libraries such as Bootstrap. This libraries code was originally written for FormBuilder.cr. I decided to port the code over to Ruby because the FormBuilder.cr design pattern turned out so awesome. I believe I have added another great form builder option to the Ruby language.Creator & MaintainerRubyGems Downloads
GitHub Stars
spreadsheet_architectSpreadsheet Architect is a library that allows you to create XLSX, ODS, or CSV spreadsheets super easily from ActiveRecord relations, plain Ruby objects, or tabular data. I created this to address a need in the Ruby community to create spreadsheets easily. I think I have succeeded in creating the most easily usable plugin for spreadsheet creation in Ruby, by making one simple and unified API for creation of all spreadsheet types. My motivation to create this new Ruby gem was to streamline the spreadsheet creation process for my clients suite of Rails applications.Creator & MaintainerRubyGems Downloads
GitHub Stars

Javascript

NotableProjectDescriptionRolePopularity
chosen-readonlyChosen Readonly is a plugin that extends Chosen Selects to add support for the readonly attributeCreator & MaintainerNPM Downoads
GitHub Stars
cordova-plugin-apprateA plugin to provide rate this app functionality into your cordova application. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since March 2016NPM Downoads
GitHub Stars
cordova-plugin-camera-previewCordova plugin that allows camera interaction from HTML code. I wanted to ensure the projects future so I now handle all maintenance of this library.Project Maintainer since April 2016NPM Downoads
GitHub Stars
input-autogrowInput Autogrow is a jQuery autogrow plugin for inputsCreator & MaintainerNPM Downoads
GitHub Stars
input-case-enforcerInput Case Enforcer is a jQuery plugin to enforce uppercase, lowercase, or capitalized inputs & textareasCreator & MaintainerNPM Downoads
GitHub Stars
js-tryJS-Try is a Javascript implementation of the try method from Rails for safe navigationCreator & MaintainerNPM Downoads
GitHub Stars
rearmed-jsA collection of helpful methods and monkey patches for Arrays, Objects, Numbers, and Strings in JavascriptCreator & MaintainerNPM Downoads
GitHub Stars
select-syncSelect Sync is a jQuery plugin to synchronize selects by selected or disabled options easilyCreator & MaintainerNPM Downoads
GitHub Stars

CSS

NotableProjectDescriptionRolePopularity
bootstrap-directional-buttonsDirectional / Arrow buttons for BootstrapCreator & MaintainerNPM Downoads
GitHub Stars
chosen-bootstrap-themeBootstrap theme for Chosen Select that actually looks like BootstrapCreator & MaintainerNPM Downoads
GitHub Stars
chosen-material-themeMaterial theme for Chosen SelectCreator & MaintainerNPM Downoads
GitHub Stars
rearmed-cssCSS Utility Classes for rapid developmentCreator & MaintainerNPM Downoads
GitHub Stars

My Open Source Contributions to Other Libraries

Listed here is a summary of various libaries that I have contributed code to. Over my career, I have submitted hundreds of pull requests. On numerous occasions I have submitted 10+ pull requests to a single library.

Library NameSubmitted Pull RequestsIssues Created
paper_trailPull Requests (13)Issues (6)
steamPull Requests (12)Issues (1)
docsPull Requests (12)
Issues (0)
alchemy_cmsPull Requests (11)Issues (2)
amberPull Requests (9)Issues (8)
frontmanPull Requests (9)Issues (6)
caxlsxPull Requests (7)Issues (4)
cordova-plugin-camera-previewPull Requests (7)Issues (3)
enginePull Requests (6)Issues (24)
wagonPull Requests (6)Issues (5)
camaleon-cmsPull Requests (5)Issues (3)
active_record-annotatePull Requests (4)Issues (4)
prismPull Requests (4)Issues (1)
quartz-mailerPull Requests (4)
Issues (0)
sudoku-generatorPull Requests (3)Issues (3)
switch_userPull Requests (3)Issues (1)
catalogPull Requests (3)
Issues (0)
axlsx_stylerPull Requests (2)Issues (7)
bizPull Requests (2)Issues (1)
paranoiaPull Requests (2)Issues (1)
activeadminPull Requests (2)
Issues (0)
activeadmin-caxlsxPull Requests (2)
Issues (0)
awesome-crystalPull Requests (2)
Issues (0)
remotipartPull Requests (2)
Issues (0)
prawn-railsPull Requests (2)
Issues (0)
bulletPull Requests (2)
Issues (0)
bootstrap-tagsinputPull Requests (2)
Issues (0)
bootstrap-modal-railsPull Requests (1)Issues (2)
fullstaq-rbenvPull Requests (1)Issues (1)
hjson-rbPull Requests (1)Issues (1)
jasper-helpersPull Requests (1)Issues (1)
administratePull Requests (1)Issues (1)
middleman-simple-thumbnailerPull Requests (1)Issues (1)
mobx-angularPull Requests (1)Issues (1)
sinatra-asset-pipelinePull Requests (1)
Issues (0)
axlsxPull Requests (1)
Issues (0)
awesome-jekyll-pluginsPull Requests (1)
Issues (0)
jekyll-assetsPull Requests (1)
Issues (0)
clearPull Requests (1)
Issues (0)
undercoverPull Requests (1)
Issues (0)
websitePull Requests (1)
Issues (0)
solidus_volume_pricingPull Requests (1)
Issues (0)
solidus_bootstraps_frontendPull Requests (1)
Issues (0)
creekPull Requests (1)
Issues (0)
ancestryPull Requests (1)
Issues (0)
parallelPull Requests (1)
Issues (0)
NativeBasePull Requests (1)
Issues (0)
clearminPull Requests (1)
Issues (0)
nvmPull Requests (1)
Issues (0)
data-confirm-modalPull Requests (1)
Issues (0)
arel_converterPull Requests (1)
Issues (0)
solidus_socialPull Requests (1)
Issues (0)
awesome-rubyPull Requests (1)
Issues (0)
best_in_placePull Requests (1)
Issues (0)
cordova-plugin-appratePull Requests (1)
Issues (0)
ngDfpPull Requests (1)
Issues (0)
ip_as_intPull Requests (1)
Issues (0)
acts_as_xlsxPull Requests (1)
Issues (0)
bootswatch-railsPull Requests (1)
Issues (0)
prax
Pull Requests (0)
Issues (4)
cdnjs
Pull Requests (0)
Issues (2)
nw.js
Pull Requests (0)
Issues (2)
raphael
Pull Requests (0)
Issues (1)
angular_devise
Pull Requests (0)
Issues (1)
roots-sass
Pull Requests (0)
Issues (1)

Software Releases

I have successfully performed hundreds of public software releases. Here is a full list by year.

ProjectVersionTechnologyURLDate
spreadsheet_architectv4.1.0Cordovahttps://github.com/westonganger/spreadsheet_architect/releases/tag/v4.1.0November 2020
spreadsheet_architectv4.0.1Cordovahttps://github.com/westonganger/spreadsheet_architect/releases/tag/v4.0.1November 2020
cordova-plugin-appratev1.7.1Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.7.1November 2020
protected_attributes_continuedv1.7.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.7.0October 2020
cordova-plugin-camera-previewv0.12.1Cordovahttps://github.com/westonganger/cordova-plugin-camera-preview/releases/tag/v0.12.1October 2020
cordova-plugin-appratev1.7.0Cordovahttps://github.com/westonganger/cordova-plugin-apprate/releases/tag/v1.7.0October 2020
paper_trail-association_trackingv2.1.1Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v2.1.1October 2020
cordova-plugin-appratev1.6.1Cordovahttps://github.com/westonganger/cordova-plugin-apprate/releases/tag/v1.6.1October 2020
cordova-plugin-appratev1.6.0Cordovahttps://github.com/westonganger/cordova-plugin-apprate/releases/tag/v1.6.0October 2020
capistrano-precompile-chooserv0.9.2Rubyhttps://github.com/westonganger/capistrano-precompile-chooser/releases/tag/v0.9.2October 2020
protected_attributes_continuedv1.6.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.6.0October 2020
axlsx_stylerv1.1.0Rubyhttps://github.com/axlsx-styler-gem/axlsx_styler/releases/tag/v1.1.0August 2020
simple_assetsv0.1.0Rubyhttps://github.com/westonganger/simple_assets/releases/tag/v0.1.0August 2020
capistrano-precompile-chooserv0.9.1Rubyhttps://github.com/westonganger/capistrano-precompile-chooser/releases/tag/v0.9.1August 2020
capistrano-precompile-chooserv0.9.0Rubyhttps://github.com/westonganger/capistrano-precompile-chooser/releases/tag/v0.9.0August 2020
paper_trail-association_trackingv2.1.0Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v2.1.0August 2020
cordova-plugin-camera-previewv0.12.0Cordovahttps://github.com/westonganger/cordova-plugin-camera-preview/releases/tag/v0.12.0June 2020
spreadsheet_architectv4.0.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v4.0.0March 2020
cordova-plugin-camera-previewv0.11.2Cordovahttps://github.com/westonganger/cordova-plugin-camera-preview/releases/tag/v0.11.2February 2020
rodfv1.1.1Rubyhttps://github.com/westonganger/rodf/releases/tag/v1.1.1January 2020
axlsx_stylerv1.0.0Rubyhttps://github.com/axlsx-styler-gem/axlsx_styler/releases/tag/v1.0.0January 2020
ProjectVersionTechnologyURLDate
spreadsheet_architectv3.3.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.3.1December 2019
prawn-railsv1.3.0Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.3.0December 2019
spreadsheet_architectv3.3.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.3.0November 2019
cordova-plugin-appratev1.5.0Cordovahttps://github.com/westonganger/cordova-plugin-apprate/releases/tag/v1.5.0November 2019
cordova-plugin-camera-previewv0.11.1Cordovahttps://github.com/westonganger/cordova-plugin-camera-preview/releases/tag/v0.11.1November 2019
protected_attributes_continuedv1.5.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.5.0October 2019
rearmed_railsv2.0.2Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v2.0.2October 2019
input-autogrowv1.1.1Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v1.1.1October 2019
prawn-railsv1.3.0Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.3.0August 2019
prawn-railsv1.2.1Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.2.1July 2019
sexy_form.rbv0.9.0Rubyhttps://github.com/westonganger/sexy_form.rb/releases/tag/v0.9.0May 2019
cordova-plugin-camera-previewv0.11.0Cordovahttps://github.com/westonganger/cordova-plugin-camera-preview/releases/tag/v0.11.0May 2019
spreadsheet_architectv3.2.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.2.1April 2019
form_builder.crv1.0.0Crystalhttps://github.com/westonganger/form_builder.cr/releases/tag/v1.0.0March 2019
rodfv1.1.0Rubyhttps://github.com/westonganger/rodf/releases/tag/v1.1.0February 2019
paper_trail-association_trackingv2.0.0Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v2.0.0January 2019
paper_trail-association_trackingv1.1.1Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v1.1.1January 2019
ProjectVersionTechnologyURLDate
protected_attributes_continuedv1.4.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.4.0December 2018
paper_trail-association_trackingv1.1.0Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v1.1.0December 2018
spreadsheet_architectv3.2.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.2.0September 2018
spreadsheet_architectv3.1.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.1.0August 2018
spreadsheet_architectv3.0.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v3.0.0July 2018
spreadsheet_architectv2.1.2Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.1.2July 2018
spreadsheet_architectv2.1.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.1.1July 2018
minitest_change_assertionsv1.0.1Rubyhttps://github.com/westonganger/minitest_change_assertions/releases/tag/v1.0.1July 2018
minitest_change_assertionsv1.0.0Rubyhttps://github.com/westonganger/minitest_change_assertions/releases/tag/v1.0.0July 2018
rearmed-rbv2.0.2Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v2.0.2July 2018
rearmed-rbv2.0.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v2.0.1July 2018
rearmed-rbv2.0.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v2.0.0July 2018
rails_nestable_layoutsv1.0.0Rubyhttps://github.com/westonganger/rails_nestable_layouts/releases/tag/v1.0.0July 2018
rearmed_railsv2.0.1Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v2.0.1July 2018
rearmed_railsv2.0.0Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v2.0.0July 2018
spreadsheet_architectv2.1.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.1.0June 2018
cordova-plugin-camera-previewv0.10.0Cordovahttps://github.com/cordova-plugin-camera-preview/cordova-plugin-camera-preview/releases/tag/v0.10.0June 2018
prawn-railsv1.2.0Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.2.0June 2018
prawn-railsv1.1.0Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.1.0June 2018
cordova-plugin-appratev1.4.0Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.4.0June 2018
paper_trail-association_trackingv1.0.0Rubyhttps://github.com/westonganger/paper_trail-association_tracking/releases/tag/v1.0.0June 2018
input-autogrowv1.1.0Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v1.1.0April 2018
ProjectVersionTechnologyURLDate
rearmed-jsv2.0.1Javascripthttps://github.com/westonganger/rearmed-js/releases/tag/v2.0.1September 2017
rearmed-rbv1.3.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.3.1September 2017
rearmed-jsv2.0.0Javascripthttps://github.com/westonganger/rearmed-js/releases/tag/v2.0.0September 2017
rearmed_railsv1.0.5Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.5August 2017
spreadsheet_architectv2.0.2Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.0.2July 2017
prawn-railsv1.0.1Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.0.1July 2017
js-tryv0.9.1Javascripthttps://github.com/westonganger/js-try/releases/tag/v0.9.1July 2017
js-tryv0.9.0Javascripthttps://github.com/westonganger/js-try/releases/tag/v0.9.0July 2017
rearmed_railsv1.0.4Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.4July 2017
Sudoku Ultrav1.0Mobile Apphttps://westonganger.com/mobile_apps/sudoku_ultraJune 2017
cordova-plugin-appratev1.3.0Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.3.0June 2017
protected_attributes_continuedv1.3.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.3.0May 2017
protected_attributes_continuedv1.2.4Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.2.4May 2017
cordova-plugin-camera-previewv0.9.0Cordovahttps://github.com/cordova-plugin-camera-preview/cordova-plugin-camera-preview/releases/tag/v0.9.0May 2017
rearmed-jsv1.0.0Javascripthttps://github.com/westonganger/rearmed-js/releases/tag/v1.0.0May 2017
input-case-enforcerv1.0.1Javascripthttps://github.com/westonganger/input-case-enforcer/releases/tag/v1.0.1May 2017
rearmed_railsv1.0.3Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.3May 2017
Tip Sidekickv1.0Mobile Apphttps://westonganger.com/mobile_apps/tip_sidekickApril 2017
Its Your Turnv1.0Mobile Apphttps://westonganger.com/mobile_apps/its_your_turnApril 2017
Calculator Sidekickv1.0Websitehttps://calculator-sidekick.westonganger.comApril 2017
input-autogrowv1.0.2Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v1.0.2April 2017
rearmed_railsv1.0.2Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.2April 2017
rearmed_railsv1.0.1Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.1March 2017
spreadsheet_architectv2.0.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.0.1February 2017
chosen-readonlyv1.0.6Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.6February 2017
chosen-readonlyv1.0.5Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.5February 2017
chosen-readonlyv1.0.4Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.4February 2017
input-case-enforcerv1.0.0Javascripthttps://github.com/westonganger/input-case-enforcer/releases/tag/v1.0.0February 2017
select-syncv1.0.1Javascripthttps://github.com/westonganger/select-sync/releases/tag/v1.0.1February 2017
rearmed-rbv1.3.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.3.0February 2017
select-syncv1.0.0Javascripthttps://github.com/westonganger/select-sync/releases/tag/v1.0.0February 2017
rearmed_railsv1.0.0Rubyhttps://github.com/westonganger/rearmed_rails/releases/tag/v1.0.0February 2017
select-syncv0.9.0Javascripthttps://github.com/westonganger/select-sync/releases/tag/v0.9.0February 2017
bootstrap-directional-buttonsv1.0.1CSShttps://github.com/westonganger/bootstrap-directional-buttons/releases/tag/v1.0.1February 2017
rails_nestable_layoutsv0.9.0Rubyhttps://github.com/westonganger/rails_nestable_layouts/releases/tag/v0.9.0February 2017
bootstrap-directional-buttonsv1.0.0CSShttps://github.com/westonganger/bootstrap-directional-buttons/releases/tag/v1.0.0February 2017
rearmed-jsv0.9.0Javascripthttps://github.com/westonganger/rearmed-js/releases/tag/v0.9.0February 2017
chosen-bootstrap-themev1.0.5CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.5February 2017
spreadsheet_architectv2.0.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v2.0.0January 2017
input-autogrowv1.0.1Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v1.0.1January 2017
input-autogrowv1.0.0Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v1.0.0January 2017
input-autogrowv0.9.1Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v0.9.1January 2017
rearmed-rbv1.2.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.2.1January 2017
prawn-railsv1.0.0Rubyhttps://github.com/cortiz/prawn-rails/releases/tag/v1.0.0January 2017
ProjectVersionTechnologyURLDate
spreadsheet_architectv1.4.8Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.8December 2016
rodfv1.0.0Rubyhttps://github.com/westonganger/rodf/releases/tag/v1.0.0December 2016
spreadsheet_architectv1.4.7Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.7November 2016
Craig-Getterv1.0Websitehttps://craig-getter.westonganger.comSeptember 2016
protected_attributes_continuedv1.2.3Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.2.3September 2016
protected_attributes_continuedv1.2.2Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.2.2September 2016
protected_attributes_continuedv1.2.1Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.2.1September 2016
protected_attributes_continuedv1.2.0Rubyhttps://github.com/westonganger/protected_attributes_continued/releases/tag/v1.2.0September 2016
input-case-enforcerv0.9.0Javascripthttps://github.com/westonganger/input-case-enforcer/releases/tag/v0.9.0September 2016
rearmed-rbv1.2.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.2.0September 2016
input-autogrowv0.9.0Javascripthttps://github.com/westonganger/input-autogrow/releases/tag/v0.9.0August 2016
rearmed-cssv1.0.2CSShttps://github.com/westonganger/rearmed-css/releases/tag/v1.0.2August 2016
rearmed-cssv1.0.1CSShttps://github.com/westonganger/rearmed-css/releases/tag/v1.0.1August 2016
rearmed-rbv1.1.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.1.1August 2016
chosen-readonlyv1.0.3Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.3July 2016
chosen-bootstrap-themev1.0.4CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.4July 2016
chosen-bootstrap-themev1.0.3CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.3July 2016
chosen-bootstrap-themev1.0.2CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.2July 2016
chosen-bootstrap-themev1.0.1CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.1July 2016
cordova-plugin-appratev1.2.0Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.2.0July 2016
rearmed-cssv1.0.0CSShttps://github.com/westonganger/rearmed-css/releases/tag/v1.0.0July 2016
rodfv0.3.7Rubyhttps://github.com/westonganger/rodf/releases/tag/v0.3.7July 2016
chosen-material-themev1.0.0CSShttps://github.com/westonganger/chosen-material-theme/releases/tag/v1.0.0July 2016
chosen-bootstrap-themev1.0.0CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v1.0.0July 2016
rearmed-rbv1.1.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.1.0July 2016
rearmed-rbv1.0.3Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.0.3June 2016
rearmed-rbv1.0.2Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.0.2June 2016
rearmed-rbv1.0.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.0.1June 2016
rearmed-rbv1.0.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v1.0.0June 2016
rearmed-rbv0.9.1Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v0.9.1June 2016
spreadsheet_architectv1.4.6Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.6May 2016
spreadsheet_architectv1.4.5Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.5May 2016
spreadsheet_architectv1.4.4Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.4May 2016
spreadsheet_architectv1.4.3Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.3May 2016
spreadsheet_architectv1.4.2Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.2May 2016
spreadsheet_architectv1.4.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.1May 2016
chosen-bootstrap-themev0.9.0CSShttps://github.com/westonganger/chosen-bootstrap-theme/releases/tag/v0.9.0May 2016
rearmed-rbv0.9.0Rubyhttps://github.com/westonganger/rearmed-rb/releases/tag/v0.9.0May 2016
spreadsheet_architectv1.4.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.4.0April 2016
spreadsheet_architectv1.3.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.3.0April 2016
spreadsheet_architectv1.2.6Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.6April 2016
chosen-readonlyv1.0.1Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.1April 2016
chosen-readonlyv1.0.0Javascripthttps://github.com/westonganger/chosen-readonly/releases/tag/v1.0.0April 2016
Chuck Norris Jokes & Factsv1.0Mobile Apphttps://westonganger.com/mobile_apps/chuck_norris_jokes_and_factsMarch 2016
Super Dice Rollerv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_dice_rollerMarch 2016
Random Joke Generatorv1.0Mobile Apphttps://westonganger.com/mobile_apps/random_joke_generatorMarch 2016
Coders Logv1.0Websitehttps://coders-log.westonganger.comMarch 2016
spreadsheet_architectv1.2.5Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.5March 2016
spreadsheet_architectv1.2.4Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.4March 2016
spreadsheet_architectv1.2.3Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.3March 2016
spreadsheet_architectv1.2.2Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.2March 2016
spreadsheet_architectv1.2.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.1March 2016
spreadsheet_architectv1.2.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.2.0March 2016
spreadsheet_architectv1.1.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.1.0March 2016
spreadsheet_architectv1.0.4Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.0.4March 2016
cordova-plugin-appratev1.1.12Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.1.12March 2016
cordova-plugin-appratev1.1.9Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.1.9March 2016
cordova-plugin-appratev1.1.8Cordovahttps://github.com/pushandplay/cordova-plugin-apprate/releases/tag/v1.1.8March 2016
spreadsheet_architectv1.0.3Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.0.3February 2016
spreadsheet_architectv1.0.2Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.0.2February 2016
spreadsheet_architectv1.0.1Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.0.1February 2016
spreadsheet_architectv1.0.0Rubyhttps://github.com/westonganger/spreadsheet_architect/releases/tag/v1.0.0February 2016
Snow Vision Camerav1.0Mobile Apphttps://westonganger.com/mobile_apps/snow_vision_cameraJanuary 2016
Super Mega Quizv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_mega_quizJanuary 2016
ProjectVersionTechnologyURLDate
Word Jumblerv1.0Mobile Apphttps://westonganger.com/mobile_apps/word_jumblerDecember 2015
Super Mirror HDv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_mirror_hdNovember 2015
Super Millionaire Quizv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_millionaire_quizNovember 2015
Official Beer Pong Rulesv1.0Mobile Apphttps://westonganger.com/mobile_apps/offical_beer_pong_rulesOctober 2015
Super Farm Clickerv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_farm_clickerOctober 2015
Super Word Twisterv1.0Mobile Apphttps://westonganger.com/mobile_apps/super_word_twisterSeptember 2015
What Rattles My Cagev1.0Websitehttps://whatrattlesmycage.westonganger.comSeptember 2015

Public Projects

Listed here are some simple publicly available personal projects I have created. Note: Client applications are not public so they are not listed here.

ProjectApp DescriptionDev StoryLive Release Date
Calculator SidekickProviding free online calculators for any purpose.I wanted an easy way to create online js calculators and turn them into mobile apps. So I did exactly that and created this website. I created a mobile app called "Tip Sidekick" which grabs the calculator and embeds it within the application. It works very well, however unfortunately I abandoned the idea after making the first one. This is simply because I lost general interest in mobile apps and app stores as its a constant moving target. I now have decided to to only use the web if ever possible.April 2017
Coders LogA collection of community link-log about different code topics. If you have an article to share, created a library, or any other news, You can share it with the coding community.This website was built as a clone of one of my favourite websites, RubyFlow. At the time I was looking for a place to post my Linux and Cordova articles to but could not find any appropriate places. So I created this website with most every relevant programming language.March 2016
Craig-GetterCraig-getter is a Craigslist scraper and aggregator.I built this application for my own needs to scrape and aggregate Craigslist for multiple searches so that I can catch the best deals. It also helps filter out all the things I have already seen or are not relevant. So far it has proven to work extremely well for me, maybe too good even.September 2016
What Rattles My CagePost your rants and raves about the things that just rattle your cage!I wrote this application to teach myself how to write a Rails JSON API and AngluarJS 1.x applications. Was a really good learning experience.September 2015

My Mobile Apps

Here is a list of public mobile apps I have created over the years. I developed all of these for my own usage and to explore the development world of Cordova and Ionic (v1).

These used to be on the Apple App Store and Google Play Store. They are no longer available because I lost interest in updating and paying for app store based mobile apps as they are a constant moving target. That being said, I think that Cordova's function over fashion approach is good enough for most business use cases or to simply have a presence in the app stores.

ProjectApp DescriptionDev StoryLive Release DateImage
Chuck Norris Jokes & FactsGet a random jokes or facts about the man himself, Chuck Norris.Chuck Norris is rad and these jokes are funny. While creating Random Joke Generator I thought it might be a good idea to create a more specific version of the application. The Chuck Norris Joke dataset large and perfect for this.March 2016
Its Your TurnSimply press a button and the app will tell the next person to take their turn This application was developed during one evening when attempting to play a slightly boring game. We kept forgetting whos turn it was and who had the dice. I decided it might be interesting to create an app to manage the turns for the game. Once the turn is changed then a sound and/or text-to-speech voice will notify you. I created the application in both React Native and Ionic v2. I settled with Ionic 2.x for the final release.April 2017
Official Beer Pong RulesThe Definitive Beer Pong Rules app. Contains Word Series of Beer Pong rules, West Coast rules, East Coast rules, House Rules, and Fun Rules.At every party with beer pong happening there are always people arguing about the rules. I created this app to solve this exact problem. To no surprise, even after introducing it, the arguing didnt stop.October 2015
Random Joke GeneratorGet a random joke at the click of a button. Over 15000 jokes to get you laughing.I wanted to make an fun joke application to pass the time when in line or bored. So I compiled a source database of jokes from around the web and created and Rails API to access it. I then created a mobile app to download one joke at a time randomly. I use this application all the time when I am bored looking for a quick laugh or joke. Its a hoot.March 2016
Snow Vision CameraSee the world in snow vision! Use your camera to see an augmented reality with falling snow.After creating the application Super Mirror HD. I decided if I could actually do something useful or fun. This was the idea I came up with. Very simple and fun project that worked well using only jQuery effects.January 2016
Sudoku UltraChallenge your mind with this fun and addictive game of sudoku.After the success of my word game, Super Word Twister, I decided people like mind games. I knew my Nana really liked Sudoku so I thought it would be useful to a few people if I created a mobile application with this game.June 2017
Super Dice RollerThe definitive dice rolling app. Swipe, Touch, or Shake to roll the dice. Visual and Voice responses.I built this application to address a need. When playing a board game we kept forgetting who had the dice. This way we could leave the phone on the table and use a gesture to activate the digital dice roll.March 2016
Super Farm ClickerBuild your crew and expand your farm in this extensive incremental/clicker game.The second most successful app I ever built. The reason for this apps success is that clicker games are highly addictive due to the RPG elements they play on. I have always been a fan of RPG video games so naturally this was a fun project for me.October 2015
Super Mega QuizA fun quiz and trivia game. Over 300 questions to answer.A clone of my other application, Super Millionaire Quiz, with a new set of questions.January 2016
Super Millionaire QuizA fun quiz and trivia game based on the game show Who Wants to be a Millionaire.I thought this was a good game idea that would fit well within the idea of an Ionic / Angular application. I found a few data sets to work with and whipped this game up.November 2015
Super Mirror HDThe definitive mirror to go app. Super Mirror HD allows you to check out your makeup, hair, or face.One day my Mom and Aunt said to me, "oh my gosh, it would be such a good idea to create an app thats like a mirror." I laughed and replied saying that you could just open the camera app. I then thought it might be a interesting application to create and would be funny to see how many gullible people would download this, which is 5000+ as of August 2017.November 2015
Super Word TwisterA fun and addictive text twisting game.The first mobile app I ever built, and the most successful. I recieved a free $500 Amazon App Store ads promotion which provided a bunch of initial traffic and downloads. I built this using Ionic / AngularJS 1.x. I created this application as a clone of a fun test twisting game I used to play a lot on my PSP. This project was really fun for me as I have always enjoyed word games.September 2015
Tip SidekickSimple and Easy Calculator for calculating tip amount and splitting the bill.This is the first and only application I created to complement my website, calculator-sidekick.westonganger.com The idea was to create a calulator on a webpage and then be able to utilize these within a dead simple cordova mobile application and appear native at the same time. The idea worked perfectly however I lost interest in creating each and every mobile app so I stopped with this one.April 2017
Word JumblerA fun text twisting game. Hundreds of words to spell. Hi-Scores to brag to your friends.A clone of my first game, Super Word Twister.December 2015