{"id":21348669,"url":"https://github.com/myscript/iinkts","last_synced_at":"2025-07-12T17:33:05.574Z","repository":{"id":177874645,"uuid":"589952967","full_name":"MyScript/iinkTS","owner":"MyScript","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-24T07:05:28.000Z","size":4090,"stargazers_count":31,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-24T17:58:54.139Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MyScript.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-01-17T10:27:32.000Z","updated_at":"2024-04-24T17:58:54.140Z","dependencies_parsed_at":"2024-04-23T15:52:06.844Z","dependency_job_id":"fd079021-7259-4ac5-880c-ad3b49c459d3","html_url":"https://github.com/MyScript/iinkTS","commit_stats":null,"previous_names":["myscript/iinkts"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyScript%2FiinkTS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyScript%2FiinkTS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyScript%2FiinkTS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyScript%2FiinkTS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MyScript","download_url":"https://codeload.github.com/MyScript/iinkTS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225830883,"owners_count":17530968,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-22T02:24:20.973Z","updated_at":"2025-07-12T17:33:05.565Z","avatar_url":"https://github.com/MyScript.png","language":"TypeScript","readme":"# iinkTS\n\n[![npm version](https://badge.fury.io/js/iink-ts.svg)](https://badge.fury.io/js/iink-ts)\n[![Examples](https://img.shields.io/badge/Link%20to-examples-blue.svg)](https://myscript.github.io/iinkTS/examples/)\n[![Documentation](https://img.shields.io/badge/Link%20to-documentation-green.svg)](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/)\n\n\n\u003e The fastest way to integrate rich **handwriting** features in your webapp.\n\u003e\n\u003e :point_right: [Examples](https://myscript.github.io/iinkTS/examples/):point_left:\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/MyScript/iinkTS/master/preview.gif\"\u003e\n\u003c/div\u003e\n\niinkTS is a TypeScript library that can be used in every web application to bring handwriting recognition.\n\nIt integrates all you need:\n\n* Signal capture for all devices,\n* Digital ink rendering,\n* Link to MyScript Cloud to bring handwriting recognition.\n\n\n## Table of contents\n* [Features](#features)\n* [Requirements](#requirements)\n* [Installation](#installation)\n* [Usage](#usage)\n* [Documentation](#documentation)\n* [Development](#development)\n* [Support](#getting-support )\n* [Feedback](#sharing-your-feedback)\n* [Contributing](#contributing)\n* [License](#license)\n\n## Features\n\n* Text and Math support,\n* Easy to integrate,\n* Digital ink capture and rendering,\n* Rich editing gestures,\n* Import and export content,\n* Styling,\n* Typeset support,\n* More than 200 mathematical symbols supported,\n* 72 supported languages.\n\nYou can discover all the features on our Developer website for [Text](https://developer.myscript.com/features/text) and [Math](https://developer.myscript.com/features/math).\n\n## Requirements\n\n1. Have [npm](https://www.npmjs.com/get-npm), [yarn](https://yarnpkg.com/en/docs/install).\n2. Have a MyScript developer account. You can create one [here](https://developer.myscript.com/support/account/registering-myscript-cloud/).\n3. Get your keys and the free monthly quota to access MyScript Cloud at [developer.myscript.com](https://developer.myscript.com/getting-started/web)\n\n## Installation\n\niinkTS can be installed with the well known package managers `npm`, `yarn`.\n\nIf you want to use `npm` or `yarn` you first have to init a project (or use an existing one).\n\n```shell\nnpm init\nOR\nyarn init\n```\n\nYou can then install iinkTS and use it as showed in the [Usage](#usage) section.\n\n```shell\nnpm install iink-ts\nOR\nyarn add iink-ts\n```\n\n## Usage\n\n1. Create an `index.html` file in the same directory.\n\n2. Add the following lines in the `head` section of your file to use iinkTS and the css :\n```html\n\u003cscript src=\"node_modules/iink-ts/dist/iink.min.js\"\u003e\u003c/script\u003e\n```\n\n3. Still in the `head` section, add a `style` and specify the height and the width of your editor:\n```html\n\u003cstyle\u003e\n    #editor {\n        width: 100%;\n        height: 100%;\n    }\n\u003c/style\u003e\n```\n\n4. In the `body` tag, create a `div` tag that will contain the editing area:\n```html\n    \u003cdiv id=\"editor\"\u003e\u003c/div\u003e\n```\n\n5. In JavaScript and within a `\u003cscript\u003e` tag placed before the closing `\u003c/body\u003e` tag, create the editor using the `load` function of the editor, your html editor element, the type of editor desired and the possible options depending on the type of editor then initialize it:\n```javascript\n    const editorElement = document.getElementById('editor');\n\n    const editor = await iink.Editor.load(editorElement, \"INTERACTIVEINK\", /* or INTERACTIVEINKSSR or INKV1 or INKV2*/\n    {\n        configuration: {\n            server: {\n                applicationKey: '#YOUR MYSCRIPT DEVELOPER APPLICATION KEY#',\n                hmacKey: '#YOUR MYSCRIPT DEVELOPER HMAC KEY#'\n            }\n        }\n    });\n```\n\n6. Your `index.html` file should look like this:\n```html\n\u003chtml\u003e\n    \u003chead\u003e\n        \u003cscript src=\"node_modules/iink-ts/dist/iink.min.js\"\u003e\u003c/script\u003e\n        \u003cstyle\u003e\n            #editor {\n                width: 100%;\n                height: 100%;\n            }\n        \u003c/style\u003e\n    \u003c/head\u003e\n    \u003cbody\u003e\n        \u003cdiv id=\"editor\"\u003e\u003c/div\u003e\n        \u003cscript\u003e\n            const editorElement = document.getElementById('editor');\n\n            const editor = await iink.Editor.load(editorElement, \"INTERACTIVEINK\", /* or INTERACTIVEINKSSR or INKV1 or INKV2 */\n            {\n                configuration: {\n                    server: {\n                        applicationKey: '#YOUR MYSCRIPT DEVELOPER APPLICATION KEY#',\n                        hmacKey: '#YOUR MYSCRIPT DEVELOPER HMAC KEY#'\n                    }\n                }\n            });\n        \u003c/script\u003e\n    \u003c/body\u003e\n\u003c/html\u003e\n```\n\n7. Open `index.html` in your browser or serve your folder content using any web server.\n\nYou can find this guide, and a more complete example on the [MyScript Developer website](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/).\n\n## Documentation\n\nYou can find a complete documentation with the following sections on our Developer website:\n\n* **Get Started**: [how to use iinkTS with a full example](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/get-started/),\n* **Editing**: [how to interact with content](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/editing/),\n* **Conversion**: [how to convert your handwritten content](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/conversion/),\n* **Import and Export**: [how to import and export your content](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/import-and-export/),\n* **Styling**: [how to style content](https://developer.myscript.com/docs/interactive-ink/latest/web/iinkts/styling/).\n\nWe also provide a complete [API Reference](https://myscript.github.io/iinkTS/docs/).\n\n## Development\n\nInstructions to help you build the project and develop are available in the [SETUP.md](./SETUP.md) file.\n\n\n## Getting support\n\nYou can get support and ask your questions on the [dedicated section](https://developer-support.myscript.com/support/discussions/forums/16000096760) of MyScript Developer website.\n\n## Sharing your feedback ?\n\nMade a cool app with iinkTS? We would love to hear about you!\nWe’re planning to showcase apps using it so let us know by sending a quick mail to [myapp@myscript.com](mailto://myapp@myscript.com).\n\n## Contributing\n\nWe welcome your contributions: if you would like to extend iinkTS for your needs, feel free to fork it!\n\nPlease take a look at our [contributing](./CONTRIBUTING.md) guidelines before submitting your pull request.\n\n## Troubleshooting\nIf you encounter the error: `Unrecognized property: convert.force`, this means your server version is lower than 2.3.0.\nTo correct the problem, you have 2 options:\n- either update your server\n- either add in the iink-ts configuration `configuration.server.info.version = 2.2.0`\n\nIf you encounter the error: `Unrecognized property: configuration.export.jiix.text.lines`, this means your server version is lower than 3.2.0.\nTo correct the problem, you have 2 options:\n- either update your server\n- either add in the iink-ts configuration `configuration.server.info.version = 3.1.0`\n\n## License\nThis library is licensed under the [Apache 2.0](http://opensource.org/licenses/Apache-2.0).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmyscript%2Fiinkts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmyscript%2Fiinkts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmyscript%2Fiinkts/lists"}