redmint_composer 2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/README.textile +10 -0
  3. data/bin/redmint_composer +7 -0
  4. data/lib/rails_wizard.rb +7 -0
  5. data/lib/rails_wizard/command.rb +204 -0
  6. data/lib/rails_wizard/config.rb +88 -0
  7. data/lib/rails_wizard/diagnostics.rb +58 -0
  8. data/lib/rails_wizard/recipe.rb +114 -0
  9. data/lib/rails_wizard/recipes.rb +56 -0
  10. data/lib/rails_wizard/template.rb +111 -0
  11. data/recipes/admin.rb +42 -0
  12. data/recipes/analytics.rb +41 -0
  13. data/recipes/core.rb +32 -0
  14. data/recipes/deployment.rb +178 -0
  15. data/recipes/devise.rb +34 -0
  16. data/recipes/email.rb +65 -0
  17. data/recipes/email_dev.rb +92 -0
  18. data/recipes/example.rb +63 -0
  19. data/recipes/extras.rb +283 -0
  20. data/recipes/frontend.rb +33 -0
  21. data/recipes/gems.rb +274 -0
  22. data/recipes/git.rb +27 -0
  23. data/recipes/init.rb +179 -0
  24. data/recipes/learn_rails.rb +89 -0
  25. data/recipes/locale.rb +31 -0
  26. data/recipes/omniauth.rb +38 -0
  27. data/recipes/pages.rb +91 -0
  28. data/recipes/rails_bootstrap.rb +29 -0
  29. data/recipes/rails_devise.rb +26 -0
  30. data/recipes/rails_devise_pundit.rb +25 -0
  31. data/recipes/rails_devise_roles.rb +25 -0
  32. data/recipes/rails_foundation.rb +29 -0
  33. data/recipes/rails_mailinglist_activejob.rb +76 -0
  34. data/recipes/rails_omniauth.rb +27 -0
  35. data/recipes/rails_signup_download.rb +69 -0
  36. data/recipes/rails_stripe_checkout.rb +84 -0
  37. data/recipes/rails_stripe_coupons.rb +125 -0
  38. data/recipes/rails_stripe_membership_saas.rb +112 -0
  39. data/recipes/railsapps.rb +77 -0
  40. data/recipes/readme.rb +161 -0
  41. data/recipes/roles.rb +40 -0
  42. data/recipes/setup.rb +162 -0
  43. data/recipes/tests.rb +59 -0
  44. data/spec/rails_wizard/config_spec.rb +108 -0
  45. data/spec/rails_wizard/recipe_spec.rb +115 -0
  46. data/spec/rails_wizard/recipes/sanity_spec.rb +30 -0
  47. data/spec/rails_wizard/recipes_spec.rb +41 -0
  48. data/spec/rails_wizard/template_spec.rb +92 -0
  49. data/spec/spec_helper.rb +11 -0
  50. data/spec/support/rails_directory.rb +17 -0
  51. data/spec/support/template_runner.rb +28 -0
  52. data/spec/test_recipes/test_recipe_in_file.rb +9 -0
  53. data/templates/helpers.erb +138 -0
  54. data/templates/layout.erb +231 -0
  55. data/templates/recipe.erb +13 -0
  56. data/version.rb +3 -0
  57. metadata +201 -0
