{
  "_id": "6ac6053ff511ae58c09a4bfc",
  "Package": "pagerankr",
  "Type": "Package",
  "Title": "Modular Toolkit for PageRank Calculation",
  "Version": "0.1.1.9000",
  "Authors@R": "person(\"Bart\", \"Turczynski\", email = \"bartek@turczynski.pl\", role = c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0000-0002-8788-7980\"))",
  "Description": "Provides a set of modular, pipeable functions to calculate\nPageRank scores from edge lists and redirect reports, common in\nSEO analysis. Functions handle URL cleaning, redirect\nresolution, edge deduplication, isolate handling, and PageRank\ncomputation using base R for data manipulation and 'igraph' for\ncore PageRank calculation.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "Language": "en-US",
  "Roxygen": "list(markdown = TRUE)",
  "Config/Needs/build": "local",
  "Config/testthat/edition": "3",
  "VignetteBuilder": "knitr",
  "URL": "https://bart-turczynski.gitlab.io/pagerankr/,\nhttps://gitlab.com/bart-turczynski/pagerankr,\nhttps://bart-turczynski.r-universe.dev/pagerankr,\nhttps://CRAN.R-project.org/package=pagerankr",
  "BugReports": "https://gitlab.com/bart-turczynski/pagerankr/-/issues",
  "Config/roxygen2/version": "8.0.0",
  "Config/pak/sysreqs": "libglpk-dev libicu-dev libxml2-dev",
  "Repository": "https://bart-turczynski.r-universe.dev",
  "Date/Publication": "2026-10-06 15:39:50 UTC",
  "RemoteUrl": "https://gitlab.com/bart-turczynski/pagerankr",
  "RemoteRef": "HEAD",
  "RemoteSha": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-07 08:21:41 UTC",
    "User": "root"
  },
  "Author": "Bart Turczynski [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0002-8788-7980>)",
  "Maintainer": "Bart Turczynski <bartek@turczynski.pl>",
  "_user": "bart-turczynski",
  "_type": "src",
  "_file": "pagerankr_0.1.1.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/45a92c1703c0b4b5cad86e977e0dc00e47eae184c56be6dab501744037be9835",
  "_filesize": 1240274,
  "_sha256": "45a92c1703c0b4b5cad86e977e0dc00e47eae184c56be6dab501744037be9835",
  "_expires": "2027-01-15T08:39:25.000Z",
  "_created": "2026-10-07T08:21:41.000Z",
  "_published": "2026-10-07T08:39:27.105Z",
  "_buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 112699730357,
      "time": 180,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11468994958"
    },
    {
      "job": 112699730330,
      "time": 178,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11468774630"
    },
    {
      "job": 112699730387,
      "time": 140,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11469726808"
    },
    {
      "job": 112699730502,
      "time": 122,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11469986326"
    },
    {
      "job": 112698198544,
      "time": 250,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11468529708"
    },
    {
      "job": 112699730449,
      "time": 125,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11468984847"
    },
    {
      "job": 112699730539,
      "time": 126,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11469880486"
    },
    {
      "job": 112699730401,
      "time": 105,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11469488968"
    },
    {
      "job": 112699730515,
      "time": 171,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11470030334"
    }
  ],
  "_upstream": "https://gitlab.com/bart-turczynski/pagerankr",
  "_commit": {
    "id": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
    "author": "Bart Turczynski <bartek@turczynski.pl>",
    "committer": "Bart Turczynski <bartek@turczynski.pl>",
    "message": "Merge branch 'chore/recopy-check-toolchain-allowlist' into 'main'\n\nchore(tooling): re-copy seor's check-toolchain.R (shell allowlist)\n\nSee merge request bart-turczynski/pagerankr!83",
    "time": 1791301190
  },
  "_maintainer": {
    "name": "Bart Turczynski",
    "email": "bartek@turczynski.pl",
    "login": "bart-turczynski",
    "linkedin": "in/bart-turczynski",
    "twitter": "@bart_turczynski",
    "description": "",
    "uuid": 142225707,
    "orcid": "0000-0002-8788-7980"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "igraph",
      "role": "Imports"
    },
    {
      "package": "rurl",
      "version": ">= 3.0.1",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "withr",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "pkgdown",
      "role": "Suggests"
    },
    {
      "package": "covr",
      "role": "Suggests"
    },
    {
      "package": "lintr",
      "role": "Suggests"
    },
    {
      "package": "spelling",
      "role": "Suggests"
    },
    {
      "package": "goodpractice",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "DT",
      "role": "Suggests"
    },
    {
      "package": "visNetwork",
      "role": "Suggests"
    },
    {
      "package": "oysteR",
      "role": "Suggests"
    },
    {
      "package": "rosv",
      "role": "Suggests"
    }
  ],
  "_owner": "gitlab-bart-turczynski",
  "_selfowned": true,
  "_usedby": 1,
  "_updates": [
    {
      "week": "2026-07",
      "n": 12
    },
    {
      "week": "2026-24",
      "n": 3
    },
    {
      "week": "2026-25",
      "n": 42
    },
    {
      "week": "2026-27",
      "n": 15
    },
    {
      "week": "2026-28",
      "n": 59
    },
    {
      "week": "2026-29",
      "n": 9
    },
    {
      "week": "2026-30",
      "n": 50
    },
    {
      "week": "2026-32",
      "n": 6
    },
    {
      "week": "2026-33",
      "n": 9
    },
    {
      "week": "2026-37",
      "n": 8
    },
    {
      "week": "2026-38",
      "n": 4
    },
    {
      "week": "2026-39",
      "n": 18
    },
    {
      "week": "2026-40",
      "n": 32
    },
    {
      "week": "2026-41",
      "n": 7
    }
  ],
  "_tags": [
    {
      "name": "v0.1.0",
      "date": "2026-09-17"
    },
    {
      "name": "v0.1.1",
      "date": "2026-09-30"
    }
  ],
  "_topics": [
    "pagerank",
    "seo",
    "technical-seo",
    "internal-linking",
    "link-graph",
    "link-equity",
    "crawl-analysis",
    "screaming-frog",
    "redirects",
    "trustrank"
  ],
  "_userbio": {
    "uuid": 142225707,
    "type": "user",
    "name": "Bart Turczynski",
    "followers": 4
  },
  "_downloads": {
    "count": 322,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/pagerankr"
  },
  "_devurl": "https://gitlab.com/bart-turczynski/pagerankr",
  "_pkgdown": "https://bart-turczynski.gitlab.io/pagerankr/",
  "_searchresults": 11,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/pagerankr.html",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_homeurl": "https://gitlab.com/bart-turczynski/pagerankr",
  "_realowner": "bart-turczynski",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-09-28"
    },
    {
      "version": "0.1.1",
      "date": "2026-10-01"
    }
  ],
  "_exports": [
    "aggregate_edges",
    "align_prior_to_vertices",
    "analyse_pagerank_grid",
    "analyze_pagerank_grid",
    "audit_canonicals",
    "audit_fold",
    "audit_redirects",
    "auto_grid",
    "build_fold_map",
    "canonical_profile",
    "clean_url_columns",
    "compare_pagerank",
    "compute_hits",
    "compute_pagerank",
    "compute_salsa",
    "damping_sensitivity",
    "drop_isolates",
    "export_graph",
    "filter_links_by_domain",
    "ga4_entrance_teleport",
    "ga4_page_transitions",
    "get_unique_edges",
    "hits",
    "launch_pagerank_explorer",
    "new_transition_audit",
    "pagerank",
    "pagerank_grid",
    "pagerank_screaming_frog",
    "pagerank_stability",
    "pr_entropy",
    "pr_gini",
    "pr_preset",
    "pr_top_k_share",
    "resolve_canonical_urls",
    "resolve_canonicals",
    "resolve_folded_urls",
    "resolve_links",
    "resolve_redirect_urls",
    "resolve_redirects",
    "salsa",
    "screaming_frog_bundle",
    "screaming_frog_internal",
    "screaming_frog_links",
    "seed_prior",
    "sf_container_from_path",
    "sf_contract",
    "sf_graph_eligible",
    "sf_normalise_position",
    "sf_normalize_position",
    "sf_parse_follow",
    "sf_read_input",
    "sf_region_from_path",
    "sf_rel_nofollow",
    "simulate_changes",
    "simulate_changes_screaming_frog",
    "smooth_transitions",
    "topic_feeder_pagerank",
    "topic_sensitive_pagerank",
    "transform_edge_weights",
    "transform_weights",
    "trustrank",
    "validate_edge_weights"
  ],
  "_help": [
    {
      "page": "aggregate_edges",
      "title": "Aggregate Duplicate Edges After Folding",
      "topics": [
        "aggregate_edges"
      ]
    },
    {
      "page": "align_prior_to_vertices",
      "title": "Align a Per-URL Prior to a PageRank Vertex Set (TIPR)",
      "topics": [
        "align_prior_to_vertices"
      ]
    },
    {
      "page": "analyze_pagerank_grid",
      "title": "Analyze PageRank Grid Results",
      "topics": [
        "analyse_pagerank_grid",
        "analyze_pagerank_grid"
      ]
    },
    {
      "page": "audit_canonicals",
      "title": "Audit Declared Canonical Links",
      "topics": [
        "audit_canonicals"
      ]
    },
    {
      "page": "audit_fold",
      "title": "Combined Cross-Signal Fold Audit (Redirects + Canonicals)",
      "topics": [
        "audit_fold"
      ]
    },
    {
      "page": "audit_redirects",
      "title": "Audit Redirect Rules",
      "topics": [
        "audit_redirects"
      ]
    },
    {
      "page": "auto_grid",
      "title": "Generate Parameter Grid for pagerank_grid()",
      "topics": [
        "auto_grid"
      ]
    },
    {
      "page": "build_fold_map",
      "title": "Build a Composed Fold Map from Redirects and Canonicals",
      "topics": [
        "build_fold_map"
      ]
    },
    {
      "page": "canonical_profile",
      "title": "pagerankr URL Canonicalization Profile",
      "topics": [
        "canonical_profile"
      ]
    },
    {
      "page": "clean_url_columns",
      "title": "Clean URL Columns in a Data Frame",
      "topics": [
        "clean_url_columns"
      ]
    },
    {
      "page": "compare_pagerank",
      "title": "Compare Two PageRank Results",
      "topics": [
        "compare_pagerank"
      ]
    },
    {
      "page": "compute_hits",
      "title": "Compute HITS hub and authority scores using igraph",
      "topics": [
        "compute_hits"
      ]
    },
    {
      "page": "compute_pagerank",
      "title": "Compute PageRank using igraph",
      "topics": [
        "compute_pagerank"
      ]
    },
    {
      "page": "compute_salsa",
      "title": "Compute SALSA hub and authority scores",
      "topics": [
        "compute_salsa"
      ]
    },
    {
      "page": "damping_sensitivity",
      "title": "Sweep PageRank across a range of damping factors",
      "topics": [
        "damping_sensitivity"
      ]
    },
    {
      "page": "drop_isolates",
      "title": "Identify and Optionally Drop Isolated Nodes from an Edge List",
      "topics": [
        "drop_isolates"
      ]
    },
    {
      "page": "export_graph",
      "title": "Export PageRank Graph",
      "topics": [
        "export_graph"
      ]
    },
    {
      "page": "filter_links_by_domain",
      "title": "Filter Edge List by Domain or Host",
      "topics": [
        "filter_links_by_domain"
      ]
    },
    {
      "page": "ga4_entrance_teleport",
      "title": "GA4 Entrance / Landing-Page Teleport Adapter (PROXY)",
      "topics": [
        "ga4_entrance_teleport"
      ]
    },
    {
      "page": "ga4_page_transitions",
      "title": "Build Page-Transition Counts from a GA4 BigQuery Export",
      "topics": [
        "ga4_page_transitions"
      ]
    },
    {
      "page": "get_unique_edges",
      "title": "Get Unique Edges from an Edge List",
      "topics": [
        "get_unique_edges"
      ]
    },
    {
      "page": "hits",
      "title": "Master HITS hub/authority calculation wrapper",
      "topics": [
        "hits"
      ]
    },
    {
      "page": "launch_pagerank_explorer",
      "title": "Launch PageRank Explorer",
      "topics": [
        "launch_pagerank_explorer"
      ]
    },
    {
      "page": "pagerank",
      "title": "Master PageRank Calculation Wrapper",
      "topics": [
        "pagerank"
      ]
    },
    {
      "page": "pagerank_convergence",
      "title": "PageRank convergence diagnostic object",
      "topics": [
        "pagerank_convergence"
      ]
    },
    {
      "page": "pagerank_grid",
      "title": "Run PageRank Across Multiple Parameter Sets",
      "topics": [
        "pagerank_grid"
      ]
    },
    {
      "page": "pagerank_metrics",
      "title": "PageRank Distribution Metrics",
      "topics": [
        "pagerank_metrics",
        "pr_entropy",
        "pr_gini",
        "pr_top_k_share"
      ]
    },
    {
      "page": "pagerank_screaming_frog",
      "title": "Score a Screaming Frog bundle with PageRank",
      "topics": [
        "pagerank_screaming_frog"
      ]
    },
    {
      "page": "pagerank_stability",
      "title": "Report how stable a PageRank ranking is across damping factors",
      "topics": [
        "pagerank_stability"
      ]
    },
    {
      "page": "pr_preset",
      "title": "Named argument bundles for common PageRank views",
      "topics": [
        "pr_preset"
      ]
    },
    {
      "page": "print.pagerank_convergence",
      "title": "Print a pagerank_convergence object",
      "topics": [
        "print.pagerank_convergence"
      ]
    },
    {
      "page": "print.screaming_frog_bundle",
      "title": "Print a Screaming Frog bundle",
      "topics": [
        "print.screaming_frog_bundle"
      ]
    },
    {
      "page": "print.transition_audit",
      "title": "Print a transition_audit object",
      "topics": [
        "print.transition_audit"
      ]
    },
    {
      "page": "resolve_canonical_urls",
      "title": "Resolve URLs through rel=canonical declarations",
      "concept": [
        "URL-vector resolvers"
      ],
      "topics": [
        "resolve_canonical_urls"
      ]
    },
    {
      "page": "resolve_canonicals",
      "title": "Resolve edge endpoints through rel=canonical declarations",
      "concept": [
        "edge-list resolvers"
      ],
      "topics": [
        "resolve_canonicals"
      ]
    },
    {
      "page": "resolve_folded_urls",
      "title": "Resolve URLs through composed redirects and canonicals",
      "concept": [
        "URL-vector resolvers"
      ],
      "topics": [
        "resolve_folded_urls"
      ]
    },
    {
      "page": "resolve_links",
      "title": "Resolve Links Through Redirects",
      "concept": [
        "edge-list resolvers"
      ],
      "topics": [
        "resolve_links"
      ]
    },
    {
      "page": "resolve_redirect_urls",
      "title": "Resolve URLs Through Redirects",
      "concept": [
        "URL-vector resolvers"
      ],
      "topics": [
        "resolve_redirect_urls"
      ]
    },
    {
      "page": "resolve_redirects",
      "title": "Resolve Redirects in an Edge List",
      "concept": [
        "edge-list resolvers"
      ],
      "topics": [
        "resolve_redirects"
      ]
    },
    {
      "page": "salsa",
      "title": "Master SALSA hub/authority calculation wrapper",
      "topics": [
        "salsa"
      ]
    },
    {
      "page": "screaming_frog_bundle",
      "title": "Compose Screaming Frog node and link exports",
      "topics": [
        "screaming_frog_bundle"
      ]
    },
    {
      "page": "screaming_frog_internal",
      "title": "Import Screaming Frog Internal: All node facts",
      "topics": [
        "screaming_frog_internal"
      ]
    },
    {
      "page": "screaming_frog_links",
      "title": "Import Screaming Frog All Inlinks or All Outlinks observations",
      "topics": [
        "screaming_frog_links"
      ]
    },
    {
      "page": "seed_prior",
      "title": "Seed Teleport Prior for Personalized PageRank",
      "topics": [
        "seed_prior"
      ]
    },
    {
      "page": "sf_container_from_path",
      "title": "Derive a link's container component from its DOM path",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_container_from_path"
      ]
    },
    {
      "page": "sf_contract",
      "title": "Screaming Frog import contract",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_contract"
      ]
    },
    {
      "page": "sf_graph_eligible",
      "title": "Test whether a link type is graph-eligible",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_graph_eligible"
      ]
    },
    {
      "page": "sf_normalize_position",
      "title": "Normalize a Screaming Frog link position",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_normalise_position",
        "sf_normalize_position"
      ]
    },
    {
      "page": "sf_parse_follow",
      "title": "Parse a Screaming Frog follow flag to logical",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_parse_follow"
      ]
    },
    {
      "page": "sf_read_input",
      "title": "Read a Screaming Frog export into a normalized data frame",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_read_input"
      ]
    },
    {
      "page": "sf_region_from_path",
      "title": "Derive a link's page region from its DOM path",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_region_from_path"
      ]
    },
    {
      "page": "sf_rel_nofollow",
      "title": "Detect 'nofollow' in a rel attribute",
      "concept": [
        "Screaming Frog toolkit"
      ],
      "topics": [
        "sf_rel_nofollow"
      ]
    },
    {
      "page": "simulate_changes",
      "title": "Simulate the PageRank Impact of Link and Redirect Changes",
      "topics": [
        "simulate_changes"
      ]
    },
    {
      "page": "simulate_changes_screaming_frog",
      "title": "Simulate PageRank Changes on a Screaming Frog Bundle",
      "topics": [
        "simulate_changes_screaming_frog"
      ]
    },
    {
      "page": "smooth_transitions",
      "title": "Structural Smoothing of Empirical Page Transitions",
      "topics": [
        "smooth_transitions"
      ]
    },
    {
      "page": "summary.screaming_frog_bundle",
      "title": "Summarize a Screaming Frog bundle",
      "topics": [
        "summary.screaming_frog_bundle"
      ]
    },
    {
      "page": "topic_feeder_pagerank",
      "title": "Topic Feeder PageRank (seeded reverse-graph PageRank)",
      "topics": [
        "topic_feeder_pagerank"
      ]
    },
    {
      "page": "topic_sensitive_pagerank",
      "title": "Topic-Sensitive PageRank (multi-vector personalized PageRank)",
      "topics": [
        "topic_sensitive_pagerank"
      ]
    },
    {
      "page": "transform_edge_weights",
      "title": "Transform Edge Weights Per Source (Grouped)",
      "topics": [
        "transform_edge_weights"
      ]
    },
    {
      "page": "transform_weights",
      "title": "Transform Edge Weights for PageRank",
      "topics": [
        "transform_weights"
      ]
    },
    {
      "page": "transition_audit",
      "title": "Transition-construction audit / provenance object",
      "topics": [
        "transition_audit"
      ]
    },
    {
      "page": "trustrank",
      "title": "TrustRank Seed-Biased PageRank",
      "topics": [
        "trustrank"
      ]
    },
    {
      "page": "validate_edge_weights",
      "title": "Validate Edge Weights and Per-Source Totals",
      "topics": [
        "validate_edge_weights"
      ]
    }
  ],
  "_pkglogo": "https://gitlab.com/bart-turczynski/pagerankr/raw/HEAD/man/figures/logo.svg",
  "_readme": "https://gitlab.com/bart-turczynski/pagerankr/raw/HEAD/README.md",
  "_rundeps": [
    "cli",
    "cpp11",
    "digest",
    "glue",
    "igraph",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "pkgconfig",
    "pslr",
    "punycoder",
    "Rcpp",
    "rlang",
    "rurl",
    "stringi",
    "vctrs"
  ],
  "_vignettes": [
    {
      "source": "boilerplate.Rmd",
      "filename": "boilerplate.html",
      "title": "Boilerplate detection: template links that live in the content",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The links placement cannot reach",
        "The metric",
        "Why the container is the denominator",
        "Turning it on",
        "It is a downweight, never a drop",
        "The four arguments",
        "Composing with region weighting",
        "What to expect on a real site: author pages will drop",
        "Getting a container column from a crawl",
        "See also"
      ],
      "created": "2026-07-20 23:35:57",
      "modified": "2026-07-25 16:25:49",
      "commits": 2
    },
    {
      "source": "case-study.Rmd",
      "filename": "case-study.html",
      "title": "Case study: measuring an internal-linking intervention",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Diagnose, model, ship, re-measure",
        "Loading the two crawls",
        "Two lenses on the same crawl",
        "PageRank does not sum to 1 here",
        "The headline: concentration collapsed",
        "Where the authority went",
        "The mechanism was reclassification, not new links",
        "The full graph barely noticed",
        "Confounds — read this before reusing the method",
        "Running this on your own crawls"
      ],
      "created": "2026-07-26 13:07:22",
      "modified": "2026-07-26 16:08:21",
      "commits": 2
    },
    {
      "source": "presets.Rmd",
      "filename": "presets.html",
      "title": "Presets: named views of the link graph",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Why presets exist",
        "The four presets",
        "\"raw\" — the faithful baseline",
        "\"declared\" — a pin, not a change",
        "\"reversed\" — the feeder view",
        "\"content\" — stop letting the navigation rank the site",
        "Layers vs. presets: raw, real, and annotated",
        "Precedence: explicit argument > preset > default",
        "Inspecting and adapting a bundle",
        "Provenance in the transition audit",
        "See also"
      ],
      "created": "2026-07-20 20:35:05",
      "modified": "2026-07-23 21:26:29",
      "commits": 3
    },
    {
      "source": "topic_feeder_pagerank.Rmd",
      "filename": "topic_feeder_pagerank.html",
      "title": "Topic Feeder PageRank: what powers a content cluster",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The question this answers",
        "Why it is not just re-reading PageRank",
        "A worked example",
        "Reading the output",
        "Contrast with the forward (authority) view",
        "Where it sits among the reverse-direction tools",
        "Notes"
      ],
      "created": "2026-06-19 12:08:04",
      "modified": "2026-06-19 16:06:08",
      "commits": 3
    },
    {
      "source": "trustrank.Rmd",
      "filename": "trustrank.html",
      "title": "TrustRank: seed-biased PageRank in pagerankr",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "What TrustRank is",
        "It reuses the personalization path — no new solver",
        "A worked example",
        "Build the seed prior explicitly",
        "Or use the convenience wrapper",
        "Compare against uniform PageRank",
        "Graded trust and a teleport floor",
        "Notes"
      ],
      "created": "2026-06-19 11:08:45",
      "modified": "2026-07-19 19:52:31",
      "commits": 3
    },
    {
      "source": "pagerankr-usage.Rmd",
      "filename": "pagerankr-usage.html",
      "title": "Using the pagerankr Package",
      "author": "Bart Turczynski",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Introduction",
        "Installation",
        "Quick Start",
        "Screaming Frog crawl exports",
        "Redirect Resolution",
        "Basic redirect handling",
        "Conflicting redirects",
        "Redirect loops",
        "Standalone link resolution",
        "Nofollow Handling",
        "Indexability",
        "noindex pages",
        "robots.txt blocked pages",
        "Weighted Edges",
        "Domain Filtering",
        "HITS hub and authority",
        "SALSA hub and authority",
        "Model Comparison",
        "Comparing two models",
        "Parameter grid search",
        "Distribution metrics",
        "Simulating Changes",
        "Adding links",
        "Removing links",
        "Simulating redirects",
        "Combined changes",
        "Convergence Controls and Damping Stability",
        "pagerank() convergence controls",
        "damping_sensitivity() and pagerank_stability()",
        "Worked example",
        "Topic-Sensitive PageRank",
        "Distinguishing related functions",
        "GA4 Behavioral Transitions",
        "Building transition counts with ga4_page_transitions()",
        "Smoothing sparse transitions with smooth_transitions()",
        "Converting entrances to a teleport vector with ga4_entrance_teleport()",
        "End-to-end example",
        "Function Reference",
        "Acknowledgments"
      ],
      "created": "2025-05-31 17:25:37",
      "modified": "2026-09-29 11:39:30",
      "commits": 23
    }
  ],
  "_score": 6.141763230275788,
  "_indexed": true,
  "_nocasepkg": "pagerankr",
  "_universes": [
    "bart-turczynski",
    "gitlab-bart-turczynski"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:24:22.000Z",
      "distro": "resolute",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/a99b55ca6152ed2b336df3f70946e56fd0e94bc1655cc55d1f039ea1a57a566a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:24:20.000Z",
      "distro": "resolute",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/e06403adeac8f2386577ced158fd8feb7242653348450fe29a8953bae96fd2e6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:31:56.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/28fce5ed3312e1343ca1794ce63cd4cfce8f331a7f9c9b074b5055d406f83404",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:31:58.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/6ff37ccc84c42d5f1993e43cb20b7c0bea2f7f404301549f96d445184eed4cbd",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:24:15.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/bc77f692fd1267d6807db858167fcf1480be306550b4078e96c0e87d2b6debbe",
      "status": "success",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:23:10.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/a96a1064fb60dfa068b07f21d69ebfe7f57d6d6932e3a3dda92459e91e221041",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:22:58.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/7617b10585a8e1508c409b5e9754dd6e5a04c6f3cd6e2d916248ddd027bf2f5c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.1.1.9000",
      "date": "2026-10-07T08:23:29.000Z",
      "commit": "5c45e13990dac2c3fbca0ab8db4f72c7c822b54e",
      "fileid": "https://r2.ropensci.org/bdf660940878d46cadcbb63fa087ae4a761deb52bdccfd578d30f697a32781ab",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/bart-turczynski/actions/runs/37592761636"
    }
  ]
}