{"_id":"@6i/ink-tools","_rev":"1-546452790f594d6e934ec5736920a24f","name":"@6i/ink-tools","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@6i/ink-tools","version":"1.0.0","description":"Utilities to compile story Ink file into JSON.","main":"index.js","bin":{"ink-tools":"index.js"},"author":{"name":"v20100v","email":"vb20100bv@gmail.com"},"license":"MIT","homepage":"https://github.com/v20100v/ink-tools","repository":{"url":"https://github.com/v20100v/ink-tools.git","type":"git"},"bugs":{"url":"https://github.com/v20100v/ink-tools/issues"},"dependencies":{"chalk":"^4.1.0","commander":"^5.1.0","md5":"^2.2.1","shelljs":"^0.8.4","word-wrap":"^1.2.3"},"engines":{"node":">=12.18"},"scripts":{"start":"node index.js","build":"npx pkg --out-path build"},"pkg":{"assets":["bin/**/*"]},"keywords":["ink","inklecate","watch","json"],"licenseText":"MIT License\n\nCopyright (c) 2020 v20100v\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@6i/ink-tools@1.0.0","dist":{"shasum":"d727fadf7dc1fe6846166330d08e36861ec29a37","integrity":"sha512-UoYDkYLkgYO5L2zqOpZh2Gt77sSV4YgS+xf+Hi5aQT52u9NoKVPucjnlEx89MTxOX+O8yysJ3TvYe4+I5LPTrQ==","tarball":"https://registry.npmjs.org/@6i/ink-tools/-/ink-tools-1.0.0.tgz","fileCount":32,"unpackedSize":17752062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6h6cCRA9TVsSAnZWagAAlt4QAJKR7CzHhN5VRqBkD+GN\nSDd5ligML/uCJD9siC0oyZySWEbkH5IoKBwxx1LFNnSuBumFZ0yS1UfdwaSy\n/vQAY9KGo/eOvahV56cHyx38LeJKcB0R7BVvywXU3Unz62uv983KpTelB3PB\nbUCXpzEY5rZWtr8Wr0yyiNKq9GiXxNDEGJKSPITcDXNghonPWjc5fCN8M3wt\nfrfifEDtnyDSFzctEGf6oKYFJ/UnCsKcC5VEs94IjKws10T9maVlb5YMOB6A\nOq7pDnOASPijoS+DI+VeZmW7Yl0vMIUuNJaI+VEb7wpJdCbMKF5GCZh39isw\n9Rxi7pQmlGCOUjD0xXGxd7LeRbPsqClydW4P/7sltLm2kOlMMFTtWBIiHhxa\nQ/+iU9IctemPr8ln931vtZdC4VsLJx0UCyUrdxqhn8sHSD6KwkUuRkx9Hjop\n3PWIJt7LdGY25ZeSvrQebGomFPXlA5Y8eyX3qwbkwKFuRR4mSjo1fOINXmC9\nZByDhK9ZDH4KrEv28U5J1S/vYlczUA4KiT5Qkq7940sL3yTaHsfQ3N3iRYpM\np+r1FJyPee3FtXsNguqxSkBltKqTHW6cHXPLpSuXmGFgsaiXN5yK71cDHREu\n5jZ2ek0FF9Ni4W2RwncDx9jG9+dXjSx1/hqPzDCCNfYc+CgxiADbb52X1DjE\nrgqd\r\n=SMm3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH3sFOoH6R3HO/3egWmjHkNsypusKKSQUakag8Rcmo9EAiEAyuRosqoGRqF3DKTHJEu4HjMvo10W82/auaHPcLcNvyY="}]},"maintainers":[{"name":"v20100v","email":"vb20100bv@gmail.com"}],"_npmUser":{"name":"v20100v","email":"vb20100bv@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ink-tools_1.0.0_1592401563628_0.02821532715977826"},"_hasShrinkwrap":false}},"time":{"created":"2020-06-17T13:46:03.354Z","1.0.0":"2020-06-17T13:46:03.912Z","modified":"2022-04-04T10:48:55.166Z"},"maintainers":[{"name":"v20100v","email":"vb20100bv@gmail.com"}],"description":"Utilities to compile story Ink file into JSON.","homepage":"https://github.com/v20100v/ink-tools","keywords":["ink","inklecate","watch","json"],"repository":{"url":"https://github.com/v20100v/ink-tools.git","type":"git"},"author":{"name":"v20100v","email":"vb20100bv@gmail.com"},"bugs":{"url":"https://github.com/v20100v/ink-tools/issues"},"license":"MIT","readme":"ink-tools\n=========\n> Compile inkle's story [Ink](https://github.com/inkle/ink) file into JSON, with watching mode. \n\n![ink-tools CLI application](./doc/ink-tools.png)\n\n## Features\nink-utils is a CLI application built in node.js with [commander.js](https://github.com/tj/commander.js/). It was designed in order to facilitate its integration wiht [inkjs](https://github.com/y-lohse/inkjs), the javascript implementation of inkle's ink scripting language, and to consume ink story into a web application (SPA, React, Angular ...)\n\nink-utils can :\n\n- Compile a ink file into Json.\n- Watch for ink file changes, in order to perform compilation each time.\n\n## Installation\n\nInstall with [npm](https://www.npmjs.com/) or [yarn](https://yarnpkg.com/).\n\nGlobal installation:\n```sh\n$ yarn global add @6i/ink-tools\n```\n\nAs local developpement dependencies:\n```sh\n$ yarn add @6i/ink-tools --dev\n```\n\n## Usages\n\n### Options\n\nThe `compile` command have many options :\n\n| options          | description |\n|------------------|-------------|\n| `-s, --silent`   | Do not output any message\n| `-vǀ-vvǀ-vvv, --verbose` | Increase the verbosity level : level 1 for normal information, 2 more verbose for debugging and 3 for full debug.\n| `-o, --output`   | Change the output where JSON file is created.\n| `-w, --watch`    | Enable watch mode, to detect if ink file has changed and start compilation each time.\n\n### Make a single compilation\n\nThe `compile` command wait as first argument an *.ink file. Without another option, it will compil into a json file with the same name and the same folder of input ink file.\n\n```sh\n# Simple usage\n$ ink-tools compile .\\ink\\story-basic.ink\n\n=== Start compilation ===\n[success] Inklecate compilation has finished !\n```\n\nYou can add verbosity with `-v`, and change output with `--output <jsonFile>` like this :\n\n```sh\n# Change output JSON\n$ ink-tools compile .\\ink\\story-basic.ink -v --output .\\myStory.json\n\n=== Start compilation ===\n[info] Ink name file: story-basic.ink\n[info] Ink path file: D:\\6i\\ink-tools\\ink\\story-basic.ink\n[info] Output JSON: D:\\6i\\ink-tools\\myStory.json\n[info] Inklecate bin: D:\\6i\\ink-tools\\bin\\inklecate\\inklecate_win.exe\n[info] Ink compilation is starting.\n[success] Inklecate compilation has finished !\n```\n\n### Watch for ink file change\n\nTo enable watch mode, just add `--watch` option in `compile` command. \n\n```sh\n$ ink-tools compile .\\ink\\story-basic.ink --watch -v\n```\n\nThe program can listen for ink file changes and start compilation each time it detects changement. It use an MD5 checksum of the file in order to check if the file has really changed.\n\n![ink-tools CLI application](./doc/ink-tools_watch.gif)\n\n\n## Ink story\n\n[Ink](http://www.inklestudios.com/ink) is [inkle](http://www.inklestudios.com)'s scripting language for writing interactive narrative, both for text-centric games as well as more graphical games that contain highly branching stories. It's designed to be easy to learn, but with powerful enough features to allow an advanced level of structuring.\n\n## License\nRelease under [MIT](./LICENSE.md) license.\n\n## Copyright\nCopyright (c) 2020 by 2o1oo <vb20100bv@gmail.com>","readmeFilename":"README.md"}