Skip to content
This repository has been archived by the owner on Apr 1, 2018. It is now read-only.

Data Architecture

Shridhar Gupta edited this page Jul 1, 2015 · 14 revisions

Data Architecture (Work In Progress)

Here is a layout of platform data, and how they should interact. This is how it is stored in MongoDB, not necessarily how the API will be structured (but it will be very similar).

Exercises

A record of one exercise type. Support multiple videos per exercise, that can be voted based on quality.

id,
title,
videos [
  { # Video 1
    videoId # youtube id,
    startTime,
    endTime,
    votes,
  },
  { # Video 2
    ... 
  }
],
description,
...

ExerciseComments

...

Progressions

Set of exercises in increasing difficulty. A user's progress can be tracked within a progression. When retrieving, send to client (or api) with exercise details.

id,
title,
levels [
  {
    level,
    exerciseId,
  },
  {
    ...
  }
]

Routines

A set of progressions and exercises organized into weeks, days, sections.

...
Clone this wiki locally