A Jira clone for the terminal.
Two primary features in Jira will be implemented:
- Epic CRUD
- Story CRUD
Create Epic
Steps:
cd
into the root folder of the project- Run
cargo run
- Input
c
to create a new Epic - Input
"New Epic name"
as Epic name - Input
"New Epic description"
as Epic description - Check if
db.json
matches with the following:{"last_item_id":1,"epics":{"1":{"name":"New Epic name","description":"New Epic description","status":"Open","stories":[]}},"stories":{}}
Create Story
Steps:
- Input
1
to select the created Epic - Input
c
to create a new Story in the selected Epic - Input
"New Story name"
as Story name - Input
"New Story description"
as Story description - Check if
db.json
matches with the following:{"last_item_id":2,"epics":{"1":{"name":"New Epic name","description":"New Epic description","status":"Open","stories":[2]}},"stories":{"2":{"name":"New Story name","description":"New Story description","status":"Open"}}}
Update Epic
Steps:
- Input
u
to update the selected Epic - Input
2
to selectIN-PROGRESS
as the updated status - Check if
db.json
matches with the following:{"last_item_id":2,"epics":{"1":{"name":"New Epic name","description":"New Epic description","status":"InProgress","stories":[2]}},"stories":{"2":{"name":"New Story name","description":"New Story description","status":"Open"}}}
Update Story
Steps:
- Input
2
to select the created Story - Input
u
to update the selected Story - Input
3
to selectRESOLVED
as the updated status - Check if
db.json
matches with the following:{"last_item_id":2,"epics":{"1":{"name":"New Epic name","description":"New Epic description","status":"InProgress","stories":[2]}},"stories":{"2":{"name":"New Story name","description":"New Story description","status":"Resolved"}}}
Remove Story
Steps:
- Input
d
to delete the selected Story - Input
Y
to confirm removal - Check if
db.json
matches with the following:{"last_item_id":2,"epics":{"1":{"name":"New Epic name","description":"New Epic description","status":"InProgress","stories":[]}},"stories":{}}
Remove Epic
Steps:
- Input
c
to create a new Story in the selected Epic - Input
"New Story name"
as Story name - Input
"New Story description"
as Story description - Input
d
to delete the selected Epic - Input
Y
to confirm removal - Check if storage.json matches with the following:
{"last_item_id":3,"epics":{},"stories":{}}