Erica Hagle
Arden Ranta
Xander Hendry
Sam Tran
Kevin Zolman
This application is a Dungeons and Dragons Encounter Builder, with the intended user being a Dungeon Master. It allows the user to fill out a form to add encounter details including encounter name, party size, party level, summary, description, treasure & rewards, and monsters. Monsters from the D&D 5e compendium can be filtered and added based on size, name, hit points, and armor class attributes. Users can also see previews of the encounters they've built and click on the preview to view the full details of the corresponding encounter.
This application was built as the group capstone project of Turing School of Software and Design's Front End Web Development program, Mod 4. We were given 2 weeks from kick-off to complete and submit the project for evaluation. This repo houses the FE contribution to the project; the BE repo and installation instructions can be found here: Tavern Keeper BE Repo. The deployed API can be found here: Tavern Keeper BE Deployment.
-
Clone this client repository to your local machine
-
Navigate (
cd
) to your local directory containing the repository -
To install the dependencies
npm install
-
To start the server
npm start
-
On your web browser, navigate to http://localhost:3000/
After completing installation of the app...
- Navigate (
cd
) into your local directory containing the repository - To install Cypress dependencies
npm install cypress
- To launch Cypress
npx cypress open
- When Cypress opens, click the
E2E Testing
box and choose a browser (if you are currently using the Chrome browser, using Electron is recommended to avoid issues) - Click the
Start E2E Testing in <chosen browser>
button - Select a test and see the magic!
- The
errorhandling_spec.cy.js
script will test API error handling, as well as the handling of navigating to a non-existent path - The
functional_spec.cy.js
script will test all functional elements of the application, across all pages
- The
- Demonstrate knowledge you’ve gained throughout Turing
- Use an agile process to turn well defined requirements into deployed and production ready software
- Gain experience dividing applications into components and domains of responsibilities to facilitate multi-developer teams
- Explore and implement new concepts, patterns, or libraries that have not been explicitly taught while at Turing
- For this project, both FE and BE have implemented GraphQL
- Practice an advanced, professional git workflow including a Pull Request Review
- Gain experience using continuous integration tools to build and automate the deployment of features
- Build applications that execute in development, test, CI, and production environments
- Focus on communication between front-end and back-end teams in order to complete and deploy features that have been outlined by the project spec
- Learning GraphQL while working on our first full-stack team project
- Work-life balance
- Minimizing scope creep
- Excellent team collaboration and communication
- Working with content that interests us
- Further practice with consulting documentation
- Successful implementation of GraphQL in both testing and deployment