{
 "name": "TabForge: Code Keyboard",
 "tagline": "TabForge is an open-source programming keyboard for iPhone and iPad",
 "description": "TabForge is an open-source programming keyboard for iPhone and iPad. Write code, scripts and terminal commands with punctuation and editing controls beside the letter keys.\n\nIndent a line, move the cursor or insert a saved snippet. The keyboard's gear menu gives you access to settings and code tools in the app you're typing in.\n\nProgramming keys\n- Type braces, square brackets, angle brackets, parentheses and full ASCII punctuation.\n- Choose Tab, two spaces or four spaces, with indent, outdent and automatic newline indentation.\n- Use arrows, Escape and Control, Option and Command keys. Their behavior depends on the input profile and host app.\n- Save snippets for commands, operators and repeated text.\n- Get language suggestions for Swift, Python, JavaScript, TypeScript, Shell and JSON.\n\nLayouts for your screen\nPhone layouts keep familiar letter keys with coding controls close by. Compact landscape layouts leave more room for the app above the keyboard. Larger iPad and supported Duo layouts show more controls. Choose your key size and keyboard height, follow iOS light and dark appearance, or select a code palette.\n\nEditing and input profiles\nUse Code editor for pairing and indentation, Terminal · ANSI for supported control text, or Remote desktop for literal input. Terminal and remote behavior depends on the client: a keyboard extension inserts text and cannot send arbitrary hardware-key events. Line edits need enough context from the host app to verify the change.\n\nOptional English prose autocorrect uses Apple's on-device spelling service in eligible text fields. It is off by default, skips code-like input and stays inactive in Terminal, Remote desktop and the code playground. Space applies a correction; immediate Delete restores your spelling.\n\nThe companion playground\nEdit text with syntax highlighting, line numbers, undo and a share action. The playground does not run code. Its keyboard and layout previews use temporary settings, separate from the installed keyboard.\n\nVoice to code lets you dictate, review spoken punctuation and insert the result. It requires microphone and Speech permission plus available on-device English recognition. Voice input runs in the companion app; iOS controls system Dictation availability.\n\nOptional swipe typing uses a bundled English dictionary and programming words, with alternatives in the gear menu. It works offline, is off by default and remains experimental. Tap typing works better for some identifiers.\n\nOpen source and privacy\nTabForge is MIT licensed, with source and privacy details linked in the companion app. The keyboard does not log or transmit keystrokes. There are no ads, analytics or accounts.\n\nKeyboard preferences and custom snippets are saved in the keyboard's own container. Configure them from its gear menu; they are not shared with the companion app. Full Access is not requested. The companion playground saves its draft separately. Apps you type into, Apple system services, device backups and destinations you choose when sharing have their own data practices.\n\nRequires iOS or iPadOS 27.0 or later. Duo-specific layouts require 27.1. iOS uses its system keyboard in secure and phone fields, and some apps decline third-party keyboards.",
 "url": "https://debuts.app/apps/tabforge-code-keyboard",
 "category": "Utilities",
 "platforms": [
  "iPhone and iPad"
 ],
 "pricing": "free",
 "use_cases": [],
 "audience": [],
 "links": {
  "app_store": "https://apps.apple.com/us/app/tabforge-code-keyboard/id6824056795",
  "google_play": null,
  "website": "https://github.com/jdodsoncollins/TabForge"
 },
 "icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/98/b2/0e/98b20ead-9c50-a2d8-7879-f970663e098c/AppIcon-0-0-1x_U007epad-0-1-85-220.png/512x512bb.jpg",
 "screenshots": [
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/05/cf/f9/05cff99e-1df4-8161-ffc7-cd0cf2aa67a9/01.png/320x480bb.jpg",
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/65/1b/9c/651b9c12-324e-43c9-e43a-bc34ef1f0a99/02.png/320x480bb.jpg",
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/a2/6c/70/a26c702b-5893-de31-bc8a-8f9e32be9ab1/03.png/320x480bb.jpg",
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/63/26/bf/6326bf34-d6d9-6e26-348c-3ea2fc242ba6/04.png/320x480bb.jpg",
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/0a/b2/c6/0ab2c68a-d2bf-4d98-4b8d-c826efa8bf6b/05.png/320x480bb.jpg",
  "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/00/d5/85/00d585af-6079-9303-1d87-5e1928fce713/06.png/320x480bb.jpg"
 ],
 "claimed": false,
 "verified": false,
 "maker": "Jeremy Collins",
 "upvotes": null,
 "followers": null,
 "rating": null,
 "ratings": 0,
 "awards": [],
 "launches": [],
 "ai_ready": 78,
 "badges": {
  "launched": "https://debuts.app/badge/tabforge-code-keyboard?type=launched",
  "award": "https://debuts.app/badge/tabforge-code-keyboard?type=award",
  "rating": "https://debuts.app/badge/tabforge-code-keyboard?type=rating"
 }
}