Study Structures
This reference guide explains the hierarchical structure of content in BookFellows.
Hierarchy Overview
Section titled “Hierarchy Overview”Study├── Lesson 1│ ├── Lesson Item 1 (Question or Heading)│ ├── Lesson Item 2│ └── Lesson Item 3├── Lesson 2│ ├── Lesson Item 1│ └── Lesson Item 2└── Lesson 3 └── ...
A Study is the top-level container for educational content.
Study Properties
Section titled “Study Properties”Property | Type | Description |
---|---|---|
Title | String | The name of the study |
Description | String | Overview of what the study covers |
Status | Enum | Draft, Released, or Archived |
Release Terms | Enum | Private or Public |
Payment Terms | Enum | Free to Use or Pay to Use |
Author | Reference | The creator of the study |
Study Statuses
Section titled “Study Statuses”- Draft: Study is being created or edited
- Released: Study is available for use
- Archived: Study is no longer actively available
Release Terms
Section titled “Release Terms”- Private: Only accessible to specific users or groups
- Public: Available in the public library
Lesson
Section titled “Lesson”A Lesson is a section within a study that contains related content.
Lesson Properties
Section titled “Lesson Properties”Property | Type | Description |
---|---|---|
Title | String | The lesson name |
Description | String | Brief overview of the lesson |
Order | Number | Position within the study |
Study | Reference | Parent study |
Lesson Organization
Section titled “Lesson Organization”- Lessons are presented in sequential order
- Each lesson can contain multiple lesson items
- Lessons can be completed in sequence or individually
Lesson Item
Section titled “Lesson Item”A Lesson Item is the smallest unit of content within a lesson.
Lesson Item Types
Section titled “Lesson Item Types”Question
Section titled “Question”Interactive content that prompts learner response.
Property | Type | Description |
---|---|---|
Type | Enum | ”Question” |
Text | String | The question being asked |
Context | String | Supporting information or scripture |
Order | Number | Position within the lesson |
Heading
Section titled “Heading”Organizational element for structuring content.
Property | Type | Description |
---|---|---|
Type | Enum | ”Heading” |
Text | String | The heading text |
Order | Number | Position within the lesson |
Study Instances
Section titled “Study Instances”When a user or group begins a study, a Study Instance is created to track progress.
Study Instance Properties
Section titled “Study Instance Properties”Property | Type | Description |
---|---|---|
Status | Enum | Active, Complete, or On Hold |
Role | Enum | Member, Leader, or Solo |
Progress | Object | Tracking completion status |
Instance Statuses
Section titled “Instance Statuses”- Active: Currently being worked on
- Complete: All lessons finished
- On Hold: Temporarily paused
Instance Roles
Section titled “Instance Roles”- Solo: Individual study, not part of a group
- Member: Participant in a group study
- Leader: Facilitator of a group study
Groups
Section titled “Groups”Groups organize multiple users studying together.
Group Properties
Section titled “Group Properties”Property | Type | Description |
---|---|---|
Name | String | Group identifier |
Description | String | Group purpose/details |
Status | Enum | Active, Complete, On Hold |
Access Terms | Enum | By Invitation, Open, Closed, Solo |
License Terms | Enum | Free to Join, Pay to Join, Solo |
Access Terms
Section titled “Access Terms”- By Invitation: Join only with an invitation
- Open: Anyone can join
- Closed: No new members accepted
- Solo: Individual study, not a group
Classes
Section titled “Classes”Classes are structured learning sessions based on studies.
Class Properties
Section titled “Class Properties”Property | Type | Description |
---|---|---|
Study | Reference | The study being taught |
Manager | Reference | Class facilitator |
Status | Enum | Active, Complete, On Hold |
Participants | Array | List of enrolled members |
Data Relationships
Section titled “Data Relationships”User├── Study Instances (as participant)├── Group Memberships├── Class Enrollments└── Created Studies (as author)
Group├── Members├── Associated Study└── Study Instances
Study├── Lessons├── Author└── Instances (where used)
Lesson├── Lesson Items└── Parent Study
API Conventions
Section titled “API Conventions”When working with the BookFellows API:
- All IDs are unique identifiers
- References use the format
Id<"tableName">
- Creation timestamps are stored as Unix timestamps
- All content is versioned for history tracking