Click anywhere on the diagram to see what each option for happy seed installs and what it is connected to.
This should give you an idea of what options are dependant on others.
Disables Turbolinks, includes haml, meta-tags, and dotenv-rails. Sets up basic http authentication, and puma.
Installs bootsrap-sass, modernizr-rails, organizes your assets directory organizes views and layouts directories, sets up application_helper methods to help with forms, includes flash support in application layout, updates rails scaffolding template to use bootsrap forms, turns off scaffolding stylesheet generation.
Installs devise, generates user class, copies over devise views and converts them to haml, and installs MailPreview for the device mailer.
Installs a splash page, sets up splash controller and sets up mailing list sign up with mailchimp. You just have to dump in your list id and api key.
Generates identity model link to user, installs omniauth, an omniauth controller, updates devise config, adds routes, removes devise email/password validations, adds FormUsers < User model for validations, and adds a registration controller to allow the user to add email and password for auth strategies that don't support it.
Installs jazz hands. Tada!!!!!!
Installs the pre-mailer gem which inlines styles for you and makes creating html-email much easier. It also sets up some base styles so that your html-emails look good out of the box.
Installs angularjs-rails, updates application.js, creates structure in app/assets for templates and angular controllers, installs angular_controller.rb, and creates a sample landing view.
Installs apitome and rspec_api_documentation, uses token auth.
Installs devise_invitable, migrates your db, adds columns for invite, copies over devise views and formats them with bootstrap.
Installs and sets up devise_confirmable so you can confirm users through a link in an email.
Installs and sets up can-can so you can manage roles quickly and easily. It is set up to work with active-admin out of the box so that you don't need a separate admin.
Installs and sets up active admin for back office mangement of content, users etc.
Installs react_on_rails and gets your Hello World react app up and running.
Creates a simple CMS to make switching out content a breeze.
Installs ckeditor so that you can give users editing content the ability to add format text with html etc.
The ruby community has tons of great gems out there that have saved a huge amount of time. But every time we started a project we found ourselves doing the same stuff over and over, figuring out exactly how we wanted to configure a particular gem for a particular problem. Even though we were more interested in creating a new product with particular functionality we were spending a lot of time doing "plumbing".
$ gem install happy_seed
There is a small application template that is used to start the app, which itself includes the happy_seed gem. This exposes the rail generators and templates to your project, which is how functionality gets installed.
$ happy_seed rails app_name
You will get prompted for what you want to install. Read more about it!
The seed gem itself is a set of generators, and only that. Functionality is either copied directly into your application, or included via a gem.
Since a lot of the generators alter routes, when you destroy a generator (for example the splash page) it may not leave your routes in the correct state.
If you want to extract some functionality of your own application, rails plugins are the way to go. We like autotest and rspec, which was always tricky to configure, so we packaged that up to!
$ happy_seed plugin acts_as_awesome
Read more about it!
Or if you want to make an engine
$ happy_seed engine acts_as_awesome
Read more about it!