/dnd-organizer-api

Java Independent Project 6/15/18

Primary LanguageJava

DnD Spell Tracker API

By: Kayl Eubanks

Description

This API will help players quickly call what spells are accessible to a character of a specific class.

API Use:

  • API route is available at https://dnd-spell-organizer.herokuapp.com

  • Use Postman to query the database

  • Routes include:

    HTTP Method Route Effect
    POST /spells/add Add new spell
    POST /classes/add Add new class
    POST /characters/add Add new character
    GET /classes Get all classes
    GET /characters Get all characters
    GET /spells Get all spells
    GET /spells/:spellId Get single spell
    GET /classes/:classId Get single class
    GET /characters/:characterId Get single character
    POST /classes/:classId/spells/:spellId/add Add spell to class
    POST /characters/:characterId/classes/:classId/add Add class to character
    GET /classes/:classId/spells Get all spells by class
    DELETE /classes/:classId Delete single class
    DELETE /spells/:spellId Delete single spell
    DELETE /characters/:characterId Delete single character
    PUT /classes/:classId/update Update single class
    PUT /spells/:spellId/update Update single spell
    PUT /characters/:characterId/update Update single character
    GET /classes/:classId/delete Delete single class
    GET /spells/:spellId/delete Delete single spell
    GET /characters/:characterId/delete Delete single character

Setup/Installation Requirement for Developers:

Specs

  • User can submit new player character with specified class
  • User can submit a new class
  • User can submit a new spell
  • User can assign spells to a class
  • User can assign a class to a player character
  • User can update spells, classes, and player character details
  • User can see all classes
  • User can see all player characters
  • User can see all spells
  • User can see all spells assigned to a specific class
  • User can details of a single spell, class, or player character
  • User can delete spells, classes, or player characters

Known Issues

While updating project, IDE configurations were changed and prevented effective testing. Files were copied to a new project folder and force pushed to same repository. History of commits prior to issues is available on the "dev" branch.

No known bugs at this time. Please contact author at kayleubanks@gmail.com with any bugs.

Technologies Used

  • Java
  • IntelliJ IDEA
  • Maven
  • Gradle
  • JUnit
  • Spark
  • Postman
  • SQL
  • POSTGRESQL
  • Heroku

License

This software is licensed under the MIT license.

Copyright (c) 2018 Kayl Eubanks