Skip to content

Package structure thoughts #7

@dgkf

Description

@dgkf

After having a bit more time to review the package, I just wanted to document a bunch of ideas for next steps. It runs a wide range, from immediately actionable to long-term projects.

val.meter

  • Changes already explored in Exploring enhancements to support val.meter transition #5:
    • Use val.meter::pkg as primary object during reporting
    • Simplify parameterization of template
  • Metric visualization metadata
    • I think we should add some extra metadata in val.meter when metrics are implemented, which might indicate, for example "lower-is-better", "higher-is-better" and maybe some cutoffs for "okay", "good" and "great" that could be used to indicate some rough measure of quality in the report (eg, color the cards using bootstrap "danger", "warning", "success").

Ease of use

  • Restructure primarily around a quarto extension
  • Simplify package_report so that it is effectively a thin wrapper around quarto::quarto_render, using our extension and template
  • Remove post-processing of file formats (top_page.html) -- if we need extra html, it can be handled in a quarto extension's include-in-header parameter
    • Remove top bar -- if this is needed it should be managed by the overarching webpage, not by the quarto doc. If we want this structure, we could <embed> standalone html reports in a page with a consistent navbar, but it shouldn't be a fixed part of the report

Package artifacts

  • Generally, I'd like to remove any binary files in the repo.
    • Logo .png could become .svg, and generally I think it's a good idea to use vector formats for web when possible anyways
    • Remove .Rds files, for examples - generate on the fly, perhaps from test fixtures of a generic testing packages

CSS

  • Avoid hardcoding css values, instead deriving from quarto variables or bootstrap variables so that our themes can be customized

Use in val.repo

  • Move away from storing package reports in the same repo as our github actions for maintaining the repo
    • Avoid repo size bloat due to md and html documents
    • Avoids complexity of juggling static artifacts in same repo as PACKAGES
  • To view packages, I think we might want to consider a separate website that fetches the PACKAGES file and renders a dynamic page for a given package:
    • read (and cache) the PACKAGES index
    • parses the dcf file and renders a package-specific data

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Discussion

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions