
Written so a human or an LLM can rebuild the keyboard without inventing APIs.
CodeKeyboard is a system Android keyboard (IME), not a text box demo — split Sofle-inspired layout, multiple layers, home-row modifiers, and on-device prediction that learns personal and mixed-script typing (Banglish included) without a server. These notes walk through the canvas rendering, composing/selection handling, the suggestion strategy stack, bigram prediction, fuzzy correction, and the build/CI/F-Droid pipeline — in the order the system actually depends on itself, not the order features got added.
Source: github.com/ikouchiha47/codekeyboard