They are many options how to generate PDF versions of your invoices in Ruby and the ones that do not come with system dependencies are often built on top of Prawn library. InvoicePrinter is no different. Here is a short announcement on what it is (and aims to be) and what not.
InvoicePrinter: generate PDF invoices and receipts in seconds with pure Ruby
Building and consuming JSON API with Crystal
When I firstly heard about Crystal language, I got really exited. It fixes exactly four problems I sometimes have with Ruby; types, speed, memory consumption and compilation to machine code. After many months silently following its development I decided to try it out for a simple program I need — a simple server standing between Google Maps API and my application to catch the geocoding responses in local Redis instance not to hit the limit imposed on using the service (plus, Google suggests you to do it anyway).
Testing PDF generation in Ruby
If you have ever generated PDFs in your Ruby apps you were probably also asking yourself how do I test that the PDF turns out the way I want?
Allowing NGINX to use a Puma/Unicorn UNIX socket with SELinux
If you are deploying Ruby web application on Fedora with Puma (or other) application server and NGINX web server as a proxy, you might encounter SELinux forbidding NGINX to use the Puma socket. Here is how to create a SELinux policy module that you can use during your server provisioning.
Setting up git push code deploy to remote server
If you are setting up your own remote server/VPS you will probably like to make it easy to deploy your code with simple git push. In other words you want to setup something that providers such as Heroku or OpenShift let you do to deploy your code. Luckily, it’s very easy!