StonePath Workflow means different things in different domains; a photographer thinks of picture processing workflow in a much different way than an office clerk thinks of the tasks for filling out paperwork. At their heart though, both involve a work item with specific tasks that need to be completed, traveling through states as that work is done. Based on our experience building workflow applications for the U.S. State Department, we abstracted these workflow patterns in Stonepath - A collection of stateful workflow concepts for Ruby on Rails. This is useful for implementing workflow to automate a repeatable business process into your application.
See StonePath on Github.
When working with StonePath, we are often integrating into a multi-role office environment where we encounter rules like "The data entry clerk cannot see data once it has gone into legal review". StoneWall adds these kinds of access rules to StonePath-defined workflows.
See StoneWall on Github.
FontAwesome is a project to create a 'dingbats'-like font specifically for modern web applications, allowing developers to rapidly add iconography to their applications quickly, and without resulting in slower applications due to many image-loads. FontAwesome-Rails is a packaging of this web font for the Rails Asset Pipeline, allowing it to be easily added, versioned, and upgraded as newer versions are released.
See FontAwesome Rails on Github.
Have you ever needed to calculate time based on business hours and days? This gem allows you to define your business hours, days and holidays, then gives you time calculations based on the business time. For example: 8.business_days.from_now or 10.business_hours.ago
See Business Time on Github.
Despite web applications being globally distributed, timezone support within existing web standards is weak or non-existent. There is no 'standard' way for a web application to determine the time zone of the connecting client, so operations like "send me an email at 5pm" become difficult or impossible... after all, when your server is in the cloud, its 5pm someplace every hour! TZ_Magic is a ruby gem that standardizes both timezone detection in the browser and the way that information is communicated to the server, so your application code only has to worry about one standardized timeone (like UTC).
See tz_magic on Github.
See FullCalendar Rails on Github.
For technical reasons, it is often necessary for Models in Rails application to be aware of the current user; whenever the business logic depends on the current user's role, for instance, it might make sense to have that logic where it can be unit tested and enforced for mechanisms other than web applications. (reporting, command line, or desktop applications, for instance). Sentient User is a ruby gem that makes the Model layer of your application aware of the current user of the application, so these rules can be written in the model layer, where they belong.
See Sentient User on Github.
Countless times we have solved problems for clients using Rake, email, various databases, some of our other gems, and a little bit of ruby glue as a 'back office automation' task. We've done this so often that we started the 'Rake Application Starter Kit' for our own internal use so these projects could have a consistent foundation. After showing to several people who said "can you share that with us?", we decided to give it back to the ruby community at-large. The readme and code comments are particularly thorough - feel free to use it as the start of our own internal ruby backoffice automation projects.
See RASK on Github.