Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Metrics #5

Open
2 of 6 tasks
miczed opened this issue Apr 19, 2021 · 0 comments
Open
2 of 6 tasks

Metrics #5

miczed opened this issue Apr 19, 2021 · 0 comments
Milestone

Comments

@miczed
Copy link
Contributor

miczed commented Apr 19, 2021

  • Visualize streaks below each goal
  • display amount of skipped / failed and amount of done per habit
  • display total time spent on session
  • MetricConfig Schedule: either "daily" or "hourly". If "hourly" is selected, a start and end time can be specified. If "daily" is selected, the normal "at" field is displayed that is also displayed for habits.
  • every create / update of config generates a list of samplings in the future and deletes all the redundant one
  • display chart with samples and habits in reflection

As a user I want to be able to track metrics that affect a habit / goal. Examples:

  • amount of coffees consumed
  • amount of cigarettes smoked

Type of metrics:

  • binary Did you do XX today? -> could be a Task
  • counter Glasses of water: +1 / -1
  • scale How productive do you feel today (1-10) -> can be used to track productivity / experience sampling

Datamodel:

  • ExperienceSampleConfigs:
    • title: string, e.g. "Glasses of water"
    • prompt: string e.g. "How many glasses of water did you drink?"
    • type: binary, counter, scale
    • scale_steps: integer, 2
    • scale_start: integer, 0
    • scale_end: integer, 10
    • scale_label_start: string, "not at all"
    • scale_label_center: string, "don't know"
    • scale_label_end: string, "definitely"
    • schedule: string, Montrose schedule
  • Samplings:
    • experience_sample_config_id: integer, foreign key to MetricConfigs
    • user_id: integer, foreign key to user not required because config contains id of user
    • value: integer, the value of the metric
    • scheduled_at: timestamp of schedule
    • sampled_at: timestamp of when sample was collected

Endpoint:

  • GET {{API_URL}}/users/3/samplings
  • PUT {{API_URL}}/users/3/samplings/23

Open Questions:

  • do we connect metrics to goals or habits?
  • how much configuration do we allow? (binary and counter are super easy - scale is harder to implement)
@miczed miczed added this to the Sprint 3 milestone Apr 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant