{
  "_id": "6ab29b583d719c1f8408dab1",
  "Package": "glyph",
  "Title": "A Next-Generation Grammar of Interactive Graphics",
  "Version": "0.1.1.9000",
  "Authors@R": "c(\nperson(\"Joash Joshua\", \"Ayo\", role = c(\"aut\", \"cre\"),\nemail = \"joashjoshua789@gmail.com\"),\nperson(\"Mike\", \"Bostock\", role = c(\"ctb\", \"cph\"),\ncomment = \"Author of the bundled D3.js library\"))",
  "Description": "A modern visualization grammar that treats interactivity,\nanimation, and composable layouts as first-class concepts\nrather than afterthoughts. Designed to address key limitations\nof existing grammars: native hover, click, and zoom events,\nbuilt-in multi-plot composition, and a token-based theming\nsystem. Renders interactive HTML widgets via 'D3.js' from a\nsingle declarative specification.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "Config/testthat/edition": "3",
  "VignetteBuilder": "knitr",
  "URL": "https://github.com/josh45-source/glyph,\nhttps://josh45-source.github.io/glyph/",
  "BugReports": "https://github.com/josh45-source/glyph/issues",
  "Config/roxygen2/version": "8.1.0",
  "Config/pak/sysreqs": "cmake make libuv1-dev",
  "Repository": "https://josh45-source.r-universe.dev",
  "Date/Publication": "2026-09-22 11:03:30 UTC",
  "RemoteUrl": "https://github.com/josh45-source/glyph",
  "RemoteRef": "HEAD",
  "RemoteSha": "0d49d20587caa957d2858778a757292cc10b44c9",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-09-22 15:07:41 UTC",
    "User": "root"
  },
  "Author": "Joash Joshua Ayo [aut, cre],\nMike Bostock [ctb, cph] (Author of the bundled D3.js library)",
  "Maintainer": "Joash Joshua Ayo <joashjoshua789@gmail.com>",
  "_user": "josh45-source",
  "_type": "src",
  "_file": "glyph_0.1.1.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/8eb6b12053044cab2e4728be9f40e0d899b685ca896b2dacb3dfc6e98daae5ac",
  "_filesize": 317094,
  "_sha256": "8eb6b12053044cab2e4728be9f40e0d899b685ca896b2dacb3dfc6e98daae5ac",
  "_expires": "2026-12-31T15:14:30.000Z",
  "_created": "2026-09-22T15:07:41.000Z",
  "_published": "2026-09-22T15:14:32.659Z",
  "_jobs": [
    {
      "job": 106804810586,
      "time": 340,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10702233587"
    },
    {
      "job": 106804810827,
      "time": 264,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10701369095"
    },
    {
      "job": 106804811047,
      "time": 207,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "10702267662"
    },
    {
      "job": 106804810693,
      "time": 184,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10701363789"
    },
    {
      "job": 106803571204,
      "time": 180,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10702581989"
    },
    {
      "job": 106804810715,
      "time": 124,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "10701438564"
    },
    {
      "job": 106804810878,
      "time": 288,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "10702677683"
    },
    {
      "job": 106804810690,
      "time": 238,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "10701274023"
    },
    {
      "job": 106804810927,
      "time": 227,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "10702987407"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171",
  "_status": "success",
  "_upstream": "https://github.com/josh45-source/glyph",
  "_commit": {
    "id": "0d49d20587caa957d2858778a757292cc10b44c9",
    "author": "josh45-source <joashjoshua@gmail.com>",
    "committer": "josh45-source <joashjoshua@gmail.com>",
    "message": "Dev: fix zoom/brush drag conflict, add drag-mode toggle, fix pinch with brush, zoom offset, reset clearing brush, pan-mode tap tooltips\n",
    "time": 1790075010
  },
  "_maintainer": {
    "name": "Joash Joshua Ayo",
    "email": "joashjoshua789@gmail.com",
    "login": "josh45-source",
    "linkedin": "in/joash-joshua-ayo-5665b5322",
    "description": "Data\n",
    "uuid": 205327854
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "htmlwidgets",
      "version": ">= 1.6.0",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "version": ">= 1.8.0",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "version": ">= 1.1.0",
      "role": "Imports"
    },
    {
      "package": "cli",
      "version": ">= 3.6.0",
      "role": "Imports"
    },
    {
      "package": "grDevices",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "tools",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    }
  ],
  "_owner": "josh45-source",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-27",
      "n": 2
    },
    {
      "week": "2026-28",
      "n": 6
    },
    {
      "week": "2026-39",
      "n": 3
    }
  ],
  "_tags": [],
  "_stars": 15,
  "_contributors": [
    {
      "user": "josh45-source",
      "count": 2,
      "uuid": 205327854
    }
  ],
  "_userbio": {
    "uuid": 205327854,
    "type": "user",
    "name": "Joash Joshua Ayo",
    "followers": 60,
    "description": "Data\r\n"
  },
  "_downloads": {
    "count": 348,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/glyph"
  },
  "_devurl": "https://github.com/josh45-source/glyph",
  "_pkgdown": "https://josh45-source.github.io/glyph/",
  "_searchresults": 12,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/glyph.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/josh45-source/glyph",
  "_realowner": "josh45-source",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-07-06"
    },
    {
      "version": "0.1.1",
      "date": "2026-07-08"
    }
  ],
  "_exports": [
    "animate",
    "compile",
    "compose",
    "export",
    "facet",
    "glyph",
    "inset",
    "interact",
    "marginals",
    "mark_area",
    "mark_bar",
    "mark_line",
    "mark_link",
    "mark_point",
    "mark_ribbon",
    "mark_rule",
    "mark_text",
    "render",
    "scale",
    "scale_color",
    "scale_log",
    "scale_time",
    "selection",
    "theme_tokens",
    "titles",
    "to_vegalite"
  ],
  "_help": [
    {
      "page": "animate",
      "title": "Add animation/transition behavior",
      "topics": [
        "animate"
      ]
    },
    {
      "page": "animation",
      "title": "Animation Grammar",
      "topics": [
        "animation"
      ]
    },
    {
      "page": "compile",
      "title": "Compile a glyph spec to a resolved representation",
      "topics": [
        "compile",
        "compile.glyph_layout",
        "compile.glyph_spec"
      ]
    },
    {
      "page": "compose",
      "title": "Compose multiple glyph specs into a layout",
      "topics": [
        "compose"
      ]
    },
    {
      "page": "export",
      "title": "Export to various formats",
      "topics": [
        "export"
      ]
    },
    {
      "page": "facet",
      "title": "Facet a plot by one or two variables",
      "topics": [
        "facet"
      ]
    },
    {
      "page": "glyph",
      "title": "Create a Glyph Visualization",
      "topics": [
        "glyph"
      ]
    },
    {
      "page": "inset",
      "title": "Add an inset plot",
      "topics": [
        "inset"
      ]
    },
    {
      "page": "interact",
      "title": "Add interactive behaviors to a glyph spec",
      "topics": [
        "interact"
      ]
    },
    {
      "page": "interactivity",
      "title": "First-Class Interactivity",
      "topics": [
        "interactivity"
      ]
    },
    {
      "page": "layout",
      "title": "Layout Composition",
      "topics": [
        "layout"
      ]
    },
    {
      "page": "marginals",
      "title": "Add a marginal plot (histogram/density on axes)",
      "topics": [
        "marginals"
      ]
    },
    {
      "page": "mark_area",
      "title": "Add an area mark",
      "topics": [
        "mark_area"
      ]
    },
    {
      "page": "mark_bar",
      "title": "Add a bar mark",
      "topics": [
        "mark_bar"
      ]
    },
    {
      "page": "mark_line",
      "title": "Add a line mark",
      "topics": [
        "mark_line"
      ]
    },
    {
      "page": "mark_link",
      "title": "Add a link/edge mark (for networks, sankeys, slope graphs)",
      "topics": [
        "mark_link"
      ]
    },
    {
      "page": "mark_point",
      "title": "Add a point mark (scatterplot)",
      "topics": [
        "mark_point"
      ]
    },
    {
      "page": "mark_ribbon",
      "title": "Add a ribbon/band mark (for confidence intervals, ranges)",
      "topics": [
        "mark_ribbon"
      ]
    },
    {
      "page": "mark_rule",
      "title": "Add a rule (reference line) mark",
      "topics": [
        "mark_rule"
      ]
    },
    {
      "page": "mark_text",
      "title": "Add a text/label mark",
      "topics": [
        "mark_text"
      ]
    },
    {
      "page": "marks",
      "title": "Visual Marks",
      "topics": [
        "marks"
      ]
    },
    {
      "page": "print.glyph_layout",
      "title": "Print a glyph layout",
      "topics": [
        "print.glyph_layout"
      ]
    },
    {
      "page": "print.glyph_spec",
      "title": "Auto-render when printed (like ggplot2)",
      "topics": [
        "print.glyph_spec"
      ]
    },
    {
      "page": "render",
      "title": "Render a glyph spec as an htmlwidget",
      "topics": [
        "render"
      ]
    },
    {
      "page": "rendering",
      "title": "Rendering Pipeline",
      "topics": [
        "rendering"
      ]
    },
    {
      "page": "scale",
      "title": "Define a scale for an aesthetic channel",
      "topics": [
        "scale"
      ]
    },
    {
      "page": "scales",
      "title": "Scales",
      "topics": [
        "scales",
        "scale_color",
        "scale_log",
        "scale_time"
      ]
    },
    {
      "page": "selection",
      "title": "Add a selection parameter (advanced)",
      "topics": [
        "selection"
      ]
    },
    {
      "page": "summary.glyph_spec",
      "title": "Summarize a glyph specification",
      "topics": [
        "summary.glyph_spec"
      ]
    },
    {
      "page": "theme_tokens",
      "title": "Set theme tokens",
      "topics": [
        "theme_tokens"
      ]
    },
    {
      "page": "theming",
      "title": "Token-Based Theming",
      "topics": [
        "theming"
      ]
    },
    {
      "page": "titles",
      "title": "Add a title, subtitle, or caption",
      "topics": [
        "titles"
      ]
    },
    {
      "page": "to_vegalite",
      "title": "Export the spec as Vega-Lite JSON (interop)",
      "topics": [
        "to_vegalite"
      ]
    }
  ],
  "_readme": "https://github.com/josh45-source/glyph/raw/HEAD/README.md",
  "_rundeps": [
    "base64enc",
    "bslib",
    "cachem",
    "cli",
    "digest",
    "evaluate",
    "fastmap",
    "fontawesome",
    "fs",
    "highr",
    "htmltools",
    "htmlwidgets",
    "jquerylib",
    "jsonlite",
    "knitr",
    "lifecycle",
    "memoise",
    "mime",
    "R6",
    "rappdirs",
    "rlang",
    "rmarkdown",
    "sass",
    "tinytex",
    "xfun",
    "yaml"
  ],
  "_vignettes": [
    {
      "source": "getting-started.Rmd",
      "filename": "getting-started.html",
      "title": "Getting Started with glyph",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Tooltips and hover, declared in the pipeline",
        "2. Animated bar chart",
        "3. Token-based dark theme",
        "4. Point labels with automatic collision avoidance",
        "5. Linked panels with crossfilter brushing",
        "6. Faceting",
        "7. Marginal distributions",
        "8. Inset plots",
        "9. Keyframe (\"morph\") animation",
        "Where to next"
      ],
      "created": "2026-07-07 08:29:29",
      "modified": "2026-07-08 11:08:51",
      "commits": 3
    },
    {
      "source": "comparison.Rmd",
      "filename": "comparison.html",
      "title": "glyph vs ggplot2: Side-by-Side Comparison",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Basic Scatterplot",
        "2. Interactive Exploration",
        "3. Animated Bar Chart",
        "4. Multi-Panel Dashboard",
        "5. Marginal Distributions",
        "6. Dark Theme",
        "7. Export Flexibility",
        "Summary: When to Use Which",
        "Live Examples",
        "Colored scatterplot",
        "Tooltip, zoom, and brush — no ggplotly() conversion",
        "Linked dashboard panels",
        "Marginal distributions"
      ],
      "created": "2026-06-30 10:51:34",
      "modified": "2026-07-08 09:53:13",
      "commits": 2
    }
  ],
  "_score": 5.732393759822968,
  "_indexed": true,
  "_nocasepkg": "glyph",
  "_universes": [
    "josh45-source"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:10:07.000Z",
      "distro": "resolute",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/8e0e13b346db6fb4376ed702ddf468a79d0fdc3384efd0016881c32407c89062",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:09:50.000Z",
      "distro": "resolute",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/5ce1792874fed4ad4cfcdd3121d9d16d6e2af5fe6ca273c9f1e3a935c6871df2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:09:10.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/09d72cf510bca40b7fa42c841a07f5396089adbf21d89bb4f9d042a44e1ac31f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:09:11.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/6976b3745a1da838e4f1c8c39ada68131fb3603eed66d8673377bb0a24492eea",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:10:00.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/2daa3628dfd6c85e4508dd1041829cffc3e89234608565db1011196053444e00",
      "status": "success",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:08:53.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/968b6d92223c04ebf652a4dfe11b877c1990f51f45ee24951f8c1e7f53501e6b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:08:54.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/99862fc8fafbba6f45b832e75e4eb86889dce07f263104eb63316b48f9192950",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-09-22T15:08:54.000Z",
      "commit": "0d49d20587caa957d2858778a757292cc10b44c9",
      "fileid": "https://r2.ropensci.org/eda958a8275e146dc067a7dcf82bd39152bc96bf9880dd9ac39a9850307f9eaa",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/josh45-source/actions/runs/35744776171"
    }
  ]
}