{"id":47633562,"url":"https://github.com/webfriendlyhelp/keyquest","last_synced_at":"2026-04-05T19:02:57.129Z","repository":{"id":342690294,"uuid":"1161756147","full_name":"WebFriendlyHelp/KeyQuest","owner":"WebFriendlyHelp","description":"Accessible typing adventure game for Windows, built with Python and designed for screen reader support.","archived":false,"fork":false,"pushed_at":"2026-04-02T05:04:54.000Z","size":17276,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-02T07:58:17.776Z","etag":null,"topics":["accessibility","assistive-technology","educational-game","keyboard-accessible","learning-game","pygame","python","screen-reader","typing-game","windows"],"latest_commit_sha":null,"homepage":"https://csm120.github.io/KeyQuest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WebFriendlyHelp.png","metadata":{"files":{"readme":"README.html","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":["WebFriendlyHelp"],"custom":["https://square.link/u/XfI4Icmm"]}},"created_at":"2026-02-19T13:36:09.000Z","updated_at":"2026-04-02T05:02:36.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/WebFriendlyHelp/KeyQuest","commit_stats":null,"previous_names":["csm120/keyquest","webfriendlyhelp/keyquest"],"tags_count":40,"template":false,"template_full_name":null,"purl":"pkg:github/WebFriendlyHelp/KeyQuest","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WebFriendlyHelp%2FKeyQuest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WebFriendlyHelp%2FKeyQuest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WebFriendlyHelp%2FKeyQuest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WebFriendlyHelp%2FKeyQuest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WebFriendlyHelp","download_url":"https://codeload.github.com/WebFriendlyHelp/KeyQuest/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WebFriendlyHelp%2FKeyQuest/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31446532,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T15:22:31.103Z","status":"ssl_error","status_checked_at":"2026-04-05T15:22:00.205Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["accessibility","assistive-technology","educational-game","keyboard-accessible","learning-game","pygame","python","screen-reader","typing-game","windows"],"created_at":"2026-04-01T23:55:49.128Z","updated_at":"2026-04-05T19:02:57.122Z","avatar_url":"https://github.com/WebFriendlyHelp.png","language":"Python","readme":"\u003c!doctype html\u003e\n\u003chtml lang=\"en\"\u003e\n\u003chead\u003e\n  \u003cmeta charset=\"utf-8\"\u003e\n  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1\"\u003e\n  \u003ctitle\u003eKeyQuest User Guide\u003c/title\u003e\n  \u003cstyle\u003e\n    :root {\n      color-scheme: light;\n    }\n    body {\n      font-family: Arial, sans-serif;\n      font-size: 18px;\n      line-height: 1.6;\n      color: #111;\n      background: #fff;\n      margin: 0;\n      padding: 0;\n    }\n    a {\n      color: #0b57d0;\n    }\n    a:hover {\n      text-decoration-thickness: 2px;\n    }\n    a:focus-visible,\n    button:focus-visible,\n    [tabindex]:focus-visible {\n      outline: 3px solid #111;\n      outline-offset: 2px;\n    }\n    .skip-link {\n      position: absolute;\n      left: 8px;\n      top: -48px;\n      z-index: 1000;\n      background: #fff;\n      color: #111;\n      border: 2px solid #111;\n      padding: 8px 10px;\n      text-decoration: none;\n    }\n    .skip-link:focus {\n      top: 8px;\n    }\n    header,\n    nav,\n    main,\n    footer {\n      display: block;\n    }\n    header,\n    nav,\n    footer {\n      padding: 0 24px;\n    }\n    main {\n      max-width: 900px;\n      margin: 0 auto;\n      padding: 24px;\n    }\n    .content {\n      max-width: 75ch;\n    }\n    .content-block {\n      max-width: 75ch;\n      margin: 0 auto;\n    }\n    .hero {\n      margin: 16px 0 24px;\n    }\n    .hero img {\n      display: block;\n      width: 100%;\n      max-width: 960px;\n      height: auto;\n      border: 1px solid #d0d7de;\n      border-radius: 16px;\n    }\n    h1, h2, h3 {\n      line-height: 1.3;\n    }\n    h1 {\n      margin-top: 0;\n    }\n    section {\n      border-top: 1px solid #ddd;\n      padding-top: 16px;\n      margin-top: 16px;\n    }\n    ul,\n    ol {\n      padding-left: 20px;\n    }\n    .note {\n      background: #f4f4f4;\n      border-left: 4px solid #666;\n      padding: 10px;\n    }\n  \u003c/style\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n  \u003ca class=\"skip-link\" href=\"#main-content\"\u003eSkip to main content\u003c/a\u003e\n\n  \u003cheader\u003e\n    \u003cdiv class=\"content-block\"\u003e\n      \u003ch1\u003eKeyQuest User Guide\u003c/h1\u003e\n      \u003cp\u003e\u003cstrong\u003eVersion {{APP_VERSION}}\u003c/strong\u003e\u003c/p\u003e\n      \u003cp\u003eThis guide is written for all users, including screen reader and keyboard-only users.\u003c/p\u003e\n      \u003cdiv class=\"hero\"\u003e\n        \u003cimg\n          src=\"docs/assets/keyquest-hero.svg\"\n          alt=\"KeyQuest banner showing the KeyQuest name and describing it as an accessible typing adventure game for Windows with keyboard, screen reader, and low-vision support.\"\u003e\n      \u003c/div\u003e\n    \u003c/div\u003e\n  \u003c/header\u003e\n\n  \u003cnav aria-label=\"Page sections\"\u003e\n    \u003cdiv class=\"content-block\"\u003e\n      \u003ch2\u003eOn This Page\u003c/h2\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#welcome\"\u003eWelcome\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#quick-start\"\u003eQuick Start\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#main-menu\"\u003eMain Menu Sections\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#custom-sentences\"\u003eUsing Your Own Sentences\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#downloads\"\u003eDownloads\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#accessibility\"\u003eAccessibility\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"changelog.html\"\u003eNew in Key Quest\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#help\"\u003eNeed Help\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#unsigned-build\"\u003eUnsigned Build Notice\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/div\u003e\n  \u003c/nav\u003e\n\n  \u003cmain id=\"main-content\" class=\"content\"\u003e\n    \u003csection id=\"welcome\"\u003e\n      \u003ch2\u003eWelcome\u003c/h2\u003e\n      \u003cp\u003e\n        KeyQuest is a typing practice program you can use with your keyboard only.\n        It gives speech and visual feedback so you can practice in the way that works best for you.\n      \u003c/p\u003e\n      \u003cp\u003e\n        It includes guided lessons, practice modes, typing tests, games, progress tracking, and a virtual pet.\n      \u003c/p\u003e\n      \u003cp\u003e\n        Want a quick list of recent changes? Open \u003ca href=\"changelog.html\"\u003eNew in Key Quest\u003c/a\u003e.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"quick-start\"\u003e\n      \u003ch2\u003eQuick Start\u003c/h2\u003e\n      \u003col\u003e\n        \u003cli\u003eOpen KeyQuest.\u003c/li\u003e\n        \u003cli\u003eUse the \u003cstrong\u003eUp\u003c/strong\u003e and \u003cstrong\u003eDown\u003c/strong\u003e arrow keys to move through menu items.\u003c/li\u003e\n        \u003cli\u003ePress \u003cstrong\u003eEnter\u003c/strong\u003e or \u003cstrong\u003eSpace\u003c/strong\u003e to open a section.\u003c/li\u003e\n        \u003cli\u003eIn active practice or gameplay modes, press \u003cstrong\u003eEscape 3 times\u003c/strong\u003e to return to Main Menu. The remaining press count is shown on screen and announced by speech.\u003c/li\u003e\n      \u003c/ol\u003e\n      \u003cp class=\"note\"\u003e\n        Press \u003cstrong\u003eCtrl+Space\u003c/strong\u003e in typing modes to hear the current prompt or remaining text. Sentence typing must match capitalization and punctuation exactly.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"main-menu\"\u003e\n      \u003ch2\u003eMain Menu Sections\u003c/h2\u003e\n\n      \u003ch3\u003eTutorial\u003c/h3\u003e\n      \u003cp\u003eStart here if you are new. It teaches key locations step by step.\u003c/p\u003e\n\n      \u003ch3\u003eKeyboard Explorer\u003c/h3\u003e\n      \u003cp\u003ePress keys and hear what they are, where they are, and how they are commonly used. Home-row keys also include short orientation help where it matters, including the F and J bumps.\u003c/p\u003e\n\n      \u003ch3\u003eLessons\u003c/h3\u003e\n      \u003cp\u003eStructured typing lessons that gradually add more keys as you improve. Longer lesson text wraps on screen, and lesson intros can now be reviewed one item at a time with the arrow keys instead of being read all at once.\u003c/p\u003e\n\n      \u003ch3\u003eFree Practice\u003c/h3\u003e\n      \u003cp\u003ePractice learned keys without affecting lesson progression. You can now choose from your unlocked lessons first, so Free Practice matches the key range you have already reached.\u003c/p\u003e\n\n      \u003ch3\u003eSpeed Test\u003c/h3\u003e\n      \u003cp\u003eChoose a time limit and test your typing speed and accuracy. Type each sentence exactly as shown, including capitalization and punctuation.\u003c/p\u003e\n\n      \u003ch3\u003eSentence Practice\u003c/h3\u003e\n      \u003cp\u003eType sentences for ongoing practice. Type each sentence exactly as shown, including capitalization and punctuation. If you make a mistake, KeyQuest spells the first missed word and then reads the rest of the sentence normally. Topics include General, General Spanish, Windows commands, JAWS commands, NVDA commands, science facts, history, geography, math, literature, and vocabulary. You can also edit sentence files or add your own. For Spanish typing, you can enter common accented characters from an English keyboard with shortcuts such as \u003cstrong\u003eCtrl+'\u003c/strong\u003e then a vowel for acute accents, \u003cstrong\u003eCtrl+`\u003c/strong\u003e then \u003cstrong\u003en\u003c/strong\u003e for \u003cstrong\u003eñ\u003c/strong\u003e, and \u003cstrong\u003eCtrl+Shift+/\u003c/strong\u003e for \u003cstrong\u003e¿\u003c/strong\u003e.\u003c/p\u003e\n\n      \u003ch3\u003eGames\u003c/h3\u003e\n      \u003cp\u003ePlay typing games with speech and visual feedback.\u003c/p\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003cstrong\u003eLetter Fall\u003c/strong\u003e: Type one active target letter at a time before it reaches the bottom. \u003cstrong\u003eTab\u003c/strong\u003e reports the current target and how many letters are waiting. \u003cstrong\u003eCtrl+Space\u003c/strong\u003e repeats only the current target.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eWord Typing\u003c/strong\u003e: Type words quickly and submit each word. \u003cstrong\u003eCtrl+Space\u003c/strong\u003e repeats only the current word.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eHangman\u003c/strong\u003e: Guess words letter by letter with an offline dictionary of over 919,000 words and real definitions.\u003c/li\u003e\n      \u003c/ul\u003e\n\n      \u003ch3\u003eQuests\u003c/h3\u003e\n      \u003cp\u003eSee active goals and completed goals.\u003c/p\u003e\n\n      \u003ch3\u003ePets\u003c/h3\u003e\n      \u003cp\u003eView and care for your virtual pet. Pets react to your progress.\u003c/p\u003e\n\n      \u003ch3\u003ePet Shop\u003c/h3\u003e\n      \u003cp\u003eSpend coins on pet food, toys, and pet accessories.\u003c/p\u003e\n\n      \u003ch3\u003eBadges\u003c/h3\u003e\n      \u003cp\u003eReview your earned badges and locked badges.\u003c/p\u003e\n\n      \u003ch3\u003eProgress Dashboard\u003c/h3\u003e\n      \u003cp\u003eSee your overall practice history and performance trends.\u003c/p\u003e\n\n      \u003ch3\u003ePractice Log\u003c/h3\u003e\n      \u003cp\u003eReview recent sessions in plain language with readable dates, times, durations, activity names, results, and earned rewards. You can also copy the log to the clipboard.\u003c/p\u003e\n\n      \u003ch3\u003eDaily Challenge\u003c/h3\u003e\n      \u003cp\u003eCheck and complete the current daily challenge.\u003c/p\u003e\n\n      \u003ch3\u003eKey Performance\u003c/h3\u003e\n      \u003cp\u003eSee which keys are easiest or hardest for you.\u003c/p\u003e\n\n      \u003ch3\u003eOptions\u003c/h3\u003e\n      \u003cp\u003eCustomize how the app sounds and looks. Settings are saved automatically.\u003c/p\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003cstrong\u003eSpeech\u003c/strong\u003e: Choose automatic, screen reader, text-to-speech, or off.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTyping Sounds\u003c/strong\u003e: Set keystroke sound intensity to subtle, normal, or strong.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTTS Rate\u003c/strong\u003e: Adjust text-to-speech speaking speed.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTTS Volume\u003c/strong\u003e: Adjust text-to-speech volume.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTTS Voice\u003c/strong\u003e: Choose a different installed voice for text-to-speech.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eAutomatic Updates\u003c/strong\u003e: Turn startup update checks on or off. When enabled in the installed Windows app, KeyQuest checks GitHub releases for a newer installer.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eVisual Theme\u003c/strong\u003e: Switch between dark, light, or high contrast. High contrast is applied automatically if Windows High Contrast mode is active.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eFocus Assist\u003c/strong\u003e: Turn stronger visual emphasis on or off. When enabled, KeyQuest uses stronger panels and focus cues to make the active area easier to find.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003ePractice Topic\u003c/strong\u003e: Choose the sentence language for Speed Test and Sentence Practice.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eFont Size\u003c/strong\u003e: Choose \u003cem\u003eauto\u003c/em\u003e (matches your Windows display scale), 100%, 125%, 150%, 175%, or 200%. Useful on high-DPI or low-vision setups that need larger text.\u003c/li\u003e\n      \u003c/ul\u003e\n\n      \u003ch3\u003eLearn Sounds\u003c/h3\u003e\n      \u003cp\u003eListen to built-in sounds and learn what each one means.\u003c/p\u003e\n\n      \u003ch3\u003eCheck for Updates\u003c/h3\u003e\n      \u003cp\u003eAvailable near the bottom of the Main Menu, just above Key Quest Instructions. KeyQuest checks for a newer release, downloads the right update for your copy from the official GitHub Releases page, installs it quietly or updates the portable folder in place, and then restarts automatically. If updating fails, KeyQuest writes a local error log, tries to copy that log to the clipboard, and offers the setup download. Installed-copy updates now wait for the old app process by PID before starting the installer, which makes the close-and-reopen step more reliable.\u003c/p\u003e\n\n      \u003ch3\u003eKey Quest Instructions\u003c/h3\u003e\n      \u003cp\u003eOpen this user guide in your default web browser from inside the program.\u003c/p\u003e\n\n      \u003ch3\u003eNew in Key Quest\u003c/h3\u003e\n      \u003cp\u003eOpen the online What\u0026apos;s New page in your default web browser to read recent changes in plain language.\u003c/p\u003e\n\n      \u003ch3\u003eAbout\u003c/h3\u003e\n      \u003cp\u003eView application, creator, company, copyright, and license details, open the official website, or open the KeyQuest donation page.\u003c/p\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003cstrong\u003eApplication\u003c/strong\u003e: KeyQuest {{APP_VERSION}}\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eRelease Date\u003c/strong\u003e: 2026-02-19\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eName\u003c/strong\u003e: Casey Mathews\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eCompany\u003c/strong\u003e: Web Friendly Help LLC\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTagline\u003c/strong\u003e: Helping You Tame Your Access Technology\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eCopyright\u003c/strong\u003e: (c) 2026 Casey Mathews and Web Friendly Help LLC\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eLicense\u003c/strong\u003e: MIT (free to use, modify, and distribute)\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: webfriendlyhelp.com (press Enter on Website item to open)\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eOfficial Downloads\u003c/strong\u003e: GitHub Releases is the official source for KeyQuest downloads and updates. Other builds or download pages are not official KeyQuest releases.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eDonate\u003c/strong\u003e: \u003ca href=\"https://square.link/u/XfI4Icmm\"\u003eSupport KeyQuest\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n\n      \u003ch3\u003eQuit\u003c/h3\u003e\n      \u003cp\u003eClose the program.\u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"custom-sentences\"\u003e\n      \u003ch2\u003eUsing Your Own Sentences\u003c/h2\u003e\n      \u003cp\u003e\n        KeyQuest can use your own sentence files. This is useful if you want to practice class material, job vocabulary, assistive technology commands, bilingual content, or your own Spanish sentences.\n      \u003c/p\u003e\n      \u003cp\u003e\n        Open the \u003ccode\u003eSentences\u003c/code\u003e folder next to \u003ccode\u003eKeyQuest.exe\u003c/code\u003e. Each text file in that folder becomes a practice topic. For example, a file named \u003ccode\u003eMy Spanish Practice.txt\u003c/code\u003e will appear as a topic named \u003cstrong\u003eMy Spanish Practice\u003c/strong\u003e.\n      \u003c/p\u003e\n      \u003cp\u003e\n        Put one sentence on each line. You can either create a new text file or edit one of the existing files already in the \u003ccode\u003eSentences\u003c/code\u003e folder.\n      \u003c/p\u003e\n      \u003cp\u003e\n        For example, you can open an existing file such as \u003ccode\u003eSpanish Sentences.txt\u003c/code\u003e or \u003ccode\u003eEnglish Sentences.txt\u003c/code\u003e and add, remove, or change lines. You can also create a new file for a class, student, workplace, or skill area. This is an easy way to make practice feel more personal and more useful.\n      \u003c/p\u003e\n      \u003cp\u003e\n        KeyQuest cleans sentence files when it loads them. It keeps real language letters such as Spanish accents, but it removes copy-and-paste junk such as odd spacing, emoji, hidden characters, duplicate lines, and common broken text encoding. The cleaned sentences are saved back to the file automatically.\n      \u003c/p\u003e\n      \u003cp\u003e\n        Use plain text and end each sentence with normal punctuation such as a period, question mark, or exclamation point.\n      \u003c/p\u003e\n      \u003cp class=\"note\"\u003e\n        KeyQuest keeps user-added sentence files during updates. If a built-in sentence file is updated, KeyQuest merges the built-in and user content without keeping exact duplicate lines.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"downloads\"\u003e\n      \u003ch2\u003eDownloads\u003c/h2\u003e\n      \u003cp\u003e\n        You can download KeyQuest in two simple forms. If you are not sure which one to choose, start with the installer.\n      \u003c/p\u003e\n\n      \u003ch3\u003eInstaller\u003c/h3\u003e\n      \u003cp\u003e\n        The installer sets KeyQuest up for you. It puts the program in the usual place on your computer and adds shortcuts.\n        This is the easiest choice for most people.\n      \u003c/p\u003e\n      \u003cp\u003e\n        \u003ca href=\"https://github.com/WebFriendlyHelp/KeyQuest/releases/latest/download/KeyQuestSetup.exe\"\u003eDownload KeyQuest Installer.exe\u003c/a\u003e\n      \u003c/p\u003e\n\n      \u003ch3\u003ePortable\u003c/h3\u003e\n      \u003cp\u003e\n        The portable version is a zip file. You download it, unzip it, open the folder, and run \u003ccode\u003eKeyQuest.exe\u003c/code\u003e.\n        Choose this if you want to keep KeyQuest in one folder, copy it to another computer, or avoid a full installation.\n      \u003c/p\u003e\n      \u003cp\u003e\n        \u003ca href=\"https://github.com/WebFriendlyHelp/KeyQuest/releases/latest/download/KeyQuest-win64.zip\"\u003eDownload KeyQuest Portable.zip\u003c/a\u003e\n      \u003c/p\u003e\n\n      \u003cp class=\"note\"\u003e\n        Official KeyQuest downloads are published on GitHub Releases. The in-app updater uses those releases. Other builds, mirrors, or repackaged copies are not official KeyQuest releases.\n      \u003c/p\u003e\n      \u003cp class=\"note\"\u003e\n        Both versions can check for updates from inside KeyQuest. The installer updates the installed app. The portable version updates the portable folder in place.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"license\"\u003e\n      \u003ch2\u003eLicense\u003c/h2\u003e\n      \u003cp\u003e\n        KeyQuest is licensed under the \u003cstrong\u003eMIT License\u003c/strong\u003e.\n        See the \u003ccode\u003eLICENSE\u003c/code\u003e file for full terms.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"accessibility\"\u003e\n      \u003ch2\u003eAccessibility\u003c/h2\u003e\n      \u003cul\u003e\n        \u003cli\u003eKeyboard-only navigation\u003c/li\u003e\n        \u003cli\u003eScreen reader and TTS support\u003c/li\u003e\n        \u003cli\u003eVisual focus indicators and clear labels\u003c/li\u003e\n        \u003cli\u003eLong prompts and typed text wrap across multiple lines on typing and lesson screens instead of being forced onto one line\u003c/li\u003e\n        \u003cli\u003eLong menus keep the current selection in view more clearly and show when there are more items above or below\u003c/li\u003e\n        \u003cli\u003eConsistent repeat commands in typing contexts (\u003cstrong\u003eCtrl+Space\u003c/strong\u003e)\u003c/li\u003e\n        \u003cli\u003eWindows High Contrast mode is detected automatically when your theme is set to Auto\u003c/li\u003e\n        \u003cli\u003eFont size scaling: \u003cem\u003eauto\u003c/em\u003e reads your Windows display scaling; manual 100%, 125%, 150%, 175%, and 200% options are also available\u003c/li\u003e\n        \u003cli\u003eThe app window can be resized and tries to maximize on startup, so larger text has more room to stay on screen\u003c/li\u003e\n        \u003cli\u003eVisual keystroke feedback: brief green flash on correct key, red flash on error (deaf or hard-of-hearing users)\u003c/li\u003e\n        \u003cli\u003eEscape press counter shown on screen while exiting active modes\u003c/li\u003e\n        \u003cli\u003eOptional Focus Assist mode for stronger active-area emphasis on typing and setup screens\u003c/li\u003e\n        \u003cli\u003eStronger spacing and grouping on text-heavy screens so the active area is easier to spot\u003c/li\u003e\n        \u003cli\u003eShared layout handling now keeps menus and current game screens more stable at larger font sizes and live window sizes\u003c/li\u003e\n        \u003cli\u003eBuilt-in larger text options up to 200% for low-vision readability\u003c/li\u003e\n        \u003cli\u003eHands-off in-app updating for installed and portable Windows builds using GitHub Releases\u003c/li\u003e\n        \u003cli\u003eThis page uses clear headings, skip navigation, and visible keyboard focus\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"help\"\u003e\n      \u003ch2\u003eNeed Help\u003c/h2\u003e\n      \u003cp\u003e\n        If something sounds wrong or a control does not behave as expected,\n        share the section name and exact key presses.\n        That helps fix issues quickly.\n      \u003c/p\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: \u003ca href=\"https://webfriendlyhelp.com\"\u003eWeb Friendly Help website\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eDonate\u003c/strong\u003e: \u003ca href=\"https://square.link/u/XfI4Icmm\"\u003eSupport KeyQuest\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eFeedback Email\u003c/strong\u003e: \u003ca href=\"mailto:help@webfriendlyhelp.com?subject=KeyQuest%20Feedback\"\u003ehelp@webfriendlyhelp.com\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eBug Reports\u003c/strong\u003e: If an in-app update or unexpected error fails, KeyQuest saves a local error log, tries to copy it to the clipboard automatically, and tells you where it was saved.\u003c/li\u003e\n        \u003cli\u003e\u003cstrong\u003eOfficial Builds\u003c/strong\u003e: Download KeyQuest from the GitHub Releases page. Other builds or download pages are not official KeyQuest releases.\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"unsigned-build\"\u003e\n      \u003ch2\u003eUnsigned Build Notice\u003c/h2\u003e\n      \u003cp\u003e\n        Current KeyQuest builds may be unsigned. On Windows, SmartScreen may show a warning.\n      \u003c/p\u003e\n      \u003col\u003e\n        \u003cli\u003eWhen the warning appears, select \u003cstrong\u003eMore info\u003c/strong\u003e.\u003c/li\u003e\n        \u003cli\u003eSelect \u003cstrong\u003eRun anyway\u003c/strong\u003e if you trust the release source.\u003c/li\u003e\n      \u003c/ol\u003e\n      \u003cp\u003e\n        For safety, download only from the official GitHub release page.\n      \u003c/p\u003e\n    \u003c/section\u003e\n\n    \u003csection id=\"installer\"\u003e\n      \u003ch2\u003eInstaller\u003c/h2\u003e\n      \u003cp\u003e\n        KeyQuest can be distributed as a standard Windows installer (\u003ccode\u003eKeyQuestSetup.exe\u003c/code\u003e) built from the app package.\n      \u003c/p\u003e\n      \u003cp\u003e\n        Installer builds are currently unsigned, so SmartScreen warnings may still appear. Both installed and portable Windows builds can update themselves from the official GitHub Releases page.\n      \u003c/p\u003e\n      \u003cp\u003e\n        During self-update, KeyQuest preserves \u003ccode\u003eprogress.json\u003c/code\u003e. Sentence files are merged during updates so user-added lines and new shipped lines are both kept without exact duplicate entries.\n      \u003c/p\u003e\n    \u003c/section\u003e\n  \u003c/main\u003e\n\n  \u003cfooter\u003e\n    \u003cdiv class=\"content-block\"\u003e\n      \u003cp\u003eEnd of KeyQuest User Guide.\u003c/p\u003e\n    \u003c/div\u003e\n  \u003c/footer\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n","funding_links":["https://github.com/sponsors/WebFriendlyHelp","https://square.link/u/XfI4Icmm"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebfriendlyhelp%2Fkeyquest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebfriendlyhelp%2Fkeyquest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebfriendlyhelp%2Fkeyquest/lists"}