{"_id":"@alemazzoli/croquet-proxy","name":"@alemazzoli/croquet-proxy","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@alemazzoli/croquet-proxy","version":"1.0.1","description":"Croquet Proxy","main":"app.js","scripts":{"start":"node proxy.js"},"author":{"name":"Alessandro Mazzoli"},"type":"module","license":"ISC","dependencies":{"@croquet/croquet":"^1.1.0-12","croquet-proxy":"^1.0.1","fast-json-patch":"2.2.1","socket.io":"^4.5.1"},"devDependencies":{"dotenv":"^16.0.2"},"repository":{"type":"git","url":"git+https://github.com/alemazzo/croquet-proxy.git"},"bugs":{"url":"https://github.com/alemazzo/croquet-proxy/issues"},"homepage":"https://github.com/alemazzo/croquet-proxy#readme","gitHead":"2e62ba71c35461238b849951c330a003c1cde49d","_id":"@alemazzoli/croquet-proxy@1.0.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-67WrGZImYEkzPdO1hJGj5oLeMi3M1z+E/oa3juBhoCgKCuUwEfyCGZlDBig6IO57+z+jaf0FPUoNCDCbwoxXFw==","shasum":"3c5bad46419c4ec860ff3ba73fefb10ba18a07c2","tarball":"https://registry.npmjs.org/@alemazzoli/croquet-proxy/-/croquet-proxy-1.0.1.tgz","fileCount":9,"unpackedSize":10348,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8tLArItPfosEj9JlJOUcJY2sX8+Dx41sKYAneWzGU9QIhAPbJL9pamTh9ZhRKonmGISpujd4OwYVJEvzoOJE6hDOV"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjFxCGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzdBAAg0rrwR7Wchcuaj/U0OC1Q8GanOyQeC0st+S9klVjpUnzOIKJ\r\nP6TRYc3Asbf409ptM2NY4cOmDu+DiXJtrL/wDi18T2F3OEYABxgn4eJ6l6d6\r\nCY9oKoRCx7Ti4bt8IU7dB9JUIu0nuiYPCNgakvNXgv3hfpMHyPIzGX23owov\r\nVecVj74WxrqYemtTe/iTvcZf+Dap06cEXyQl9KSMs8qcwV/sXLLY19/4N1bA\r\noPq/Xn63jZjJV9iiOidwzfTMYGsHZ9ocK1ZQv5Or5UY5yHweAIOnxhxIRsGr\r\n13h9n5+WAGrOAHdykVSB0eGBfbqisS/Uakf4hreBOYM5MYjAev9OFBKWCft7\r\n40Lyq4CxKkLDye0WNYUn6C8nDANqitnnOLX+sbX4SVDhuigZnueXZUjJ2dzf\r\nzSvMOA9jiHKfyDUjyJlXczgFE+Go81zOJSTmLLDvMjm7EyTToFnn9FSTkgE2\r\nLpeNvgaRdV1YN2PpP9T3xecuUNOtFWwLQTcLP/Pxc21hvbyzdcfSktpGdb8x\r\nebEmzYinPOsq4kgwIVJsP9N5cYPJz2uiWIKivib2GJRHLdZhDN3tGicGVEAX\r\nFfKdmAgoK2Ty/+tcMeHj1tKnOIDzK3IW4LeZNY0UI8nLeGgh+uoYWgD9sTBb\r\nAjq4NNYCyinZMC2tzCMH6hfGubEknggj34I=\r\n=qQtx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"alemazzoli","email":"alemazzoli97@gmail.com"},"directories":{},"maintainers":[{"name":"alemazzoli","email":"alemazzoli97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/croquet-proxy_1.0.1_1662455942168_0.7033517571340191"},"_hasShrinkwrap":false}},"time":{"created":"2022-09-06T09:19:02.116Z","1.0.1":"2022-09-06T09:19:02.354Z","modified":"2022-09-06T09:19:02.494Z"},"maintainers":[{"name":"alemazzoli","email":"alemazzoli97@gmail.com"}],"description":"Croquet Proxy","homepage":"https://github.com/alemazzo/croquet-proxy#readme","repository":{"type":"git","url":"git+https://github.com/alemazzo/croquet-proxy.git"},"author":{"name":"Alessandro Mazzoli"},"bugs":{"url":"https://github.com/alemazzo/croquet-proxy/issues"},"license":"ISC","readme":"# croquet-proxy\r\nA proxy for the Croquet platform.\r\n\r\n## How to use\r\n1. Install [Node.js](https://nodejs.org/en/download/)\r\n2. Clone this repository\r\n3. Run `npm install` in the repository directory\r\n4. Define your own Model\r\n```javascript\r\n// my-model.js\r\nimport { Model } from '@croquet/croquet';\r\nclass MyModel extends Model {\r\n    init(options) {\r\n        super.init(options);\r\n\r\n        // Define your model data always in the 'data' property\r\n        this.data = { counter: 0 }\r\n\r\n        this.future(1000).tick()\r\n    }\r\n\r\n    tick() {\r\n        this.data.counter++\r\n        this.publish('counter', 'updated')\r\n        this.future(1000).tick()\r\n    }\r\n}\r\n```\r\n5. Define the starting point of your application\r\n```javascript\r\n// my-app.js\r\nimport { CroquetProxyServer } from './proxy/proxy-server.js';\r\nimport { MyModel } from './my-model.js';\r\nconst apiKey = \"\"\r\nconst appId = \"\"\r\nconst name = \"\"\r\nconst password = \"\"\r\n\r\n\r\nCroquetProxyServer.start({\r\n    mainModelClass: MyModel,\r\n    allModelClasses: [MyModel],\r\n    apiKey: apiKey,\r\n    appId: appId,\r\n    name: name,\r\n    password: password,\r\n    port: 3000\r\n})\r\n```\r\n6. Run `node my-app.js`","readmeFilename":"README.md"}