Expand description
Builder pattern API for creating course seed data declaratively.
§Usage
use chrono::Utc;
use sqlx::Connection;
use headless_lms_server::programs::seed::builder::{
    course::CourseBuilder,
    module::ModuleBuilder,
    chapter::ChapterBuilder,
    page::PageBuilder,
    context::SeedContext,
};
let course = CourseBuilder::new("My Course", "my-course")
    .desc("A sample course")
    .chatbot(true)
    .module(
        ModuleBuilder::new()
            .order(0)
            .name("Introduction")
            .ects(5.0)
            .chapter(
                ChapterBuilder::new(1, "Getting Started")
                    .opens(Utc::now())
                    .page(PageBuilder::new("/intro", "Introduction Page"))
            )
    );
let (course, instance, module) = course.seed(&mut conn, &context).await?;