---
# System prepended metadata

title: NestQuest - Software Design - Sketch

---

# Idea

nest_quest is quest and learning platfomr where user can earn nft or reward by completing the quest

## Requirments

### Functional Requirments

- User is able to get a reward

### Non Functional Requirments

- The WebApp should App

## Stories

### User Story

- As a User I wanna get a Reward

## Diagramm

### UseCase

```plantuml
@startuml
actor User
left to right direction

User -- (get)
@end
```

### ClassDiagram

```plantuml
@startuml
class RewardContract{
+rewards: address[]

doChallenge()
getAllReward()
}
@end
```

### Sequence

```plantuml
actor User
entity WebApp
database SmartContract

User -> WebApp: "reward me"
WebApp -> SmartContract: "reward him"
SmartContract -> WebApp: "is rewarded"
WebApp -> User: "graaatzz"

```