ManSangSin / Rhythm-Code

https://starter-kit-al84.onrender.com/
ISC License
3 stars 7 forks source link

Add rhythm/rhythm code #19

Open gregdyke opened 9 months ago

gregdyke commented 9 months ago

Story

Acceptance Criteria

  1. Given a backend/API for adding new rhythms and rhythm codes
    • And we have a tree/list view of existing rhythms and rhythm codes
    • When I click "add rhythm"
    • Then ui (could be modal/could be in place) appears to allow entering data
    • And ui includes dropdown to select rhythm code (or there is one add rhythm button per rhythm code)
    • And ui includes necessary fields (title, description, video, etc.)
    • And ui has ability to input coordinates (ui edit of coordinates in follow-up story)
  2. Given the "add rhythm" modal is visible
    • and valid data has been entered
    • When I click "save rhythm"
    • Then information is persisted to backend/API
    • And modal disappears
    • And rhythm appears in tree/list
  3. Given the "add rhythm" modal is visible
    • When I click "cancel"
    • Then modal disappears
  4. Given a backend/API for adding new rhythms and rhythm codes
    • And we have a tree/list view of existing rhythms and rhythm codes
    • When I click "add rhythm code"
    • Then ui (could be modal/could be in place) appears to allow entering data
    • And ui includes necessary fields (name)
    • And ui has ability to input coordinates (ui edit of coordinates in follow-up story)
  5. Given the "add rhythm" modal is visible
    • and valid data has been entered
    • When I click "save rhythm"
    • Then information is persisted to backend/API
    • And modal disappears
    • And rhythm appears in tree/list
  6. Given the "add rhythm" modal is visible
    • When I click "cancel"
    • Then modal disappears

Implementation Notes

  1. the backend/API does not exist -> implement as part of this ticket
  2. for now we can put coordinates for the rhythm codes + allow rhythms without coordinates (they could inherit coordinates from parent code, or go to 0,0, or not appear on the map)
  3. garbage/non-valid data TBD (probably title is mandatory, coordinates (or default coordinates), description or video) -> followup ticket once you have decided what it should be

Checklist: