Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/roberts1000/corelib
Useful extensions & additions to the Ruby core classes
https://github.com/roberts1000/corelib
Last synced: about 1 month ago
JSON representation
Useful extensions & additions to the Ruby core classes
- Host: GitHub
- URL: https://github.com/roberts1000/corelib
- Owner: roberts1000
- License: mit
- Created: 2013-02-01T19:14:35.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2021-10-31T17:00:59.000Z (about 3 years ago)
- Last Synced: 2024-03-15T05:05:44.411Z (11 months ago)
- Language: Ruby
- Size: 21.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Corelib
Many languages provide a vast library of methods or functions for developers to use, whereas Ruby only provides basic (albeit powerful) building blocks. At best, this leads to more complex applications and time wasted writing code another developer has probably already written; at worst it results in core class extensions being placed in helper methods or on objects that have no business owning the methods. The lack of a good strategy for managing Ruby extentions really becomes apparent when a developer needs to share his extensions across multiple projects.
Corelib aims to solve this problem by providing a central gem for developers to share extensions & additions to the Ruby core. Corelib focuses on:
1. Reducing Code Duplication
2. Improving Code Readability
3. Sharing Developer Knowledge
4. Reducing Errors
5. Saving Developers Time
6. Improving Code Quality & PerformanceWe invite all like minded developers to join us in growing the corelib library of extensions.
## Inspiration
Corelib was inspired by Smalltalk where it is quite common (and encouraged) to modify base classes with additional convience methods. In addition, Smalltalk defines many useful classes that would benefit the Ruby community such as Set, OrderedSet, SortedCollection, Dictionary, Association, etc...
## Installation
Add this line to your application's Gemfile:
gem 'corelib'
And then execute:
$ bundle
Or install it yourself as:
$ gem install corelib
## Usage
Browse the /lib/corelib/ directory find methods that extend the chosen classes. All of these methods are now available inside your application without any additional configuration.
## Contributing
If you have developed useful extensions to the Ruby core, please consider adding them to our "little" library.
1. Fork it
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