This is WREK's long-overdue new intranet. It provides tools that our radio DJs use on-air, for adminsitration, and for other purposes.
It's based on Rails 4, AngularJS, MySQL, and Bootstrap. Feel free to use parts of it or make contributions; other radio stations are welcome!
Check out the wiki to get started.
- Bootstrap on the front-end, if you're looking for classes to use.
- Slim for templating (ERB sucks). It's just HTML shorthand with other niceties.
- SimpleForm for writing forms for its nicer syntax and Bootstrap integration.
ng-in the HTML, that's what it is.
ng-initis used on pageload to include JSON data in the templates instead of making a separate AJAX request when you first visit the page.
- jQuery is available if you really want to use it by itself... but try to keep things tidy.
Authentication and authorization
- Devise for user registration and authentication. In production, it hooks into our LDAP server.
- CanCan for roles and permissions. Check the
ability.rbfile to see what our roles look like. If you're using the
createmethod with strong parameters, please read this to get around any issues.
- Whenever for writing cron scripts with Ruby syntax and Rails-specific hooks.
Mostly standard tools hee.
- RSPec for unit tests, or "specs."
- RSpec + Capybara (with a headless WebKit server through
poltergeist) for integration tests.
- factory_girl for creating test data in integration tests.
Project Management and Communication
We use GitHub issues for project management. We also have a Slack room and a special email address. Ask about 'em.