generator-rails-angular-require v0.3.2
generator-rails-angular-require
Yeoman generator
Getting Started
To run this version of yeoman generator. First, make sure that you have already installed yeoman
$ npm install -g yoTo install generator-rails-angular-require from npm, run:
$ npm install -g generator-rails-angular-requireTo be able to support template preprocessor, make sure you install the right gem first:
$ gem install slim # for slim
$ gem install haml # for hamlOther dependencies
SASS (gem install sass)
Compass (gem install compass)
Usage for Rails 4.*
Firstly, create Ruby on Rails project with normal rails command, but skip it bundle:
$ rails new app-name --skip-bundleFinally, initiate the generator:
$ cd app-name
$ yo rails-angular-requireAnswer 'Yes' to all 'Overwrite' actions. Then config the 'config/database.yml' if you use different database than sqlite3.
Assets compile
Compile your assets before deploying to production server
$ rake assets:precompile RAILS_ENV=productionOptions
Name: mongoid (for mongodb)
add --skip-active-record option to your rails new app --skip-active-record command before selecting this option.
Template
I define all the templates with suffix .tpl.* to load those into $templateCache, which make them testable
with directives that rely on partial template. However, this is configurable by setting in lib/jasmine_rails/spec_helper.rb.
Task
Live reload
For using livereload utility, firstly, install guard. Then, use rack-livereload or install LiveReload Safari/Chrome extension
$ bundle exec guard # to run the guard server and enjoy codingTesting
Run:
$ rails serverFor unit testing, access localhost:3000/specs
For e2e testing, run:
$ protractor protractor.config.jsSubgenerators
This also supports for subgenerator for controller, filter, service, and directive as well. Make sure you link them in your
main.js
$ yo rails-angular-require:controller "name" #replace the name with your module name
$ yo rails-angular-require:service "name" #replace the name with your module name
$ yo rails-angular-require:directive "name" #replace the name with your module name
$ yo rails-angular-require:filter "name" #replace the name with your module nameStructure
application/
|- app/
| |- apis/
| | |- v1/
| | | |- base.rb
| | | |- person_api.rb
| | |- base.rb
| |- assets/
| | |- images/
| | |- javascripts/
| | | |- <codeModule>/
| | | | |- codeModule.tpl.html # also support other templates like haml, and slim
| | | | |- codeModule.js.coffee
| | | |- application.js
| | | |- main.js.coffee # main file
| | |- stylesheets/
| | | |- application.css
| |- controllers/
| |- helpers/
| |- mailers/
| |- models/
| |- views/
| | |- application/
| | | |- index.html # default template navigation by angular-ui-router
| | |- layouts/
| | | |- jasmine_rails/
| | | | |- spec_runner.html.erb # jasmine spec runner template
| | | |- application.html.erb
|- bin/
|- config/
| |- initializers/
| | |- angular_template_assets.rb # Add template support
| | |- bower_rails.rb # bower rails config
| |- requirejs.yml # requirejs config file
|- db/
|- lib/
| |- jasmine_rails/
| | |- spec_helper.rb # jasmine rails helper
|- log/
|- public/
|- spec/
| |- javascripts/
| | |- helpers/
| | |- e2espec/
| | | |- codeSpec.{js, coffee} # suffix by _e2espec.{js, coffee}
| | |- spec/
| | | |- codeSpec.{js, coffee} # suffix by _unitspec.{js, coffee}
| | |- support/
| | | |- jasmine.yml # jasmine config
|- test/
|- tmp/
|- vendor/
| |- assets/
| | |- bower_components/
| | | |- third libararies/
|- | |- bower.json
|- Bowerfile # define all bower_components here
|- config.ru
|- Gemfile
|- Gemfile.lock
|- Guardfile # Guard file for livereload
|- Rakefile
|- README.rdocContribution
All contributions are welcomed.
License
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
