Feluda Documentation

This directory contains the documentation for Feluda, built with Sphinx and MyST-NB.

Building the Documentation

Prerequisites

Install the documentation dependencies:

uv pip install -e ".[dev]"

Build Commands

From the docs/ directory:

# Clean build directory
make clean

# Build HTML documentation
make html

Viewing the Documentation

After building with make html, you can view the documentation by opening docs/_build/html/index.html in your web browser.

Documentation Structure

  • index.md - Main documentation page

  • install.md - Installation guide

  • quickstart.md - Quick start guide

  • contributing.md - Contributing guidelines

  • api/ - API documentation

    • feluda.md - Core Feluda API

    • operators.md - Operators API

  • examples/ - Example notebooks

    • 01_plot_tsne_videos.md - t-SNE visualization example

    • 02_plot_cluster_videos.md - Clustering example

    • 03_classify_video_zero_shot.md - Zero-shot classification example

Configuration

The documentation is configured in conf.py with the following key features:

  • AutoDoc: Automatically generates API documentation from docstrings

  • MyST-NB: Executes and displays Jupyter notebooks

  • Read the Docs Theme: Clean, responsive theme

  • Copy Button: Easy code copying

  • Design Components: Enhanced UI components

Adding New Documentation

Adding API Documentation

  1. Add docstrings to your Python code

  2. Create a new .md file in the appropriate directory

  3. Use {eval-rst} blocks with .. automodule:: directives

Adding Examples

  1. Create a Jupyter notebook in examples/

  2. Create a corresponding .md file with {nb-exec} directive

  3. Add the example to the main index

Adding General Pages

  1. Create a new .md file

  2. Add it to the appropriate toctree in index.md

  3. Use MyST Markdown syntax for enhanced features