Ruby core extentions and class utilities for Hanami
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Ruby 2.6.0 (#315) Jan 2, 2019
lib
script
spec
.gitignore
.jrubyrc
.rspec
.rubocop.yml Upgrade rubocop to version 0.60.0 (#302) Nov 15, 2018
.travis.yml Ruby 2.6.0 (#315) Jan 2, 2019
.yardopts [ci skip] yardopts Jun 13, 2014
CHANGELOG.md
CONTRIBUTING.md
Gemfile Update rubocop to version 0.65.0 (#326) Feb 20, 2019
LICENSE.md
README.md Update settings for code quality services (#285) Jul 3, 2018
Rakefile
hanami-utils.gemspec

README.md

Hanami::Utils

Ruby core extensions and class utilities for Hanami

Status

Gem Version TravisCI CircleCI Test Coverage Depfu Inline Docs

Contact

Rubies

Hanami::Utils supports Ruby (MRI) 2.3+, JRuby 9.1.5.0+

Installation

Add this line to your application's Gemfile:

gem 'hanami-utils'

And then execute:

$ bundle

Or install it yourself as:

$ gem install hanami-utils

Usage

Hanami::Utils is designed to enhance Ruby's code and stdlib. By default this gem doesn't load any code, you must require what you need.

Features

Hanami::Interactor

Standardized Service Object with small interface and rich returning result. [API doc]

Hanami::Logger

Enhanced version of Ruby's Logger. [API doc]

Hanami::Utils::BasicObject

Enhanced version of Ruby's BasicObject. [API doc]

Hanami::Utils::Blank

Checks for blank. [API doc]

Hanami::Utils::Callbacks

Callbacks to decorate methods with before and after logic. It supports polymorphic callbacks (methods and procs). [API doc]

Hanami::Utils::Class

Load classes from strings. It also supports namespaces. [API doc]

Hanami::Utils::ClassAttribute

Inheritable class attributes. [API doc]

Hanami::Utils::Deprecation

Deprecate Hanami features. [API doc]

Hanami::Utils::Duplicable

Safe #dup logic for Ruby objects. [API doc]

Hanami::Utils::Escape

Safe and fast escape for URLs, HTML content and attributes. Based on OWASP/ESAPI code. [API doc]

Hanami::Utils::FileList

Recursive, cross-platform ordered list of files. [API doc]

Hanami::Utils::Files

File utilities to manipulate files and directories. [API doc]

Hanami::Utils::Hash

Enhanced version of Ruby's Hash. [API doc]

Hanami::Utils::IO

Silence Ruby warnings. [API doc]

Hanami::Utils::Inflector

Complete and customizable english inflections (pluralization and singularization). [API doc]

Hanami::Utils::Json

JSON engine with swappable backends (via optional multi_json gem) or powered by Ruby's json (default). [API doc]

Hanami::Utils::Kernel

Type coercions for most common Ruby types. [API doc]

Hanami::Utils::LoadPaths

Manage directories where to find Ruby source code or web static assets. [API doc]

Hanami::Utils::PathPrefix

Safe logic to manage relative URLs. [API doc]

Hanami::Utils::QueryString

URI query string transformation [API doc]

Hanami::Utils::ShellColor

Shell colorizer [API doc]

Hanami::Utils::String

Enhanced version of Ruby's String. [API doc]

Versioning

Hanami::Utils uses Semantic Versioning 2.0.0

Contributing

  1. Fork it ( https://github.com/hanami/utils/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Copyright

Copyright © 2014-2017 Luca Guidi – Released under MIT License

This project was formerly known as Lotus (lotus-utils).