BodhiTree Documentation

Overview

  • What is BodhiTree?
    • Learning philosophy
    • How BodhiTree differs from other platforms
    • Where to go next
    • Contact
      • Core Features
        • Interactive multimedia books
        • Rich learning elements
        • Assessment and running a class
        • Multi-platform access
      • Institutional Adoption
        • IIT Bombay
        • Other institutions

User Guide

  • 1. Getting Started
    • 1.1 Creating an account
    • 1.2 Signing in
      • Two devices at a time
    • 1.3 Instructor mode vs Student mode
    • 1.4 Your role in a course
      • What each role can do
      • Enrollment status
    • 1.5 Your profile
    • 1.6 Signing out
  • 2. Creating and Setting Up a Course
    • 2.1 The My Courses dashboard
    • 2.2 Creating a course
      • Choosing an enrollment type
      • The two forum defaults
    • 2.3 Importing a course
      • From a file
      • From a URL
    • 2.4 Publishing and unpublishing
    • 2.5 Downloading, sharing, and exporting
    • 2.6 Deleting a course
    • 2.7 Course Settings
      • Card 1: Course Settings
      • Card 2: About Course
      • Card 3: Multimedia Book Settings
      • Card 4: Course Announcement Settings
      • Card 5: Discussion Forum Settings
      • Card 6: Content Protection
    • 2.8 Additional Pages
    • Known limitations
  • 3. People and Enrollment
    • 3.1 The four ways to add people
    • 3.2 Bulk enrollment from a CSV
      • The file
      • Recognised column names
      • Options
      • The confirmation step
      • Progress and aborting
      • The results screen
      • Enrollment can be capped
    • 3.4 Approving pending students
    • 3.5 Managing enrolled students
      • Actions menu
      • Editing batch tags
      • Upload Tags CSV
    • 3.6 Adding one person at a time
    • 3.7 Adding someone who already has an account
    • 3.8 Managing TAs
      • Choosing between STA and JTA
      • What only the creator can do
    • 3.9 Losing access
  • 4. Course Content: the Multimedia Book
    • 4.1 How content is structured
    • 4.2 Building a chapter
      • Reordering
    • 4.3 Adding content
      • Video
      • Document
      • URL
      • Quiz
    • 4.4 Authoring quiz questions
      • Question types
      • Fields
      • The quiz ⋮ menu
    • 4.5 In-video quizzes (markers)
      • Adding a marker
      • Bulk import and export
      • What students experience
    • 4.6 Reusing content
    • 4.7 Publishing content to students
  • 5. Labs and Activities
    • 5.1 The labs list
    • 5.2 Creating a lab
    • 5.3 Programming activities
      • Basic setup
      • Advanced configuration
      • Testcases
      • Resource limits
      • Autograding
      • Rubrics for subjective grading
    • 5.4 Quiz activities (lab quizzes)
      • Questions
      • Settings
      • Required files
    • 5.6 Managing activities
      • The Recycle Bin
    • 5.7 Import and export
      • Exporting
      • Importing
    • 5.8 Viewing submissions
      • Grading with rubrics
      • Submitting on a student’s behalf
  • 7. Grades and the Gradebook
    • 7.1 How the final percentage is calculated
      • Where each mark comes from
    • 7.2 The three views
    • 7.3 Editing a grade directly in the grid
    • 7.4 Publishing grades to students
    • 7.5 Extra columns
      • Creating a column
      • Editing a column
      • Deleting a column
    • 7.6 Hiding columns from students / excluding from totals
    • 7.7 Importing marks from a CSV
      • File requirements
      • Column header syntax
      • Cell values
      • Who gets matched
      • The import flow
      • Template
    • 7.8 Undoing an import (rollback)
    • 7.9 Exporting
    • 7.10 Stale grade warnings
    • 7.11 Deleting the gradebook
  • 8. Announcements, Email and the Discussion Forum
    • 8.1 Announcements
      • Whether announcements send email
    • 8.2 Email Notices
      • Choosing recipients
      • Importing a recipient list
      • Composing
    • 8.3 The Discussion Forum
      • Creating a thread
      • Moderating
      • Anonymity
      • Forum email
    • 8.4 Schedule
  • 9. Analytics and Statistics
    • 9.2 Quiz Report
    • 9.3 Leaderboards
      • Course leaderboard
      • Lab leaderboard
    • 9.5 Exporting data
  • 10. Reference
    • 10.1 File size limits
    • 10.2 Code execution limits
      • What you may change
      • Output shown to students
    • 10.3 Attempt limits
    • 10.4 CSV formats
      • Gradebook extra-columns import
      • Gradebook export
      • Email recipients import
    • 10.5 Quiz question file (SAFE ODT format)
    • 10.6 Roles at a glance
    • 10.7 Time and scheduling
    • 10.8 Account and session limits
    • 10.9 Features that are not available
  • Appendix A. What Your Students See
    • A.1 Before they are enrolled
    • A.2 Publishing and the “Upcoming Content” state
    • A.3 Multimedia Book quizzes: the three reveal settings
    • A.4 In-video quizzes
    • A.5 Labs and activities
    • A.7 Programming assignments
    • A.8 Lab quizzes (the “other” activity type)
    • A.9 Grades, leaderboard, and statistics
    • A.10 Discussion forum

