Skip to content

Investigate integrating tytanic for Typst document testing #28

@gerchowl

Description

@gerchowl

Feature Request

Investigate integrating tytanic as a test runner for Typst documents in this project.

Use Case

This project contains multiple Typst documentation files across different directories:

  • Main documentation (docs/main.typ)
  • Example projects (example/docs/main.typ, example/hello-world-cli/docs/main.typ, etc.)
  • Library files (lib/technical-documentation-package.typ)
  • Generated documentation files

Currently, there's no automated testing to ensure:

  • All Typst documents compile successfully
  • Changes don't introduce regressions in document compilation
  • Reference documents remain consistent
  • Documentation quality is maintained across multiple projects

Tytanic is a test runner specifically designed for Typst projects that could help:

  • Compile and compare tests automatically
  • Manage tests of various types
  • Manage and update reference documents when tests change
  • Filter tests effectively for concise test runs

Proposed Solution

  1. Research tytanic capabilities:

    • Review tytanic documentation and features
    • Understand integration requirements
    • Evaluate compatibility with current build system (Makefile)
  2. Assess fit for this project:

    • Determine if tytanic supports our multi-project structure
    • Check if it works with our current Typst version
    • Evaluate how it would integrate with existing CI/CD workflows
  3. Create integration plan:

    • Define test structure for existing Typst files
    • Plan integration with Makefile build system
    • Consider CI/CD integration (.github/workflows/ci.yml)
  4. Implementation (if viable):

    • Install and configure tytanic
    • Create initial test suite for key documentation files
    • Add test targets to Makefile
    • Integrate into CI/CD pipeline

Alternatives Considered

  • Manual testing: Current approach, but doesn't scale and is error-prone
  • Custom test scripts: Would require significant development effort
  • Other Typst testing tools: Tytanic appears to be the most mature solution for Typst testing

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions