https://github.com/serv/mortgagerb
https://github.com/serv/mortgagerb
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/serv/mortgagerb
- Owner: serv
- License: mit
- Created: 2024-03-10T08:32:18.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-02-15T21:55:23.000Z (over 1 year ago)
- Last Synced: 2026-02-18T04:46:25.546Z (5 months ago)
- Language: Ruby
- Size: 28.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Mortgagerb
Calculates monthly payment for various types of mortgage. To learn more about how the calculations are done, see [amortizing loan](https://en.wikipedia.org/wiki/Amortizing_loan).
Currently supported loan types
- 30 year fixed
- Others coming soon
## Installation
Install the gem and add to the application's Gemfile by executing:
$ bundle add mortgagerb
If bundler is not being used to manage dependencies, install the gem by executing:
$ gem install mortgagerb
## Usage
```ruby
require 'mortgagerb'
rate = 5.5
principal = 1000000
type = :thirty_year_fixed
scenario = Mortgagerb::Scenario.new(principal, rate, type)
amortization_payment = scenario.calculate # 5677.89
```
### Get the 30-Yr FRM and 15-Yr FRM from Freddie Mac
The gem will scrape Freddie Mac's website in order to get the rates.
Use this responsibly. Do not over-scrape the website. Cache the value locally.
Check for new data seldomly.
```ruby
require 'mortgagerb'
rates_now = Mortgagerb::FreddieMac.now
frm30 = rates_now[:fmr30] # 7.77
frm15 = rates_now[:frm15] # 6.66
```
## Development
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/serv/mortgagerb.
## License
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).