A rails backend for a service oriented application. A user can request and receieve data from endpoints for other users based on interests, location, and also user to user chatrooms. Endpoints include querying a single user, updating a users profile, a list of users based off location and interests.
To see the Frontend application on github for this project [click here](https://github.com/Tribe-Turing/fe_tribe
To visit the application on heroku click here
The design of this application relies on the facade design pattern. Here's a very high level overview:
- A controller receives a request from the front end and intiates the creation of a facade, and passes it data(params, from JSON or query).
- A facade is a ruby class that initializes a Service, and sends the service data to a PORO.
- A service calls an external api enpoint and returns parsed JSON.
- The parsed JSON is turned into a Ruby object through a PORO.
- The object is serialized and sent to the route matching the controller action.
ruby 2.7.4
rails 5.2.6
- clone this repository
- cd into 'be_tribe' directory
- run
'bundle install' to install gems
- run
rake db:{drop,create,migrate,seed} to prepare the database
- run
bundle exec rspec
to run the test suite (run after api set up) - run
rails s
to launch the production environment - send requests to "https://localhost:5000".
Sam Ivari: GitHub | Gunnar Sorensen: GitHub | Eldridge Turambi: Github | Dillon Parker: Github |