Developer Documentation

  • Overview
    • 📋 Step-by-Step Process for Feature Development
      • ✅ 1. Submit Feature Request
      • 🧱 2. Approval & Preparation
      • 🧪 3. Developer Tasks
        • a. Planning
        • b. Coding
        • c. Testing
        • d. Submission
      • 🔄 4. Core Team Review & Integration
      • 🚀 5. Deployment & Final Testing
      • 🌐 6. Production Release
    • Found a bug instead?
  • Feature Development
    • Best Practices
      • Writing a Git Message
        • Writing subject line
        • Add emojis to your messages
    • Access Request
      • What you are asking for
      • Steps
      • While you have access
    • Feature Request Process
      • 📌 Steps
      • ✅ Approval Team Members
    • Design Process
    • Bug Reporting
    • Follow TDD Approach
      • 🧭 TDD Workflow: Red – Green – Refactor
      • 📁 Folder Structure
        • Django (Backend)
        • React (Frontend)
      • ✅ Test Types with Logic and Examples
        • 1. Unit Testing
        • 2. Integration Testing
        • 3. Functional Testing
        • 4. End-to-End (E2E) Testing
        • 5. Smoke Testing
        • 6. Regression Testing
      • 🧪 Real TDD Example: “Create a Course”
        • Django
        • React
      • 🚀 TDD Best Practices
    • Testing Types in Bodhitree
      • 1. ✅ Unit Testing
        • 🔍 What:
        • 🔧 React:
        • 🔧 Django:
      • 2. ✅ Integration Testing
        • 🔍 What:
        • 🔧 React:
        • 🔧 Django:
      • 3. ✅ Functional Testing
        • 🔍 What:
        • 🔧 React:
        • 🔧 Django:
      • 4. ✅ End-to-End (E2E) Testing
        • 🔍 What:
        • 🔧 Tools:
      • 5. ✅ Manual Testing
        • 🔍 What:
        • 🔧 Tools:
      • 6. ✅ Smoke Testing
        • 🔍 What:
        • 🔧 Usage:
      • 7. ✅ Regression Testing
        • 🔍 What:
        • 🔧 Tools:
      • 8. ✅ Performance Testing
        • 🔍 What:
        • 🔧 React:
        • 🔧 Django:
      • 9. ✅ Security Testing
        • 🔍 What:
        • 🔧 React:
        • 🔧 Django:
      • 🧩 Summary Table
    • Testing Process
      • Process
      • Future: enhancements (using metrics for quality software)
      • See also
    • Branching Style
      • Purpose
      • Git branching structure matrix
      • Key Points
      • Merge Rules
      • Key Points for Quarterly Releases
        • Versioning System:
        • Merging Process for Releases
      • See also
    • Platform Setup & Installation
      • Original Repository
      • Directory Structure
      • Prerequisites
      • Installation
        • Method 1: Interactive Script (Recommended)
        • Method 2: Manual, Step-by-Step Installation
      • Developing with VS Code
        • Step 1: Install the required VS Code extensions
        • Step 2: Attach VS Code to the containers
        • Step 3: Run and debug the wsgi (backend) container
        • Step 4: Run the nodejs (frontend) container
      • Contributing
    • Merge Request Checklist
      • 🔍 Code Quality
      • 🧪 Testing
      • 📄 Documentation
      • 🔐 Security & Performance
      • 🚀 Deployment Readiness
      • 📝 Merge Request Metadata
      • 🧑‍⚖️ Reviewer Checks (For Reviewers Only)
  • Deployment
    • Best Practices
      • Versioning Convention
        • In short
  • Versioning
    • Current & Past Versions
      • Current version
      • Upcoming version
      • Past versions
      • See also
  • Bug Reporting & Process
    • Format for creating an issue on Github
      • Title
      • Body
      • After you submit
      • Do not use this format for
BodhiTree Documentation
  • Search


© Copyright 2026, BodhiTree, IIT Bombay.

Built with Sphinx using a theme provided by Read the Docs.