app description
Jacq Whitmer | Dane Brophy | Isika Powers | Ezzedine Alwafai | Kevin Nguyen |
---|---|---|---|---|
Links |
---|
Tools Used |
Setup |
Learning Goals |
Database Schema |
Wireframes |
Development | Development | Testing | Deployment |
---|---|---|---|
This project requires Ruby 2.7.2.
- Fork this repository
- From the command line, install gems and set up your DB:
bundle install && bundle update
rails db:{create,migrate}
- Run the test suite with
bundle exec rspec -fd
- Run your development server with
rails s
to see the app in action.
-
Ruby version
$ ruby -v ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-darwin20]
-
$ rails -v Rails 5.2.6
-
Database creation
$ rails db:{drop,create,migrate,seed} Created database 'frontend_development' Created database 'frontend_test'
-
#Gemfile gem 'omniauth-google-oauth2' gem 'omniauth-rails_csrf_protection'
$ bundle install
-
Visit https://console.developers.google.com - Select your project - From the Credentials section: - Select the "OAuth consent screen" tab on top, and provide an 'EMAIL ADDRESS' and a 'PRODUCT NAME' - Wait 10 minutes for changes to take effect.
-
$ bundle exec figaro install
Add your credentials & API keys to
config/application.yml
:#Frontend Repo: GOOGLE_CLIENT_ID: <your client id> GOOGLE_CLIENT_SECRET: <your client secret> #Backend Repo: yelp_api_key: 'Bearer <your v3 token>'
-
How to run the test suite
$ bundle exec rspec -fd
-
Local Deployment, for testing
$ rails s => Booting Puma => Rails 5.2.6 application starting in development => Run `rails server -h` for more startup options Puma starting in single mode... * Version 3.12.6 (ruby 2.7.2-p137) * Min threads: 5, max threads: 5 * Environment: development * Listening on tcp://localhost:3000 Use Ctrl-C to stop
-
Heroku Deployment, for production
⭐ Consume two or more external APIs which require authentication
⭐ Build APIs that return JSON responses
⭐ Use an external OAuth provider to authenticate users
⭐ Create a project with a separate frontend and backend
⭐ Organize and refactor code to be more maintainable
⭐ Implement a self-referential relationship in ActiveRecord
⭐ Use Rails to create web pages that allow users to CRUD resources
⭐ Create instance and class methods on a Rails model that use ActiveRecord methods and helpers
⭐ Write model and feature tests that fully cover data logic and potential user behavior
⭐ Utilize Continuous Integration via Travis CI or CircleCI
⭐ Deploy to Heroku
⭐ Implement a production-quality user interface using Bootstrap or other common CSS styling framework
⭐ Implement project management by using project boards, participating in daily stand-ups and retros
⭐ Utilize quality workflow practices: small commits, descriptive pull requests, and code reviews
⭐ Write thorough, understandable documentation
⭐ Apply RuboCop’s style guide for code quality
Welcome Page | Registration | New Teacher Page | New Parent Page | Teacher Dashboard | Parent Dashboard | Edit Classroom Page | Parent Profile | Teacher Profile
The following section displays a comparison of our vision and how our vision came to life.
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|
Wireframe | Production |
---|---|