@@ -0,0 +1,27 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/rails_omniauth.rb
3
+
4
+ if prefer :apps4, 'rails-omniauth'
5
+ prefs[:authentication] = 'omniauth'
6
+ prefs[:authorization] = 'none'
7
+ prefs[:dashboard] = 'none'
8
+ prefs[:better_errors] = true
9
+ prefs[:email] = 'none'
10
+ prefs[:git] = true
11
+ prefs[:local_env_file] = false
12
+ prefs[:pry] = false
13
+ prefs[:quiet_assets] = true
14
+ prefs[:pages] = 'about+users'
15
+ prefs[:locale] = 'none'
16
+ prefs[:rubocop] = false
17
+ end
18
+
19
+ __END__
20
+
21
+ name: rails_omniauth
22
+ description: "rails-omniauth starter application"
23
+ author: RailsApps
24
+
25
+ requires: [core]
26
+ run_after: [git]
27
+ category: apps
@@ -0,0 +1,69 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/rails_signup_download.rb
3
+
4
+ if prefer :apps4, 'rails-signup-download'
5
+ prefs[:authentication] = 'devise'
6
+ prefs[:authorization] = 'roles'
7
+ prefs[:better_errors] = true
8
+ prefs[:devise_modules] = false
9
+ prefs[:form_builder] = false
10
+ prefs[:git] = true
11
+ prefs[:local_env_file] = false
12
+ prefs[:pry] = false
13
+ prefs[:quiet_assets] = true
14
+ prefs[:secrets] = ['mailchimp_list_id', 'mailchimp_api_key']
15
+ prefs[:pages] = 'users'
16
+ prefs[:locale] = 'none'
17
+ prefs[:rubocop] = false
18
+
19
+ # gems
20
+ add_gem 'gibbon'
21
+ add_gem 'sucker_punch'
22
+
23
+ stage_three do
24
+ say_wizard "recipe stage three"
25
+ repo = 'https://raw.github.com/RailsApps/rails-signup-download/master/'
26
+
27
+ # >-------------------------------[ Config ]---------------------------------<
28
+
29
+ copy_from_repo 'config/initializers/active_job.rb', :repo => repo
30
+
31
+ # >-------------------------------[ Models ]--------------------------------<
32
+
33
+ copy_from_repo 'app/models/user.rb', :repo => repo
34
+
35
+ # >-------------------------------[ Controllers ]--------------------------------<
36
+
37
+ copy_from_repo 'app/controllers/visitors_controller.rb', :repo => repo
38
+ copy_from_repo 'app/controllers/products_controller.rb', :repo => repo
39
+
40
+ # >-------------------------------[ Jobs ]---------------------------------<
41
+
42
+ copy_from_repo 'app/jobs/mailing_list_signup_job.rb', :repo => repo
43
+
44
+ # >-------------------------------[ Views ]--------------------------------<
45
+
46
+ copy_from_repo 'app/views/visitors/index.html.erb', :repo => repo
47
+ copy_from_repo 'app/views/products/product.pdf', :repo => repo
48
+
49
+ # >-------------------------------[ Routes ]--------------------------------<
50
+
51
+ copy_from_repo 'config/routes.rb', :repo => repo
52
+
53
+ # >-------------------------------[ Tests ]--------------------------------<
54
+
55
+ copy_from_repo 'spec/features/users/product_acquisition_spec.rb', :repo => repo
56
+ copy_from_repo 'spec/controllers/products_controller_spec.rb', :repo => repo
57
+
58
+ end
59
+ end
60
+
61
+ __END__
62
+
63
+ name: rails_signup_download
64
+ description: "rails-signup-download starter application"
65
+ author: RailsApps
66
+
67
+ requires: [core]
68
+ run_after: [git]
69
+ category: apps
@@ -0,0 +1,84 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/rails_stripe_checkout.rb
3
+
4
+ if prefer :apps4, 'rails-stripe-checkout'
5
+ prefs[:frontend] = 'bootstrap3'
6
+ prefs[:authentication] = 'devise'
7
+ prefs[:authorization] = 'roles'
8
+ prefs[:better_errors] = true
9
+ prefs[:devise_modules] = false
10
+ prefs[:form_builder] = false
11
+ prefs[:git] = true
12
+ prefs[:local_env_file] = false
13
+ prefs[:pry] = false
14
+ prefs[:quiet_assets] = true
15
+ prefs[:secrets] = ['product_price',
16
+ 'product_title',
17
+ 'stripe_publishable_key',
18
+ 'stripe_api_key',
19
+ 'mailchimp_list_id',
20
+ 'mailchimp_api_key']
21
+ prefs[:pages] = 'users'
22
+ prefs[:locale] = 'none'
23
+ prefs[:rubocop] = false
24
+
25
+ # gems
26
+ add_gem 'gibbon'
27
+ add_gem 'stripe'
28
+ add_gem 'sucker_punch'
29
+
30
+ stage_three do
31
+ say_wizard "recipe stage three"
32
+ repo = 'https://raw.github.com/RailsApps/rails-stripe-checkout/master/'
33
+
34
+ # >-------------------------------[ Config ]---------------------------------<
35
+
36
+ copy_from_repo 'config/initializers/active_job.rb', :repo => repo
37
+ copy_from_repo 'config/initializers/devise_permitted_parameters.rb', :repo => repo
38
+ copy_from_repo 'config/initializers/stripe.rb', :repo => repo
39
+
40
+ # >-------------------------------[ Assets ]--------------------------------<
41
+
42
+ copy_from_repo 'app/assets/images/rubyonrails.png', :repo => repo
43
+
44
+ # >-------------------------------[ Models ]--------------------------------<
45
+
46
+ copy_from_repo 'app/models/user.rb', :repo => repo
47
+
48
+ # >-------------------------------[ Controllers ]--------------------------------<
49
+
50
+ copy_from_repo 'app/controllers/visitors_controller.rb', :repo => repo
51
+ copy_from_repo 'app/controllers/products_controller.rb', :repo => repo
52
+ copy_from_repo 'app/controllers/registrations_controller.rb', :repo => repo
53
+
54
+ # >-------------------------------[ Jobs ]---------------------------------<
55
+
56
+ copy_from_repo 'app/jobs/mailing_list_signup_job.rb', :repo => repo
57
+
58
+ # >-------------------------------[ Views ]--------------------------------<
59
+
60
+ copy_from_repo 'app/views/devise/registrations/new.html.erb', :repo => repo
61
+ copy_from_repo 'app/views/visitors/_purchase.html.erb', :repo => repo
62
+ copy_from_repo 'app/views/visitors/index.html.erb', :repo => repo
63
+ copy_from_repo 'app/views/products/product.pdf', :repo => repo
64
+
65
+ # >-------------------------------[ Routes ]--------------------------------<
66
+
67
+ copy_from_repo 'config/routes.rb', :repo => repo
68
+
69
+ # >-------------------------------[ Tests ]--------------------------------<
70
+
71
+ ### tests not implemented
72
+
73
+ end
74
+ end
75
+
76
+ __END__
77
+
78
+ name: rails_stripe_checkout
79
+ description: "rails-stripe-checkout starter application"
80
+ author: RailsApps
81
+
82
+ requires: [core]
83
+ run_after: [git]
84
+ category: apps
@@ -0,0 +1,125 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/rails_stripe_coupons.rb
3
+
4
+ if prefer :apps4, 'rails-stripe-coupons'
5
+ prefs[:frontend] = 'bootstrap3'
6
+ prefs[:authentication] = 'devise'
7
+ prefs[:authorization] = 'roles'
8
+ prefs[:better_errors] = true
9
+ prefs[:devise_modules] = false
10
+ prefs[:form_builder] = false
11
+ prefs[:git] = true
12
+ prefs[:local_env_file] = false
13
+ prefs[:pry] = false
14
+ prefs[:quiet_assets] = true
15
+ prefs[:secrets] = ['stripe_publishable_key',
16
+ 'stripe_api_key',
17
+ 'product_price',
18
+ 'product_title',
19
+ 'mailchimp_list_id',
20
+ 'mailchimp_api_key']
21
+ prefs[:pages] = 'users'
22
+ prefs[:locale] = 'none'
23
+ prefs[:rubocop] = false
24
+
25
+ # gems
26
+ add_gem 'gibbon'
27
+ add_gem 'high_voltage'
28
+ add_gem 'stripe'
29
+ add_gem 'sucker_punch'
30
+
31
+ stage_three do
32
+ say_wizard "recipe stage three"
33
+ repo = 'https://raw.github.com/RailsApps/rails-stripe-coupons/master/'
34
+
35
+ # >-------------------------------[ Migrations ]---------------------------------<
36
+
37
+ generate 'migration AddStripeTokenToUsers stripe_token:string'
38
+ generate 'scaffold Coupon code role mailing_list_id list_group price:integer --no-test-framework --no-helper --no-assets --no-jbuilder'
39
+ generate 'migration AddCouponRefToUsers coupon:references'
40
+ run 'bundle exec rake db:migrate'
41
+
42
+ # >-------------------------------[ Config ]---------------------------------<
43
+
44
+ copy_from_repo 'config/initializers/active_job.rb', :repo => repo
45
+ copy_from_repo 'config/initializers/stripe.rb', :repo => repo
46
+
47
+ # >-------------------------------[ Assets ]--------------------------------<
48
+
49
+ copy_from_repo 'app/assets/images/rubyonrails.png', :repo => repo
50
+
51
+ # >-------------------------------[ Controllers ]--------------------------------<
52
+
53
+ copy_from_repo 'app/controllers/coupons_controller.rb', :repo => repo
54
+ copy_from_repo 'app/controllers/visitors_controller.rb', :repo => repo
55
+ copy_from_repo 'app/controllers/products_controller.rb', :repo => repo
56
+ copy_from_repo 'app/controllers/registrations_controller.rb', :repo => repo
57
+
58
+ # >-------------------------------[ Helpers ]--------------------------------<
59
+
60
+ copy_from_repo 'app/helpers/application_helper.rb', :repo => repo
61
+
62
+ # >-------------------------------[ Jobs ]---------------------------------<
63
+
64
+ copy_from_repo 'app/jobs/mailing_list_signup_job.rb', :repo => repo
65
+ copy_from_repo 'app/jobs/payment_job.rb', :repo => repo
66
+
67
+ # >-------------------------------[ Mailers ]--------------------------------<
68
+
69
+ copy_from_repo 'app/mailers/application_mailer.rb', :repo => repo
70
+ copy_from_repo 'app/mailers/payment_failure_mailer.rb', :repo => repo
71
+
72
+ # >-------------------------------[ Models ]--------------------------------<
73
+
74
+ copy_from_repo 'app/models/coupon.rb', :repo => repo
75
+ copy_from_repo 'app/models/user.rb', :repo => repo
76
+
77
+ # >-------------------------------[ Services ]---------------------------------<
78
+
79
+ copy_from_repo 'app/services/create_couponcodes_service.rb', :repo => repo
80
+ copy_from_repo 'app/services/mailing_list_signup_service.rb', :repo => repo
81
+ copy_from_repo 'app/services/make_payment_service.rb', :repo => repo
82
+
83
+ # >-------------------------------[ Views ]--------------------------------<
84
+
85
+ copy_from_repo 'app/views/coupons/_form.html.erb', :repo => repo
86
+ copy_from_repo 'app/views/coupons/edit.html.erb', :repo => repo
87
+ copy_from_repo 'app/views/coupons/index.html.erb', :repo => repo
88
+ copy_from_repo 'app/views/coupons/new.html.erb', :repo => repo
89
+ copy_from_repo 'app/views/coupons/show.html.erb', :repo => repo
90
+ copy_from_repo 'app/views/devise/registrations/_javascript.html.erb', :repo => repo
91
+ copy_from_repo 'app/views/devise/registrations/edit.html.erb', :repo => repo
92
+ copy_from_repo 'app/views/devise/registrations/new.html.erb', :repo => repo
93
+ copy_from_repo 'app/views/layouts/_navigation_links.html.erb', :repo => repo
94
+ copy_from_repo 'app/views/layouts/application.html.erb', :repo => repo
95
+ copy_from_repo 'app/views/layouts/mailer.html.erb', :repo => repo
96
+ copy_from_repo 'app/views/layouts/mailer.text.erb', :repo => repo
97
+ copy_from_repo 'app/views/pages/downloads.html.erb', :repo => repo
98
+ copy_from_repo 'app/views/payment_failure_mailer/failed_payment_email.html.erb', :repo => repo
99
+ copy_from_repo 'app/views/payment_failure_mailer/failed_payment_email.text.erb', :repo => repo
100
+ copy_from_repo 'app/views/users/show.html.erb', :repo => repo
101
+ copy_from_repo 'app/views/visitors/_purchase.html.erb', :repo => repo
102
+ copy_from_repo 'app/views/visitors/index.html.erb', :repo => repo
103
+ copy_from_repo 'app/views/products/product.pdf', :repo => repo
104
+ copy_from_repo 'public/offer.html', :repo => repo
105
+
106
+ # >-------------------------------[ Routes ]--------------------------------<
107
+
108
+ copy_from_repo 'config/routes.rb', :repo => repo
109
+
110
+ # >-------------------------------[ Tests ]--------------------------------<
111
+
112
+ ### tests not implemented
113
+
114
+ end
115
+ end
116
+
117
+ __END__
118
+
119
+ name: rails_stripe_coupons
120
+ description: "rails-stripe-coupons starter application"
121
+ author: RailsApps
122
+
123
+ requires: [core]
124
+ run_after: [git]
125
+ category: apps
@@ -0,0 +1,112 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/rails_stripe_membership_saas.rb
3
+
4
+ if prefer :apps4, 'rails-stripe-membership-saas'
5
+ prefs[:frontend] = 'bootstrap3'
6
+ prefs[:authentication] = 'devise'
7
+ prefs[:authorization] = 'roles'
8
+ prefs[:better_errors] = true
9
+ prefs[:devise_modules] = false
10
+ prefs[:form_builder] = false
11
+ prefs[:git] = true
12
+ prefs[:local_env_file] = false
13
+ prefs[:pry] = false
14
+ prefs[:quiet_assets] = true
15
+ prefs[:disable_turbolinks] = true
16
+ prefs[:secrets] = ['stripe_publishable_key',
17
+ 'stripe_api_key',
18
+ 'mailchimp_list_id',
19
+ 'mailchimp_api_key']
20
+ prefs[:pages] = 'users'
21
+ prefs[:locale] = 'none'
22
+ prefs[:rubocop] = false
23
+
24
+ # gems
25
+ add_gem 'gibbon'
26
+ add_gem 'payola-payments'
27
+ add_gem 'sucker_punch'
28
+
29
+ stage_three do
30
+ say_wizard "recipe stage three"
31
+ repo = 'https://raw.github.com/RailsApps/rails-stripe-membership-saas/master/'
32
+
33
+ # >-------------------------------[ Migrations ]---------------------------------<
34
+
35
+ generate 'payola:install'
36
+ generate 'model Plan name stripe_id interval amount:integer --no-test-framework'
37
+ generate 'migration AddPlanRefToUsers plan:references'
38
+ generate 'migration RemoveNameFromUsers name'
39
+ run 'bundle exec rake db:migrate'
40
+
41
+ # >-------------------------------[ Config ]---------------------------------<
42
+
43
+ copy_from_repo 'config/initializers/active_job.rb', :repo => repo
44
+ copy_from_repo 'config/initializers/payola.rb', :repo => repo
45
+ copy_from_repo 'db/seeds.rb', :repo => repo
46
+
47
+ # >-------------------------------[ Assets ]--------------------------------<
48
+
49
+ copy_from_repo 'app/assets/stylesheets/pricing.css.scss', :repo => repo
50
+
51
+ # >-------------------------------[ Controllers ]--------------------------------<
52
+
53
+ copy_from_repo 'app/controllers/application_controller.rb', :repo => repo
54
+ copy_from_repo 'app/controllers/content_controller.rb', :repo => repo
55
+ copy_from_repo 'app/controllers/visitors_controller.rb', :repo => repo
56
+ copy_from_repo 'app/controllers/products_controller.rb', :repo => repo
57
+ copy_from_repo 'app/controllers/registrations_controller.rb', :repo => repo
58
+
59
+ # >-------------------------------[ Jobs ]---------------------------------<
60
+
61
+ copy_from_repo 'app/jobs/mailing_list_signup_job.rb', :repo => repo
62
+
63
+ # >-------------------------------[ Mailers ]--------------------------------<
64
+
65
+ copy_from_repo 'app/mailers/application_mailer.rb', :repo => repo
66
+ copy_from_repo 'app/mailers/user_mailer.rb', :repo => repo
67
+
68
+ # >-------------------------------[ Models ]--------------------------------<
69
+
70
+ copy_from_repo 'app/models/plan.rb', :repo => repo
71
+ copy_from_repo 'app/models/user.rb', :repo => repo
72
+
73
+ # >-------------------------------[ Services ]---------------------------------<
74
+
75
+ copy_from_repo 'app/services/create_plan_service.rb', :repo => repo
76
+
77
+ # >-------------------------------[ Views ]--------------------------------<
78
+
79
+ copy_from_repo 'app/views/content/gold.html.erb', :repo => repo
80
+ copy_from_repo 'app/views/content/platinum.html.erb', :repo => repo
81
+ copy_from_repo 'app/views/content/silver.html.erb', :repo => repo
82
+ copy_from_repo 'app/views/devise/registrations/edit.html.erb', :repo => repo
83
+ copy_from_repo 'app/views/devise/registrations/new.html.erb', :repo => repo
84
+ copy_from_repo 'app/views/layouts/_navigation_links.html.erb', :repo => repo
85
+ copy_from_repo 'app/views/layouts/application.html.erb', :repo => repo
86
+ copy_from_repo 'app/views/layouts/mailer.html.erb', :repo => repo
87
+ copy_from_repo 'app/views/layouts/mailer.text.erb', :repo => repo
88
+ copy_from_repo 'app/views/user_mailer/expire_email.html.erb', :repo => repo
89
+ copy_from_repo 'app/views/user_mailer/expire_email.text.erb', :repo => repo
90
+ copy_from_repo 'app/views/visitors/index.html.erb', :repo => repo
91
+ copy_from_repo 'app/views/products/product.pdf', :repo => repo
92
+
93
+ # >-------------------------------[ Routes ]--------------------------------<
94
+
95
+ copy_from_repo 'config/routes.rb', :repo => repo
96
+
97
+ # >-------------------------------[ Tests ]--------------------------------<
98
+
99
+ ### tests not implemented
100
+
101
+ end
102
+ end
103
+
104
+ __END__
105
+
106
+ name: rails_stripe_membership_saas
107
+ description: "rails-stripe-membership-saas starter application"
108
+ author: RailsApps
109
+
110
+ requires: [core]
111
+ run_after: [git]
112
+ category: apps
@@ -0,0 +1,77 @@
1
+ # Application template recipe for the rails_apps_composer. Change the recipe here:
2
+ # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/railsapps.rb
3
+
4
+ raise if (defined? defaults) || (defined? preferences) # Shouldn't happen.
5
+ if options[:verbose]
6
+ print "\nrecipes: ";p recipes
7
+ print "\ngems: " ;p gems
8
+ print "\nprefs: " ;p prefs
9
+ print "\nconfig: " ;p config
10
+ end
11
+
12
+ case Rails::VERSION::MAJOR.to_s
13
+ when "3"
14
+ say_wizard "Please upgrade to Rails 4.1 or newer."
15
+ when "4"
16
+ case Rails::VERSION::MINOR.to_s
17
+ when "0"
18
+ say_wizard "Please upgrade to Rails 4.1 or newer."
19
+ else
20
+ prefs[:apps4] = multiple_choice "Build a starter application?",
21
+ [["Build a RailsApps example application", "railsapps"],
22
+ ["Contributed applications (none available)", "contributed_app"],
23
+ ["Redmint proyect", "none"]] unless prefs.has_key? :apps4
24
+ case prefs[:apps4]
25
+ when 'railsapps'
26
+ case Rails::VERSION::MINOR.to_s
27
+ when "2"
28
+ prefs[:apps4] = multiple_choice "Choose a starter application.",
29
+ [["learn-rails", "learn-rails"],
30
+ ["rails-bootstrap", "rails-bootstrap"],
31
+ ["rails-foundation", "rails-foundation"],
32
+ ["rails-mailinglist-activejob", "rails-mailinglist-activejob"],
33
+ ["rails-omniauth", "rails-omniauth"],
34
+ ["rails-devise", "rails-devise"],
35
+ ["rails-devise-roles", "rails-devise-roles"],
36
+ ["rails-devise-pundit", "rails-devise-pundit"],
37
+ ["rails-signup-download", "rails-signup-download"],
38
+ ["rails-stripe-checkout", "rails-stripe-checkout"],
39
+ ["rails-stripe-coupons", "rails-stripe-coupons"],
40
+ ["rails-stripe-membership-saas", "rails-stripe-membership-saas"]]
41
+ else
42
+ prefs[:apps4] = multiple_choice "Upgrade to Rails 4.2 for more choices.",
43
+ [["learn-rails", "learn-rails"],
44
+ ["rails-bootstrap", "rails-bootstrap"],
45
+ ["rails-foundation", "rails-foundation"],
46
+ ["rails-omniauth", "rails-omniauth"],
47
+ ["rails-devise", "rails-devise"],
48
+ ["rails-devise-roles", "rails-devise-roles"],
49
+ ["rails-devise-pundit", "rails-devise-pundit"]]
50
+ end
51
+ when 'contributed_app'
52
+ prefs[:apps4] = multiple_choice "No contributed applications are available.",
53
+ [["create custom application", "railsapps"]]
54
+ end
55
+ end
56
+ end
57
+
58
+ unless prefs[:announcements]
59
+ say_loud '', 'Get on the mailing list for Rails Composer news?'
60
+ prefs[:announcements] = ask_wizard('Enter your email address:')
61
+ if prefs[:announcements].present?
62
+ system "curl --silent http://mailinglist.railscomposer.com/api -d'visitor[email]=#{prefs[:announcements]}' > /dev/null"
63
+ prefs[:announcements] = 'mailinglist'
64
+ else
65
+ prefs[:announcements] = 'none'
66
+ end
67
+ end
68
+
69
+ __END__
70
+
71
+ name: railsapps
72
+ description: "Install RailsApps example applications."
73
+ author: RailsApps
74
+
75
+ requires: [core]
76
+ run_after: [git]
77
+ category: configuration