Link to Dungeons and Discord Website
Link to Back-End Microservice
- Ruby 3.2.2
- Rails 7.0.7.2
- Faraday A gem to interact with APIs
- SimpleCov A gem for code coverage tracking
- ShouldaMatchers A gem for testing assertions
- VCR / Webmock Both utilized to stub HTTP requests in tests to simulate API interactions
- Omniauth A gem for Oauth
- Fork Repository
git clone <repo_name>
cd <repo_name>
bundle install
rails db:{drop,create,migrate,seed}
rails server
- In your web browser, navigate to your local host
http://localhost:5000
Note: the localhost for this repo has been changed from the default 3000 to 5000 in order to run this localhost and the Back End's localhost simultaneously.
Tired of having to lug around a sheet of paper with all of characters attributes for your Dungeons and Dragons games? You get all the way to the Dungeon Master's lair and forgot your character sheet? Cry no longer, weary traveler, Dungeons and Discord is here! Utilizing Discord to log in to the app, users are able to create characters by naming the character and selecting a class. Once the character has been created, this character is stored for you, so you don't have to remember that pesky piece of paper again! Players can also utilize Discord's server creation so a DM can host a game over the voice channel and a session can happen from the comfort of your home, car, anywhere with stable connection to the internet!
This repository is the front end of the project, which requires a Discord account to log-in. Once a user is logged in, they can create DnD characters which are saved and displayed on their user show page. The back end serves as data storage and external API calls for the project.
Dungeons and Discord leverages omniauth
and omniauth-discord
to handle an OAuth2.0 connection. OAuth2.0 is used for authentication from Discord, allowing the log-in of users and is required to use Dungeons and Discord.
The app requires access to your username, avatar, and banner from Discord, but does NOT grant access to modify or edit any of those details.
Read Discord's docs on Oauth2 to learn more. This is an example of what the discord client id and secret key will look like.
discord:
client_id: <key>
secret: <key>
- Paul Bennett -GitHub: @pcbennett108
- Allan Evans - GitHub: @aevans27
- Xander Hendry - GitHub: @XanderHendry
- Joseph Lee - GitHub: @josephlee702
- Cory Powell - GitHub: @coryrpow