I am going to make simple shop website
slim-rails - to use slim-template
figaro Heroku-friendly Rails app configuration using ENV and a single YAML file, to send secrets to heroku it's just 'figaro heroku:set -e production' in terminal
sorcery authentication for Rails, version 0.8.6 works with Rails 4.0+, to use omniauth login with sorcery i use gems: omniauth-google-oauth2 and omniauth-facebook. To avoid sending confirmation email when registering with omniauth I use model User method:
attr_accessor :send_activation_email
def send_activation_needed_email!
super if send_activation_email
end
ng-annotate adds and removes AngularJS dependency injection annotations - example on page
roar-rails - great Rails representer
carrierwave - uploading files (in my app I upload images) in Rails app, with this gem I use gems: rmagick to process images (resize etc.) and fog to send images to Amazon S3
will_paginate - pagination for Ruby on Rails
I use rails-assets to load the plugins - it automatically converts the packaged components into gems
angular-ui-router- routing framework for AngularJS, better than 'ngRoute', allows named states, nested and parallel views..
angular-resource - to interact with Rails server
angular-animate - to automaticaly animations in 'ngShow', 'ngHide', 'ngView','ngClass', etc. - more info on site
angular-cookies - to write and read cookies
angular-bootstrap - 'bootstrap' for AngularJS - many useful directives. There is also carousel but it's not as configurable as in 'angular-carousel' plugin, to work it needs bootstrap CSS (no bootstrap or jQuery js required)
angular-translate - i18n for Angular with custom loader - from codetunes
ngInfiniteScroll - infinite scroll plugin for AngularJS - very useful but it's not so easy to configure it with $resource (in example it is $http), on server side to split records I use gem will_paginate
angular-carousel - great carousel for AngularJS, but has problems with Angular 1.3 :/ it has to be fixed height and width in css, without this it has height = width = 0, carousel uses Angular-touch so carousels can be switched with touch ul[rn-carousel] { width: 300px; height: 300px; }
ngDialog - Modals and popups provider for Angular
ui-utils - plenty of tools for angular such as Keypress binding, Unique filter, Validate directive and much more