/QFit

Primary LanguageKotlin

quarantine calisthenic real-time group workouts

FIREBASE DATA SCHEMA
{
  "users": {
    "$user_id": {
      "groups": {  # Group membership
        "$group_id": true
      },
      "photo_url": ...
    }
  },
  "groups": {
    "$group_id": {
      "metadata": {
        "name": "runners club"
        "creator_id": "...",
        "goals": {
          "$goal_id": {
            "amount": 40  # current daily goal
          }
        }
      },
      "members": {  # Member list
        "$user_id": true
      }
    }
  },
  "group_progress": {
    "$group_id": {
      "$date": {
        "$goal_id": {
          "$user_id": {
            "amount": 50
          }
        }
      }
    }
  },
  "user_progress": {
    "$user_id": {
      "$date": {
        "$goal_id": {
          "amount": 50
        }
      }
    }
  },
  "goals": {  # static list controlled by us
    "$goal_id": {
      "name": "pushups"
    }
  }
}