CINXE.COM
Keyboard App Builder - Create Customized Keyboard Apps
<!doctype html> <!--[if lt IE 7]><html class="no-js ie ie6 lt-ie9 lt-ie8 lt-ie7" lang="en-US" prefix="og: https://ogp.me/ns#"> <![endif]--> <!--[if IE 7]><html class="no-js ie ie7 lt-ie9 lt-ie8" lang="en-US" prefix="og: https://ogp.me/ns#"> <![endif]--> <!--[if IE 8]><html class="no-js ie ie8 lt-ie9" lang="en-US" prefix="og: https://ogp.me/ns#"> <![endif]--> <!--[if gt IE 8]><!--><html class="no-js" lang="en-US" prefix="og: https://ogp.me/ns#"> <!--<![endif]--><head><meta charset="UTF-8" /><title> Keyboard App Builder - Create Customized Keyboard Apps</title><meta name="description" content="Create customized Android apps with Keyman keyboards for typing in other apps"><link rel="stylesheet" href="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_ab6cbedf6335655d59bc786b33a507ab.php" type="text/css" media="screen" /><link rel="stylesheet" href="https://software.sil.org/keyboardappbuilder/wp-content/themes/web-productsites/vendor/fortawesome/font-awesome/css/font-awesome.min.css"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="pingback" href="https://software.sil.org/keyboardappbuilder/xmlrpc.php" /><link href='https://fonts.googleapis.com/css?family=Open+Sans:400italic,400,700,700italic' rel='stylesheet' type='text/css'><style>#page-site-banner { background-image: url(https://software.sil.org/keyboardappbuilder/wp-content/uploads/sites/56/2020/04/banner_image.jpg); }</style><meta name="description" content="The Keyboard App Builder helps you to create customized keyboard apps for Android smartphones and tablets. These apps allow users to add a system keyboard to"/><meta name="robots" content="index, follow, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/><link rel="canonical" href="https://software.sil.org/keyboardappbuilder/" /><meta property="og:locale" content="en_US" /><meta property="og:type" content="website" /><meta property="og:title" content="Keyboard App Builder - Create Customized Keyboard Apps" /><meta property="og:description" content="The Keyboard App Builder helps you to create customized keyboard apps for Android smartphones and tablets. These apps allow users to add a system keyboard to" /><meta property="og:url" content="https://software.sil.org/keyboardappbuilder/" /><meta property="og:site_name" content="Keyboard App Builder" /><meta property="og:updated_time" content="2024-08-01T16:49:42+00:00" /><meta property="article:published_time" content="2014-10-02T09:52:47+00:00" /><meta property="article:modified_time" content="2024-08-01T16:49:42+00:00" /><meta name="twitter:card" content="summary_large_image" /><meta name="twitter:title" content="Keyboard App Builder - Create Customized Keyboard Apps" /><meta name="twitter:description" content="The Keyboard App Builder helps you to create customized keyboard apps for Android smartphones and tablets. These apps allow users to add a system keyboard to" /><meta name="twitter:label1" content="Written by" /><meta name="twitter:data1" content="Language Technology" /><meta name="twitter:label2" content="Time to read" /><meta name="twitter:data2" content="Less than a minute" /> <script type="application/ld+json" class="rank-math-schema-pro">{"@context":"https://schema.org","@graph":[{"@type":["Person","Organization"],"@id":"https://software.sil.org/keyboardappbuilder/#person","name":"Keyboard App Builder"},{"@type":"WebSite","@id":"https://software.sil.org/keyboardappbuilder/#website","url":"https://software.sil.org/keyboardappbuilder","name":"Keyboard App Builder","publisher":{"@id":"https://software.sil.org/keyboardappbuilder/#person"},"inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":"https://software.sil.org/keyboardappbuilder/?s={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"WebPage","@id":"https://software.sil.org/keyboardappbuilder/#webpage","url":"https://software.sil.org/keyboardappbuilder/","name":"Keyboard App Builder - Create Customized Keyboard Apps","datePublished":"2014-10-02T09:52:47+00:00","dateModified":"2024-08-01T16:49:42+00:00","about":{"@id":"https://software.sil.org/keyboardappbuilder/#person"},"isPartOf":{"@id":"https://software.sil.org/keyboardappbuilder/#website"},"inLanguage":"en-US"},{"@type":"Person","@id":"https://software.sil.org/keyboardappbuilder/author/ltuse/","name":"Language Technology","url":"https://software.sil.org/keyboardappbuilder/author/ltuse/","image":{"@type":"ImageObject","@id":"https://secure.gravatar.com/avatar/0cd53dc386e003c827db019ee9a35714?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/0cd53dc386e003c827db019ee9a35714?s=96&d=mm&r=g","caption":"Language Technology","inLanguage":"en-US"}},{"@type":"Article","headline":"Keyboard App Builder - Create Customized Keyboard Apps","keywords":"customized keyboard app","datePublished":"2014-10-02T09:52:47+00:00","dateModified":"2024-08-01T16:49:42+00:00","author":{"@id":"https://software.sil.org/keyboardappbuilder/author/ltuse/","name":"Language Technology"},"publisher":{"@id":"https://software.sil.org/keyboardappbuilder/#person"},"description":"The\u00a0Keyboard App Builder\u00a0helps you to create customized keyboard apps for Android smartphones and tablets. These apps allow users to add a system keyboard to","name":"Keyboard App Builder - Create Customized Keyboard Apps","@id":"https://software.sil.org/keyboardappbuilder/#richSnippet","isPartOf":{"@id":"https://software.sil.org/keyboardappbuilder/#webpage"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://software.sil.org/keyboardappbuilder/#webpage"}}]}</script> <link rel="alternate" type="application/rss+xml" title="Keyboard App Builder » Keyboard App Builder Comments Feed" href="https://software.sil.org/keyboardappbuilder/home/feed/" /> <script defer src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp3aW5kb3cuX3dwZW1vamlTZXR0aW5ncyA9IHsiYmFzZVVybCI6Imh0dHBzOlwvXC9zLncub3JnXC9pbWFnZXNcL2NvcmVcL2Vtb2ppXC8xNS4wLjNcLzcyeDcyXC8iLCJleHQiOiIucG5nIiwic3ZnVXJsIjoiaHR0cHM6XC9cL3Mudy5vcmdcL2ltYWdlc1wvY29yZVwvZW1vamlcLzE1LjAuM1wvc3ZnXC8iLCJzdmdFeHQiOiIuc3ZnIiwic291cmNlIjp7ImNvbmNhdGVtb2ppIjoiaHR0cHM6XC9cL3NvZnR3YXJlLnNpbC5vcmdcL2tleWJvYXJkYXBwYnVpbGRlclwvd3AtaW5jbHVkZXNcL2pzXC93cC1lbW9qaS1yZWxlYXNlLm1pbi5qcz92ZXI9MWMzZjk5OTMxMTEzZTRlMjY3ODg5Yzk2ZjNiNjNkYzUifX07Ci8qISBUaGlzIGZpbGUgaXMgYXV0by1nZW5lcmF0ZWQgKi8KIWZ1bmN0aW9uKGksbil7dmFyIG8scyxlO2Z1bmN0aW9uIGMoZSl7dHJ5e3ZhciB0PXtzdXBwb3J0VGVzdHM6ZSx0aW1lc3RhbXA6KG5ldyBEYXRlKS52YWx1ZU9mKCl9O3Nlc3Npb25TdG9yYWdlLnNldEl0ZW0obyxKU09OLnN0cmluZ2lmeSh0KSl9Y2F0Y2goZSl7fX1mdW5jdGlvbiBwKGUsdCxuKXtlLmNsZWFyUmVjdCgwLDAsZS5jYW52YXMud2lkdGgsZS5jYW52YXMuaGVpZ2h0KSxlLmZpbGxUZXh0KHQsMCwwKTt2YXIgdD1uZXcgVWludDMyQXJyYXkoZS5nZXRJbWFnZURhdGEoMCwwLGUuY2FudmFzLndpZHRoLGUuY2FudmFzLmhlaWdodCkuZGF0YSkscj0oZS5jbGVhclJlY3QoMCwwLGUuY2FudmFzLndpZHRoLGUuY2FudmFzLmhlaWdodCksZS5maWxsVGV4dChuLDAsMCksbmV3IFVpbnQzMkFycmF5KGUuZ2V0SW1hZ2VEYXRhKDAsMCxlLmNhbnZhcy53aWR0aCxlLmNhbnZhcy5oZWlnaHQpLmRhdGEpKTtyZXR1cm4gdC5ldmVyeShmdW5jdGlvbihlLHQpe3JldHVybiBlPT09clt0XX0pfWZ1bmN0aW9uIHUoZSx0LG4pe3N3aXRjaCh0KXtjYXNlImZsYWciOnJldHVybiBuKGUsIlx1ZDgzY1x1ZGZmM1x1ZmUwZlx1MjAwZFx1MjZhN1x1ZmUwZiIsIlx1ZDgzY1x1ZGZmM1x1ZmUwZlx1MjAwYlx1MjZhN1x1ZmUwZiIpPyExOiFuKGUsIlx1ZDgzY1x1ZGRmYVx1ZDgzY1x1ZGRmMyIsIlx1ZDgzY1x1ZGRmYVx1MjAwYlx1ZDgzY1x1ZGRmMyIpJiYhbihlLCJcdWQ4M2NcdWRmZjRcdWRiNDBcdWRjNjdcdWRiNDBcdWRjNjJcdWRiNDBcdWRjNjVcdWRiNDBcdWRjNmVcdWRiNDBcdWRjNjdcdWRiNDBcdWRjN2YiLCJcdWQ4M2NcdWRmZjRcdTIwMGJcdWRiNDBcdWRjNjdcdTIwMGJcdWRiNDBcdWRjNjJcdTIwMGJcdWRiNDBcdWRjNjVcdTIwMGJcdWRiNDBcdWRjNmVcdTIwMGJcdWRiNDBcdWRjNjdcdTIwMGJcdWRiNDBcdWRjN2YiKTtjYXNlImVtb2ppIjpyZXR1cm4hbihlLCJcdWQ4M2RcdWRjMjZcdTIwMGRcdTJiMWIiLCJcdWQ4M2RcdWRjMjZcdTIwMGJcdTJiMWIiKX1yZXR1cm4hMX1mdW5jdGlvbiBmKGUsdCxuKXt2YXIgcj0idW5kZWZpbmVkIiE9dHlwZW9mIFdvcmtlckdsb2JhbFNjb3BlJiZzZWxmIGluc3RhbmNlb2YgV29ya2VyR2xvYmFsU2NvcGU/bmV3IE9mZnNjcmVlbkNhbnZhcygzMDAsMTUwKTppLmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLGE9ci5nZXRDb250ZXh0KCIyZCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pLG89KGEudGV4dEJhc2VsaW5lPSJ0b3AiLGEuZm9udD0iNjAwIDMycHggQXJpYWwiLHt9KTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe29bZV09dChhLGUsbil9KSxvfWZ1bmN0aW9uIHQoZSl7dmFyIHQ9aS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTt0LnNyYz1lLHQuZGVmZXI9ITAsaS5oZWFkLmFwcGVuZENoaWxkKHQpfSJ1bmRlZmluZWQiIT10eXBlb2YgUHJvbWlzZSYmKG89IndwRW1vamlTZXR0aW5nc1N1cHBvcnRzIixzPVsiZmxhZyIsImVtb2ppIl0sbi5zdXBwb3J0cz17ZXZlcnl0aGluZzohMCxldmVyeXRoaW5nRXhjZXB0RmxhZzohMH0sZT1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtpLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGUse29uY2U6ITB9KX0pLG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe3ZhciBuPWZ1bmN0aW9uKCl7dHJ5e3ZhciBlPUpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShvKSk7aWYoIm9iamVjdCI9PXR5cGVvZiBlJiYibnVtYmVyIj09dHlwZW9mIGUudGltZXN0YW1wJiYobmV3IERhdGUpLnZhbHVlT2YoKTxlLnRpbWVzdGFtcCs2MDQ4MDAmJiJvYmplY3QiPT10eXBlb2YgZS5zdXBwb3J0VGVzdHMpcmV0dXJuIGUuc3VwcG9ydFRlc3RzfWNhdGNoKGUpe31yZXR1cm4gbnVsbH0oKTtpZighbil7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBXb3JrZXImJiJ1bmRlZmluZWQiIT10eXBlb2YgT2Zmc2NyZWVuQ2FudmFzJiYidW5kZWZpbmVkIiE9dHlwZW9mIFVSTCYmVVJMLmNyZWF0ZU9iamVjdFVSTCYmInVuZGVmaW5lZCIhPXR5cGVvZiBCbG9iKXRyeXt2YXIgZT0icG9zdE1lc3NhZ2UoIitmLnRvU3RyaW5nKCkrIigiK1tKU09OLnN0cmluZ2lmeShzKSx1LnRvU3RyaW5nKCkscC50b1N0cmluZygpXS5qb2luKCIsIikrIikpOyIscj1uZXcgQmxvYihbZV0se3R5cGU6InRleHQvamF2YXNjcmlwdCJ9KSxhPW5ldyBXb3JrZXIoVVJMLmNyZWF0ZU9iamVjdFVSTChyKSx7bmFtZToid3BUZXN0RW1vamlTdXBwb3J0cyJ9KTtyZXR1cm4gdm9pZChhLm9ubWVzc2FnZT1mdW5jdGlvbihlKXtjKG49ZS5kYXRhKSxhLnRlcm1pbmF0ZSgpLHQobil9KX1jYXRjaChlKXt9YyhuPWYocyx1LHApKX10KG4pfSkudGhlbihmdW5jdGlvbihlKXtmb3IodmFyIHQgaW4gZSluLnN1cHBvcnRzW3RdPWVbdF0sbi5zdXBwb3J0cy5ldmVyeXRoaW5nPW4uc3VwcG9ydHMuZXZlcnl0aGluZyYmbi5zdXBwb3J0c1t0XSwiZmxhZyIhPT10JiYobi5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZz1uLnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnJiZuLnN1cHBvcnRzW3RdKTtuLnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnPW4uc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWcmJiFuLnN1cHBvcnRzLmZsYWcsbi5ET01SZWFkeT0hMSxuLnJlYWR5Q2FsbGJhY2s9ZnVuY3Rpb24oKXtuLkRPTVJlYWR5PSEwfX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZX0pLnRoZW4oZnVuY3Rpb24oKXt2YXIgZTtuLnN1cHBvcnRzLmV2ZXJ5dGhpbmd8fChuLnJlYWR5Q2FsbGJhY2soKSwoZT1uLnNvdXJjZXx8e30pLmNvbmNhdGVtb2ppP3QoZS5jb25jYXRlbW9qaSk6ZS53cGVtb2ppJiZlLnR3ZW1vamkmJih0KGUudHdlbW9qaSksdChlLndwZW1vamkpKSl9KSl9KCh3aW5kb3csZG9jdW1lbnQpLHdpbmRvdy5fd3BlbW9qaVNldHRpbmdzKTsKLyogXV0+ICovCg=="></script> <style id='wp-emoji-styles-inline-css' type='text/css'>img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; }</style><link rel='stylesheet' id='wp-block-library-css' href='https://software.sil.org/keyboardappbuilder/wp-includes/css/dist/block-library/style.min.css?ver=1c3f99931113e4e267889c96f3b63dc5' type='text/css' media='all' /><style id='classic-theme-styles-inline-css' type='text/css'>/*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}</style><style id='global-styles-inline-css' type='text/css'>:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}</style><link rel='stylesheet' id='contact-form-7-css' href='https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_3fd2afa98866679439097f4ab102fe0a.php?ver=6.0.3' type='text/css' media='all' /><link rel='stylesheet' id='dashicons-css' href='https://software.sil.org/keyboardappbuilder/wp-includes/css/dashicons.min.css?ver=1c3f99931113e4e267889c96f3b63dc5' type='text/css' media='all' /><link rel='stylesheet' id='to-top-css' href='https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_658ed7c8d9872eb232101d85f58c8cc5.php?ver=2.5.4' type='text/css' media='all' /><link rel='stylesheet' id='custom-styles-css' href='https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_fe1ebbbfadded6e44ec3200399d8b94f.php?ver=1c3f99931113e4e267889c96f3b63dc5' type='text/css' media='all' /><style id='akismet-widget-style-inline-css' type='text/css'>.a-stats { --akismet-color-mid-green: #357b49; --akismet-color-white: #fff; --akismet-color-light-grey: #f6f7f7; max-width: 350px; width: auto; } .a-stats * { all: unset; box-sizing: border-box; } .a-stats strong { font-weight: 600; } .a-stats a.a-stats__link, .a-stats a.a-stats__link:visited, .a-stats a.a-stats__link:active { background: var(--akismet-color-mid-green); border: none; box-shadow: none; border-radius: 8px; color: var(--akismet-color-white); cursor: pointer; display: block; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif; font-weight: 500; padding: 12px; text-align: center; text-decoration: none; transition: all 0.2s ease; } /* Extra specificity to deal with TwentyTwentyOne focus style */ .widget .a-stats a.a-stats__link:focus { background: var(--akismet-color-mid-green); color: var(--akismet-color-white); text-decoration: none; } .a-stats a.a-stats__link:hover { filter: brightness(110%); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 0 2px rgba(0, 0, 0, 0.16); } .a-stats .count { color: var(--akismet-color-white); display: block; font-size: 1.5em; line-height: 1.4; padding: 0 13px; white-space: nowrap; }</style> <script type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script defer id="to-top-js-extra" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp2YXIgdG9fdG9wX29wdGlvbnMgPSB7InNjcm9sbF9vZmZzZXQiOiIxMDAiLCJpY29uX29wYWNpdHkiOiI1MCIsInN0eWxlIjoiaWNvbiIsImljb25fdHlwZSI6ImRhc2hpY29ucy1hcnJvdy11cC1hbHQyIiwiaWNvbl9jb2xvciI6IiNmZmZmZmYiLCJpY29uX2JnX2NvbG9yIjoiIzAwMDAwMCIsImljb25fc2l6ZSI6IjMyIiwiYm9yZGVyX3JhZGl1cyI6IjUiLCJpbWFnZSI6Imh0dHBzOlwvXC9zb2Z0d2FyZS5zaWwub3JnXC9rZXlib2FyZGFwcGJ1aWxkZXJcL3dwLWNvbnRlbnRcL3BsdWdpbnNcL3RvLXRvcFwvYWRtaW5cL2ltYWdlc1wvZGVmYXVsdC5wbmciLCJpbWFnZV93aWR0aCI6IjY1IiwiaW1hZ2VfYWx0IjoiIiwibG9jYXRpb24iOiJib3R0b20tcmlnaHQiLCJtYXJnaW5feCI6IjIwIiwibWFyZ2luX3kiOiIyMCIsInNob3dfb25fYWRtaW4iOiIwIiwiZW5hYmxlX2F1dG9oaWRlIjoiMCIsImF1dG9oaWRlX3RpbWUiOiIyIiwiZW5hYmxlX2hpZGVfc21hbGxfZGV2aWNlIjoiMCIsInNtYWxsX2RldmljZV9tYXhfd2lkdGgiOiI2NDAiLCJyZXNldCI6IjAifTsKLyogXV0+ICovCg=="></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_3412a76d1309925e4c16893c6446ef4b.php?ver=2.5.4" id="to-top-js"></script> <link rel="https://api.w.org/" href="https://software.sil.org/keyboardappbuilder/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://software.sil.org/keyboardappbuilder/wp-json/wp/v2/pages/20" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://software.sil.org/keyboardappbuilder/xmlrpc.php?rsd" /><link rel='shortlink' href='https://software.sil.org/keyboardappbuilder/' /><link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://software.sil.org/keyboardappbuilder/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fsoftware.sil.org%2Fkeyboardappbuilder%2F" /><link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://software.sil.org/keyboardappbuilder/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fsoftware.sil.org%2Fkeyboardappbuilder%2F&format=xml" /><style type="text/css">.broken_link, a.broken_link { text-decoration: line-through; }</style><style type="text/css" id="wp-custom-css">/* Welcome to Custom CSS! To learn how this works, see http://wp.me/PEmnE-Bt */</style> <script defer src=" https://www.googletagmanager.com/gtag/js?id=G-75WYFHYVT8"></script> <script defer src="data:text/javascript;base64,IHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdOyBmdW5jdGlvbgpndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9IGd0YWcoJ2pzJywgbmV3IERhdGUoKSk7IGd0YWcoJ2NvbmZpZycsICdHLTc1V1lGSFlWVDgnKTsg"></script> </head><body class="home page-template-default page page-id-20 wp-custom-logo keyboardappbuilder" data-source="base.twig"><header id="navbar" role="banner"><nav role="navigation" class="navbar navbar-default"><div class="container"><div class="navbar-header"> <a class="logo navbar-btn pull-left" href="https://software.sil.org" title="Home"> <img src="https://software.sil.org/keyboardappbuilder/wp-content/themes/web-productsites/images/sil_logo_glyph.png" alt="Home"> </a> <button type="button" class="navbar-toggle main-menu-toggle-test" data-toggle="collapse" data-target="#topNavbar">☰ Menu</button></div><div id="topNavbar" class="collapse navbar-collapse main-menu-toggle" data-collapse="collapsed"><div id="search-box"><div class="donate-button"> <a class="btn btn-default btn-block btn-download btn-secondary" href="https://give.sil.org/LangTech" role="button">Donate</a></div><div class="search-box-form"><form method="get" id="searchform" role="form" class="navbar-form navbar-right" action="https://software.sil.org/keyboardappbuilder/"><div class="form-group"><div class="input-group"> <input type="text" class="form-control" name="s" id="s" placeholder="Search..." /> <span class="input-group-btn"> <button type="submit" class="btn btn-default"><i class="fa fa-search fa-fw"></i></button> </span></div></div></form></div></div><div id="nav-list"><ul class="nav navbar-nav navbar-right"><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-2023"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/features/">Features</a></li><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-43"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/download/">Downloads</a></li><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-42"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/learn/">Learn</a></li><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-44"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/news/">News</a></li><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-41"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/help/">Get Help</a></li><li class="nav-main-item menu-item menu-item-type-post_type menu-item-object-page menu-item-45 menu-item-has-children"> <a class="nav-main-link" href="https://software.sil.org/keyboardappbuilder/about/">About</a><ul class="sub-menu"><li class="nav-sub-item menu-item menu-item-type-post_type menu-item-object-page menu-item-2024"> <a class="nav-sub-link" href="https://software.sil.org/keyboardappbuilder/about/">About</a></li><li class="nav-sub-item menu-item menu-item-type-post_type menu-item-object-page menu-item-674"> <a class="nav-sub-link" href="https://software.sil.org/keyboardappbuilder/developer/">Developer</a></li></ul></li></ul></div></div></div></nav></header><header id="page-site-name"><div class="container"><h1 class="page-header"><a href="https://software.sil.org/keyboardappbuilder">Keyboard App Builder</a></h1></div></header><header id="page-site-lang-tech"><div class="container"><h2 class="page-header"><div class="textwidget"><a href="http://software.sil.org/">Language Technology</a></div></h2></div></header><section class="sub-page-site-banner" id="page-site-banner"><div class="container"><div class="row page-site-banner-row"><div class="" id="page-site-banner-overlay"><div class="textwidget"><img src="https://software.sil.org/keyboardappbuilder/wp-content/uploads/sites/56/2020/04/KAB_80.png" title="Keyboard App Builder"></div><h2 class="site-description">Create customized Android apps with Keyman keyboards for typing in other apps</h2><p class="button-para"> <a class="btn btn-default btn-block btn-download" href="https://software.sil.org/keyboardappbuilder/download" role="button"> Downloads </a></p></div></div></div></section><section id="home_primary"><div class="container"><div class="row"><div class="col-md-12 col-sm-12 sub-site-home-box-contents"><h2>Keyboard App Builder: Create Your Own Customized Keyboard App</h2><p>The <strong><span class="token">Keyboard App Builder</span></strong> helps you to create customized keyboard apps for Android smartphones and tablets. These apps allow users to add a system keyboard to their devices, enabling typing in their preferred language across apps such as Gmail, Facebook, and WhatsApp. Whether you need to develop a keyboard for a community language or personal use, Keyboard App Builder simplifies the process, ensuring everyone can access their language digitally.</p><p>To build your app, specify the <a href="https://keyman.com/" target="_blank" rel="noopener">Keyman keyboard</a> layout files and lexical models, choose the app name, select fonts and colors, and customize the about box and icons. Keyboard App Builder packages these elements together, creating a tailored app ready for installation. Share your app easily with others via Bluetooth, microSD cards, or even app stores.</p></div></div></div><div class="container"><div class="row trifold"><div class="col-md-4 col-sm-4"><div><h2></h2><img class="rl-image-widget-image" src="https://software.sil.org/keyboardappbuilder/wp-content/uploads/sites/56/2015/03/SAB-2-200x200px.jpg" width="200" height="200" title="" alt="" /><div class="rl-image-widget-text"></div></div><div><h2>Easy to Build</h2><div class="textwidget"><p>With Keyboard App Builder, creating a customized keyboard app is straightforward. Follow the intuitive steps in the New App Wizard and click the Build App button—no programming experience needed.</p><p><a href="http://software.sil.org/keyboardappbuilder/features#easytobuild">More about Building Apps…</a></p></div></div></div><div class="col-md-4 col-sm-4"><div><h2></h2><img class="rl-image-widget-image" src="https://software.sil.org/keyboardappbuilder/wp-content/uploads/sites/56/2020/04/KAB-keyman-200px.jpg" width="200" height="200" title="Keyman keyboards" alt="" /><div class="rl-image-widget-text"></div></div><div><h2>Keyman Keyboards</h2><div class="textwidget"><p>Utilize high-quality keyboard layouts and lexical models created with SIL’s Keyman software, ensuring robust and reliable keyboard functionality.</p><p><a href="https://www.keyman.com">More about Keyman…</a></p></div></div></div><div class="col-md-4 col-sm-4"><div><h2></h2><img class="rl-image-widget-image" src="https://software.sil.org/keyboardappbuilder/wp-content/uploads/sites/56/2020/04/KAB-distribute-200px.jpg" width="200" height="200" title="Easy to distribute" alt="" /><div class="rl-image-widget-text"></div></div><div><h2>Easy to Distribute</h2><div class="textwidget"><p>Distribute your customized keyboard app easily without the need for an internet connection. Package the content for offline use and share it via Bluetooth, microSD cards, or publish on app stores.</p><p><a href="http://software.sil.org/keyboardappbuilder/support/faq/">See more FAQs…</a></p></div></div></div></div></div><div class="container"><div class="row"></div></div></section><aside id="testimonial"><div class="container fullwidth"><div><div class="textwidget"><p>“Excellent! I’ve been waiting for this for several years. I think this is a huge motivation to helping support literate societies (who write email, WhatsApp, Facebook, etc).” – linguist in Togo, West Africa</p></div></div></div></aside><section id="home_secondary"><div class="container"><div class="row"><div class="col-md-6 col-sm-12"><div><h2>Common Questions</h2><div class="textwidget"><h3>Once the app has been built, how can I distribute it to others?</h3><p>You can start distributing it right away via Bluetooth or microSD card to people around you. It can also be made available on the Google Play Store.</p><h3>Will people need internet access to use the app?</h3><p>No. Everything can be packaged inside of the app, meaning that it will need no additional permissions like internet or file system access.</p><p><a href="http://software.sil.org/keyboardappbuilder/support/faq/">See more FAQs</a></p></div></div></div><div class="blog-posts col-md-6 col-sm-12"><div><h2>Recent News Posts</h2><ul><li> <a href="https://software.sil.org/keyboardappbuilder/2025/01/keyboard-app-builder-12-4-released/">Keyboard App Builder 12.4 Released</a> <span class="post-date">11 January 2025</span></li><li> <a href="https://software.sil.org/keyboardappbuilder/2024/11/keyboard-app-builder-12-3-released/">Keyboard App Builder 12.3 Released</a> <span class="post-date">8 November 2024</span></li><li> <a href="https://software.sil.org/keyboardappbuilder/2024/10/keyboard-app-builder-12-2-released/">Keyboard App Builder 12.2 Released</a> <span class="post-date">10 October 2024</span></li><li> <a href="https://software.sil.org/keyboardappbuilder/2024/07/keyboard-app-builder-12-0-released/">Keyboard App Builder 12.0 Released</a> <span class="post-date">22 July 2024</span></li><li> <a href="https://software.sil.org/keyboardappbuilder/2024/04/keyboard-app-builder-11-3-released/">Keyboard App Builder 11.3 Released</a> <span class="post-date">30 April 2024</span></li></ul></div><div><div class="textwidget"><div class="rssicon"><a target="_new" href="/keyboardappbuilder/feed/" title="Subscribe to News" rel="noopener"><img src="https://software.sil.org/keyboardappbuilder/wp-content/themes/web-productsites/images/rss-feed.png" alt="RSS Feed" /></a></div></div></div></div></div></div></section><div class="footer-top-bg"><aside id="license"><div class="container fullwidth"><div><div class="textwidget"><p>There is no charge for using this software. See the <a href="http://software.sil.org/keyboardappbuilder/license/">License</a>.</p><p>See the <a href="http://software.sil.org/keyboardappbuilder/developer">Developer</a> page for information on future development plans.</p></div></div></div></aside><aside id="donate"><div class="container fullwidth"><div><div class="textwidget"><p>Please also consider a <a href="http://software.sil.org/give">donation</a> to support our work.</p></div></div></div></aside></div><footer class="footer-top"><div class="container"><div class="row"><nav class="col-xs-7 col-md-3"><div><h2>SIL International</h2><div class="menu-footer_sil-container"><ul id="menu-footer_sil" class="menu"><li id="menu-item-46" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-46"><a target="_blank" rel="noopener" href="http://www.sil.org/about/discover">Discover SIL</a></li><li id="menu-item-47" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-47"><a target="_blank" rel="noopener" href="http://www.sil.org/langculture">Language & Culture</a></li><li id="menu-item-48" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-48"><a target="_blank" rel="noopener" href="http://www.sil.org/language-development">Language Development</a></li><li id="menu-item-49" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-49"><a target="_blank" rel="noopener" href="http://www.sil.org/about/news">SIL News</a></li></ul></div></div></nav><nav class="col-xs-5 col-md-3"><div><h2>Language Technology</h2><div class="menu-footer_software-container"><ul id="menu-footer_software" class="menu"><li id="menu-item-1958" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1958"><a href="https://software.sil.org/software-products/">Software Products</a></li><li id="menu-item-1959" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1959"><a href="https://software.sil.org/news/">Software & Font News</a></li><li id="menu-item-1960" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1960"><a target="_blank" rel="noopener" href="https://lingtransoft.info/">LingTranSoft</a></li><li id="menu-item-1961" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1961"><a target="_blank" rel="noopener" href="https://www.ethnologue.com/">Ethnologue</a></li><li id="menu-item-1962" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1962"><a target="_blank" rel="noopener" href="https://iso639-3.sil.org/">Language Codes (ISO 639-3)</a></li></ul></div></div></nav><nav class="col-xs-7 col-md-3"><div><h2>Fonts & Writing Systems</h2><div class="menu-footer_fonts-container"><ul id="menu-footer_fonts" class="menu"><li id="menu-item-57" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-57"><a href="http://scriptsource.org">ScriptSource</a></li><li id="menu-item-58" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-58"><a href="http://scripts.sil.org">Computers & Writing Systems</a></li><li id="menu-item-59" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-59"><a href="https://software.sil.org/fonts/">Font Catalog</a></li><li id="menu-item-60" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-60"><a href="http://software.sil.org/andika">Andika</a></li><li id="menu-item-61" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-61"><a href="http://software.sil.org/annapurna">Annapurna SIL</a></li><li id="menu-item-62" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-62"><a href="https://graphite.sil.org">Graphite</a></li><li id="menu-item-63" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-63"><a href="https://openfontlicense.org/">SIL Open Font License</a></li></ul></div></div></nav><nav class="col-xs-5 col-md-3"><div><h2>Contact & Support</h2><div class="menu-footer_contact-container"><ul id="menu-footer_contact" class="menu"><li id="menu-item-1882" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1882"><a href="https://software.sil.org/keyboardappbuilder/about/contact/">Contact</a></li><li id="menu-item-1888" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1888"><a href="https://software.sil.org/keyboardappbuilder/help/">Get Help</a></li><li id="menu-item-1753" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1753"><a href="https://software.sil.org/keyboardappbuilder/service/">Scriptoria</a></li></ul></div></div></nav></div></div></footer> <script defer src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwoJdmFyIHJlbGV2YW5zc2lfcnRfcmVnZXggPSAvKCZ8XD8pXyhydHxydF9ub25jZSk9KFx3KykvZwoJdmFyIG5ld1VybCA9IHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gucmVwbGFjZShyZWxldmFuc3NpX3J0X3JlZ2V4LCAnJykKCWhpc3RvcnkucmVwbGFjZVN0YXRlKG51bGwsIG51bGwsIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArIG5ld1VybCArIHdpbmRvdy5sb2NhdGlvbi5oYXNoKQovKiBdXT4gKi8K"></script> <span aria-hidden="true" id="to_top_scrollup" class="dashicons dashicons-arrow-up-alt2"><span class="screen-reader-text">Scroll Up</span></span> <!--noptimize--><script type='text/javascript'> /* <![CDATA[ */ r3f5x9JS=escape(document['referrer']); hf4N='2f3ff757e35a3e67c6c076791439ea41'; hf4V='345761ed50b33cb38ba413ff112b4ea8'; jQuery(document).ready(function($){var e="#commentform, .comment-respond form, .comment-form, #lostpasswordform, #registerform, #loginform, #login_form, #wpss_contact_form, .wpcf7-form";$(e).submit(function(){$("<input>").attr("type","hidden").attr("name","r3f5x9JS").attr("value",r3f5x9JS).appendTo(e);return true;});var h="form[method='post']";$(h).submit(function(){$("<input>").attr("type","hidden").attr("name",hf4N).attr("value",hf4V).appendTo(h);return true;});}); /* ]]> */ </script><!--/noptimize--> <script type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-includes/js/dist/hooks.min.js?ver=2810c76e705dd1a53b18" id="wp-hooks-js"></script> <script type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-includes/js/dist/i18n.min.js?ver=5e580eb46a90c2b997e6" id="wp-i18n-js"></script> <script defer id="wp-i18n-js-after" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp3cC5pMThuLnNldExvY2FsZURhdGEoIHsgJ3RleHQgZGlyZWN0aW9uXHUwMDA0bHRyJzogWyAnbHRyJyBdIH0gKTsKLyogXV0+ICovCg=="></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_2e187162915b1d22fd4558fee30f5613.php?ver=6.0.3" id="swv-js"></script> <script defer id="contact-form-7-js-before" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp2YXIgd3BjZjcgPSB7CiAgICAiYXBpIjogewogICAgICAgICJyb290IjogImh0dHBzOlwvXC9zb2Z0d2FyZS5zaWwub3JnXC9rZXlib2FyZGFwcGJ1aWxkZXJcL3dwLWpzb25cLyIsCiAgICAgICAgIm5hbWVzcGFjZSI6ICJjb250YWN0LWZvcm0tN1wvdjEiCiAgICB9LAogICAgImNhY2hlZCI6IDEKfTsKLyogXV0+ICovCg=="></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_2912c657d0592cc532dff73d0d2ce7bb.php?ver=6.0.3" id="contact-form-7-js"></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_6dab2d99e19210a36d3ecf142662edb1.php?ver=1c3f99931113e4e267889c96f3b63dc5" id="silps-site.js-js"></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/themes/web-productsites/vendor/twbs/bootstrap/dist/js/bootstrap.min.js?ver=1c3f99931113e4e267889c96f3b63dc5" id="silps-bootstrap.min.js-js"></script> <script defer type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=6LfCipIUAAAAAN9mXpp-m6tKMR-Hn3lny6DTR46h&ver=3.0" id="google-recaptcha-js"></script> <script type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0" id="wp-polyfill-js"></script> <script defer id="wpcf7-recaptcha-js-before" src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp2YXIgd3BjZjdfcmVjYXB0Y2hhID0gewogICAgInNpdGVrZXkiOiAiNkxmQ2lwSVVBQUFBQU45bVhwcC1tNnRLTVItSG4zbG55NkRUUjQ2aCIsCiAgICAiYWN0aW9ucyI6IHsKICAgICAgICAiaG9tZXBhZ2UiOiAiaG9tZXBhZ2UiLAogICAgICAgICJjb250YWN0Zm9ybSI6ICJjb250YWN0Zm9ybSIKICAgIH0KfTsKLyogXV0+ICovCg=="></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/cache/autoptimize/56/autoptimize_single_ec0187677793456f98473f49d9e9b95f.php?ver=6.0.3" id="wpcf7-recaptcha-js"></script> <script defer type="text/javascript" src="https://software.sil.org/keyboardappbuilder/wp-content/plugins/wp-spamshield/js/jscripts-ftr2-min.js" id="wpss-jscripts-ftr-js"></script> <footer class="footer-bottom"><div class="container"><div class="row"><nav class="col-xs-12 col-md-6"><p>Copyright © 2025 <a href="https://www.sil.org/" title="" class="active">SIL Global</a></p></nav><nav class="col-xs-12 col-md-6"><ul class="nav nav-horizontal"><li class="first leaf active"><a href="/terms-of-use" title="" class="active">Terms of Use</a></li><li class="last leaf active"><a href="/privacy-policy" title="" class="active">Privacy Policy</a></li></ul></nav></div></div></footer></body></html> <!-- Dynamic page generated in 0.671 seconds. --> <!-- Cached page generated by WP-Super-Cache on 2025-02-17 08:28:22 --> <!-- Compression = gzip -->