This is a list I’ve kept of my open source contributions. It feels great to collaborate back to the projects that save me time and/or make my job easier.
Ruby/Rails
rails/rails
Ruby on Rails
- #27990 Use of ParameterFilter no longer forces
request.filtered_parameters
class to be Hash: Improves consistency of API - #30535 Ignores a default subclass when
becomes(Parent)
: Fixes: #30399 STI field with default makes it impossible to get an instance of the parent
rails-api/active_model_serializers -> leonelgalan/rspec-active_model_serializers
ActiveModel::Serializer implementation and Rails hooks Simple testing of ActiveModelSerializers via a collection of matchers.
- #1947 Adds :have_valid_schema RSpec matcher: Closed, abstracted to its own gem
- #2046 Fixes bug in Test::Schema when using filter_parameters
- #1 Fixes broken test
activeadmin/activeadmin
The administration framework for Ruby on Rails applications.
- #4216 Allows Hash-like objects to be used in attributes_table: Fixed bug reported by me
alexreisner/geocoder
Complete Ruby geocoding solution.
roidrage/lograge
An attempt to tame Rails’ default policy to log everything.
ankane/groupdate
The simplest way to group temporal data
- #115 Fixes error when using to
group_by_*
- #151 Fixes time_range for quarter/last combination
- #175 Consistency between day_start and week_start: Merged in 361905e
58bits/cloudfront-signer -> leonelgalan/cloudfront-signer
Ruby gem for signing AWS CloudFront private content URLs and streaming paths.
- #5 Separates url building and signing
- #6 Adds notice to README
- #1 Adds license to gemspec
- #2 Refactor/3.x: Major rewrite
- #4 Fixes policy generation when specifying ip_range
- #11 Support frozen strings
binarylogic/settingslogic
- #63 Adds an environment_vars_fallback to the Settingslogic class: Closed, author recommended other gem that already had the feature I was proposing.
Javascript
Resize Charts
This add-on allows you to resize, with precision, the charts in the active sheet. Type the desired width and height in inches or pixels, select a resolution and press “Resize All”
Google Sheets Add-on, published in the G Suite Marketplace
leonelgalan/asdfjkl
Determines if text contains gibberish.
I publish my first package to NPM
Observable
Observable is the magic notebook for exploring data and thinking with code.
Some of my best Javascript experiments are hosted here as Observable Notebooks. Including:
- A US-Canada Map with GeoJSON
- A Multi-Hued Color Scale generator using D3.
- An experiment embedding web fonts into SVGs
Other Repl
pbeshai/use-query-param
React Hook for managing state in URL query parameters with easy serialization.
storybookjs/addon-jsx
This Storybook addon show you the JSX / template of the story.
Developer Tools
Ansible
zzet/ansible-rbenv-role
Ansible role for installing rbenv.
- #22 Fixes system rbenv ruby install: Fixed regression
- #25 Simplify rbenv_users interface: Username only: Improved API
ANXS/postgresql
Fairly full featured Ansible role for Postgresql.
- #62 Merges user privileges into correct role: Fixed regression
smashingboxes/taperole
🕹 Application Server Provisioning and Deployment with Ansible
- #23 Adds memcached: Added features
- #32 Remove vendored roles from Repository: Cleanup
- #36 Don’t Install node.js from source: Major Rewrite
- #38 Chore/fix vagrant: Cleanup/improves dev tools
- #42 Installer updates: API Changes
leonelgalan/ansible-node
Installs nodejs and the latest npm.
Homebrew
caskroom/homebrew-cask
A CLI workflow for the administration of Mac applications distributed as binaries
Static Analysis Tools
leonelgalan/linter-markdownlint
Atom Linter for markdown using markdownlint/mdl
troessner/reek
Code smell detector for Ruby
atom/language-ruby-on-rails
Ruby on Rails package for Atom
AtomLinter/linter-codeclimate
An Atom Linter plugin for the Code Climate CLI
slim-template/language-slim
Slim syntax package for Atom.
gilbarbara/codeclimate-stylelint
A Code Climate engine for the mighty, modern CSS linter
Photo by Fabian Grohs | “Coder Working on Macbook Pro”