{"id":15294833,"url":"https://github.com/kddi-research-wot/ito","last_synced_at":"2026-04-28T15:37:55.892Z","repository":{"id":57278556,"uuid":"91280823","full_name":"kddi-research-wot/ito","owner":"kddi-research-wot","description":"ito - a JavaScript library for browser-to-browser communication","archived":false,"fork":false,"pushed_at":"2017-10-04T02:07:00.000Z","size":13164,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-01T10:38:13.566Z","etag":null,"topics":["browser-communication","firebase","ito","javascript","javascript-library","kii-cloud","peer-communication","webrtc-peer"],"latest_commit_sha":null,"homepage":"https://bit.ly/ito-js","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kddi-research-wot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-15T00:44:02.000Z","updated_at":"2017-05-22T04:51:11.000Z","dependencies_parsed_at":"2022-09-09T14:50:15.890Z","dependency_job_id":null,"html_url":"https://github.com/kddi-research-wot/ito","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kddi-research-wot%2Fito","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kddi-research-wot%2Fito/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kddi-research-wot%2Fito/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kddi-research-wot%2Fito/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kddi-research-wot","download_url":"https://codeload.github.com/kddi-research-wot/ito/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245319970,"owners_count":20596078,"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":["browser-communication","firebase","ito","javascript","javascript-library","kii-cloud","peer-communication","webrtc-peer"],"created_at":"2024-09-30T17:07:22.720Z","updated_at":"2026-04-28T15:37:50.845Z","avatar_url":"https://github.com/kddi-research-wot.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# About **ito**\n\n**ito** is a JavaScript library for browser-to-browser communication,\nwhich is intended to work on devices without an input human interface\nlike keyboard or mouse, of course as well as PCs, smartphones and tablets.\n\nThis library is composed of two layers; application and backend interface layers.\nThe application interface layer provides a set of APIs for JavaScript-based\nweb applications. The backend interface layer works as a bridge between the\napplication interface and a backend service. As a backend service,\n[Firebase](https://firebase.google.com) and [Kii Cloud](https://www.kii.com/)\nare supported currently.\n\n\"ito\" is a Japanese word \"糸\" which means \"*string*\", \"*thread*\" or \"*yarn*\",\nand is also an anagram of \"*IoT*\". \n\n## Copyright\n\nCopyright (c) 2017 [KDDI Research, Inc.](http://www.kddi-research.jp)\n\nThis software is released under the MIT License, see [LICENSE](LICENSE) file.\n\n## Notice\n\nWhen using this library, you MUST follow Terms of Service for each backend service\nwhich you use with this library:\n\n* [Terms of Service for Firebase Services](https://firebase.google.com/terms/)\n* [Terms of Use | Kii](https://en.kii.com/terms/)\n\n# Functional Features\n\nito provides web applications running on browsers and web servers running on\nNode.js with the following features:\n\n* account and authentication\n* friend list, as a whitelist of connectable accounts\n* messaging and Notifications\n* WebRTC peer-to-peer communication (browsers only)\n* simple database sharing\n\n# Prerequisites\n\n* Browser or Node.js, compatible with ES2015(ES6)\n  * If you need to run your web application on an ES5 environment,\n  please use the ES5-transpiled files, `src-es5/ito*.js`.\n* WebRTC compatibility (when using WebRTC peer-to-peer communication)\n* A developer account for one of the following backend service(s):\n  * [Firebase](https://firebase.google.com)\n  * [Kii Cloud](https://www.kii.com)\n\n## Setup before using ito\n\n### Firebase\n\n1. Create your Firebase project at [Firebase Console](https://console.firebase.google.com).\n2. Configure *Authentication -\u003e Sign-in method* (if needed).\n    * Select *Sign-in providers* as you need.\n    For Facebook, *App ID*, *App secret* and *OAuth redirect URI* must be\n    configured as well.\n    * Add your domain to *OAuth redirect domains*.\n    * Note: GitHub and Twitter are not supported yet.\n3. Copy and paste `etc/firebase-rules.json` into *Database -\u003e Rules*.\n4. Confirm the snippet from *Authentication -\u003e Web setup*, and note down\n    the values of `apiKey`, `authDomain` and `databaseURL`. These values are\n    used in `ito.init()`.\n\n### Kii Cloud\n\nNote: *Node.js is required to initialize a Kii Cloud application.*\n\n1. Create your app at [Kii Developer Portal](https://developer.kii.com).\n    * Choose HTML5 as your application's platform.\n    * Choose a server location appropriate for you.\n    * For detailed information, please refer to \n    http://docs.kii.com/en/guides/cloudsdk/javascript/quickstart/create-app/.\n2. Configure social network settings (if needed).\n    * For detailed information, please refer to\n    http://docs.kii.com/en/guides/cloudsdk/javascript/managing-users/social-network-integration/.\n3. Confirm your APP ID, APP KEY, CLIENT ID and CLIENT SECRET.\n    * These values are required to initialize your Kii Cloud application (see 4.) and\n    deploy Server Code (see 5.).\n    * The values of APP ID and APP KEY are used in `ito.init()`.\n    * For detailed information, please refer to\n    http://docs.kii.com/en/guides/cloudsdk/javascript/quickstart/create-app/#checking-appid-and-appkey.\n4. Run the script `etc/kii-init.js` by Node.js on your shell (Terminal, etc.), as follows:\n    ```bash\n    $ node etc/kii-init.js \\\n      --site [us|eu|cn3|sg|jp] \\\n      --app-id \u003cyour_app_id\u003e \\\n      --app-key \u003cyour_app_key\u003e \\\n      --client-id \u003cyour_client_id\u003e \\\n      --client-secret \u003cyour_client_secret\u003e\n    ```\n5. Deploy `etc/kii-server-code.js` as Server Code with `etc/kii-server-hook.json` as Server hook\n    Configuration File, by using\n    [Command Line Tools](http://docs.kii.com/en/guides/commandlinetools/). For example:\n    ```bash\n    $ node kii-cli/bin/kii-servercode.js deploy-file \\\n      --file etc/kii-server-code.js \\\n      --site [us|eu|cn3|sg|jp] \\\n      --app-id \u003cyour_app_id\u003e \\\n      --app-key \u003cyour_app_key\u003e \\\n      --client-id \u003cyour_client_id\u003e \\\n      --client-secret \u003cyour_client_secret\u003e \\\n      --hook-config etc/kii-server-hook.json\n    ```\n\n# How to load **ito** library in your application\n\nNote: You can modify paths of scripts according to your environment.\n\n## Browsers\n\n### Firebase\n\n```html\n\u003cscript src=\"src/ito.js\"\u003e\u003c/script\u003e\n\u003cscript src=\"src/ito-firebase.js\"\u003e\u003c/script\u003e\n```\n\n### Kii Cloud\n\n```html\n\u003cscript src=\"src/ito.js\"\u003e\u003c/script\u003e\n\u003cscript src=\"src/ito-kii.js\"\u003e\u003c/script\u003e\n```\n\n## Node.js\n\nOn your shell (Terminal, etc.),\n\n```bash\n$ npm install ito-js --save\n```\n\nIn your web application,\n\n```js\nlet ito = require('ito-js');\n```\n\nFor detailed description of API, please refer to [the API documentation](API.md).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkddi-research-wot%2Fito","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkddi-research-wot%2Fito","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkddi-research-wot%2Fito/lists"}