Drawers

screenshot of Drawers
rails

Group related classes together. No more silos. A solution to rails dystopia.

Overview

The DrawersGroup gem is a valuable addition for developers working with large Rails applications. It addresses a common issue where related files, such as controllers, serializers, and operations, are scattered across different folders, complicating navigation and maintenance. By providing an optional structure that allows for grouping like objects together, DrawersGroup facilitates a more organized and efficient development process without imposing drastic changes on your existing codebase.

With its clear convention for structuring resources, this gem streamlines the way classes are organized, enhancing the autoloading functionality of Rails and enabling developers to incrementally migrate to the new structure. Its implementation is straightforward and does not require a complete overhaul of your application, making it an appealing choice for developers seeking improved resource management.

Features

  • Grouped Classes: Organizes related files, reducing clutter and improving navigation by placing them in structured directories based on type and namespace.
  • Optional Migration: Allows developers to gradually transition their applications to the new structure without any immediate pressure or extensive rewrites.
  • Supports Existing Names: Maintains compatibility with existing class names, ensuring no modifications are necessary to current implementations.
  • Flexible Path Resolution: Includes a clear convention for locating classes, making it easy to find files within the new structure based on keywords in the class names.
  • ActiveModelSerializers Compatibility: Increases Serializer functionality by enabling namespace consideration, addressing common lookup issues seamlessly.
  • Automatic Migration Tool: Offers an automated way to migrate resources, simplifying the process of restructuring your applications as needed.
  • Community-Driven Updates: Encourages feedback and contributions for evolving the gem, allowing continuous improvement based on user needs.
rails
Ruby on Rails

Ruby on Rails, often referred to as Rails, is an open-source web application framework written in Ruby. Known for its convention over configuration and don't repeat yourself (DRY) principles, Rails simplifies and accelerates the development of database-backed web applications.