This is a Ruby on Rails application used to organize Podcast content by location and topics of interest. Learning goals from this project were to design and build an application from scratch, consume a JSON API, authenticate users with OAuth, utilize a Sinatra microservice, and configure continuous integration.
-
rspec-rails
-
capybara
-
launchy
-
pry
-
simplecov
-
shoulda-matchers
-
factory_bot_rails
-
orderly
-
vcr
-
webmock
-
faker
-
rubocop
-
figaro
- Visitor - this type of user can browse, search, and play podcasts but is unable to follow podcasts.
- User - this user is registered and logged in to the application via Google Oauth 2.0. They can view all content and follow podcasts of interest. They can also apply to add their own podcast to our site.
- Admin User - this user can add new podcasts, edit tags, locations and other details.
git clone git@github.com:takeller/podsmack.git
bundle install
rails db:{create,migrate,seed}
Fire up local server: (http://localhost:3000)
rails s
bundle exec rspec
- Fork repo (https://github.com/takeller/podsmack)
- Create your feature branch (
git checkout -b feature/fooBar
) - Commit your changes (
git commit -m 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request