Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/planetruby/gems

Ruby Digital Identity & Metaverse Week 2022, September 5th to September 11st - 7 Days of Ruby (Profile Picture & Avatar Character Generation) Gems ++ Best of Ruby Gems Series
https://github.com/planetruby/gems

24x24 advent advent-2020 avatars blockchain business-intelligence cryptos csv datapackage gems metaverse mining opendata pixelart pixels profilepics ruby

Last synced: 12 days ago
JSON representation

Ruby Digital Identity & Metaverse Week 2022, September 5th to September 11st - 7 Days of Ruby (Profile Picture & Avatar Character Generation) Gems ++ Best of Ruby Gems Series

Awesome Lists containing this project

README

        

# Best of Ruby Gems Series

{% include thanks.html %}

(Note: You can subscribe to updates via the web feed in [XML](feed.xml).)

Do you have a Ruby gem that you'd like to write about?
We love publishing your posts. [Open an issue ticket](https://github.com/planetruby/gems/issues) or send in a pull request to get started and your article posted in the Best of Gems series on Planet Ruby.

**2022**

- [Ruby Digital Identity & Metaverse Week 2022, September 5th to September 11st - 7 Days of Ruby (Profile Picture & Avatar Character Generation) Gems](#ruby-digital-identity--metaverse-week-2022-september-5th-to-september-11st---7-days-of-ruby-profile-picture--avatar-character-generation-gems)

**2021**

- [Ruby Football Week 2021, June 11th to June 17th - 7 Days of Ruby (Sports) Gems](#ruby-football-week-2021-june-11th-to-june-17th---7-days-of-ruby-sports-gems)
- [Ruby Pixel Art Week 2021, April 19th to April 25th - 7 Days of Ruby (Graphics) Gems](#ruby-pixel-art-week-2021-april-19th-to-april-25th---7-days-of-ruby-graphics-gems)
- [Ruby Open Data Week 2021, March 6th to March 12th - 7 Days of Ruby (Open Data) Gems](#ruby-open-data-week-2021-march-6th-to-march-12th---7-days-of-ruby-open-data-gems)
- [Ruby Glimmer Days 2021, January 26th to January 29th - 4 Days of Ruby (Desktop) Gems](#ruby-glimmer-days-2021-january-26th-to-january-29th---4-days-of-ruby-desktop-gems)
- [Ruby Blockchain Week 2021, January 3rd to January 9th - 7 Days of Ruby (Crypto) Gems](#ruby-blockchain-week-2021-january-3rd-to-january-9th---7-days-of-ruby-crypto-gems)

**2020**

- [25 Days of Ruby Gems - Ruby Advent Calendar 2020, December 1st - December 25th](#25-days-of-ruby-gems---ruby-advent-calendar-2020-december-1st---december-25th)

### Ruby Digital Identity & Metaverse Week 2022, September 5th to September 11st - 7 Days of Ruby (Profile Picture & Avatar Character Generation) Gems

Welcome. The Ruby Digital Identity & Metaverse Week 2022 presents
a new Ruby profile picture / avatar character generation (graphics)
library every day from September 5th to September 11st.

Have your say! Claim a free day!

Let's highlight graphics libraries for generating
digital identity profile pictures or metaverse
avatar characters from the Ruby universe.

Do you have a Ruby gem that you'd like to write about?
We love publishing your posts. [Open an issue ticket](https://github.com/planetruby/gems/issues) or send in a pull request to get started and your article posted in the Digital Identity & Metaverse Week series on Planet Ruby.

- **Day 1 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 2 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 3 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 4 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 5 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 6 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 7 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here

### Ruby Football Week 2021, June 11th to June 17th - 7 Days of Ruby (Sports) Gems

Welcome. The Ruby Football Week 2021 presents
a new Ruby sports library every day from June 11th to June 17th.

Have your say! Claim a free day!

Let's join in and celebrate the beautiful game and the kick off of the European Football Championship (Euro 2020)
with a week long celebration of sports gems from the Ruby universe.

Do you have a Ruby gem that you'd like to write about? All sports welcome incl. what americans in the united states call football.
We love publishing your posts. [Open an issue ticket](https://github.com/planetruby/gems/issues) or send in a pull request to get started and your article posted in the Football Week series on Planet Ruby.

- [**Day 1 - fifa**](football/01-fifa.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

The World's Football Countries and Codes (Incl. Non-Member Countries and Irregular Codes)
- [**Day 2 - sportdb-models**](football/02-sportdb-models.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Football SQL Schema and ActiveRecord Models for Easy (Re)Use - Inserting the Euro 2020 Opening Match - Turkey vs Italy 0:3 (0:0) - Into the Database "by Hand"
- [**Day 3 - sportdb-readers**](football/03-sportdb-readers.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Read the European Football Championship ("Euro") 2020 Match Schedule in the Football.TXT Format Into euro.db - A Single-File SQLite Database
- [**Day 4 - football-to-sqlite**](football/04-football-to-sqlite.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Read the European Football Championship ("Euro") 2020 Match Schedule in the Football.TXT Format Into euro.db Using the Shell / Command Line
- [**Day 5 - footty**](football/05-footty.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Who's Playing Today? Print Upcoming or Yesterday's Matches for the European Football Championship ("Euro") 2020 (in 2021) Using the Shell / Command Line
- **Day 6 - :basketball::basketball::basketball: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 7 - :tennis::tennis::tennis: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here

### Ruby Pixel Art Week 2021, April 19th to April 25th - 7 Days of Ruby (Graphics) Gems

Welcome. The Ruby Pixel Art Week 2021 presents
a new Ruby graphics library every day from April 19th to April 25th.

Have your say! Claim a free day!

Let's highlight graphics libraries for pixel art in ruby (or chartreuse or magenta).

Do you have a Ruby gem that you'd like to write about?
We love publishing your posts. [Open an issue ticket](https://github.com/planetruby/gems/issues) or send in a pull request to get started and your article posted in the Pixel Art Week series on Planet Ruby.

- [**Day 1 - chunky_png**](pixel/01-chunky-png.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Turn Pixelated Billie Eilish and Lady Gaga Portraits into True 24x24 Pixel Art
- [**Day 2 - pixelart**](pixel/02-pixelart.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Mint Your Own Pixel Art Images Using Any Design (In ASCII Text) In Any Colors; Incl. 2X/4X/8X Zoom For Bigger Sizes
- [**Day 3 - mooncats**](pixel/03-mooncats.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Generate Your Own All-25 440-MoonCats In-One Image - mooncatrescue.png Composite (2400×6120)
- [**Day 4 - cryptopunks**](pixel/04-cryptopunks.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Christie's Nine Colored in Black 'n' White, Ye Olde' Sepia Tone, Blue or Futuristic False 8-Bit Color Palette - Free Punk Downloads - Right-Click and Save Image
- [**Day 5 - pixelart-characters**](pixel/05-pixelart-characters) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Generate Pixel Art Characters, Algorithmically - Case Study №1 - 8-Bit Icon Avatar Series (20x20)
- **Day 6 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here
- **Day 7 - :moyai::moyai::moyai: - Your gem (write-up) here - Unclaimed, You? - [Yes, you can!](https://github.com/planetruby/gems/issues)** - Your tag line here

### Ruby Open Data Week 2021, March 6th to March 12th - 7 Days of Ruby (Open Data) Gems

Welcome. The Ruby Open Data Week 2021 presents
a new Ruby (open data) library every day from March 6th to March 12th.

Let's join in and celebrate the (international)
[Open Data Day 2021](https://opendataday.org/)
with a week long
celebration of open data gems from the Ruby universe.

- [**Day 1 - factbook**](opendata/01-factbook.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Turn the World Factbook into Open Structured Data (e.g JSON) - Free Intelligence on the History, People, Government, Economy, Energy, Geography, Communications, Transportation, Military 'n' Terrorism for 260+ Countries
- [**Day 2 - beerdb**](opendata/02-beerdb.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Serve a Guinness Irish Stout or a Bamberg Aecht Schlenkerla Rauchbier Märzen as JSON - Free Home Delivery
- [**Day 3 - sportdb**](opendata/03-sportdb.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Read in Sport (Football) Datasets in (Structured) Text Into Your SQL Database of Choice (SQLite, PostgreSQL, etc) - World Cup, English Premier League, Spanish La Liga, Austrian Bundesliga and More
- [**Day 4 - schemadoc**](opendata/04-schemadoc.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Auto-Generate Your SQL Database Schema Documentation for Tables, Columns, Symbols A-Z, Etc - Use Your Own (Static Jekyll) Themes And More
- **Bonus!** [**Day 4 - annotate**](opendata/04-annotate.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Annotate Your ActiveRecord Models with Comments about Your Database Table Structure
- [**Day 5 - csvpack**](opendata/05-csvpack.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Work with Tabular Data Packages (.CSV Files w/ datapackage.json) using SQLite In-Memory (w/ ActiveRecord)
- [**Day 6 - worldlite**](opendata/06-worldlite.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

All the World's Countries 'n' Codes Incl. ISO (Alpha 2, Alpha 3, Num 3), FIFA, IOC, Internet Domains, Vehicle Registration Plates, 'n' More
- [**Day 7 - erd**](opendata/07-erd.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Generate Entity-Relationship Diagrams (ERD) for Your ActiveRecord Models

### Ruby Glimmer Days 2021, January 26th to January 29th (and beyond) - 8 Days of Ruby (Desktop) Gems

Welcome. The Ruby Glimmer Days 2021 present
a new Ruby (desktop) library every day from January 26th to January 29th (and beyond).

Let's highlight domain-specific languages
and desktop apps utilizing widgets and two-way data binding.

- [**Day 1 - glimmer**](glimmer/01-glimmer.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Make Desktop Apps Shine Using a Script with Two-Way Data Binding - Inside the Domain-Specific Language Engine / Construction Kit - Beware of Imitators! The Original Since 2007
- [**Day 2 - glimmer-dsl-swt**](glimmer/02-glimmer-dsl-swt.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Script Standard Widgets from the Eclipse Toolkit with Two-Way Data Binding (incl. Tables with Sorting, Filtering, Multi-Type Editing, and More) - Package Up and Ship Desktop Apps for Mac, Windows 'n' Linux
- [**Day 3 - glimmer-dsl-tk**](glimmer/03-glimmer-dsl-tk.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Script Widgets the Declarative Way (Say What, Not How) - Tk - The Best-Kept Secret and Evergreen Classic Now in v8.5 with Native Look 'n' Feel on Mac, Windows, and Linux
- [**Day 4 - glimmer-dsl-opal**](glimmer/04-glimmer-dsl-opal.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Script Web Widgets with Two-Way Data-Binding - Ruby <3 JavaScript - Thanks to Opal, the Ruby to JavaScript Source-to-Source Compiler
- [**Day 5 - glimmer_tetris**](glimmer/05-glimmer-tetris-playfield.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Glimmer Tetris - The Playfield - Get Tetris Working in One Day!
- [**Day 6 - glimmer_tetris**](glimmer/06-glimmer-tetris-score_lane.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Glimmer Tetris - The Score Lane - See Your Game Progress!
- [**Day 7 - glimmer_tetris**](glimmer/07-glimmer-tetris-high-score-dialog-menu-bar-icon.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Glimmer Tetris - High Scores, Menu, & Icon - Show Others How Good You Are!
- [**Day 8 - glimmer-dsl-libui**](glimmer/08-glimmer-dsl-libui.md) by {% avatar AndyObtiva size=20 %} [Andy Maleh](https://github.com/AndyObtiva)

Script Cross-Platform Native Controls without Installing Prerequisites - Declarative DSL Syntax That Visually Maps To GUI Hierarchy - Convention over Configuration via Smart Defaults and Automation of Low-level Details

### Ruby Blockchain Week 2021, January 3rd to January 9th - 7 Days of Ruby (Crypto) Gems

Welcome. The Ruby Blockchain Week 2021 presents
a new Ruby (crypto) library every day from January 3rd to January 9th.

Let's celebrate the 11th birthday of the world's first genesis block -
that is, the first block of a blockchain (on January 3rd, 2009) with a week long
celebration of crypto gems from the Ruby universe. New to blockchain? See the [Best of Crypto Books page »](https://openblockchains.github.io/crypto-books/)

All welcome from no coiners to bitcon austrian school of economics "I HODL! You HODL! We HODL! Number Go UP!" maximalists to [universum (with secure ruby contract programming) is the new ethereum](https://github.com/s6ruby/universum) world computer blockchainers.

- [**Day 1 - compute_unit**](blockchain/01-compute-unit.md) by {% avatar logicminds size=20 %} [Corey Osman](https://github.com/logicminds)

Collect Real Time Metrics 'n' Manage Compute Units (GPU, CPU, and ASICs) for Crypto Mining Rigs
- [**Day 2 - blockchain-lite**](blockchain/02-blockchain-lite.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Build Your Own Blockchains with Crypto Hashes. Revolutionize the World one Block at a Time!
- [**Day 3 - universum**](blockchain/03-universum.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Operate the Ponzi Governmental - Real World Case Study - Last Creditor (Before Collapse) Wins the Jackpot!
- [**Day 4 - cryptoquotes**](blockchain/04-cryptoquotes.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

I HODL, You HODL, We HODL! - BREAKING: BITCOIN JUST BROKE $22 000! - Get Free Oracle Sayings About the New New 'In Math We Trust' Ponzi Economics
- [**Day 5 - elliptic**](blockchain/05-elliptic.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Open Up 10,000,000,000 Accounts - Bank the Unbanked Using Elliptic Curve (EC) Cryptography and the Digital Signature Algorithm (DSA) - Be Your Own Bank
- [**Day 6 - kittyverse**](blockchain/06-kittyverse.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Inside the CryptoKitties 256-Bit Genome - Slice 'n' Dice Unique Bits 'n' Bytes - 48 Genes (12 Traits x 4 P, H1, H2, H3) - Build Your Own CryptoKitties Gene Reader - The Future is Meow
- [**Day 7 - centralbank**](blockchain/07-centralbank.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Print Your Own Money / Cryptocurrency - Run Your Own Federated Central Bank Nodes on the Blockchain Peer-to-Peer over HTTP
- **Bonus!** [**Day 7 - merkletree**](blockchain/07-merkletree.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Build Your Own Crypto Hash Trees - Grow Your Own Money on Trees

## 25 Days of Ruby Gems - Ruby Advent Calendar 2020, December 1st - December 25th

Welcome. The Ruby Advent Calendar 2020
presents a new Ruby library every day
from December 1st to December 25th.

- [**Day 1 - local_time**](2020/01-local-time.md) by {% avatar swanson size=20 %} [Matt Swanson](https://github.com/swanson)

Cache-Friendly and Timezone Aware Timestamp Formatting
- [**Day 2 - elastic-enterprise-search**](2020/02-elastic-enterprise-search.md) by {% avatar picandocodigo size=20 %} [Fernando Briano](https://github.com/picandocodigo)

Workplace Search, App Search, and Site Search All Together
- [**Day 3 - blazer**](2020/03-blazer.md) by {% avatar marckohlbrugge size=20 %} [Marc Köhlbrugge](https://github.com/marckohlbrugge)

Explore Your Data with SQL. Easily Create Charts and Dashboards. Business Intelligence (BI) Made Simple
- [**Day 4 - noticed**](2020/04-noticed.md) by {% avatar excid3 size=20 %} [Chris Oliver](https://github.com/excid3)

Send Notifications Immediately or for Later Delivery (in the Background) via Email, Slack, Text Message, Real-Time ActionCable in the Navbar or Many More Channels
- [**Day 5 - factory_bot**](2020/05-factory-bot.md) by {% avatar jasonswett size=20 %} [Jason Swett](https://github.com/jasonswett)

"Hey, Make Me a User with an Email and Password" - Setup Factories That Make You Fake Objects with Fake Data for Testing
- [**Day 6 - pay**](2020/06-pay.md) by {% avatar excid3 size=20 %} [Chris Oliver](https://github.com/excid3)

Accept (One-Time) Payments or Subscriptions with Strong Customer Authentication (SCA) - Billing Engine on Top of Stripe, Braintree or Paddle
- [**Day 7 - letter_opener**](2020/07-letter-opener.md) by {% avatar swanson size=20 %} [Matt Swanson](https://github.com/swanson)

Let Your Browser (Automagically) Open-Up Your Email Letters for Previewing. Stop Sending Emails to Yourself for Testing
- [**Day 8 - acts_as_tenant**](2020/08-acts-as-tenant.md) by {% avatar excid3 size=20 %} [Chris Oliver](https://github.com/excid3)

Together but Apart. House Many Tenants in One (Shared) Database. Multitenancy with Table Row-Level Database Security
- [**Day 9 - thegamesdb**](2020/09-thegamesdb.md) by {% avatar picandocodigo size=20 %} [Fernando Briano](https://github.com/picandocodigo)

Get Donkey Kong, Super Mario Bros., The Legend of Zelda 'n' More. API Client for TheGamesDB, an Open Database for Video Game Data
- [**Day 10 - happy_gemfile**](2020/10-happy-gemfile.md) by {% avatar MikeRogers0 size=20 %} [Mike Rogers](https://github.com/MikeRogers0)

Stop House Keeping Your Gemfile. (Auto-)Format Your Gems Sorted from A to Z and by Groups. (Auto-)Clean up the Clutter. Happy Gemfile Day!
- **Bonus!** [**Day 10 - parslet**](2020/10-parslet.md) by {% avatar rlgreen91 size=20 %} [Rachel Green](https://github.com/rlgreen91)

Build Your Own Language Parsers (and Lexers) with Parsing Expression Grammars (PEGs)
- [**Day 11 - boring_generators**](2020/11-boring-generators.md) by {% avatar abhaynikam size=20 %} [Abhay Nikam](https://github.com/abhaynikam)

10x Development - Speed-Up Your Coding By Automating and Generating Boring Setups
- [**Day 12 - matestack-ui-core**](2020/12-matestack-ui-core.md) by {% avatar pascalwengerter size=20 %} [Pascal Wengerter](https://github.com/pascalwengerter)

Write Web Components in an (HTML) Domain-Specific (Mini) Language (DSL) Getting (Automagically) Turned Into Modern (Reactive) Web Views on Top of Vue.js
- [**Day 13 - lumione**](2020/13-lumione.md) by {% avatar ledestin size=20 %} [Dmitry Maksyoma](https://github.com/ledestin)

Money. Money. Money. Convert NZD ($) to USD ($) or EUR (€) to JPY (¥) in Your Terminal using the European Central Bank (ECB) Reference Exchange Rates. No API Key Required. Yes, Works Offline
- [**Day 14 - que-scheduler**](2020/14-que-scheduler.md) by {% avatar hlascelles size=20 %} [Harry Lascelles](https://github.com/hlascelles)

Light-Weight (Time-Driven) Cron (Background) Job Scheduler for Que - a Job Queue Using the PostgreSQL Database with Advisory Locks for Speed and Reliability
- [**Day 15 - avo**](2020/15-avo.md) by {% avatar adrianthedev size=20 %} [Adrian Marin](https://github.com/adrianthedev)

(Auto-)Build Beautiful Admin Dashboards and Panels for Your Active Record (Database) Models (Incl. File Attachments) with Configuration in Code
- [**Day 16 - bridgetown**](2020/16-bridgetown.md) by {% avatar pascalwengerter size=20 %} [Pascal Wengerter](https://github.com/pascalwengerter)

Build Websites (and Apps) the Classic (Static) Compiler Way - Use the Latest JavaScript (Yes, Webpack Out-of-the-Box) or CSS Packages - Fast and Secure By Default
- [**Day 17 - any_login**](2020/17-any_login.md) by {% avatar igorkasyanchuk size=20 %} [Igor Kasyanchuk](https://github.com/igorkasyanchuk)

Speed Up Testing Allowing One-Click Turbologins® Without Passwords as Any User in the System. Switching User (Accounts) Made Easy (and Faster)
- [**Day 18 - dentaku**](2020/18-dentaku.md) by {% avatar jankeesvw size=20 %} [Jankees van Woezik](https://github.com/jankeesvw)

Parse and Evaluate Math (and Logical Formulas) with a Calculator in a Sandbox, Safely
- **Bonus!** [**Day 18 - henkei**](2020/18-henkei.md) by {% avatar swanson size=20 %} [Matt Swanson](https://github.com/swanson)

Read Text and Meta Data from Word, PowerPoint, and PDF Files
- [**Day 19 - quik**](2020/19-quik.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Quick Starter Template Script Wizard - The Missing Code Generator and Project Scaffolder for Gems, Sinatra, Jekyll 'n' More
- [**Day 20 - lhs and lhc**](2020/20-lhs-lhc.md) by {% avatar marcoroth size=20 %} [Marco Roth](https://github.com/marcoroth)

Easy Active Record-Like Interfaces for Accessing HTTP JSON APIs - Smarter Higher-Level HTTP Service and Lower-Level HTTP Client
- [**Day 21 - super_diff**](2020/21-super_diff.md) by {% avatar mcmire size=20 %} [Elliot Winkler](https://github.com/mcmire)

A More Helpful Way to View Differences Between Complex Data Structures in Test Spec(ification)s
- **Bonus!** [**Day 21 - addressable**](2020/21-addressable.md) by {% avatar soulcutter size=20 %} [Bradley Schaefer](https://github.com/soulcutter)

The Uniform Resource Identifier (URI) Class that Should be Standard (Incl. Templates 'n' More)
- [**Day 22 - active_record-events**](2020/22-active-record-events.md) by {% avatar pienkowb size=20 %} [Bartosz Pieńkowski](https://github.com/pienkowb)

Complete? Record Your Own Timestamps in Active Record Models with has_event Macro, Automagically
- [**Day 23 - json-next**](2020/23-json-next.md) by {% avatar geraldb size=20 %} [Gerald Bauer](https://github.com/geraldb)

Read Next Generation JSON Versions (HanSON, SON, JSONX/JSON11, Etc) with Comments, Unquoted Keys, Multi-Line Strings, Trailing Commas, Optional Commas, and More
- [**Day 24 - git_reflow**](2020/24-git-reflow.md) by {% avatar codenamev size=20 %} [Valentino Stoll](https://github.com/codenamev)

Automate Your Git Workflow for You and Your Team. Build Your Own Git (Command Line) Commands
- [**Day 25 - hexapdf**](2020/25-hexapdf.md) by {% avatar gettalong size=20 %} [Thomas Leitner](https://github.com/gettalong)

Read and Write PDF Documents. Start from Zero or Merge, Extract, Optimize and Much More

## Archive

### Ruby Gem of the Week Series

Welcome. The Ruby Gem of the Week series
presents a new Ruby library every week on Thursday.
Have your say!

- [**Week 1 - hoe**](week/01-hoe.md) - build, package and publish gems with hoe rake tasks
- [**Week 2 - slideshow**](week/02-slideshow.md) - a free web alternative to PowerPoint and Keynote in Ruby
- [**Week 3 - kramdown**](week/03-kramdown.md) - turn easy-to-read and easy-to-write wiki-style plain text in markdown into hypertext
- [**Week 4 - feedparser**](week/04-feedparser.md) - web feed parser and normalizers (for RSS 2.0, Atom, n friends)
- [**Week 5 - gli**](week/05-gli.md) - git-like interfaces for awesome command-line tools
- [**Week 6 - state_machine(s)**](week/06-state-machine.md) - model processes and work flows with finite state machines (FSM) and automata theory
- [**Week 7 - logutils**](week/07-logutils.md) - yet another (lightweight, simple) logging library in Ruby
- [**Week 8 - props**](week/08-props.md) - yet another config (INI) reader in Ruby
- [**Week 9 - html-proofer**](week/09-html-proofer.md) - auto-proofread (check and validate) your hypertext (HTML) pages
- [**Week 10 - tilt**](week/10-tilt.md) - let's build (yet another) micro web framework in less than 33 lines of code
- [**Week 11 - journaltxt**](week/11-journaltxt.md) - Blogging reinvented: Read Journal.TXT - single-text file journals - and write out (auto-build) a blog (w/ Jekyll posts etc.)
- [**Week 12 - almost-sinatra**](week/12-almost-sinatra.md) - Build your own webframework from scratch with Rack and Tilt in less than ten lines; six lines of Almost Sinatra "unobfuscated" and bundled up for easy (re)use
- [**Week 13 - webservice**](week/13-webservice.md) - Script HTTP JSON APIs (web services) in classy Sinatra 2.0-style get / post methods with Mustermann 1.0 route / url pattern matching; load (micro) web services at-runtime and more
- [**Week 14 - feedtxt**](week/14-feedtxt.md) - Read Feed.TXT - feeds in text (unicode); publish & share posts, articles, podcasts, 'n' more
- [**Week 15 - jekyll-octopod**](week/15-jekyll-octopod.md) - Publish your own radio talk shows; podcast extension for building (static) websites with Jekyll; incl. podcast web feeds with RSS enclosures and JSON Feed attachments in the OGG, MP3 or M4A audio formats. Written by [Stefan Haslinger](https://rubygems.org/profiles/informatom) {% avatar haslinger size=20 %}
- [**Week 16 - pluto**](week/16-pluto.md) - Auto-build web pages from published web feeds; planet (static) website generator
- [**Week 17 - eventdb**](week/17-eventdb.md) - Build your own What's On / What's Up event calendar from READMEs in (structured) text; read in (awesome) ruby conferences from around the world
- [**Week 18 - officetxt**](week/18-officetxt.md) - Write notes, articles, journals, presentations, websites, blogs, manuscripts, books & more; the free writer's command line tool suite works w/ any text editor; uses future-proof text formats