@khanacademy/math-input
TypeScript icon, indicating that this package has built-in type declarations

26.2.1 • Public • Published

@khanacademy/math-input

Khan Academy's expression editor for the web. Used in the Perseus exercise framework to power math input and expression editing on all screens.

Built with React, MathQuill, Aphrodite, and more.

Try it yourself on Khan Academy. (Note: you'll need to enable mobile emulation, if you're accessing the site from a desktop browser.)

Getting started

  • Clone the project: git clone git@github.com:Khan/math-input.git
  • Install dependencies: pnpm install
  • Start the development server: pnpm start

When you start the project you'll need to be on a device that supports touch or touch emulation to see the keyboard. The easiest way to get started is open the developer tools on Google Chrome.

Supported Features

  • Multiple keypad configurations, so as to accommodate a range of input types (i.e., fractions/mixed numbers, algebraic expressions).
  • Multi-page keypads, with swipeable page navigation.
  • Touch-and-drag interactions (as supported by the stock iOS and Android keypads).
  • A draggable cursor with a detached handle, for fine-grained control on touch devices.
  • Custom state transitions for the editing experience, to streamline expression entry.

License

MIT License

Readme

Keywords

none

Package Sidebar

Install

npm i @khanacademy/math-input

Weekly Downloads

6,410

Version

26.2.1

License

MIT

Unpacked Size

6.96 MB

Total Files

75

Last publish

Collaborators

  • khanacademy