Open Source Contributions | ReinventONE

ReinventONE

Open Source Contributions

Open-source software changed the world, and it continues to do so. Being able to build reusable tools and modules that other people can take advantage of is remarkable. We have been creating and sharing software since 1996, over two decades today!




Ruby Gems

simple-feed
A complete social activity feed implementation for any site, that scales to millions of users, and uses Redis as the backend offering constant read time for each feed consumer.

sym
Easy-to-use, transparent to the user symmetric encryption using the AES-256-CBC cipher, and a 256 bit key. The key itself is encrypted using a password that can be conveniently cached.

ventable
A take on the "Observerable" design pattern with the Events as first class citizens.

laser-cutter
This library, given input dimension of a 3D box, generates a PDF layout for creating "snap-on" type enclosures on a laser cutter. Both library, and a command line tool. Used by the MakeABox.io site.

makeabox.io
A website for generating PDF layouts for laser cutting, using laser-cutter gem.

sym-crypt
Pure encryption routines used by sym.

ventable-statsd
A plugin for Ventable that emits event information to the StatsD data collector.

attr_memoized
An attribute memoization library that offers thread safety during the initialization of memoized attributes.

register
Register is a tiny library that can be included in a module that is to become a Façade to several application globals via auto-generated module-level methods.

warp-dir
A command line utility 'wd' allows you to bookmark frequently used folders so that you can quickly warp (cd) into them later.

dupervisor
This library converts config files between – YAML, JSON and Windows INI file format



C/C++

gomoku
An Objective-C/iOS implementation of this popular game, also known as "Five In A Row". It is played similar to Tic Tac Toe, except on a much larger board (15x15) and one must arrange five stones of the same color in a straight line. This project uses a heuristics engine written in ANSI C for speed, and uses Alpha-Beta pruning algorithm for finding the best move.

cmake-project-template
This project, dirivative of the CMake Tutorial, is aimed at jump-starting basic C++ projects with a solid CMake/C++ project structure.

kiguino
Collection of Arduino libraries and wrappers, written and used in various live projects. Most of the libraries hide some complexity and encapsulate a consistent approach to the *thing*, be that measuring a sensor, working with a rotary knob, etc.

back-seat-driver
Autonomous Arduino Robot control library in C++. Easily drive various kinds of robots without blocking or sleeping. Supports servo-based bots and DC motor based using Adafruit Motor Shield.

rotary-encoder-with-button
Easily read rotary encoder buttons that also incorporate a push button, like the Adafruit Rotary Encoder. This is a simple wrapper library for the wonderful Encoder Library that provides a couple of small additional convenient methods.



BASH

bash-it
I contributed the search functionality of this very popular Bash Framework.

pullulant
Kick start a fresh development environment on any Mac with OS-X El Capitan, with this opinionated, but modular and customizable installer. It's based on HomeBrew, SproutWrap cookbooks, and about 2K lines of Bash programming.