{
  "_id": "6a1551efacfb0bcc41d5b553",
  "Package": "covfefe",
  "Type": "Package",
  "Title": "Political Linguistics Toolkit - Gaffes, Phonetics, and Text\nTransformation",
  "Version": "1.0.0",
  "Authors@R": "person(\"Michael\", \"Kirchner\",\nemail = \"michael@kirchner.io\",\nrole = c(\"aut\", \"cre\"))",
  "URL": "https://github.com/mkirch/covfefe",
  "BugReports": "https://github.com/mkirch/covfefe/issues",
  "Description": "A comprehensive toolkit for political linguistics\nfeaturing a museum of famous digital gaffes, phonetic\ntransformation algorithms (Soundex, consonant shifts), QWERTY\nkeyboard geometry for typo simulation, syllable parsing, word\nblending (portmanteau creation), and text corruption analysis.\nOriginally inspired by the infamous \"covfefe\" tweet of 2017.",
  "License": "GPL (>= 3)",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "Config/testthat/edition": "3",
  "LazyData": "true",
  "Config/pak/sysreqs": "libicu-dev",
  "Repository": "https://mkirch.r-universe.dev",
  "Date/Publication": "2026-01-26 06:27:55 UTC",
  "RemoteUrl": "https://github.com/mkirch/covfefe",
  "RemoteRef": "HEAD",
  "RemoteSha": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-05-26 07:49:42 UTC",
    "User": "root"
  },
  "Author": "Michael Kirchner [aut, cre]",
  "Maintainer": "Michael Kirchner <michael@kirchner.io>",
  "MD5sum": "a4e11480b90ad89c4ba1db3aaf8ea6ab",
  "_user": "mkirch",
  "_type": "src",
  "_file": "covfefe_1.0.0.tar.gz",
  "_fileid": "33fabad22a403c6427502560f7e69982f3da7ae9e3951db393963b6449297637",
  "_filesize": 161599,
  "_sha256": "33fabad22a403c6427502560f7e69982f3da7ae9e3951db393963b6449297637",
  "_created": "2026-05-26T07:49:42.000Z",
  "_published": "2026-05-26T07:55:27.700Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 77830305650,
      "time": 161,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7211657713"
    },
    {
      "job": 77830305653,
      "time": 115,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7211643168"
    },
    {
      "job": 77830305717,
      "time": 165,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7211675779"
    },
    {
      "job": 77830305740,
      "time": 139,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7211690574"
    },
    {
      "job": 77829889340,
      "time": 170,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7211607525"
    },
    {
      "job": 77830305690,
      "time": 94,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7211637094"
    },
    {
      "job": 77830305658,
      "time": 91,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7211636511"
    },
    {
      "job": 77830305681,
      "time": 68,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7211629254"
    },
    {
      "job": 77830305686,
      "time": 65,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7211628414"
    }
  ],
  "_buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/mkirch/covfefe",
  "_commit": {
    "id": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
    "author": "Michael R. Kirchner <7461887+mkirch@users.noreply.github.com>",
    "committer": "Michael R. Kirchner <7461887+mkirch@users.noreply.github.com>",
    "message": "feat: add linguistic analysis engines for typo simulation and detection\n\n- Add phonetic transformation engine with soundex\n- Add Political Linguistics Museum with famous digital gaffes\n- Add QWERTY geometry engine for typo simulation\n- Add word blending engine for portmanteau creation\n- Add syllable parsing and manipulation engine\n- Add typo detection and analysis tools\n- Add text corruption simulator with multiple modes\n- Add integration tests for cross-module functionality\n- Bump version to 1.0.0\n",
    "time": 1769408875
  },
  "_maintainer": {
    "name": "Michael Kirchner",
    "email": "michael@kirchner.io",
    "login": "mkirch",
    "twitter": "@kirchnerus",
    "description": "Chief AI Officer at Stealth AI Startup, Founder @relik-ai  AI Research Scientist & Manager at PwC , Quant and Financial Engineer for HFT at Ketchum Trading",
    "uuid": 7461887
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "tokenizers",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "mkirch",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-05",
      "n": 1
    }
  ],
  "_tags": [],
  "_topics": [
    "covfefe"
  ],
  "_stars": 34,
  "_contributors": [
    {
      "user": "mkirch",
      "count": 21,
      "uuid": 7461887
    }
  ],
  "_userbio": {
    "uuid": 7461887,
    "type": "user",
    "name": "Michael R. Kirchner",
    "description": "Chief AI Officer at Stealth AI Startup, Founder @relik-ai  AI Research Scientist & Manager at PwC , Quant and Financial Engineer for HFT at Ketchum Trading"
  },
  "_downloads": {
    "count": 192,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/covfefe"
  },
  "_devurl": "https://github.com/mkirch/covfefe",
  "_searchresults": 5,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/covfefe.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/mkirch/covfefe",
  "_realowner": "mkirch",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2017-06-06"
    },
    {
      "version": "1.0.0",
      "date": "2026-01-26"
    }
  ],
  "_exports": [
    "adjacent_key_typo",
    "analyze_gaffe",
    "blend_score",
    "blend_words",
    "corrupt_text",
    "covfefy",
    "covfefySentence",
    "covfefySpeech",
    "detect_blend",
    "detect_typo_type",
    "garble_sentence",
    "get_phonetic_group",
    "is_keyboard_adjacent",
    "keyboard_mash",
    "museum_by_person",
    "museum_by_type",
    "museum_by_year",
    "museum_list",
    "museum_lookup",
    "museum_random",
    "onset_nucleus_coda",
    "phonetic_distance",
    "phonetic_shift",
    "qwerty_adjacent",
    "qwerty_distance",
    "soundex",
    "suggest_corrections",
    "syllabify",
    "syllable_count",
    "syllable_swap",
    "vowel_shift"
  ],
  "_datasets": [
    {
      "name": "consonant_pairs",
      "title": "Phonetically Similar Consonant Pairs",
      "object": "consonant_pairs",
      "class": [
        "list"
      ],
      "fields": [],
      "table": true,
      "tojson": true
    },
    {
      "name": "gaffes",
      "title": "Political Linguistics Museum Data",
      "object": "gaffes",
      "class": [
        "data.frame"
      ],
      "fields": [
        "id",
        "original",
        "gaffe",
        "person",
        "year",
        "platform",
        "typo_type",
        "context"
      ],
      "rows": 13,
      "table": true,
      "tojson": true
    },
    {
      "name": "phonetic_groups",
      "title": "Phonetic Consonant Groups",
      "object": "phonetic_groups",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "qwerty_adjacency",
      "title": "QWERTY Keyboard Adjacency Data",
      "object": "qwerty_adjacency",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "qwerty_layout",
      "title": "QWERTY Keyboard Layout Data",
      "object": "qwerty_layout",
      "class": [
        "list"
      ],
      "fields": [],
      "table": true,
      "tojson": true
    },
    {
      "name": "soundex_map",
      "title": "Soundex Encoding Map",
      "object": "soundex_map",
      "class": [
        "character"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "vowel_shifts",
      "title": "Vowel Shift Mappings",
      "object": "vowel_shifts",
      "class": [
        "list"
      ],
      "fields": [],
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "adjacent_key_typo",
      "title": "Generate adjacent-key typo",
      "topics": [
        "adjacent_key_typo"
      ]
    },
    {
      "page": "analyze_gaffe",
      "title": "Analyze a gaffe comprehensively",
      "topics": [
        "analyze_gaffe"
      ]
    },
    {
      "page": "blend_score",
      "title": "Score how well a word is a blend of two others",
      "topics": [
        "blend_score"
      ]
    },
    {
      "page": "blend_words",
      "title": "Blend two words into a portmanteau",
      "topics": [
        "blend_words"
      ]
    },
    {
      "page": "consonant_pairs",
      "title": "Phonetically Similar Consonant Pairs",
      "topics": [
        "consonant_pairs"
      ]
    },
    {
      "page": "corrupt_text",
      "title": "Corrupt text with specified error type",
      "topics": [
        "corrupt_text"
      ]
    },
    {
      "page": "covfefy",
      "title": "Covfefy any word.",
      "topics": [
        "covfefy"
      ]
    },
    {
      "page": "covfefySentence",
      "title": "Covfefy any sentence.",
      "topics": [
        "covfefySentence"
      ]
    },
    {
      "page": "covfefySpeech",
      "title": "Covfefy any speech.",
      "topics": [
        "covfefySpeech"
      ]
    },
    {
      "page": "detect_blend",
      "title": "Detect possible source words for a blend",
      "topics": [
        "detect_blend"
      ]
    },
    {
      "page": "detect_typo_type",
      "title": "Detect likely typo type",
      "topics": [
        "detect_typo_type"
      ]
    },
    {
      "page": "gaffes",
      "title": "Political Linguistics Museum Data",
      "topics": [
        "gaffes"
      ]
    },
    {
      "page": "garble_sentence",
      "title": "Garble a sentence with random corruptions",
      "topics": [
        "garble_sentence"
      ]
    },
    {
      "page": "get_phonetic_group",
      "title": "Get phonetic group for a consonant",
      "topics": [
        "get_phonetic_group"
      ]
    },
    {
      "page": "is_keyboard_adjacent",
      "title": "Check if two keys are adjacent",
      "topics": [
        "is_keyboard_adjacent"
      ]
    },
    {
      "page": "keyboard_mash",
      "title": "Simulate keyboard mash (extra characters)",
      "topics": [
        "keyboard_mash"
      ]
    },
    {
      "page": "museum_by_person",
      "title": "Filter gaffes by person",
      "topics": [
        "museum_by_person"
      ]
    },
    {
      "page": "museum_by_type",
      "title": "Filter gaffes by typo type",
      "topics": [
        "museum_by_type"
      ]
    },
    {
      "page": "museum_by_year",
      "title": "Filter gaffes by year",
      "topics": [
        "museum_by_year"
      ]
    },
    {
      "page": "museum_list",
      "title": "List all gaffes in the museum",
      "topics": [
        "museum_list"
      ]
    },
    {
      "page": "museum_lookup",
      "title": "Look up a specific gaffe",
      "topics": [
        "museum_lookup"
      ]
    },
    {
      "page": "museum_random",
      "title": "Get a random gaffe from the museum",
      "topics": [
        "museum_random"
      ]
    },
    {
      "page": "onset_nucleus_coda",
      "title": "Parse syllable into onset, nucleus, coda",
      "topics": [
        "onset_nucleus_coda"
      ]
    },
    {
      "page": "phonetic_distance",
      "title": "Calculate phonetic distance between words",
      "topics": [
        "phonetic_distance"
      ]
    },
    {
      "page": "phonetic_groups",
      "title": "Phonetic Consonant Groups",
      "topics": [
        "phonetic_groups"
      ]
    },
    {
      "page": "phonetic_shift",
      "title": "Shift consonant to phonetically similar consonant",
      "topics": [
        "phonetic_shift"
      ]
    },
    {
      "page": "qwerty_adjacency",
      "title": "QWERTY Keyboard Adjacency Data",
      "topics": [
        "qwerty_adjacency"
      ]
    },
    {
      "page": "qwerty_adjacent",
      "title": "Get adjacent keys on QWERTY keyboard",
      "topics": [
        "qwerty_adjacent"
      ]
    },
    {
      "page": "qwerty_distance",
      "title": "Calculate QWERTY distance between two keys",
      "topics": [
        "qwerty_distance"
      ]
    },
    {
      "page": "qwerty_layout",
      "title": "QWERTY Keyboard Layout Data",
      "topics": [
        "qwerty_layout"
      ]
    },
    {
      "page": "soundex",
      "title": "Calculate Soundex code",
      "topics": [
        "soundex"
      ]
    },
    {
      "page": "soundex_map",
      "title": "Soundex Encoding Map",
      "topics": [
        "soundex_map"
      ]
    },
    {
      "page": "suggest_corrections",
      "title": "Suggest corrections for a typo",
      "topics": [
        "suggest_corrections"
      ]
    },
    {
      "page": "syllabify",
      "title": "Split word into syllables",
      "topics": [
        "syllabify"
      ]
    },
    {
      "page": "syllable_count",
      "title": "Count syllables in a word",
      "topics": [
        "syllable_count"
      ]
    },
    {
      "page": "syllable_swap",
      "title": "Swap syllables between two words",
      "topics": [
        "syllable_swap"
      ]
    },
    {
      "page": "vowel_shift",
      "title": "Shift vowels in a word",
      "topics": [
        "vowel_shift"
      ]
    },
    {
      "page": "vowel_shifts",
      "title": "Vowel Shift Mappings",
      "topics": [
        "vowel_shifts"
      ]
    }
  ],
  "_readme": "https://github.com/mkirch/covfefe/raw/HEAD/README.md",
  "_rundeps": [
    "Rcpp",
    "SnowballC",
    "stringi",
    "tokenizers"
  ],
  "_score": 4.230448921378274,
  "_indexed": true,
  "_nocasepkg": "covfefe",
  "_universes": [
    "mkirch"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-05-26T07:52:25.000Z",
      "distro": "noble",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "04a7fe3e434d3918daed9d756db80f31c13fa83afcf9c7574cc521dca8b4aa81",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-05-26T07:51:43.000Z",
      "distro": "noble",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "0563d304f2406269708d5475c7ebb407f1d8b4be658e0a9bb630d8d346de51f6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-05-26T07:53:30.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "bb9556bfedcd56a9a7043f107133c4a4cd61cd6e640a9ea1c4a861827954d7fc",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.0.0",
      "date": "2026-05-26T07:54:20.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "adc92583f88f4b74b6c1cd7fc26c0771a9dc91fa55e99e1bcc665c5b1405e478",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.0.0",
      "date": "2026-05-26T07:51:35.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "481793a09761032ce1ed44862a44b56cd83c1d9651760d3fe24b5cbb8a939258",
      "status": "success",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-05-26T07:51:10.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "37a7681c0b9fff11d061b3d79269d64b3779bc207d123aace7d439896d664e67",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-05-26T07:50:50.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "b8ef16b141f293851f91186e2b53f7fd2464c25e09b004dcf4ec992c14385925",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-05-26T07:50:48.000Z",
      "commit": "c441fc3516d088ac2842ed088fe5dba37c3ab13a",
      "fileid": "70d8d0b792c9889b06ad03ea443874fe5da2743db743ade9c2a2980013651bff",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/mkirch/actions/runs/26439411258"
    }
  ]
}