The most powerful notification solution for Rails. Notifications Rails simplifies the handling, rendering, user-integration and cross-platform pushing of notifications through its simple API.
Notifications Rails has been built with modularity in mind. It currently consists of four components each of which bringing one essential functionality to the notification-integration in your Rails app.
NotificationHandler: Create and modify your notifications through a simple API.
NotificationRenderer: Render your notifications on multiple platforms by specifying notification types.
NotificationPusher: Push your notifications to various services. Including Email & OneSignal.
NotificationSettings: Integrates with your authentication solution to craft a personalized user notification platform.
You may just add the components you actually need, or instead use this gem to bundle everything for a complete notification solution.
Notifications Rails works with Rails 5 onwards. You can add it to your Gemfile
with:
gem 'notifications-rails'
And then execute:
$ bundle
Or install it yourself as:
$ gem install notifications-rails
If you always want to be up to date fetch the latest from GitHub in your Gemfile
:
gem 'notifications-rails', github: 'jonhue/notifications-rails'
Tests are written with RSpec. Integration tests are located in /spec
, unit tests can be found in <module>/spec
.
-
Fork this repository
-
Clone your forked git locally
-
Install dependencies
$ bundle install
-
Run tests
$ ./rspec
-
Run RuboCop
$ bundle exec rubocop
- Review breaking changes and deprecations in CHANGELOG.md
- Change the gem version here
- Reset CHANGELOG.md
- Create a pull request to merge the changes into
master
- After the pull request was merged, create a new release listing the breaking changes and commits on
master
since the last release. - The release workflow will publish the gems to RubyGems and the GitHub Package Registry
We use GitHub projects to coordinate the work on this project.
To propose your ideas, initiate the discussion by adding a new issue.
We hope that you will consider contributing to Notifications Rails. Please read this short overview for some information about how to get started:
Learn more about contributing to this repository, Code of Conduct
Notifications Rails follows Semantic Versioning 2.0 as defined at http://semver.org.