{"_id":"@syncano/cli","_rev":"298-6be94c253c79d41a7c039453848b5b9e","name":"@syncano/cli","description":"Command Line Interface for Syncano","dist-tags":{"latest":"0.15.0","canary":"0.15.1-alpha.39","alpha":"0.16.1"},"versions":{"0.4.1":{"name":"@syncano/cli","version":"0.4.1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.4.1","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-9otX/uNjEcsftIz62Blb0bcPdRoZGJT8eUr/kRL3EX5KbgHNg2hwxIYaD/VqN3Nz+CvYB5aMGGiDShrn78oF9w==","shasum":"0917923fe58d44f9ad34b64f7becd5df9c4ace1c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.4.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEZowIhWojy+SEpI7MSuCQPKQltr/JuOt2jTrzuE7rmMAiADXx3GSCcBbsx12r70FAxG4vCzrf6xAmClrrCPZ/e4qA=="}]},"maintainers":[{"name":"qk","email":"maciej@kucharz.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.4.1.tgz_1509637739692_0.6174596888013184"},"directories":{}},"0.5.0-beta.50b44371":{"name":"@syncano/cli","version":"0.5.0-beta.50b44371","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-beta.50b44371","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-k7mGm6sgiB4IrAh18xNG/mMRe4/Pdel+lgOjpc+G1Amuo5xxjdgoCedHaIK+8Xo7gcpKiJ/ALDDpsdQXPaD3+A==","shasum":"2d8db9c32496e5e6a5f8bace9bbdc051dd314d8a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-beta.50b44371.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmQj+MSQNVfhHRtd6ENuORiKdqfRR1jKQVHSckSYznwgIhAJYVmhIj0reVsuIax7vpbn6ZDg7LKSFjnwQ+Gi+2F2kU"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-beta.50b44371.tgz_1509638076113_0.5892546202521771"},"directories":{}},"0.5.0-beta.c378b7ec":{"name":"@syncano/cli","version":"0.5.0-beta.c378b7ec","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-beta.c378b7ec","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-QFETIfYq3dU+ThuD3mp0VVxiqLSd4x1kU2pCsyOlpl/huR+G4CaQtUaO+5KvkGQuv0mEoWjVwQkpfkoZNJOiVQ==","shasum":"f7d5fd729f7c00f48b8ba097cb20099bf80c3b29","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-beta.c378b7ec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICgD1TZUyZFFLULX/rtWmT5Xq2VrHqVEigXPgbzqQwdSAiAsTfGsnwh4pL9n/7VQiQei88tePakfMB7/s+eH5b8bXQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-beta.c378b7ec.tgz_1509638428000_0.8141325796023011"},"directories":{}},"0.5.0-beta.a7521869":{"name":"@syncano/cli","version":"0.5.0-beta.a7521869","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-beta.a7521869","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-1ymHBv+d9zuwXzDsiPJsLPZepHthwAOVCtCjvq8FuA3apBzyGk6KjJVolwfWENQJFAsUQPPH41+A7Nxfzp7jZA==","shasum":"efc081bd5eb8227888a7cc36ba0ee0fd94fc88d7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-beta.a7521869.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxWJ+/Mky2UxQ8iFkl5pMIMv/xmW7kuN4mdsfxHiOLTwIgRC1T0az1uThDj8Nvej0oIURnuoNZjZbxz1ijovaIKWY="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-beta.a7521869.tgz_1509638861476_0.873146589146927"},"directories":{}},"0.5.0-beta.03f8df92":{"name":"@syncano/cli","version":"0.5.0-beta.03f8df92","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-beta.03f8df92","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-fzrTvg73/4Ygl3PeXWRNwkA4p04Hgtaca2JOUIcSnVI8mkkI6xHNeZk2W9ihZ4g1QKE0jWvSiNLCwm2gZyozpQ==","shasum":"353a1b7e76f326b0b8cf2a1d92b26dbf85dbaff4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-beta.03f8df92.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH0wWKukwdOEbYxcASE8sNjHzOKrF13Zb4L0IncAgbOUAiBx4cxi4WeGU4XPU0VSM0TllvOJllw4QDG6EIuKN+ksAQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-beta.03f8df92.tgz_1509638966277_0.5461346975062042"},"directories":{}},"0.5.0-alpha.03f8df92":{"name":"@syncano/cli","version":"0.5.0-alpha.03f8df92","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.0","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.11.0","create-error":"0.3.1","debug":"^3.1.0","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","home-dir":"1.0.0","inquirer":"^3.3.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","syncano":"2.0.4","unzip2":"0.2.5","validator":"^9.1.1","watchr":"3.0.1"},"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"3.5.0","chai-as-promised":"6.0.0","codecov":"^3.0.0","condition-circle":"1.5.0","console.mute":"0.3.0","dirty-chai":"^2.0.1","docsify-cli":"^4.1.11","mocha":"^4.0.1","mocha-junit-reporter":"^1.15.0","mock-fs":"^4.4.2","nixt":"0.5.0","nyc":"^11.2.1","pre-commit":"1.2.2","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","commit":"git cz","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","compile":"yarn run clean && yarn run build","docs:watch":"docsify serve docs","lint":"standard --fix --env mocha","unit":"mocha 'src/**/*.test.js' --reporter spec --require babel-register -b","unit:watch":"yarn run unit -- -w","e2e":"mkdir -p e2e-tests/ && mkdir -p e2e-tests/hosting/ && mocha 'src/tests/e2e/*.test-e2e.js' --reporter spec --require babel-register --timeout 40000 --slow 8000 && rm -rf e2e-tests/","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","test:ci":"nyc yarn run unit -- --reporter mocha-junit-reporter","reinstall":"rimraf node_modules && yarn install","validate":"npm-run-all --parallel test:unit lint lint:tests build","pre-commit-run":"npm-run-all --parallel lint lint:tests unit"},"pre-commit":"pre-commit-run","publishConfig":{"access":"public"},"release":{"verifyConditions":{"path":"./deploy/condition-circle.js"}},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.03f8df92","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-60pi0QnyZAwDkpJUCZHnlJAvFqmMOa6n1QvMrHUyelFVTO+dkBiVOhuEGhlEaMaSep3sIj97blzN8tjrPPpQ6Q==","shasum":"6593251b916b5722417896823038fa37fe555945","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.03f8df92.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAVNRE83kkotcjAf0wtzi2ekBPWVk9NA4UZxtX1QPeCQIhAPW8yCWbbNuCcu8Jmm9aaSBGKnn5i7wkAxxI7of6mxLJ"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.03f8df92.tgz_1509639265723_0.22044433746486902"},"directories":{}},"0.5.0-alpha.39e94358":{"name":"@syncano/cli","version":"0.5.0-alpha.39e94358","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.39e94358","@syncano/template-project-empty":"^0.5.0-alpha.39e94358","@syncano/template-project-hello":"^0.5.0-alpha.39e94358","@syncano/template-socket-es6":"^0.5.0-alpha.39e94358","@syncano/template-socket-vanilla":"^0.5.0-alpha.39e94358","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.39e94358","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.39e94358","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-oBAfiqY5nySNWpU4udNSJpWC8VDQtMHWHB6aSbyPkZxQwIXssHXkssN46FE9fBE6NW1dKtrzcb/tfCFP2kfaJQ==","shasum":"071fc60632aa0d07677eb3c6853c092df9af87d5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.39e94358.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAR9wm8lY5QGE6bXhMgwD8ez3GyHX/sjLWKBhooK/2j9AiBWdVz91QqTJaGlZMzHO1wG8IwSB7S1tXIwoajMVwc2Jg=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.39e94358.tgz_1512070719038_0.6346783202607185"},"directories":{}},"0.5.0-alpha.79ba762e":{"name":"@syncano/cli","version":"0.5.0-alpha.79ba762e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.79ba762e","@syncano/template-project-empty":"^0.5.0-alpha.79ba762e","@syncano/template-project-hello":"^0.5.0-alpha.79ba762e","@syncano/template-socket-es6":"^0.5.0-alpha.79ba762e","@syncano/template-socket-vanilla":"^0.5.0-alpha.79ba762e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.79ba762e","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.79ba762e","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-jBYABirpxIMTZEBEb5SA7SZV4Av0DxvID4sOxMg4qpDfEVZbBRR3suHEUaFCqMR6U4cyjMCoPgX21bTDg/dLpQ==","shasum":"315169fed5e83853c895a590135ebd6e246b7391","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.79ba762e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsQ5Rbn9X2i/lJ6idEIdiZ0A5kDn+dGb5f5S71jDcAdgIgN8NXzVz1P9thixuXP/i4ewUK5lZ9ZriJROJystg+IU8="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.79ba762e.tgz_1512074742776_0.02166283270344138"},"directories":{}},"0.5.0-alpha.d182f18f":{"name":"@syncano/cli","version":"0.5.0-alpha.d182f18f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.d182f18f","@syncano/template-project-empty":"^0.5.0-alpha.d182f18f","@syncano/template-project-hello":"^0.5.0-alpha.d182f18f","@syncano/template-socket-es6":"^0.5.0-alpha.d182f18f","@syncano/template-socket-vanilla":"^0.5.0-alpha.d182f18f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.d182f18f","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.d182f18f","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-hsGMbEl2PY82CXY+bgGOxohMKy8PqmxQkHSbpMTT0DScGL17fTwypd1egQtQbbKKJicoZhzoFG/jsqODbjOD4g==","shasum":"7a32b1648d8fe1250f925f6acef8c60af49cb2c4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.d182f18f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRfYXj/U+Q//bDDu6hWcVYrDwXByu4EisVTsGdgS48QAIgNRIJ1Q/1Zcc7XeLbZQZZyqtkeFA/1qpRHshgg77fUqo="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.d182f18f.tgz_1512075847389_0.30657010176219046"},"directories":{}},"0.4.2":{"name":"@syncano/cli","version":"0.4.2","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.4.2","@syncano/template-project-empty":"^0.4.2","@syncano/template-project-hello":"^0.4.2","@syncano/template-socket-es6":"^0.4.2","@syncano/template-socket-vanilla":"^0.4.2","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.4.2","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.4.2","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-bqc+X8s3DFdg/GkSI9e1yzmyuSujThTKmd7rFq05nm691nyg1p3K9pRgpFBRi68s8p2nyhJ9nOrFTwaPXRUnnA==","shasum":"0e7ffb7d6ccd6411a3fd08529aafd43fe5e7d001","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.4.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpLWcFXRh2/XZ6XQzdNT8IDigkuhhiMSlsNQL8muzreQIhANFMRTX6BddBJ/nycAStbJAY8EzlzAOxEDHouX3GrMS7"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.4.2.tgz_1512076476828_0.925716808764264"},"directories":{}},"0.5.0-alpha.a076ec11":{"name":"@syncano/cli","version":"0.5.0-alpha.a076ec11","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.a076ec11","@syncano/template-project-empty":"^0.5.0-alpha.a076ec11","@syncano/template-project-hello":"^0.5.0-alpha.a076ec11","@syncano/template-socket-es6":"^0.5.0-alpha.a076ec11","@syncano/template-socket-vanilla":"^0.5.0-alpha.a076ec11","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"3.3.2"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.a076ec11","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.a076ec11","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-Z854dHR7XY4Ki1EF5s+vJ+DU8BsUtMXKiXa1kdGI1ZiG2EXnrJo6pJq6/muPYmxxjq27L4XE+VTNBq+UdO/guQ==","shasum":"38060b1c32090511bbdfb679e675956b4cddd66a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.a076ec11.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFdNAkrZOIfJC08UyMQxRlmKgsfAIW/BhCoN2TyjIx/3AiBxX/i9k8L+I67T0UI0q12V0R8R6Zx5BC2+2vnsb/eV1Q=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.a076ec11.tgz_1512563896566_0.13844957388937473"},"directories":{}},"0.5.0-alpha.cde14fe6":{"name":"@syncano/cli","version":"0.5.0-alpha.cde14fe6","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.cde14fe6","@syncano/template-project-empty":"^0.5.0-alpha.cde14fe6","@syncano/template-project-hello":"^0.5.0-alpha.cde14fe6","@syncano/template-socket-es6":"^0.5.0-alpha.cde14fe6","@syncano/template-socket-vanilla":"^0.5.0-alpha.cde14fe6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.cde14fe6","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.cde14fe6","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-9+4RVwOtrF8dzC7D/uZ7B5Co9FFtm+zJL8Zag2osRE27vQgrrzS/hZGGT9divNQvNcoSw82vpWIMqxbnPSPPmA==","shasum":"7f3563b5a80bd8ca201b0f07fdf0e31ebfc01d0f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.cde14fe6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4mohnQnxiRTdmD42lDfWPyB21eWNeNxqS6k9c08HtUAiAF/uI0qrXETEu5/OGqFFQd/ihghNa/l8OVkiyshMyb3Q=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.cde14fe6.tgz_1513603150968_0.9146354314871132"},"directories":{}},"0.5.0-alpha.48b44a0c":{"name":"@syncano/cli","version":"0.5.0-alpha.48b44a0c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.48b44a0c","@syncano/template-project-empty":"^0.5.0-alpha.48b44a0c","@syncano/template-project-hello":"^0.5.0-alpha.48b44a0c","@syncano/template-socket-es6":"^0.5.0-alpha.48b44a0c","@syncano/template-socket-vanilla":"^0.5.0-alpha.48b44a0c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.48b44a0c","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.48b44a0c","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-UH0iPYgsgcYgzrENOwVM4zayiYABaimM7qjASTDdjGPDvTaAkF8xLwQKh72Cl2MXwPeCkg1j8INlS++0LzRfBw==","shasum":"d187f1904e6c97003973c686debcc08c85008b83","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.48b44a0c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTlu9E8dB38tLQxPBx/dD4PnK2qXMXuIl1SapqUWkhjgIgYEjnBHP7Q9UxJMeKIhCMWWgrUpZhXeMhQ1FW2FUsS60="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.48b44a0c.tgz_1513603298475_0.4069837681017816"},"directories":{}},"0.5.0-alpha.c2539f93":{"name":"@syncano/cli","version":"0.5.0-alpha.c2539f93","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.c2539f93","@syncano/template-project-empty":"^0.5.0-alpha.c2539f93","@syncano/template-project-hello":"^0.5.0-alpha.c2539f93","@syncano/template-socket-es6":"^0.5.0-alpha.c2539f93","@syncano/template-socket-vanilla":"^0.5.0-alpha.c2539f93","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.c2539f93","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.c2539f93","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-XGMVvhRWk6A6u4onXX4cPGLiEy+JaXVObGJqay7A0u2eW0NQOD2If/SdFDQzoH7D6HvG9DZZotGCxVdxBO80kw==","shasum":"337530613d90da80f4fbb23d46cbc91a21889da9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.c2539f93.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAOFspci0hEcGu0igO7AoBD5FrSL6r3KHt1Baar5AsyYAiATyPOdTrBr8ygS2occGMXfdYa0r+hZ1y9F+LcEiRJerw=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.c2539f93.tgz_1513603522066_0.6123757385648787"},"directories":{}},"0.5.0-alpha.41f044b5":{"name":"@syncano/cli","version":"0.5.0-alpha.41f044b5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.41f044b5","@syncano/template-project-empty":"^0.5.0-alpha.41f044b5","@syncano/template-project-hello":"^0.5.0-alpha.41f044b5","@syncano/template-socket-es6":"^0.5.0-alpha.41f044b5","@syncano/template-socket-vanilla":"^0.5.0-alpha.41f044b5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.41f044b5","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.41f044b5","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-1uLw+7w2irvv3Jnhcu+QNthWoLKFmCi2YNWP43Ggdk9US4BbNFMuuj/zf/bdulyogJHL09+JXWNIUEdDTCA0/w==","shasum":"6877eeb5ea9ec2d1d801bb3f0a517bfe313fce3a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.41f044b5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAv4ZheVtmdJUDQvu/9dwV+ItwelOnxmqV0GJsQKUE10AiBZunrJHtLQwkzRPXk6F1iRaxRvmUk+8jrZpQ5Hs5Cnew=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.41f044b5.tgz_1513603905781_0.9518066472373903"},"directories":{}},"0.5.0-alpha.722d28f8":{"name":"@syncano/cli","version":"0.5.0-alpha.722d28f8","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.722d28f8","@syncano/template-project-empty":"^0.5.0-alpha.722d28f8","@syncano/template-project-hello":"^0.5.0-alpha.722d28f8","@syncano/template-socket-es6":"^0.5.0-alpha.722d28f8","@syncano/template-socket-vanilla":"^0.5.0-alpha.722d28f8","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.722d28f8","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.722d28f8","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-cx6yZy/lq1lWjOjlXDkiRhs9F8hYCBt5h3fF/0WmSonSkMs5F4aKFqpEioBh6X4agG9B2XGK5gX7DcyQTATuDg==","shasum":"4170b6cc29db4a9b90a25fec710d22ca0b8d2bea","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.722d28f8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRquo5dp667j7j6kTSarwdw63HBP/TeKiFmgwNorJE9QIgM0sOaFYc9Zty+72O3FQZRgzrXQH9vTl5kqW3EtbiwpA="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.722d28f8.tgz_1513604341818_0.41500762081705034"},"directories":{}},"0.5.0-alpha.e8bf6933":{"name":"@syncano/cli","version":"0.5.0-alpha.e8bf6933","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.e8bf6933","@syncano/template-project-empty":"^0.5.0-alpha.e8bf6933","@syncano/template-project-hello":"^0.5.0-alpha.e8bf6933","@syncano/template-socket-es6":"^0.5.0-alpha.e8bf6933","@syncano/template-socket-vanilla":"^0.5.0-alpha.e8bf6933","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.e8bf6933","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.e8bf6933","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-QjwiHwZ+ydXJMDmpxMtwb03E1L3oBxbN+A1mDyfFZWrhn7JwXbCOJMWoEW7GvEHcqN8VFIWrBassGSZkHA3WFA==","shasum":"f466fb58e4f022c40ded9331eb33725268116531","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.e8bf6933.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDF4jqVb2LzL+C6FguA8NcyBrFSAOPj9/JreiwjkmJqQAIgJ24rtXtqht/zb6upz5JEWd8QHqYXYHllRg8UfUofQGo="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.e8bf6933.tgz_1513604597185_0.5903354086913168"},"directories":{}},"0.5.0-alpha.5e1fbdcb":{"name":"@syncano/cli","version":"0.5.0-alpha.5e1fbdcb","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.5e1fbdcb","@syncano/template-project-empty":"^0.5.0-alpha.5e1fbdcb","@syncano/template-project-hello":"^0.5.0-alpha.5e1fbdcb","@syncano/template-socket-es6":"^0.5.0-alpha.5e1fbdcb","@syncano/template-socket-vanilla":"^0.5.0-alpha.5e1fbdcb","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.5e1fbdcb","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.5e1fbdcb","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-m0TEY9vFCKIOUM2HZfYTaQ1N5TyZR020rcckDQAaP6adjIyW57z509fI5+/FMd5OdvEbywDzzA76/zmEMVafng==","shasum":"8e1cbf1fd34118af203b2f41946ad5584feba0da","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.5e1fbdcb.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBDgbQGsYTGssmgqKHyOKushRU5vprL0qs+XyGaSM4iqAiAUMCIvVSE2Zju5u3CJbEdTv3V22Ec9lSOT2e5iIRnD7Q=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.5e1fbdcb.tgz_1513604727668_0.7279818851966411"},"directories":{}},"0.5.0-alpha.2e9f9015":{"name":"@syncano/cli","version":"0.5.0-alpha.2e9f9015","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.2e9f9015","@syncano/template-project-empty":"^0.5.0-alpha.2e9f9015","@syncano/template-project-hello":"^0.5.0-alpha.2e9f9015","@syncano/template-socket-es6":"^0.5.0-alpha.2e9f9015","@syncano/template-socket-vanilla":"^0.5.0-alpha.2e9f9015","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.2e9f9015","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.2e9f9015","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-65HnrWFBVDDuKKVu2ZzF/MmOlz0EJAVPGAjN9L97Rw+LkVGIEBPbMC5Ga2nRR6QviMjqgoh17AVpCV1tGjbr7w==","shasum":"c7e90322b82b671f22d99cbae211d30cd439652d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.2e9f9015.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6nPG5+ACv5VXNQqSv31pv33uVX6bkCYWh3kw3riqbgwIgMwh8VkFqJa4XqNgyDyzgQUFixDOpZDW1Xt7VuU/48Mw="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.2e9f9015.tgz_1513605005508_0.7381093299482018"},"directories":{}},"0.5.0-alpha.933b4fdc":{"name":"@syncano/cli","version":"0.5.0-alpha.933b4fdc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"^0.5.0-alpha.933b4fdc","@syncano/template-project-empty":"^0.5.0-alpha.933b4fdc","@syncano/template-project-hello":"^0.5.0-alpha.933b4fdc","@syncano/template-socket-es6":"^0.5.0-alpha.933b4fdc","@syncano/template-socket-vanilla":"^0.5.0-alpha.933b4fdc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"^0.5.0-alpha.933b4fdc","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.933b4fdc","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-KTIczsTHqkh2dnvUTJD0faF9DOrhDlVzJNqptlIUPUL3fDNiFZ1xOtMJwbF9ywjoVJomC5rihWLn3WwpR44P0Q==","shasum":"53b93e8bb136e4768360d713ddcf3dbd334a2db3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.933b4fdc.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCG24EFvXzD5Z0Ew1L0jgE1rSQQAr4ylabyDqJXcbMtpgIhAN5CRVVD3/RUM0qpuenPsKhcQoX8h8K9vCds8uQamrob"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.933b4fdc.tgz_1513605523273_0.094994708430022"},"directories":{}},"0.5.0-alpha.53318990":{"name":"@syncano/cli","version":"0.5.0-alpha.53318990","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.53318990","@syncano/template-project-empty":"0.5.0-alpha.53318990","@syncano/template-project-hello":"0.5.0-alpha.53318990","@syncano/template-socket-es6":"0.5.0-alpha.53318990","@syncano/template-socket-vanilla":"0.5.0-alpha.53318990","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.53318990","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.53318990","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-1C5NXIIy6x7xNayHFeGhsv69aVRjiuUD9nehiGcRLjOabhYKcsl7jftYsebNTFB7qCuRUYj5gt3+cIP1b90DrA==","shasum":"7be287e7418fcbb683eef5c15d2ea41513e3b83b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.53318990.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhqXLQjccIEUTeyW8qjd2SX0YC7bnTgNQYNIwQnXDj6gIgN5gjfR5bu1/Gk+L6gStCQx/JF4UfFubpUnodMjVlqDE="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.53318990.tgz_1513605846676_0.22702627279795706"},"directories":{}},"0.5.0-alpha.3330c546":{"name":"@syncano/cli","version":"0.5.0-alpha.3330c546","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.3330c546","@syncano/template-project-empty":"0.5.0-alpha.3330c546","@syncano/template-project-hello":"0.5.0-alpha.3330c546","@syncano/template-socket-es6":"0.5.0-alpha.3330c546","@syncano/template-socket-vanilla":"0.5.0-alpha.3330c546","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.3330c546","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.3330c546","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-ANWhAzqFbPo9QULxtS38XosCSz2gvtN5LtoLlsjEXPkjS+8NJ19sRwVioquzm8gBDY0M7KzavtSWuuF1bowN/A==","shasum":"27d8a3fbfb6e40ab5bc6f3e3cd6630312364489b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.3330c546.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYsg0rHReeKqA0WDZ/UGlV+aH81+gqslX2r3siasKSmwIgWqPPKCEV3Ap3Xrk7iR8bWABZsvtmcPrz6NSf872HDdc="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.3330c546.tgz_1513606077554_0.27176800882443786"},"directories":{}},"0.5.0-alpha.60575c35":{"name":"@syncano/cli","version":"0.5.0-alpha.60575c35","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.60575c35","@syncano/template-project-empty":"0.5.0-alpha.60575c35","@syncano/template-project-hello":"0.5.0-alpha.60575c35","@syncano/template-socket-es6":"0.5.0-alpha.60575c35","@syncano/template-socket-vanilla":"0.5.0-alpha.60575c35","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.60575c35","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.60575c35","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-h5rvcM37wh3JqcdZ0qZC+TfjLx3m0yILRWReFCZprl4Ys9kCddh+H7ma5zxPHcqQLiyzeTWXf72rwm1FAEtwFw==","shasum":"b06bcf649e9be57fade8e883f137944f9c53997b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.60575c35.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUTc6RXoYI4EPe7jhcoG7ZojYv6LY7Ie+dGUs0bJyaYgIgW0HVsZUepglSotNOIsoTOWom8FIsNM17Z+QR0mmschw="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.60575c35.tgz_1513607174554_0.4692259591538459"},"directories":{}},"0.5.0-alpha.965f41b0":{"name":"@syncano/cli","version":"0.5.0-alpha.965f41b0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.965f41b0","@syncano/template-project-empty":"0.5.0-alpha.965f41b0","@syncano/template-project-hello":"0.5.0-alpha.965f41b0","@syncano/template-socket-es6":"0.5.0-alpha.965f41b0","@syncano/template-socket-vanilla":"0.5.0-alpha.965f41b0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.965f41b0","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.965f41b0","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-It8/Mwdy4xTfh8OoXPu6B7sCzRdak6el6N4/yQC5TSxlGEBTcOg0GqNSAuNj6QI+noK3WtJ+ija7h/tr4vCdSw==","shasum":"b2c997b69fd2d2b117d857055f2e455809b46615","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.965f41b0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE5Ms3BWSFHvgQ7LlGT3XvDrktnzjWdHfDyP/4o0WKRgAiBNmyHm8yNhIBu+W1SXznMQPRBzfpxdzoeJytWT0L6q5A=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.965f41b0.tgz_1513607983949_0.18839900917373598"},"directories":{}},"0.5.0-alpha.ee20c323":{"name":"@syncano/cli","version":"0.5.0-alpha.ee20c323","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.ee20c323","@syncano/template-project-empty":"0.5.0-alpha.ee20c323","@syncano/template-project-hello":"0.5.0-alpha.ee20c323","@syncano/template-socket-es6":"0.5.0-alpha.ee20c323","@syncano/template-socket-vanilla":"0.5.0-alpha.ee20c323","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.ee20c323","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.ee20c323","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-lIeeqO6ko7ZmYy6Mxqre/9n8CN1/LzfJuYiA15XRv4XH6eGXWTuJU8+S7bS3UKbsC5LeoNC2yeglV1zyws8dXg==","shasum":"31af38b15e31e74fcda4f16540ca0c1f23d6d192","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.ee20c323.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDy9TC/cdpuP2Ntc4AVUdV6GWhqmk/IIIw2vSPQhBAw2AIgD+nJBBIN1aQdHfzHG5VEUutCAna93D0ojC7tNg03OxE="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.ee20c323.tgz_1513608272233_0.5977347132284194"},"directories":{}},"0.5.0-alpha.6956f85e":{"name":"@syncano/cli","version":"0.5.0-alpha.6956f85e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s":"./lib/cli.js","s-hosting":"./lib/cli-hosting.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.6956f85e","@syncano/template-project-empty":"0.5.0-alpha.6956f85e","@syncano/template-project-hello":"0.5.0-alpha.6956f85e","@syncano/template-socket-es6":"0.5.0-alpha.6956f85e","@syncano/template-socket-vanilla":"0.5.0-alpha.6956f85e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.6956f85e","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.6956f85e","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-OI0CXH4NjLk+yTXmpooEF14TCvPw7122sAf/Rs+xhJOgsIotiTvzJjJLpacoOU1qe8ugKJMlmRCEHhQqMDVQsw==","shasum":"d4ec16c56b4711a0e0d7d97e811aa5b69b7e6f40","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.6956f85e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH7CYVahZDcpJgdx2ZIJ4eqQCYEUMRHewCw3UczIuuq3AiBZpCVc+6wcfK5FTOsDj8oDEqLrLLpecbuEGYno58beIA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.6956f85e.tgz_1513611678316_0.5083105470985174"},"directories":{}},"0.5.0-alpha.48815720":{"name":"@syncano/cli","version":"0.5.0-alpha.48815720","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"preferGlobal":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.48815720","@syncano/template-project-empty":"0.5.0-alpha.48815720","@syncano/template-project-hello":"0.5.0-alpha.48815720","@syncano/template-socket-es6":"0.5.0-alpha.48815720","@syncano/template-socket-vanilla":"0.5.0-alpha.48815720","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.48815720","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.48815720","_npmVersion":"5.5.1","_nodeVersion":"8.8.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-p6uff3Z7WucjxJklVmnEHSkuk3Kd0PovQkuyIXtQmfG5Dj0UbTQTsZKAWRHCJAAuNeJDiM15x2T/G0WUI9cPMA==","shasum":"27ee5cbcd065be88e72e4774e62325f2899b6afe","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.48815720.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCOF8MVQCpVuw3ewVz7+6G/Dpj4ldYOVcUN+G/YTPxdVwIgeZZF2PbijiACjYAFxbIArPsCfNm3c5irgiMvsMnoMIk="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.48815720.tgz_1513612013138_0.11451204703189433"},"directories":{}},"0.5.0-alpha.709a18ec":{"name":"@syncano/cli","version":"0.5.0-alpha.709a18ec","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.709a18ec","@syncano/template-project-empty":"0.5.0-alpha.709a18ec","@syncano/template-project-hello":"0.5.0-alpha.709a18ec","@syncano/template-socket-es6":"0.5.0-alpha.709a18ec","@syncano/template-socket-vanilla":"0.5.0-alpha.709a18ec","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.709a18ec","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.709a18ec","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/5fkmGe4wkvUeRCqWG37aEx+2Gxmr+hcJyQxjMhR+OSNIPHPPayBJ29oopEZO0inLGicMvTjSafhcbbnTqF8sw==","shasum":"cb798db4124a75f39af8a2d36355e42820b8a322","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.709a18ec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHEcIYc7yyiGwa/7Jia2DlO+J25fP9FdgkZlwY3HzTonAiEAhy1/1gOzJCvdQtJU6XaveGzZ7ywUCDsTWkV2TXQxNa0="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.709a18ec.tgz_1513850782062_0.08534132945351303"},"directories":{}},"0.5.0-alpha.c072c957":{"name":"@syncano/cli","version":"0.5.0-alpha.c072c957","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.c072c957","@syncano/template-project-empty":"0.5.0-alpha.c072c957","@syncano/template-project-hello":"0.5.0-alpha.c072c957","@syncano/template-socket-es6":"0.5.0-alpha.c072c957","@syncano/template-socket-vanilla":"0.5.0-alpha.c072c957","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.c072c957","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.c072c957","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-11LY6BuntIGEvklca7cYPmQ8qNiwsR46Psd+LECWa1G5ongDM0EXQuGXWBgw2UbZahu8NuOCjyXCYmNnNqmG2g==","shasum":"64c93f511a886b7773080b9a9ac94e63357781eb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.c072c957.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBDgn2pt3SzpeCBvOZvzaawIa//NQqOvamaSJYvzvKzrAiEArgMtxs0x0Efw63I3E4PAHXAOOvYTUEaLCtvB6HkurQM="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.c072c957.tgz_1513861300243_0.6451337102334946"},"directories":{}},"0.5.0-alpha.2f99aafc":{"name":"@syncano/cli","version":"0.5.0-alpha.2f99aafc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.2f99aafc","@syncano/template-project-empty":"0.5.0-alpha.2f99aafc","@syncano/template-project-hello":"0.5.0-alpha.2f99aafc","@syncano/template-socket-es6":"0.5.0-alpha.2f99aafc","@syncano/template-socket-vanilla":"0.5.0-alpha.2f99aafc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.2f99aafc","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.2f99aafc","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-2DK/Q2//on3bfclpPa06MV4uvYmchQU0PVcDHJ8H1B+UDXsNxbBkUclhZnFsbCfjjGkfYwhy6zRN8LEy3Jw+Jg==","shasum":"60edfe53dc0db98ed9dfe373e2aecd24dfcd380f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.2f99aafc.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAKA2I6nqHWAJgETkQ98gNS8bY9fcQvMewd9sIl285JXAiAMxRmhXcyRw3KA1HIJNGJfb+wPPlD+J5VWjRcSn8CzDQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.2f99aafc.tgz_1513873443318_0.24589805398136377"},"directories":{}},"0.5.0-alpha.3826181c":{"name":"@syncano/cli","version":"0.5.0-alpha.3826181c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.3826181c","@syncano/template-project-empty":"0.5.0-alpha.3826181c","@syncano/template-project-hello":"0.5.0-alpha.3826181c","@syncano/template-socket-es6":"0.5.0-alpha.3826181c","@syncano/template-socket-vanilla":"0.5.0-alpha.3826181c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.3826181c","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.3826181c","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-sXGEgbtiGPZHjVIwNjxcYRK+5iJAEzCqmjn2ECH76mE5e7AiVpmVOvVNbkGemTSmfpxEB1sPkQE+9wuzxUYJhQ==","shasum":"4db57e9eeb987e2554fc5c23b549558167f18e79","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.3826181c.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHzVU70BJUuoqKBI687mXIACzCLKINQ3oUX0Uw9n7sUDAiEA55GPLyoO/VSearIUDgNhxBW7hy6fFTQmHLATLddce2k="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.3826181c.tgz_1513960444195_0.08450196916237473"},"directories":{}},"0.5.0-alpha.33f0bc17":{"name":"@syncano/cli","version":"0.5.0-alpha.33f0bc17","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.33f0bc17","@syncano/template-project-empty":"0.5.0-alpha.33f0bc17","@syncano/template-project-hello":"0.5.0-alpha.33f0bc17","@syncano/template-socket-es6":"0.5.0-alpha.33f0bc17","@syncano/template-socket-vanilla":"0.5.0-alpha.33f0bc17","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.33f0bc17","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.33f0bc17","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-0CdSP0J7IIBcqam+L0FAROVbnKoJp+InAoQn9FPEFO8qLASRPixbPPaksLp/asp2ifbH45QyfVQyOVWJIIzflQ==","shasum":"c6b9cfad7dd60f5b12d535ce82d5e8091c2793fe","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.33f0bc17.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwATlV3Ax53dn0i10qcP9ymEJzatoqLDBvonQ85K9Y/wIgIJQbo+eYBGiVZEw2LFPjZIGKKxr+2BWTUctFHhUuC/s="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.33f0bc17.tgz_1513968774175_0.15412218170240521"},"directories":{}},"0.5.0-alpha.3f3e36c6":{"name":"@syncano/cli","version":"0.5.0-alpha.3f3e36c6","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.3f3e36c6","@syncano/template-project-empty":"0.5.0-alpha.3f3e36c6","@syncano/template-project-hello":"0.5.0-alpha.3f3e36c6","@syncano/template-socket-es6":"0.5.0-alpha.3f3e36c6","@syncano/template-socket-vanilla":"0.5.0-alpha.3f3e36c6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.3f3e36c6","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.3f3e36c6","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-2NpVVcVCDau38wVcz54vAi9WSsMHFP47soQL0Umz3k+JvRqRtOqaw1ElAvitRygIeLsQesfOK94sjvNQsokIYw==","shasum":"dd74a156b5331574cdcb999e9ad01b8b42f7fb5b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.3f3e36c6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAZVWM+u5N85ww6K/DMpIPxeUT4q4f5SB7iSPC8YGApNAiBNg01KcinyolrKuTF5nQyBRIRO3VkOjx8KBzsi1Lk59w=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.3f3e36c6.tgz_1513969460116_0.0023742811754345894"},"directories":{}},"0.5.0-alpha.1220deec":{"name":"@syncano/cli","version":"0.5.0-alpha.1220deec","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.1220deec","@syncano/template-project-empty":"0.5.0-alpha.1220deec","@syncano/template-project-hello":"0.5.0-alpha.1220deec","@syncano/template-socket-es6":"0.5.0-alpha.1220deec","@syncano/template-socket-vanilla":"0.5.0-alpha.1220deec","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.1220deec","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.1220deec","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-jJGuCsHITUwMB0RGCLiIQOxbfgaTX2oxMTa8WDIo4XnHq6TuMFD7R6NyaogOeBI9Sai+5BC/NFxdWfp2Q+5FFA==","shasum":"8e964fee0df6f3dfb502e938f652add0f5cbaf2a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.1220deec.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF10rG6n1kTAIlxEVBym3V7c1fDZhZcegX4yvA8OXkUSAiEAxOS9AKzJ1iXfuFLGRknXNz0+U9xoRR11Wv1z6+ii8f0="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.1220deec.tgz_1513971676938_0.7768642560113221"},"directories":{}},"0.5.0-alpha.53f9fe8b":{"name":"@syncano/cli","version":"0.5.0-alpha.53f9fe8b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.53f9fe8b","@syncano/template-project-empty":"0.5.0-alpha.53f9fe8b","@syncano/template-project-hello":"0.5.0-alpha.53f9fe8b","@syncano/template-socket-es6":"0.5.0-alpha.53f9fe8b","@syncano/template-socket-vanilla":"0.5.0-alpha.53f9fe8b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.53f9fe8b","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.53f9fe8b","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-HpJmkQPCoLQ6DHISF6Ybp+7ZQPT8Wl9tnO8kxy6m5yDUpOCzFpTF842Gtg0jmB5uUUdFJCejnV/VpXgYcJQFAA==","shasum":"cd35b442053c2419caebd24337510303c89b8566","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.53f9fe8b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCnBS/nNzWM1RMk0vN12ZCEa6gRMche2jlR6APPP28HIAIhAJZn47NExnUldCG38jwl4UrfNTRPK6UfnT4P4Y4djM3e"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.53f9fe8b.tgz_1513973044675_0.9488789609167725"},"directories":{}},"0.5.0-alpha.2330b486":{"name":"@syncano/cli","version":"0.5.0-alpha.2330b486","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.2330b486","@syncano/template-project-empty":"0.5.0-alpha.2330b486","@syncano/template-project-hello":"0.5.0-alpha.2330b486","@syncano/template-socket-es6":"0.5.0-alpha.2330b486","@syncano/template-socket-vanilla":"0.5.0-alpha.2330b486","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.2330b486","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.2330b486","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-g+iuKHOg65UNw8w4W0I/bWLuHHpRLPZPnvv0wsZAqoyVCyVZKSSz4rVUWZNKBdz+/TFHRDNRWC4hLoA0LxVe0g==","shasum":"83ec78046c282fa8eeafe2afc1f225fa93a3cd8e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.2330b486.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAKd/cI7fYX35LkyheI5WwOPfoLxMyv1urP/aGNR65cHAiEA/jfH22LSBRzL7ShATcx0IeYolRafiSoaZppupC8P+2I="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.2330b486.tgz_1513973674536_0.14706636732444167"},"directories":{}},"0.5.0-alpha.72732d8e":{"name":"@syncano/cli","version":"0.5.0-alpha.72732d8e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.72732d8e","@syncano/template-project-empty":"0.5.0-alpha.72732d8e","@syncano/template-project-hello":"0.5.0-alpha.72732d8e","@syncano/template-socket-es6":"0.5.0-alpha.72732d8e","@syncano/template-socket-vanilla":"0.5.0-alpha.72732d8e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","sinon":"1.17.6","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.72732d8e","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"1.17.6","standard":"^10.0.3"},"scripts":{"prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.72732d8e","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IJQ+G4L3rEHZNNKGO4UcrtW/8kt8/HUwTKymz749ynBcAff3G3yf4D19daLpwNf9+/Kza4bNuj7Mq/TeffCNFQ==","shasum":"f7e3ede398fbe8547fea59cc876b49f2041a713d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.72732d8e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGmQlUKA0V+LLAatbr0oPAHwp9ZkRE3JE7Zvx0DwD1NnAiAgzYHHz6mlxkAvMekWOA9VkJraRLIp5y2BLE4HaZY6XQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.72732d8e.tgz_1514070852515_0.6011656818445772"},"directories":{}},"0.5.0-alpha.152552e2":{"name":"@syncano/cli","version":"0.5.0-alpha.152552e2","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.152552e2","@syncano/template-project-empty":"0.5.0-alpha.152552e2","@syncano/template-project-hello":"0.5.0-alpha.152552e2","@syncano/template-socket-es6":"0.5.0-alpha.152552e2","@syncano/template-socket-vanilla":"0.5.0-alpha.152552e2","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.152552e2","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.152552e2","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-NRovX9UMmMFCQjUOMloOx6CgErclorARcecciwK4omiLpWQalk4RT9L+T2UQriDdvl4iu1pP8V4OycXrsre8BA==","shasum":"34c593ee4efc47dbbc9cad37028db4eb97fc6843","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.152552e2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEviiTqj57Yd8PVw9JePnG/pr7ob3lip3K6nWgbjUPxfAiEAxAEiJCnU1jl/V3pYBpn22HTxVPeoR/JVK2HSqfh1vFs="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.152552e2.tgz_1514077021231_0.5074357292614877"},"directories":{}},"0.5.0-alpha.1716b815":{"name":"@syncano/cli","version":"0.5.0-alpha.1716b815","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.1716b815","@syncano/template-project-empty":"0.5.0-alpha.1716b815","@syncano/template-project-hello":"0.5.0-alpha.1716b815","@syncano/template-socket-es6":"0.5.0-alpha.1716b815","@syncano/template-socket-vanilla":"0.5.0-alpha.1716b815","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.1716b815","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","unit:coverage":"nyc yarn run unit","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:unit":"nyc yarn run unit","test:e2e":"yarn run e2e","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.1716b815","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-bz6PG5ZRu/mHSK+AC3tYT8FMD1im7MkAJiQ7k1n8a0eAKkVf0YGWJrShTclP/vG8RNud2+i/8IksjzJFDn2wHQ==","shasum":"2e451d788acd4d8b6f8eb4c8a05a513a5330ee03","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.1716b815.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhxckPhaplO1JPQLvxr5r8oexhXCJMpSr9aS0YVm0g9wIhAOO0iaw4ZAetoTxUyydoLDWCizoAcR2tnjh70fGV4QFJ"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.1716b815.tgz_1514077478911_0.5452404972165823"},"directories":{}},"0.5.0-alpha.ddcf593d":{"name":"@syncano/cli","version":"0.5.0-alpha.ddcf593d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.ddcf593d","@syncano/template-project-empty":"0.5.0-alpha.ddcf593d","@syncano/template-project-hello":"0.5.0-alpha.ddcf593d","@syncano/template-socket-es6":"0.5.0-alpha.ddcf593d","@syncano/template-socket-vanilla":"0.5.0-alpha.ddcf593d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.ddcf593d","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report-coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc --reporter=lcov yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.ddcf593d","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-QB1zznRlfu2caFxUvOS/IZow3lPr6c4YxctjzOkJE/a25ACTgKWrzkV1+L2Z9vT0qulz8BEWERI1u6qB2d2vLw==","shasum":"c33f508a69ec7c0f833c513957eab02734a8ba46","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.ddcf593d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClhhpa1LavkqsFQSSixnQCe/NtsnrUjPQYTgR5Zo2GSgIgHZol+rjuoEu7GeK3qJ9cMv7GI3wTES+rST2/rjM1XEE="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.ddcf593d.tgz_1514078542999_0.6579644663725048"},"directories":{}},"0.5.0-alpha.a8256861":{"name":"@syncano/cli","version":"0.5.0-alpha.a8256861","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.a8256861","@syncano/template-project-empty":"0.5.0-alpha.a8256861","@syncano/template-project-hello":"0.5.0-alpha.a8256861","@syncano/template-socket-es6":"0.5.0-alpha.a8256861","@syncano/template-socket-vanilla":"0.5.0-alpha.a8256861","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.a8256861","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"cat ./coverage/lcov.info | codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc --reporter=lcov yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.a8256861","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-pn05vdzEJbE5TOLL73IiVwPTM9iNqrKEejo24UkV8hJxAhARyejpCDpm9NZScJs2hojS23z/mZsmVUz941sugQ==","shasum":"ebc49e903252006c8994028dac8f77a0cf39fc3a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.a8256861.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFfEwfQY8QFlZ5erQQUE9F1S7cpqL5ISErduAvh7dYT1AiBOZNo50HbJ1+Ipe1d2baXkBYiSo4NJk2QW3Xz2e4tnqQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.a8256861.tgz_1514078955276_0.034605041379109025"},"directories":{}},"0.5.0-alpha.bdff585d":{"name":"@syncano/cli","version":"0.5.0-alpha.bdff585d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.bdff585d","@syncano/template-project-empty":"0.5.0-alpha.bdff585d","@syncano/template-project-hello":"0.5.0-alpha.bdff585d","@syncano/template-socket-es6":"0.5.0-alpha.bdff585d","@syncano/template-socket-vanilla":"0.5.0-alpha.bdff585d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.bdff585d","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"nyc report --reporter=text-lcov > coverage.lcov && codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.bdff585d","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-6Ktxy6vHcnUAxoKV+7KKgTp/MZT4H98tSwrM0VZPEz/q2LP8US6OKkjBkUQguqTWYqgIlK/uiq0Xuyb6FN8/ew==","shasum":"96be18b609d5f25f27303da230eb6e2ba0ba57a2","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.bdff585d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHq/FNejMlRjvnbIXM9/9PaOsxwDJWWYOgnhpFFFCAMHAiAx4gFHG8JobN91iZTE/Wmss2rEpO+qc3l8rG9un7Hlxg=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.bdff585d.tgz_1514079921204_0.6997518809512258"},"directories":{}},"0.5.0-alpha.1da7caf5":{"name":"@syncano/cli","version":"0.5.0-alpha.1da7caf5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.1da7caf5","@syncano/template-project-empty":"0.5.0-alpha.1da7caf5","@syncano/template-project-hello":"0.5.0-alpha.1da7caf5","@syncano/template-socket-es6":"0.5.0-alpha.1da7caf5","@syncano/template-socket-vanilla":"0.5.0-alpha.1da7caf5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.1da7caf5","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"nyc report --reporter=text-lcov > coverage.lcov && codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.1da7caf5","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-WuH5gm7SlmOFSWVHUEnSDqqSkWX8M+WuS0Ln9hs5fogk5gdUo2AiN0SDcXNgxz/+dBbr7PwyKhmzeyqc+mkl5A==","shasum":"336404a5331ce9381f496b0f55033328e38af9c8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.1da7caf5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF2E5zSE+Myg8savNZ4/TVVGUD9VFbPzh/MZsZEbgTnAAiBHNVJFW+8MULoA7tB54TkdhDDGdVgDuYOznfC9ozDEgQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.1da7caf5.tgz_1514080613580_0.5239616241306067"},"directories":{}},"0.5.0-alpha.9f09613a":{"name":"@syncano/cli","version":"0.5.0-alpha.9f09613a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.9f09613a","@syncano/template-project-empty":"0.5.0-alpha.9f09613a","@syncano/template-project-hello":"0.5.0-alpha.9f09613a","@syncano/template-socket-es6":"0.5.0-alpha.9f09613a","@syncano/template-socket-vanilla":"0.5.0-alpha.9f09613a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.9f09613a","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"nyc report --reporter=text-lcov > coverage.lcov && codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.9f09613a","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-FLiPuluUfgmxwKoKx5kapN9NCM9gfXNaGqjOivcKw4RwzSxyEkMhIOOYfeGMb73ESZQgbgC5DUkI2zoPtFGBjw==","shasum":"5d3a0546d2649c50ae609ceba201f17316ca4b1c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.9f09613a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEQk3gU9jyXCMbhq5KMC9vsncdD79mYjS+WRg3L9MsK4AiAObjaghpNxOqmIWM7Z3U09Dq6LFX2AaDrVmjZOVjBoDA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.9f09613a.tgz_1514081033337_0.3074296065606177"},"directories":{}},"0.5.0-alpha.baa9dfc8":{"name":"@syncano/cli","version":"0.5.0-alpha.baa9dfc8","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.baa9dfc8","@syncano/template-project-empty":"0.5.0-alpha.baa9dfc8","@syncano/template-project-hello":"0.5.0-alpha.baa9dfc8","@syncano/template-socket-es6":"0.5.0-alpha.baa9dfc8","@syncano/template-socket-vanilla":"0.5.0-alpha.baa9dfc8","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.baa9dfc8","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"nyc report --reporter=text-lcov > coverage.lcov && codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.baa9dfc8","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/4eVEYgxvsWrGZsL9ORYzL/h4HIGPA7gzoHxHLKNyzGAnZO9kgYKegfLa9RFDrj6o6xUpoD9N/GYvi9jpmu4LA==","shasum":"29cd1018a0ffb0ac95e546e7485d049ef77150db","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.baa9dfc8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAQMFtKhKIzPsxZhGaAj2Kzon/Q/4nBeUgKiBRmX/FFSAiEAwnYof+xn/oL5eoiTwcqts6NzSxGXA7xKgTu8EDbH8MI="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.baa9dfc8.tgz_1514082130908_0.5211572158150375"},"directories":{}},"0.5.0-alpha.335842e9":{"name":"@syncano/cli","version":"0.5.0-alpha.335842e9","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.335842e9","@syncano/template-project-empty":"0.5.0-alpha.335842e9","@syncano/template-project-hello":"0.5.0-alpha.335842e9","@syncano/template-socket-es6":"0.5.0-alpha.335842e9","@syncano/template-socket-vanilla":"0.5.0-alpha.335842e9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.335842e9","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","codecov":"^3.0.0","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","nyc":"^11.3.0","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","report:coverage":"nyc report --reporter=text-lcov > coverage.lcov && codecov","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"nyc yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"nyc":{"check-coverage":false,"include":["src/**/*.js"],"cache":true},"_id":"@syncano/cli@0.5.0-alpha.335842e9","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-5h+tdwmkpc5BSbV/Nq0yAlVZxiU6KDsqNIO8ZWwNGvb1IjAnaPdH+7D7oXhusKOgaKgfwU6mMfgF6Nf6+byPOg==","shasum":"fd4f6591ed8f64f122a2ad16d291dade607d0dab","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.335842e9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5ZwBQpIrR6jOi9smrRhURgXgXgWzRlveiuNtzM0oFDwIgfMhYET+kxoPUiJCcJQhEaxk0c67+I0zMjdfQL15E67I="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.335842e9.tgz_1514117413266_0.06631460087373853"},"directories":{}},"0.5.0-alpha.a5462749":{"name":"@syncano/cli","version":"0.5.0-alpha.a5462749","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.a5462749","@syncano/template-project-empty":"0.5.0-alpha.a5462749","@syncano/template-project-hello":"0.5.0-alpha.a5462749","@syncano/template-socket-es6":"0.5.0-alpha.a5462749","@syncano/template-socket-vanilla":"0.5.0-alpha.a5462749","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.a5462749","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.a5462749","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-HpZXK9RDdCfnMNDG8fkRK5ZOqHxTwFrvc9saVXN8l0rcSh16WKp4RGJ5O6buOkwGiEm24sFbbpgtRcApCBng2A==","shasum":"f7e876d6deb59d3ad858cf51a144e6ceafafda7e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.a5462749.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSMxld/1VO/lCrHwnn6w/o2yVnNK+qOYXGzQ1aW1pGjwIhAMYI5+wwnf1fc2pMxMLDxZ+0j49YXOxJzRls94Av+Y5u"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.a5462749.tgz_1514121480212_0.5526276554446667"},"directories":{}},"0.5.0-alpha.4816133a":{"name":"@syncano/cli","version":"0.5.0-alpha.4816133a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.4816133a","@syncano/template-project-empty":"0.5.0-alpha.4816133a","@syncano/template-project-hello":"0.5.0-alpha.4816133a","@syncano/template-socket-es6":"0.5.0-alpha.4816133a","@syncano/template-socket-vanilla":"0.5.0-alpha.4816133a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.4816133a","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.4816133a","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-0qEtCDvEmg+7tF9gVbiqe2WAsjuOCRhtr4XE6wLDOwG66iod8ZjnvfoSW+kpDrbxpXRQZRVtIUaiaTjRBtff7Q==","shasum":"724d940d165296a9ce80c36adaa7edeba80fb5b6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.4816133a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkQAaXakeJdZIFVy4BnRlot+uPM3ogj+pYTI+89QT5SAIgFNFKmiQhdiJYvtM1fL+e3QcIFR7uhizWo5Ty1N2jiBk="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.4816133a.tgz_1514122137367_0.10968048637732863"},"directories":{}},"0.5.0-alpha.ba656860":{"name":"@syncano/cli","version":"0.5.0-alpha.ba656860","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.ba656860","@syncano/template-project-empty":"0.5.0-alpha.ba656860","@syncano/template-project-hello":"0.5.0-alpha.ba656860","@syncano/template-socket-es6":"0.5.0-alpha.ba656860","@syncano/template-socket-vanilla":"0.5.0-alpha.ba656860","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.ba656860","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.ba656860","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-A+GoOvHsDm40lcb917zZoram21O9uaBxQ+KahgXKg04PbsPE4tM+eSVblF/uavRx97NRDoYAPTXiRa1mx6aXDA==","shasum":"52d1679ddeffd7e105066fef7fd0e9228daf3cdc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.ba656860.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFLqRshqsIiH67yEtDDc2defvkhFltc+jRT0th/WVLE/AiAHYUAIk6viLS3QFEdxHysjqLSAmsEv18SbBdCujRg0jQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.ba656860.tgz_1514385081240_0.44670533551834524"},"directories":{}},"0.5.0-alpha.66f17ee7":{"name":"@syncano/cli","version":"0.5.0-alpha.66f17ee7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.66f17ee7","@syncano/template-project-empty":"0.5.0-alpha.66f17ee7","@syncano/template-project-hello":"0.5.0-alpha.66f17ee7","@syncano/template-socket-es6":"0.5.0-alpha.66f17ee7","@syncano/template-socket-vanilla":"0.5.0-alpha.66f17ee7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.66f17ee7","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.66f17ee7","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-sHvNSxCziQT/PlH9HRJXrfsP2rC+B20iLZ9GoXVg5T5RVrckEFYSsV4B8IwuffmA9lanJw2XzanqzXlMhlFQ4A==","shasum":"3203045d2c8d4974b714e1aace528330f6a39493","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.66f17ee7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCf/+aqmVZNtEvV1/6bJxUZNIoLYRRIA8HS6zZDtO5tAQIhAI/235H6e8nK91HYuHV+Hs+0lR6bDnLR/dRz0w62PNab"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.66f17ee7.tgz_1514386412074_0.2661062360275537"},"directories":{}},"0.5.0-alpha.258e41bd":{"name":"@syncano/cli","version":"0.5.0-alpha.258e41bd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.258e41bd","@syncano/template-project-empty":"0.5.0-alpha.258e41bd","@syncano/template-project-hello":"0.5.0-alpha.258e41bd","@syncano/template-socket-es6":"0.5.0-alpha.258e41bd","@syncano/template-socket-vanilla":"0.5.0-alpha.258e41bd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.258e41bd","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.258e41bd","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-DSLJfRDNzugCvuzbtu3bJUX7qMyO7FZZTxNeYGeeRD2us6e8KFZY4dH+uqRwoLkMN0oNq/umWaanPLV4ynCa+w==","shasum":"b68e40bf482be46d9728600c70b8b2a8d5b3d277","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.258e41bd.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFYP/sA9aYDrn1BcS2vVWa5k0E7UkkbBnEeWvtVbU8KGAiEAjo296xa0KtkP84o+92K9u7YcQVwtx2jIweCbx7o9sro="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.258e41bd.tgz_1514398608176_0.8098194738849998"},"directories":{}},"0.5.0-alpha.9d274a2e":{"name":"@syncano/cli","version":"0.5.0-alpha.9d274a2e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.9d274a2e","@syncano/template-project-empty":"0.5.0-alpha.9d274a2e","@syncano/template-project-hello":"0.5.0-alpha.9d274a2e","@syncano/template-socket-es6":"0.5.0-alpha.9d274a2e","@syncano/template-socket-vanilla":"0.5.0-alpha.9d274a2e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.9d274a2e","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.9d274a2e","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-PqLXQanMNYNY3JjjSUQR25UEtjkPg3l+kqQPZLpUJDOmMKPlBT2AugvEb/TFw70c/ADni4Cgp5K0NFf2Y1QVvA==","shasum":"3171a546d002ec232fbef0e62801ea8f8855b579","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.9d274a2e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFTaqufXbXNzuf9krs4huo+0v8GW8Oh2ofskK2+BCRSrAiEAujOs0qyR7TMCq7wiBvSQYHwlXZuw5CJerbgYd6c/hHA="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.9d274a2e.tgz_1514563858729_0.5744620780460536"},"directories":{}},"0.5.0-alpha.aa26f0db":{"name":"@syncano/cli","version":"0.5.0-alpha.aa26f0db","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.aa26f0db","@syncano/template-project-empty":"0.5.0-alpha.aa26f0db","@syncano/template-project-hello":"0.5.0-alpha.aa26f0db","@syncano/template-socket-es6":"0.5.0-alpha.aa26f0db","@syncano/template-socket-vanilla":"0.5.0-alpha.aa26f0db","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.1","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.aa26f0db","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e","e2e:tutorial":"mocha  --reporter spec --require babel-register --timeout 16000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.aa26f0db","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-B1zKOUxw0Qp1k0gxASYnl08kCNgF20gi5EfEjYhQZjR8WXE0zjUVDZUa3qb/Ay+8ld8hGMr21HuSJWrBq6/1vQ==","shasum":"66f7a1a6179911195f41f86701a131222e73f9e4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.aa26f0db.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDXFJVx9eb7wHZqs0H3evAeGS1YGDCk/usYEgq6plNxvAiBYgktXKELtG1pUxidVIo6+FB437OMqXnti44tfdlp3ZA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.aa26f0db.tgz_1514565146109_0.3140484227333218"},"directories":{}},"0.5.0-alpha.4581c2fd":{"name":"@syncano/cli","version":"0.5.0-alpha.4581c2fd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.4581c2fd","@syncano/template-project-empty":"0.5.0-alpha.4581c2fd","@syncano/template-project-hello":"0.5.0-alpha.4581c2fd","@syncano/template-socket-es6":"0.5.0-alpha.4581c2fd","@syncano/template-socket-vanilla":"0.5.0-alpha.4581c2fd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.4581c2fd","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.4581c2fd","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-crQ2xGMITxDXVY8hL1nz95pwY4KoeJv2u9aXy35A9OHsVfDwJD68xxyLk5BEqu3xp1dR+v/Q7BmS2QD0cYB5pg==","shasum":"8a57f6d9232b55043e01e7f5b10faa88e54bbaeb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.4581c2fd.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCycePhpd5EAzZM/G9VtOcBF42FcGIOuWCtgpBLv+yjLgIgQIvrByJbxYZ6ySLJ52cAGedMXTjTMm11wPQe5wzF7fo="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.4581c2fd.tgz_1514937837055_0.7204237133264542"},"directories":{}},"0.5.0-alpha.8f8b83d9":{"name":"@syncano/cli","version":"0.5.0-alpha.8f8b83d9","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.8f8b83d9","@syncano/template-project-empty":"0.5.0-alpha.8f8b83d9","@syncano/template-project-hello":"0.5.0-alpha.8f8b83d9","@syncano/template-socket-es6":"0.5.0-alpha.8f8b83d9","@syncano/template-socket-vanilla":"0.5.0-alpha.8f8b83d9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.8f8b83d9","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.8f8b83d9","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-HtvefGi854nZ9hTuByB8dYodXVEslHMFfZm6JhNx9eZmBIKwy0A3bC6kJXX8Rm5N8XOoH3u1MS58ekL9OT7j0A==","shasum":"120b1af33f15cf7424752fd8ee1b3cf8a5229c7a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.8f8b83d9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChk7gMVcJ5R+0uWgv7fnMB40Jsd3CavJJaGjVZMmztrgIhAMYmdRzqGA/4Rn1TrlGFCoY8ANyIXqzDlQUBGm+3+nAv"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.8f8b83d9.tgz_1516096269396_0.8012070823460817"},"directories":{}},"0.5.0-alpha.9276fe1d":{"name":"@syncano/cli","version":"0.5.0-alpha.9276fe1d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.9276fe1d","@syncano/template-project-empty":"0.5.0-alpha.9276fe1d","@syncano/template-project-hello":"0.5.0-alpha.9276fe1d","@syncano/template-socket-es6":"0.5.0-alpha.9276fe1d","@syncano/template-socket-vanilla":"0.5.0-alpha.9276fe1d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.9276fe1d","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.9276fe1d","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-SkVFbFZl0cTjGPnM0CdTN30A2gFpER7VJDUmIH1VhLlZMojnhg3Ag9lK7yBv+ikj5PsqZrAvoiK75uIDda1U5A==","shasum":"b0e6ffed0eb51ccde34a4ca37fd136ad640ed38b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.9276fe1d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCY41NDnDasbl7Ff1R1CgEdE90+NF6D9QCaSyvkPwUW5gIgAg0q1KWfoMt2LUiPJcFondskEN8RSd2Lp/7vAKBXNuI="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.9276fe1d.tgz_1516100429458_0.8627165877260268"},"directories":{}},"0.6.0":{"name":"@syncano/cli","version":"0.6.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.6.0","@syncano/template-project-empty":"0.6.0","@syncano/template-project-hello":"0.6.0","@syncano/template-socket-es6":"0.6.0","@syncano/template-socket-vanilla":"0.6.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.6.0","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.6.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/YW0fAIUYXR/3I4zbz68BG3feJvlz0/detCzJeZaVR91jjWb94ASQB8jWRpTyqSF2exUDQdu65Rk9QmQ/LeXpg==","shasum":"255b0136b2a165031af96c0d7aae0d2db8d56610","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.6.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEbUpRHT9b+BYgbTSNWd9Nf83XNatssGPCaOA30IrdA2AiEA/rJhOKuHUPUZw4e7ykoSbVccH7ZdxT/JulRF9nojBGA="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.6.0.tgz_1516118460922_0.022400259505957365"},"directories":{}},"0.7.0-alpha.429764c6":{"name":"@syncano/cli","version":"0.7.0-alpha.429764c6","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.429764c6","@syncano/template-project-empty":"0.7.0-alpha.429764c6","@syncano/template-project-hello":"0.7.0-alpha.429764c6","@syncano/template-socket-es6":"0.7.0-alpha.429764c6","@syncano/template-socket-vanilla":"0.7.0-alpha.429764c6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.429764c6","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.7.0-alpha.429764c6","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-dKDKjuaW8aqBCaaMzAMaRYNdggC+xD7UkhaOdEJUE82BQB1BG0bM/P357Rjc0PdDHVMebjYB0KgMMzg/vRbrhw==","shasum":"357fee0fa776f07025e747f76f6ba33547c24a74","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.429764c6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDdB234eNndqLZnPhj32MzrDWc5pk+hWYfUER2UDan+4AiEAqCnM3Qk0O+jaVZjCIeIbGs6LINpOLtLEHs1Bo/k825E="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.429764c6.tgz_1516118528395_0.7658332572318614"},"directories":{}},"0.5.0-alpha.f1d42f54":{"name":"@syncano/cli","version":"0.5.0-alpha.f1d42f54","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.5.0-alpha.f1d42f54","@syncano/template-project-empty":"0.5.0-alpha.f1d42f54","@syncano/template-project-hello":"0.5.0-alpha.f1d42f54","@syncano/template-socket-es6":"0.5.0-alpha.f1d42f54","@syncano/template-socket-vanilla":"0.5.0-alpha.f1d42f54","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.5.0-alpha.f1d42f54","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -- -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.5.0-alpha.f1d42f54","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-1VUwh+0i43GfS/FSYj3eexNdH/2ZZZjp+T7Hs0wqducFRrYJ7+HICbxLpPZEYSA7RocM47Za9S2Te7HdzAYRRQ==","shasum":"a21f3377312b75fd4ccbdeadc8f61c90cb5d3a6e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.5.0-alpha.f1d42f54.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDq1acaUHn4AiKo1k3ujXmcbmFlh7ZXXjjaTStiY481IgIge0IDfJmyUiQ152pfc1r4Gl7wBjaF54rg6i3NFmcz7Dk="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.5.0-alpha.f1d42f54.tgz_1516376496593_0.32562173483893275"},"directories":{}},"0.7.0-alpha.01ce9261":{"name":"@syncano/cli","version":"0.7.0-alpha.01ce9261","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.01ce9261","@syncano/template-project-empty":"0.7.0-alpha.01ce9261","@syncano/template-project-hello":"0.7.0-alpha.01ce9261","@syncano/template-socket-es6":"0.7.0-alpha.01ce9261","@syncano/template-socket-vanilla":"0.7.0-alpha.01ce9261","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.01ce9261","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --reporter spec --require babel-register","unit:watch":"yarn run unit -w","e2e":"./scripts/e2e && npm-run-all test:e2e:*","test:e2e-single":"mocha --reporter spec --require babel-register --timeout 100000 --slow 8000","test":"npm-run-all --parallel test:unit test:e2e","test:e2e":"yarn run e2e && yarn run test:e2e-main","test:e2e-main":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"7"}}]]},"_id":"@syncano/cli@0.7.0-alpha.01ce9261","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-8aBZj+RwphmsqiTrsBeOiEjzVV16AKcd9R+FsV9t3axLjVEyAFyomNSqfLkS5/rVXD5yuG0Yr85BuBWFwk70Ew==","shasum":"87367b2a5bc87f8f56fd11991c8d20653f7b91c3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.01ce9261.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHPBWKktyZBg/z7e31YdECJPIF4DolAvoB+sh6GLCg5sAiEA/dQLDHW6ZFhuuOYi2CLVOTaS9UN79dHZy5Bl7wu57Hc="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.01ce9261.tgz_1516468969276_0.0438857835251838"},"directories":{}},"0.7.0-alpha.6546cb36":{"name":"@syncano/cli","version":"0.7.0-alpha.6546cb36","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.6546cb36","@syncano/template-project-empty":"0.7.0-alpha.6546cb36","@syncano/template-project-hello":"0.7.0-alpha.6546cb36","@syncano/template-socket-es6":"0.7.0-alpha.6546cb36","@syncano/template-socket-vanilla":"0.7.0-alpha.6546cb36","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.6546cb36","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.6546cb36","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-cyDIMLY1+WIduMiSsEWvTg2HdX8mFF3+HOkEVaWroNpqNifv7yRie6Qv/wqDzfWvVHOgeXK6gGKZnycHoIGGIw==","shasum":"cdf37efe927823138d7ec04477f3e7496b7d3867","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.6546cb36.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFPM8K6tqfioVFlrhYjge/R2qi48MZsdDeabEMRysbDYAiBNvYIkFQkvctVeefua3lxSNQ67uwBdiFa6m+CcxnXhrQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.6546cb36.tgz_1516469833536_0.2529739502351731"},"directories":{}},"0.7.0-alpha.f88dffb0":{"name":"@syncano/cli","version":"0.7.0-alpha.f88dffb0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.f88dffb0","@syncano/template-project-empty":"0.7.0-alpha.f88dffb0","@syncano/template-project-hello":"0.7.0-alpha.f88dffb0","@syncano/template-socket-es6":"0.7.0-alpha.f88dffb0","@syncano/template-socket-vanilla":"0.7.0-alpha.f88dffb0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.f88dffb0","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.f88dffb0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-GueKFR0OO507aMcdX5zJuq1/uOktH+o2koYHtQdlNnNocUdcdTvfad4cQKdJiiSlhFRrB9D5HGQuDWOQfFSVnw==","shasum":"5f0cf685373c9af10ac61d3202d088a5cb90bf7c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.f88dffb0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDlph1yHHvZPviwJckZ7gb+QzgWbO8ytgwMd2lYwov5fAiBMsKoF0pmCbKwRgPEgta4sAVdwa7GJSn1slYHbMCH4AA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.f88dffb0.tgz_1516472518240_0.8473323339130729"},"directories":{}},"0.7.0-alpha.f410f5a7":{"name":"@syncano/cli","version":"0.7.0-alpha.f410f5a7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.f410f5a7","@syncano/template-project-empty":"0.7.0-alpha.f410f5a7","@syncano/template-project-hello":"0.7.0-alpha.f410f5a7","@syncano/template-socket-es6":"0.7.0-alpha.f410f5a7","@syncano/template-socket-vanilla":"0.7.0-alpha.f410f5a7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.f410f5a7","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.f410f5a7","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-1wRzGomOaZuuArMS/dhM008eEv8MT66xFAQPJW8hVzMteZ5Lkbjx0H+mX2koAYozZLw20FmZzJBte41k0k00Nw==","shasum":"0cdaffe5b80b6dbdc7ae70c6293b353c55da65cc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.f410f5a7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKfBkqjog0l7jvKudJvZXQXTvTmMmV2zsMdqMuEwUWegIgD8r9Ek8QsnWEol98UIT7TiI5inagO14cbgv+d/84Djo="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.f410f5a7.tgz_1516474230482_0.42476790864020586"},"directories":{}},"0.7.0-alpha.042cee04":{"name":"@syncano/cli","version":"0.7.0-alpha.042cee04","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.042cee04","@syncano/template-project-empty":"0.7.0-alpha.042cee04","@syncano/template-project-hello":"0.7.0-alpha.042cee04","@syncano/template-socket-es6":"0.7.0-alpha.042cee04","@syncano/template-socket-vanilla":"0.7.0-alpha.042cee04","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.042cee04","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.042cee04","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Ik2d7xSc4sHF5W+wxbL8AhncECg5+QI8F0AbuvDfB/CMvG1mlPPkr25mw/bix4ZPbTPmMbC4/wlWc+LwbCMmtw==","shasum":"2bd78346bda36714143e94d2c437afcfb9ab91e8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.042cee04.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDE03DMLRVvYZo29DG5G5fBnnh5+lQuZQHxGT5BFTszVgIgaG2s0ITpmf/cOcuUdBWTHEUeOfKlZHl1mlgJd4Od2Bc="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.042cee04.tgz_1516475667812_0.9754064274020493"},"directories":{}},"0.7.0-alpha.27fbd033":{"name":"@syncano/cli","version":"0.7.0-alpha.27fbd033","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.27fbd033","@syncano/template-project-empty":"0.7.0-alpha.27fbd033","@syncano/template-project-hello":"0.7.0-alpha.27fbd033","@syncano/template-socket-es6":"0.7.0-alpha.27fbd033","@syncano/template-socket-vanilla":"0.7.0-alpha.27fbd033","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.27fbd033","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.27fbd033","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-6IWjgmZNT2KfG4jZzk0lgtQcUm/nWBAS025ELKH4/tWKY1h6fCCJ+Rl/hM6PnkCrUJA/dgtXIqXBlrBvT3K89w==","shasum":"1a9bf558991a9fa940d6aaad8eaa1c9eb174ac84","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.27fbd033.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBCVqqsIKUIXwOpEEVKlfztsf+VwmmNbKtnzFTodjAsEAiBWDyOBn6zUcv0ug4Mnf4C5ly2fi9U96snvSFXVqsRKww=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.27fbd033.tgz_1516476528110_0.5856600746046752"},"directories":{}},"0.7.0-alpha.16507787":{"name":"@syncano/cli","version":"0.7.0-alpha.16507787","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.16507787","@syncano/template-project-empty":"0.7.0-alpha.16507787","@syncano/template-project-hello":"0.7.0-alpha.16507787","@syncano/template-socket-es6":"0.7.0-alpha.16507787","@syncano/template-socket-vanilla":"0.7.0-alpha.16507787","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.16507787","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.16507787","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-RrvqevQc+UtXtq18FzQ8GQmB+fOCB9tm6CSKSpKOtJ70kq6rFECCSW30oZKpPuVooTUzpKoGDIaEdmfndJ9EMw==","shasum":"c890fa8455b4f4792d0387658a599e63ea147bca","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.16507787.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICCPyDmaJ24hbB8P2zlnRDj99qARWGmTizl2HKG2WpwqAiEAjolW1soOnfuWwHR2sMBmU9Q3L/AoTkkJY9X7oKN+M18="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.16507787.tgz_1516532002725_0.6264132875949144"},"directories":{}},"0.7.0-alpha.6b8806c0":{"name":"@syncano/cli","version":"0.7.0-alpha.6b8806c0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.6b8806c0","@syncano/template-project-empty":"0.7.0-alpha.6b8806c0","@syncano/template-project-hello":"0.7.0-alpha.6b8806c0","@syncano/template-socket-es6":"0.7.0-alpha.6b8806c0","@syncano/template-socket-vanilla":"0.7.0-alpha.6b8806c0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.6b8806c0","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.6b8806c0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-JpUxXWxjF/2T2Nk421FWJ0cm4oP6QU0zmqQc4/UbvFSWTRNzHv+Io0jKkU9qFnXE/A8eWjgPwfSmeQbWklwPgA==","shasum":"2f9d3ed6b9cb3c028008024568075f31074a8b67","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.6b8806c0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDEDWgUFaGLu/m6lS9gYAqCdFvhX9uW6himaWp4vizvAgIgDn3ZldE4U+9AdCM++Aa/nkFE9hddT9uU4jw6v4RCNnU="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.6b8806c0.tgz_1516561131592_0.7872708006761968"},"directories":{}},"0.7.0-alpha.4c80f042":{"name":"@syncano/cli","version":"0.7.0-alpha.4c80f042","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.4c80f042","@syncano/template-project-empty":"0.7.0-alpha.4c80f042","@syncano/template-project-hello":"0.7.0-alpha.4c80f042","@syncano/template-socket-es6":"0.7.0-alpha.4c80f042","@syncano/template-socket-vanilla":"0.7.0-alpha.4c80f042","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.4c80f042","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.4c80f042","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-CuWWP/niNvedOcvkJqVKaGsfGn31b7FTMxic8GIJDv+4Rulj8wFMJ1Te85C45bL6sHhPB3DpHHKxybOn3ZuVEQ==","shasum":"6cb86a5cc853c25bff804c414fde3e1a9a7fffa4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.4c80f042.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHA14VJglCMWd+RZB+OBTZVuOmWHKXHqXyklauXrZQwdAiBe2XgjdTSx2pK44/3g7vlsq8By53HyuRC31IHmpOrTHg=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.4c80f042.tgz_1516561470028_0.9075743437279016"},"directories":{}},"0.7.0-alpha.0ab3e67a":{"name":"@syncano/cli","version":"0.7.0-alpha.0ab3e67a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.0ab3e67a","@syncano/template-project-empty":"0.7.0-alpha.0ab3e67a","@syncano/template-project-hello":"0.7.0-alpha.0ab3e67a","@syncano/template-socket-es6":"0.7.0-alpha.0ab3e67a","@syncano/template-socket-vanilla":"0.7.0-alpha.0ab3e67a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.0ab3e67a","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.0ab3e67a","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Lu9quMT1SdoK0Y4du5NHpG7yuILRxViv49dDqAU3lCkMF4FToXIVC76MZ+1gDeoZWYqEJP2ahl+B0zUfv97MCQ==","shasum":"a504fec631b8b5d8bfeea226f04f8fb599afe341","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.0ab3e67a.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDoAr5NJA0RS3MDHGEq+G4/J4zvY6q4mzXl/LB8sGUaAIgaTCE6gybRXQ9Hg4Q1PTsVwzYc4fGLwkouPlbvK7E9lE="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.0ab3e67a.tgz_1516696926805_0.955468455562368"},"directories":{}},"0.7.0-alpha.da13b802":{"name":"@syncano/cli","version":"0.7.0-alpha.da13b802","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","s-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","s-component":"./lib/cli-component.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.da13b802","@syncano/template-project-empty":"0.7.0-alpha.da13b802","@syncano/template-project-hello":"0.7.0-alpha.da13b802","@syncano/template-socket-es6":"0.7.0-alpha.da13b802","@syncano/template-socket-vanilla":"0.7.0-alpha.da13b802","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.da13b802","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"yarn run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.da13b802","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-s9aICr+Tfs1TBlO+hYz5GNSozJh+8JMYu7XlXcjDtU/NgK3SCoqHyrteS2C36ejcPIIvR3BiPQhSHl4gfwKJEg==","shasum":"f627474a695e1f70cbae5cde7cc580974b5ed3c5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.da13b802.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDfxn4hlRO9erDP39p8PdTktxZCquTNTh2aITJOUgsPRAiEAzGnuA0xVrk+PM+SXt4hucjRaK+HdwbbZPPiqJObcOEE="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.da13b802.tgz_1516743692256_0.2086549091618508"},"directories":{}},"0.7.0-alpha.267fa910":{"name":"@syncano/cli","version":"0.7.0-alpha.267fa910","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.267fa910","@syncano/template-project-empty":"0.7.0-alpha.267fa910","@syncano/template-project-hello":"0.7.0-alpha.267fa910","@syncano/template-socket-es6":"0.7.0-alpha.267fa910","@syncano/template-socket-vanilla":"0.7.0-alpha.267fa910","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.267fa910","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"yarn run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.267fa910","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-W2Ev7eejqtfAGXVxT0Hdq3l8FS9yi53MUPQCn/8dMaagGxWM71HcQKLQLpC3zp1LT3Yw4aI/x4Nl6cvQKMBxLQ==","shasum":"d7e7526d41c5d9ac2e5f43bacaaf136a4b5da09b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.267fa910.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHsTwwzCTmADsD+C1VeQ18tnhQ/cZ0Z4KV6SVX1Yiy5wAiAK7ac++D+b6idBdfWWKcMNskTfx7cePYr9DkTzUUTM2g=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.267fa910.tgz_1516750244076_0.6157917955424637"},"directories":{}},"0.7.0-alpha.498bff4f":{"name":"@syncano/cli","version":"0.7.0-alpha.498bff4f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.498bff4f","@syncano/template-project-empty":"0.7.0-alpha.498bff4f","@syncano/template-project-hello":"0.7.0-alpha.498bff4f","@syncano/template-socket-es6":"0.7.0-alpha.498bff4f","@syncano/template-socket-vanilla":"0.7.0-alpha.498bff4f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.498bff4f","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"yarn run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.498bff4f","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-f/h0QvIVmiDgIFAA7sMBdci6z6verJewePWqRyzEAvG/cdvCP/VaKGhjScSgtQs/tdaoh0ct1RnAgcMr9T3zzw==","shasum":"7e681292c6917a2adff26d052a109a200290c0ef","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.498bff4f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE6psDFaexoFMAopQwkNHg/efbNP57LX+hKkNzipJ/rXAiBNn2sLOyi2+9S2bF8jHhJQRNUlCWuog4tMgEYtCNcTKg=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.498bff4f.tgz_1516750295819_0.13191523356363177"},"directories":{}},"0.7.0-alpha.b96f0eef":{"name":"@syncano/cli","version":"0.7.0-alpha.b96f0eef","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0-alpha.b96f0eef","@syncano/template-project-empty":"0.7.0-alpha.b96f0eef","@syncano/template-project-hello":"0.7.0-alpha.b96f0eef","@syncano/template-socket-es6":"0.7.0-alpha.b96f0eef","@syncano/template-socket-vanilla":"0.7.0-alpha.b96f0eef","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0-alpha.b96f0eef","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"yarn run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0-alpha.b96f0eef","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-wnphgOdzqfLua222XVIv4Fpj0ZaSPbyq7sdWYsK8H83TXBTJbAERHQYOZiNiX1d8fz1pVlQoOpj8iSpZTUii8A==","shasum":"d7e8d9f55179fce30d338bb79ebf738c9545bc65","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0-alpha.b96f0eef.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHMJM2eaAivSQ2Ct4pbUAVQD3tWADho/zstAMFadzFH4AiEA0ledHl3TyS54QNrIFAahUbCDLa19LLV4F1c5xl3UjeM="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0-alpha.b96f0eef.tgz_1516808168047_0.986318641109392"},"directories":{}},"0.7.0":{"name":"@syncano/cli","version":"0.7.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0","yarn":">=1.3.2"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node-cli.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node-cli/issues"},"dependencies":{"@syncano/core":"0.7.0","@syncano/template-project-empty":"0.7.0","@syncano/template-project-hello":"0.7.0","@syncano/template-socket-es6":"0.7.0","@syncano/template-socket-vanilla":"0.7.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"6.13.0","babel-plugin-syntax-object-rest-spread":"6.13.0","babel-plugin-transform-async-to-generator":"6.24.1","babel-plugin-transform-class-properties":"6.24.1","babel-plugin-transform-decorators-legacy":"1.3.4","babel-plugin-transform-export-extensions":"6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.0","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"0.2.0","commander":"^2.12.1","create-error":"0.3.1","cross-env":"^5.1.1","debug":"2.6.9","es6-template-strings":"2.0.1","find-key":"2.0.1","form-data":"^2.3.1","fs-extra":"1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"2.2.1","mkdirp":"0.5.1","node-dir":"^0.1.17","node-walkup":"1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"4.0.2","raven":"^2.2.1","readdirp":"2.1.0","replace":"^0.3.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"0.2.5","validator":"^9.1.2","watchr":"3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.0","babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-plugin-add-module-exports":"0.2.1","babel-register":"^6.26.0","chai":"4.1.2","chai-as-promised":"7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"yarn run build","build":"babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"yarn run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"yarn run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"yarn run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"yarn run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"yarn run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"yarn run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"yarn run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"yarn run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"yarn run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"yarn run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"yarn run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ZsQ8GuwQpBfz3e9gLAcWgAf79Rn+yY+lsYvBbWPV4Nx3QAIHeWFFhL03C69rVQ0Gjr9wqgUEtUvBhTwsPVHSyQ==","shasum":"02e9f0c24b55b2b0b09abef2aa3e299145a5e8c7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIESege7Qxb/jYhpf21WHIRJ7uQah1pFfJ7fy0uOZ5G5aAiEA+09ikslKRjOYTbvVkI2mEKtaayhLZiBM3gMVZwvHHmM="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.0.tgz_1516808839566_0.6635789182037115"},"directories":{}},"0.8.0-alpha.d2bc3ba5":{"name":"@syncano/cli","version":"0.8.0-alpha.d2bc3ba5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.d2bc3ba5","@syncano/template-project-empty":"0.8.0-alpha.d2bc3ba5","@syncano/template-project-hello":"0.8.0-alpha.d2bc3ba5","@syncano/template-socket-es6":"0.8.0-alpha.d2bc3ba5","@syncano/template-socket-vanilla":"0.8.0-alpha.d2bc3ba5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.d2bc3ba5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.d2bc3ba5","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-moqxQsPXTw8a0x/jbG5id5AD8k2Bw4Oe5R2cEq9bKb58sGICk5ZFO8xEiR6RU1/gfew4fUZMvng7dDRszNc6nQ==","shasum":"2653c34536db172ab7edea4f56204ea28bdff565","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.d2bc3ba5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXF1VbNy1y7cbE/JeLJHsmNj17rD255NLSlltL2bkA/wIhAP/A/BXhkwjnK+G/rGMta9Dmx/bCFR9vMqtdSRRbCkHI"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.d2bc3ba5.tgz_1517100218825_0.8612992018461227"},"directories":{}},"0.8.0-alpha.e064d02b":{"name":"@syncano/cli","version":"0.8.0-alpha.e064d02b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.e064d02b","@syncano/template-project-empty":"0.8.0-alpha.e064d02b","@syncano/template-project-hello":"0.8.0-alpha.e064d02b","@syncano/template-socket-es6":"0.8.0-alpha.e064d02b","@syncano/template-socket-vanilla":"0.8.0-alpha.e064d02b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.e064d02b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.e064d02b","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-YSHQxoWoKvAweWAhPBvxhHuBM0FJ0UWxzavNvYRcKQzgc8zM0CD7vDVr0aZyQdTINUPAcCoSHmXrkUtkuvfmaA==","shasum":"f6ccfde4e0d85fe4db00672dcd31f5b2da260ce1","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.e064d02b.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICGIPa45kYqu8Un/iTDQuYcjU7BGrwaviJ46o1OSfM2jAiA8X7vSNWtnHTKS+UbO8FRrTAJF8JWqPyRpv8VtdTbaaA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.e064d02b.tgz_1517101307277_0.07608055928722024"},"directories":{}},"0.7.1":{"name":"@syncano/cli","version":"0.7.1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.7.1","@syncano/template-project-empty":"0.7.1","@syncano/template-project-hello":"0.7.1","@syncano/template-socket-es6":"0.7.1","@syncano/template-socket-vanilla":"0.7.1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.7.1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.7.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-t57t0KE3WnGyWA0th2j1oeD4ng9U6G7+++LMmgn0S1FXHx3SXhmv1FzRU/sFFfqTYwMM6mW+yD2a/reyUK1QaA==","shasum":"0eaf5fc45604f789d6b6105b0ee494ba34f1fd8f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.7.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5IfloYry0EF3YBuZEk6WbXtyFrUgoOX+VY2XM8iHyDAIgI0t+6paR+8wSXikK5UKjr688+ma9GiqIa6jkCINJ+OU="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.7.1.tgz_1517132427981_0.02442072075791657"},"directories":{}},"0.8.0-alpha.b0899865":{"name":"@syncano/cli","version":"0.8.0-alpha.b0899865","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.b0899865","@syncano/template-project-empty":"0.8.0-alpha.b0899865","@syncano/template-project-hello":"0.8.0-alpha.b0899865","@syncano/template-socket-es6":"0.8.0-alpha.b0899865","@syncano/template-socket-vanilla":"0.8.0-alpha.b0899865","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.b0899865","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.b0899865","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ESJ/0brKDyTMtjI2NonZRgtGTdbCbx13l1iMwdbi++dXwJpXZwLIyIvqetwOEmqKNkPGPOsYMqa4vwvXbHELwQ==","shasum":"b71bbe8663d40b5a8015f6b658f69023952d3d9f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.b0899865.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID0N4yhjtz8PQhxPBBSjj16hg8h3YA7eXuL1VJBbriM+AiBr60ab4bFmZFWmd7Q9jD5GPCaKJiviN/3ZwVo75JWxtA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.b0899865.tgz_1517147625444_0.03355619986541569"},"directories":{}},"0.8.0-alpha.7947c09f":{"name":"@syncano/cli","version":"0.8.0-alpha.7947c09f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.7947c09f","@syncano/template-project-empty":"0.8.0-alpha.7947c09f","@syncano/template-project-hello":"0.8.0-alpha.7947c09f","@syncano/template-socket-es6":"0.8.0-alpha.7947c09f","@syncano/template-socket-vanilla":"0.8.0-alpha.7947c09f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.7947c09f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.7947c09f","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-fSLiyjhZL0KojjMfFbOMSx5YozE+gjIOl+LOmIt53DXMxlopHrIhg+Y89nXKH4DW88HM6BHaHO6A8mjT4jMu1Q==","shasum":"cdbd57471953b4905ab9fa2943533fd2e6871db6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.7947c09f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDYWnh4v62JazUGmBHKV7U3wmU91QNhBW7qErr/fKDMgAiBkeYYLX5fMr7RmdytTg4nU6T2fek2FgIIC80oE5mQ5Pw=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.7947c09f.tgz_1517159972966_0.22200500639155507"},"directories":{}},"0.8.0-alpha.15429c2e":{"name":"@syncano/cli","version":"0.8.0-alpha.15429c2e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.15429c2e","@syncano/template-project-empty":"0.8.0-alpha.15429c2e","@syncano/template-project-hello":"0.8.0-alpha.15429c2e","@syncano/template-socket-es6":"0.8.0-alpha.15429c2e","@syncano/template-socket-vanilla":"0.8.0-alpha.15429c2e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","cross-env":"^5.1.1","debug":"^2.6.9","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^1.0.0","hashdirectory":"^0.1.0","inquirer":"^4.0.0","js-yaml":"^3.10.0","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.6.1","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^3.0.1","ws":"^3.3.3"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.15429c2e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^4.0.1","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.15429c2e","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-BW7JGGWbKamP+RGsLJj/96n0zWLPZe9sSLYmX3uet/Oa3NtFXi5ZJnQTgJ4DzhhKZ3ngYIWiXmf+zJ9MIUDxNw==","shasum":"ff96fec08440b3316b2c55ae6cfe7dd086ccba54","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.15429c2e.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC+1fPkYR08B9yJoJRAKeM8Aho1Y95PEqb+OnkfXhCe9AiAQ2JjnAUv2rtTwiVww3Fdhc9ME2LdAMiynWzWvAVeRJw=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.15429c2e.tgz_1517167364532_0.0211066878400743"},"directories":{}},"0.8.0-alpha.c2a71d2f":{"name":"@syncano/cli","version":"0.8.0-alpha.c2a71d2f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.c2a71d2f","@syncano/template-project-empty":"0.8.0-alpha.c2a71d2f","@syncano/template-project-hello":"0.8.0-alpha.c2a71d2f","@syncano/template-socket-es6":"0.8.0-alpha.c2a71d2f","@syncano/template-socket-vanilla":"0.8.0-alpha.c2a71d2f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.c2a71d2f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.c2a71d2f","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-m9PxZnxpjTJaQ1Gg8J7yfB9eexYl6+y1wtdA3HqqtyVnHgCaOANXCdwOgfQhoc9LzhHkHESrGU0KLvZXzl/vQg==","shasum":"5dd3e1342ee32a5c1b93e48f3697bd03ec9e6383","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.c2a71d2f.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFMYrKqFBqQYRnblY1M8SHjEHU82Blbt4j8inrgCPJaAAiAYx/zaE+3bgV6ZqNZjmB6Bn7WgX1Lon0fZ/s2bGF4uAQ=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.c2a71d2f.tgz_1517181127726_0.5348067721351981"},"directories":{}},"0.8.0-alpha.9ce6c5a0":{"name":"@syncano/cli","version":"0.8.0-alpha.9ce6c5a0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.9ce6c5a0","@syncano/template-project-empty":"0.8.0-alpha.9ce6c5a0","@syncano/template-project-hello":"0.8.0-alpha.9ce6c5a0","@syncano/template-socket-es6":"0.8.0-alpha.9ce6c5a0","@syncano/template-socket-vanilla":"0.8.0-alpha.9ce6c5a0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.9ce6c5a0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.9ce6c5a0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-VBjx7cbweuHpM1UyWRp5BsthTYSAYZrn9ssGArG8B3WpSBlR8WBpu+2O9SwyPimbw5izFWIzhl+U/oq4CNLlwQ==","shasum":"54d09ed2de1c3d28fbd85689e18a45a8a5541c12","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.9ce6c5a0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeHLk/NOQsVYwJpw7BBrI/trMpuFPMP8eSwxQhWxL1jQIhALCwC1Z2+m7GhL2RH6tooL5k916rLxmllgoM//F5yARj"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.9ce6c5a0.tgz_1517186071147_0.14236830500885844"},"directories":{}},"0.8.0-alpha.9ec7c4f0":{"name":"@syncano/cli","version":"0.8.0-alpha.9ec7c4f0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.9ec7c4f0","@syncano/template-project-empty":"0.8.0-alpha.9ec7c4f0","@syncano/template-project-hello":"0.8.0-alpha.9ec7c4f0","@syncano/template-socket-es6":"0.8.0-alpha.9ec7c4f0","@syncano/template-socket-vanilla":"0.8.0-alpha.9ec7c4f0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.9ec7c4f0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.9ec7c4f0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-oqeWspYSEqrt8jodkKPgG7vNev3RYKhFqrsy4SvRoK7EsASPLK7i4iVUk4q1y/kdKdLK+fW+3gWeju8vLAF/ZQ==","shasum":"5a84d01d2c8dc5f1f722d4c22bcea755420e644b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.9ec7c4f0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAYIZTa8zQPMYADM0wjvFJf83CLBIRNf6oEijY5bup8wIhAPUBG7iYkasosolcl6bab65Ujiy3aaFezRESaITGMkFn"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.9ec7c4f0.tgz_1517300599477_0.3186277560889721"},"directories":{}},"0.8.0-alpha.9ba61165":{"name":"@syncano/cli","version":"0.8.0-alpha.9ba61165","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.9ba61165","@syncano/template-project-empty":"0.8.0-alpha.9ba61165","@syncano/template-project-hello":"0.8.0-alpha.9ba61165","@syncano/template-socket-es6":"0.8.0-alpha.9ba61165","@syncano/template-socket-vanilla":"0.8.0-alpha.9ba61165","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.9ba61165","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.9ba61165","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-dRGs9fGrAoneFJruklObTdZlERtBNtNRZSbAKEkVGXDhYIRISZlwAain8ISe2ohRkMdUZpp9NmGU3jRccarLDA==","shasum":"e71d5350b483d09105d26d1f45015edb9e56c1cc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.9ba61165.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDn/jKxG31L5dJQ+6yLI1m9FT6+N2Q7GzSKMdRmvR2fdQIhAInr073csBeQJvrca6vuVfLiS42/KifkdHEym/GZQIDh"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.9ba61165.tgz_1517308353048_0.5934687345288694"},"directories":{}},"0.8.0-alpha.946ac619":{"name":"@syncano/cli","version":"0.8.0-alpha.946ac619","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.946ac619","@syncano/template-project-empty":"0.8.0-alpha.946ac619","@syncano/template-project-hello":"0.8.0-alpha.946ac619","@syncano/template-socket-es6":"0.8.0-alpha.946ac619","@syncano/template-socket-vanilla":"0.8.0-alpha.946ac619","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.946ac619","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.946ac619","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-S6m/CmtBsVgvbYhqDNAhnbiQbnOCGKxsYlUlmMG8xHyaTqzW0S2o6c32fS+BqX8HxDyz8FUYE9Jgx3bxrFZrYw==","shasum":"ce3977bc08e327fb3c0b10aecf7d6b4c0cb68002","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.946ac619.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEdnSJRCPc2YpZRwpYvtHiEdR6GhzImLXgCNW6S8531HAiEAg7pbWnN6i4JjuzxjUsIBKgYGFUBY1PSKhcpyVpumhYM="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.946ac619.tgz_1517390205996_0.8986248299479485"},"directories":{}},"0.8.0-alpha.9c1feacb":{"name":"@syncano/cli","version":"0.8.0-alpha.9c1feacb","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.9c1feacb","@syncano/template-project-empty":"0.8.0-alpha.9c1feacb","@syncano/template-project-hello":"0.8.0-alpha.9c1feacb","@syncano/template-socket-es6":"0.8.0-alpha.9c1feacb","@syncano/template-socket-vanilla":"0.8.0-alpha.9c1feacb","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.9c1feacb","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.9c1feacb","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-sric+GOzC+0s9SLasKsT8RAigPN0vEknNkJ4EVaTumx3tg9DSp/LHRN63upQekNmVtyqluHJnbOf9Bax9Hdf6Q==","shasum":"6cb4e99dddb768bc61131854c89e646143302594","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.9c1feacb.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRCkU29Ml1mkFE5b7A3fudgjVFPxgMuCwdaphzjGbJxQIgVnpPICwzb+C08ca0+wfs4WXQuc9c/1z4ci59gAn8mss="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.9c1feacb.tgz_1517395481392_0.37347949342802167"},"directories":{}},"0.8.0-alpha.2209de52":{"name":"@syncano/cli","version":"0.8.0-alpha.2209de52","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.2209de52","@syncano/template-project-empty":"0.8.0-alpha.2209de52","@syncano/template-project-hello":"0.8.0-alpha.2209de52","@syncano/template-socket-es6":"0.8.0-alpha.2209de52","@syncano/template-socket-vanilla":"0.8.0-alpha.2209de52","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.2209de52","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.2209de52","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-UxonhWC5QTxI/1m/KyWFk22w9tmU5aFUXbonbWzv80r6Zqhh7RDFAHOJ3T++uZJxq6LN5uHysf2K3tBESt7nJw==","shasum":"b34f657e06053ea136a395f4541654a6e1b82d1c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.2209de52.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFaQr5BGXLfYqLiQ2lidg5qLnpj9LvYBQYpK9MA1TQ+sAiA+Tb7oUv2CE8VZOctC5bzc8c+C8ZNDViQpg7Mmvkz0oA=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.2209de52.tgz_1517395955784_0.19220339483581483"},"directories":{}},"0.8.0-alpha.617377ac":{"name":"@syncano/cli","version":"0.8.0-alpha.617377ac","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.617377ac","@syncano/template-project-empty":"0.8.0-alpha.617377ac","@syncano/template-project-hello":"0.8.0-alpha.617377ac","@syncano/template-socket-es6":"0.8.0-alpha.617377ac","@syncano/template-socket-vanilla":"0.8.0-alpha.617377ac","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.617377ac","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.617377ac","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-fq22rwZ6UWimtoEuDvet4sjlsP/1il5JIKG3pXqRg/8DtwQbxLsKDHuGM8jEQ2e7puPYeHv1cAWrgmFIOObuGg==","shasum":"89b3d81fe3caf27d004764fefa0c2d94f322e6e5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.617377ac.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKap1iVVSiLoCOSbLc0wqqBchmcRBSX9fYFk2gMvmYZgIhANlJpebGLFVQJKV8i+Nn+I5N5G/FvEn8CNYu3O3T9wGB"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.617377ac.tgz_1517399121682_0.0936823757365346"},"directories":{}},"0.8.0-alpha.e3718bbd":{"name":"@syncano/cli","version":"0.8.0-alpha.e3718bbd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.e3718bbd","@syncano/template-project-empty":"0.8.0-alpha.e3718bbd","@syncano/template-project-hello":"0.8.0-alpha.e3718bbd","@syncano/template-socket-es6":"0.8.0-alpha.e3718bbd","@syncano/template-socket-vanilla":"0.8.0-alpha.e3718bbd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.e3718bbd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.e3718bbd","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-9b205yqGsQp561gFEZiu8IvklKYNsXHbpqUbZZACTcOEaVNaaJX9EYTOZZLMZque58KCiTB28NlxhptO91QSYw==","shasum":"5daabe9128b80a0e708729dbc8b70268547f3b9f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.e3718bbd.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC24dUnumW7x1k7hDIpHt1xT6Or2XLFB6odYmTADKBItgIhALLSLgGeHMtBWLX/ap+t7Pl+XtcrOJbT+ybb9wFpCjkM"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.e3718bbd.tgz_1517562697860_0.5638649710454047"},"directories":{}},"0.8.0-alpha.70ad5b82":{"name":"@syncano/cli","version":"0.8.0-alpha.70ad5b82","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.70ad5b82","@syncano/template-project-empty":"0.8.0-alpha.70ad5b82","@syncano/template-project-hello":"0.8.0-alpha.70ad5b82","@syncano/template-socket-es6":"0.8.0-alpha.70ad5b82","@syncano/template-socket-vanilla":"0.8.0-alpha.70ad5b82","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.70ad5b82","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.70ad5b82","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/8A2uUvy7GxN20wJBsjeA/TGsLJsVhOef3Olni5At3U6cOG0p09bG6eh0hAIMDmhd9wGQxfkUuuxlQBfVgm4bQ==","shasum":"c545de1209e8030f3d57ec184e184b17ec421937","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.70ad5b82.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8WEW1nD4o4bJXpSvJ/AuO8lGwxh6pbux9nSfJ9FBHCAiA8AhdBFunNm87N6tIFz42oCFLxYy45+K75t+6bt6fs6A=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.70ad5b82.tgz_1517562743679_0.025498553877696395"},"directories":{}},"0.8.0-alpha.b301bf3d":{"name":"@syncano/cli","version":"0.8.0-alpha.b301bf3d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.b301bf3d","@syncano/template-project-empty":"0.8.0-alpha.b301bf3d","@syncano/template-project-hello":"0.8.0-alpha.b301bf3d","@syncano/template-socket-es6":"0.8.0-alpha.b301bf3d","@syncano/template-socket-vanilla":"0.8.0-alpha.b301bf3d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.b301bf3d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.b301bf3d","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-2CyRzrSqLxbIZXX7lWlG0vyZYpq3LhlMghKUGr9LJ1WJ+uoVSZ955K9DXYVNE6v0xebj6KXr/qRaHkX0E+6PZA==","shasum":"672315027ad8d4719ceba2d05b3a7899dba47faa","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.b301bf3d.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfHg40R8PUZshxA23fhlXLBYkkepAwv470JiFRXiLNxAiB8Q5rc+yqA9xenz35aJKf4GaHrECXGzKT8u7Sin7hWkg=="}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.b301bf3d.tgz_1517570217748_0.277446698397398"},"directories":{}},"0.8.0-alpha.d78b1ca5":{"name":"@syncano/cli","version":"0.8.0-alpha.d78b1ca5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.d78b1ca5","@syncano/template-project-empty":"0.8.0-alpha.d78b1ca5","@syncano/template-project-hello":"0.8.0-alpha.d78b1ca5","@syncano/template-socket-es6":"0.8.0-alpha.d78b1ca5","@syncano/template-socket-vanilla":"0.8.0-alpha.d78b1ca5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.d78b1ca5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.d78b1ca5","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-L2MQYvEn3BLlNbZSd+ZeQi9A+2llKCzTr2MhVsgnYqgIQxGFTjbbd9neBs+zrW9EniyeSNor20FC84upB6hSXA==","shasum":"39c4f3e5c2f68d347a5132c6efc1bb8f4bbff716","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.d78b1ca5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMGXmQ//L0nvyt1eb1/ueR/6iT5/156WllJml/iX3yTgIhANkP/0Rc0/Dma1QLqVaLqYDsaAPG+EvKmHK51axdaJ5I"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.d78b1ca5.tgz_1517753890550_0.8413852110970765"},"directories":{}},"0.8.0-alpha.8d8efab4":{"name":"@syncano/cli","version":"0.8.0-alpha.8d8efab4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.8d8efab4","@syncano/template-project-empty":"0.8.0-alpha.8d8efab4","@syncano/template-project-hello":"0.8.0-alpha.8d8efab4","@syncano/template-socket-es6":"0.8.0-alpha.8d8efab4","@syncano/template-socket-vanilla":"0.8.0-alpha.8d8efab4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.8d8efab4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0-alpha.8d8efab4","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-wbBb6LnjhEJeFKwwunQs/M4AX+v7QtjRGrcwwuhQUkL7Ito4CaH4pvM8Xz5mY9riXGsskrkFsRMCT/WK/+hbbg==","shasum":"beb94e6a8825f5da0971a265c69da93d27c33af6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.8d8efab4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDKObQzUsQ0qyjTV0i4iltJ8PYLJ3y4a2/yryYygEAViQIhAOYPGrNXVV/S8UdQ9jt/RDgSvOc1gbM21wuZVHNJ57Kp"}]},"maintainers":[{"email":"maciej@kucharz.net","name":"qk"},{"email":"ideredpl@gmail.com","name":"idered"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli-0.8.0-alpha.8d8efab4.tgz_1517908962121_0.7819007996004075"},"directories":{}},"0.8.0-alpha.b8d4214e":{"name":"@syncano/cli","version":"0.8.0-alpha.b8d4214e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.b8d4214e","@syncano/template-project-empty":"0.8.0-alpha.b8d4214e","@syncano/template-project-hello":"0.8.0-alpha.b8d4214e","@syncano/template-socket-es6":"0.8.0-alpha.b8d4214e","@syncano/template-socket-vanilla":"0.8.0-alpha.b8d4214e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.b8d4214e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.8.0-alpha.b8d4214e","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-hXlkqZMozZaorR4Yb1CwxRdodwbteyn+d1M8TIOAJhVvEf3jgLxwzKj05I2ThMavmYNVpKjA4tCg9HH4SZaVgA==","shasum":"bb9667c1b350a3a0adb4d0080f612e5e61ee4fca","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.b8d4214e.tgz","fileCount":205,"unpackedSize":890109,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5GK99/r1IECO8ouqor4jz49Lj5t/iJXDhG3JsvgrAaQIhAJZN2FUUcKOJ1RgxPY31kCqNw8F3TRxXl7q8kH1vhSRy"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0-alpha.b8d4214e_1518175653318_0.3978363845127062"},"_hasShrinkwrap":false},"0.8.0-alpha.57263ee7":{"name":"@syncano/cli","version":"0.8.0-alpha.57263ee7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.57263ee7","@syncano/template-project-empty":"0.8.0-alpha.57263ee7","@syncano/template-project-hello":"0.8.0-alpha.57263ee7","@syncano/template-socket-es6":"0.8.0-alpha.57263ee7","@syncano/template-socket-vanilla":"0.8.0-alpha.57263ee7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.57263ee7","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.8.0-alpha.57263ee7","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-3NQuk/6emo4qo62125d4ENH8WaWVt7CN4SVNPLAqisVYa781ipg8WqYP9rVBKaLn590aqLq873ivyp2351QGGg==","shasum":"24e8c6f395fdadd6492baef231d2cc299be9c850","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.57263ee7.tgz","fileCount":205,"unpackedSize":890109,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+w2dbqm3riA3NymChUNRBGwyd/NzBNvWYr7tvbbc91gIgK3mKAXYfc2FOafpdAYaQV4KHbGEit1s2VFxyWo24gSk="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0-alpha.57263ee7_1518177385915_0.5595758438608454"},"_hasShrinkwrap":false},"0.8.0-alpha.cacb2c22":{"name":"@syncano/cli","version":"0.8.0-alpha.cacb2c22","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.cacb2c22","@syncano/template-project-empty":"0.8.0-alpha.cacb2c22","@syncano/template-project-hello":"0.8.0-alpha.cacb2c22","@syncano/template-socket-es6":"0.8.0-alpha.cacb2c22","@syncano/template-socket-vanilla":"0.8.0-alpha.cacb2c22","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.cacb2c22","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.8.0-alpha.cacb2c22","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-9UIYsVYitpx/TWv+92BcT539mlgGEDEF3G8oZT08rWH2AjbjSAEjwgKWqPIR9/n9QQh7KBNvAvcq9riCjYKbHA==","shasum":"94648103d5c294273cd1d61d9f3f21ea753536bb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.cacb2c22.tgz","fileCount":205,"unpackedSize":890121,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICGK8lISX+QHu3wScdd/KEbEWkdLp1asXbzrIeb/O5IIAiAD3Yz+izkp0w2dWLcV0gtPSkpOOdlIoZR+ysMk4kd+RQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0-alpha.cacb2c22_1518178089105_0.08219191820348049"},"_hasShrinkwrap":false},"0.8.0-alpha.c4ff73db":{"name":"@syncano/cli","version":"0.8.0-alpha.c4ff73db","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.c4ff73db","@syncano/template-project-empty":"0.8.0-alpha.c4ff73db","@syncano/template-project-hello":"0.8.0-alpha.c4ff73db","@syncano/template-socket-es6":"0.8.0-alpha.c4ff73db","@syncano/template-socket-vanilla":"0.8.0-alpha.c4ff73db","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.c4ff73db","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.8.0-alpha.c4ff73db","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ewIO4DaXNvQk+ImRTXEYlAys6JmBo6PvT2AWqezodfkjrnEf2KFUN6SwAffg7qVI7fFBClbBySPi4K6Sq2EACg==","shasum":"b274d36b1fa91e1ec5d01757a4e646d11c71b5f7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.c4ff73db.tgz","fileCount":205,"unpackedSize":890121,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDVx4sCVQ5ZWdXwdRJ6D4DQVKqy8gZ53G7ZF3kmQqx6aAiBqGKKlBt+QC3chN0023nOBpv7vM5yggtMlV+XiBZXhXw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0-alpha.c4ff73db_1518178466773_0.7519995621152618"},"_hasShrinkwrap":false},"0.8.0-alpha.53482fd9":{"name":"@syncano/cli","version":"0.8.0-alpha.53482fd9","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0-alpha.53482fd9","@syncano/template-project-empty":"0.8.0-alpha.53482fd9","@syncano/template-project-hello":"0.8.0-alpha.53482fd9","@syncano/template-socket-es6":"0.8.0-alpha.53482fd9","@syncano/template-socket-vanilla":"0.8.0-alpha.53482fd9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0-alpha.53482fd9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.8.0-alpha.53482fd9","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-7lRh1azaQYAlnDdT4Wx9NhmYCjfGdTQEvU0Ht42S/rGGo7psyXIWnuXfPIpkqONcFAQHteA6oBqYkWMoh5aI3Q==","shasum":"86e4296fd4d2dcc69647b29eafe93e8aeda01e87","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0-alpha.53482fd9.tgz","fileCount":205,"unpackedSize":890121,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDI0VXD84XQu6lgGmarMVmFReiekZpp9Aw/cwdsMjAtlwIhAMqiI6nI0796D0h0qwPJWb9akQc6AQXwI2fLZgOAOqa/"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0-alpha.53482fd9_1518180174582_0.1833719448336124"},"_hasShrinkwrap":false},"0.8.0":{"name":"@syncano/cli","version":"0.8.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.8.0","@syncano/template-project-empty":"0.7.1","@syncano/template-project-hello":"0.7.1","@syncano/template-socket-es6":"0.8.0","@syncano/template-socket-vanilla":"0.7.1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.8.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.8.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-0glCGDqDI/qwpm3rUHuf2YnwiyrWPhWzHWWWwFFHipADBEV/x3ZZ0F/VsoULHZKTkGJMv/vpidwOSsQ8I3UWGA==","shasum":"fd73c63fe938eb9aacf5641aaf7c16f2b4119fc6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.8.0.tgz","fileCount":206,"unpackedSize":890805,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA+8+XaIh5S0WOISmou0ckK3pEYR4SZQogV2xXSYrxkNAiARQ691e946g64leWLqq4dUMFWRN4IMaAvarTxP4FPgQA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.8.0_1518181202755_0.3301132441133623"},"_hasShrinkwrap":false},"0.9.0-alpha.775dff2c":{"name":"@syncano/cli","version":"0.9.0-alpha.775dff2c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.775dff2c","@syncano/template-project-empty":"0.9.0-alpha.775dff2c","@syncano/template-project-hello":"0.9.0-alpha.775dff2c","@syncano/template-socket-es6":"0.9.0-alpha.775dff2c","@syncano/template-socket-vanilla":"0.9.0-alpha.775dff2c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.775dff2c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.775dff2c","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-EqIMcgYcBBBLkGvC3UAfDP2wf6XG22db55qu9Icqqrzlbff3olKWWLx92qxjFNOJL/ajp0ybS/tqW7/oj9l3fA==","shasum":"fcc64a6ea1ee70f5a7d646bf8d1e4831ce5a5264","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.775dff2c.tgz","fileCount":205,"unpackedSize":892638,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHjWggJaJv78v5QEZGzjh2DVapWDT0ku0E5UMlLHNgqMAiBbrWussdAnr+ojWRL8zJ3Zl8Kw1W3Pki0Fvdky4eAmNQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.775dff2c_1518442611590_0.933739110001446"},"_hasShrinkwrap":false},"0.9.0-alpha.eec5256b":{"name":"@syncano/cli","version":"0.9.0-alpha.eec5256b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.eec5256b","@syncano/template-project-empty":"0.9.0-alpha.eec5256b","@syncano/template-project-hello":"0.9.0-alpha.eec5256b","@syncano/template-socket-es6":"0.9.0-alpha.eec5256b","@syncano/template-socket-vanilla":"0.9.0-alpha.eec5256b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.eec5256b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.eec5256b","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-msCU73ClTJ1bj023Nmk+fgNdIKj5htNs23Ivg5P/kkUfii28+5Ntwul3ip72626CZn8M54ir0AqBdSYg1aYVWA==","shasum":"cd8096ce434f16abb190489e0872f9c1107c6bef","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.eec5256b.tgz","fileCount":205,"unpackedSize":895942,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBBGaj/EThNUbt+VkXQTsip8t6oIuejfb+xdNMx81d92AiEAras0Tb3jkcRJtQKA1PjUSAOtWZDmSU5jh9y+td/230Q="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.eec5256b_1518481015977_0.19882933510025946"},"_hasShrinkwrap":false},"0.9.0-alpha.c0295527":{"name":"@syncano/cli","version":"0.9.0-alpha.c0295527","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.c0295527","@syncano/template-project-empty":"0.9.0-alpha.c0295527","@syncano/template-project-hello":"0.9.0-alpha.c0295527","@syncano/template-socket-es6":"0.9.0-alpha.c0295527","@syncano/template-socket-vanilla":"0.9.0-alpha.c0295527","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.c0295527","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.c0295527","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-+wvLn/3GPiYqGNgDotg1cDCISeBuLw9ephtWyGe29lkrAr/4Tyz90VQXpQ+Bjzrbf7Vygnsu4qIBA5asb+O16A==","shasum":"5f3a76ee1ca7e91f26b2ffa9f791e1211afe16f8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.c0295527.tgz","fileCount":205,"unpackedSize":895942,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEVSkGkKJxKk1wq2V/3gX9C8GE4KLwmsR/UavdGkGrZlAiA95MvnjmIp+ZpsNAGhblp7i2rD2ReRON6QZek6R4E9Qg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.c0295527_1518507035277_0.27563178731263505"},"_hasShrinkwrap":false},"0.9.0-alpha.0c8678bb":{"name":"@syncano/cli","version":"0.9.0-alpha.0c8678bb","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.0c8678bb","@syncano/template-project-empty":"0.9.0-alpha.0c8678bb","@syncano/template-project-hello":"0.9.0-alpha.0c8678bb","@syncano/template-socket-es6":"0.9.0-alpha.0c8678bb","@syncano/template-socket-vanilla":"0.9.0-alpha.0c8678bb","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.0c8678bb","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.0c8678bb","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-e5bibEeXBiNiSei2BMfTyFMtFQCbxXHJ4Bq1D0h8orWsKZgjSJeBXyEgDyUtmr3N/0TnNkYc4pdMpVrtjOFbFQ==","shasum":"b696fc71ef857486977ce3d1d02bd4ad9ac0446e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.0c8678bb.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCg2GM9KaMEhFjOQb7v1/OEb6eZuHNosv8BaSeMXXlcbAIhAMPEmILdQV24+NdL//ykhDR2met5H+++8gFdSFN5NBtT"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.0c8678bb_1518564028828_0.8371771239180563"},"_hasShrinkwrap":false},"0.9.0-alpha.83c48293":{"name":"@syncano/cli","version":"0.9.0-alpha.83c48293","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.83c48293","@syncano/template-project-empty":"0.9.0-alpha.83c48293","@syncano/template-project-hello":"0.9.0-alpha.83c48293","@syncano/template-socket-es6":"0.9.0-alpha.83c48293","@syncano/template-socket-vanilla":"0.9.0-alpha.83c48293","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.83c48293","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.83c48293","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-4YMCBKEEWBZOw8q6a6xDBbiAIwRuC6AZBah6HslWxpqvWoJl6S0SOSJ0aKg8WOK8HWSPKFifSHW3tMpzLcFQ5g==","shasum":"ab5b81e3c62c62f3e11fbff5f1f4b2c190bdaf83","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.83c48293.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDcca2OA48G+jvvZPQrrkQxVHdiH7oN4f97TRkdPGNgAIhAIiklp1dIltoCrz+IXjnCHvpYWv1NTregCFhKd0NNgsH"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.83c48293_1518599168645_0.7932221899584779"},"_hasShrinkwrap":false},"0.9.0-alpha.ad9d0189":{"name":"@syncano/cli","version":"0.9.0-alpha.ad9d0189","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.ad9d0189","@syncano/template-project-empty":"0.9.0-alpha.ad9d0189","@syncano/template-project-hello":"0.9.0-alpha.ad9d0189","@syncano/template-socket-es6":"0.9.0-alpha.ad9d0189","@syncano/template-socket-vanilla":"0.9.0-alpha.ad9d0189","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.ad9d0189","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.ad9d0189","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-QOUUxVlLyC36ZADt54Bg5U3bj6JhPWkBwSCF+hmfwU7LR5ctHIzGFy00zwbrSnKmxjVnmJjoLrsJNYHcb6gRSA==","shasum":"fae29a75822e51ed6b67ad8e5554ff303af52265","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.ad9d0189.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAgaM4cgGIZrea1ufWMy0YSmELoJOxv9upeS6w2rd1nOAiBdWb8dMlPh9yNNQnwEX43Yn5RjK9QPvTNaK+uHI4Jb+g=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.ad9d0189_1518601559174_0.40051099217159947"},"_hasShrinkwrap":false},"0.9.0-alpha.7454cfea":{"name":"@syncano/cli","version":"0.9.0-alpha.7454cfea","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.7454cfea","@syncano/template-project-empty":"0.9.0-alpha.7454cfea","@syncano/template-project-hello":"0.9.0-alpha.7454cfea","@syncano/template-socket-es6":"0.9.0-alpha.7454cfea","@syncano/template-socket-vanilla":"0.9.0-alpha.7454cfea","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.7454cfea","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.7454cfea","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-SHYrR3PBLWhXqmgFncMiAWelJHyGs0QQq+06JrfRqcDEGypzURefbHRVtfFT757l2XmTcMlKNE4yYCzsTsKONQ==","shasum":"965329438d55da7cea238f79c0abdf95cb46f081","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.7454cfea.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZiid7grhDFSfUiXH6n75neXAvh38IOpnGfrqM+sHHYAIgVcm5k47ubVN6KgOCZ9KTQ86M4ydJJl5BvagR6VSes6A="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.7454cfea_1518602670709_0.613557660003597"},"_hasShrinkwrap":false},"0.9.0-alpha.3df664f0":{"name":"@syncano/cli","version":"0.9.0-alpha.3df664f0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.3df664f0","@syncano/template-project-empty":"0.9.0-alpha.3df664f0","@syncano/template-project-hello":"0.9.0-alpha.3df664f0","@syncano/template-socket-es6":"0.9.0-alpha.3df664f0","@syncano/template-socket-vanilla":"0.9.0-alpha.3df664f0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.3df664f0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.3df664f0","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-7PWALzZKAO5CLmenCJUwesWJUdR1kb7jg5f/gc5hoVy6zGc84AS3Xblfa+aBcKfVwL/p81HBfWTQbx2Seikz6A==","shasum":"197538721c12ff24bcb22c90af39276f97e673e0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.3df664f0.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICClO/7mQCVCWzaDM0/ly5Ea6mDgk0WMS4Y4msxT2O3fAiEA8/9wFPQEw+6l2hRHcyPPsVtc/vI9VVp+BPFRubnbYSA="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.3df664f0_1518605953722_0.2525838054347067"},"_hasShrinkwrap":false},"0.9.0-alpha.136f03a2":{"name":"@syncano/cli","version":"0.9.0-alpha.136f03a2","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.136f03a2","@syncano/template-project-empty":"0.9.0-alpha.136f03a2","@syncano/template-project-hello":"0.9.0-alpha.136f03a2","@syncano/template-socket-es6":"0.9.0-alpha.136f03a2","@syncano/template-socket-vanilla":"0.9.0-alpha.136f03a2","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.136f03a2","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.136f03a2","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-GR9gNnPpVNJRjobQAOFqRnHCanDeuz3PIwFMqNMC92RJkBRtQoJAjonePR5uzne4Cm3InMQiKJ2r3CyT6Qyuyg==","shasum":"1bd2efdc9d5ee37df8c6e5761c9474e16a5b9d64","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.136f03a2.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWxAasNWBKU+0bJ3gvsTD3GVoMyAYZ42w8SIV4ATrOJgIgJjap4r+KiJZN+RVfuxqbjt1TuWWu3Jrj4AdOnaeO1dU="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.136f03a2_1518607637089_0.5845345542080229"},"_hasShrinkwrap":false},"0.9.0-alpha.0cb54944":{"name":"@syncano/cli","version":"0.9.0-alpha.0cb54944","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.0cb54944","@syncano/template-project-empty":"0.9.0-alpha.0cb54944","@syncano/template-project-hello":"0.9.0-alpha.0cb54944","@syncano/template-socket-es6":"0.9.0-alpha.0cb54944","@syncano/template-socket-vanilla":"0.9.0-alpha.0cb54944","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.0cb54944","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.0cb54944","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/vsTxMaWrmUEzIBtOr/RevUxN4iGn365nmjLjnF+CVV8SeHklmWqBCrxvawxhhEcWaGUHkk7HthlHo9zf4NQDw==","shasum":"67c6df3559cd0ece1c1edbfdcdb69af1f005837d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.0cb54944.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDwJutHrh25isFFOnpwazCfYgEfF2+uiuqm2S99atEdkAiBwP3eWRb7lnVC8YEeR2jDTo6LO/wI4RRp+m/5S/nc8KQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.0cb54944_1518609322332_0.6590582259625144"},"_hasShrinkwrap":false},"0.9.0-alpha.e6a8aae4":{"name":"@syncano/cli","version":"0.9.0-alpha.e6a8aae4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.e6a8aae4","@syncano/template-project-empty":"0.9.0-alpha.e6a8aae4","@syncano/template-project-hello":"0.9.0-alpha.e6a8aae4","@syncano/template-socket-es6":"0.9.0-alpha.e6a8aae4","@syncano/template-socket-vanilla":"0.9.0-alpha.e6a8aae4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.e6a8aae4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.e6a8aae4","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ZP5rvANECWi+hdPQz+dNZoNdQR1M12GI9zWB22Lrvluh2nK+Dg+p+I/6OMNUPjfHl6QcDibTwYG2YcDQ48Atgg==","shasum":"5cf84926fb80f91246425ed3000299135735e80c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.e6a8aae4.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFdRKbewSy291bNLWGU0DmmGPxN6aK0rJHRtPpDjCR6YAiEAiFWLB/N3t4OivOkBwc2iSmr3pKybjljCd0xk/ej8WFc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.e6a8aae4_1518617663402_0.8508414110408731"},"_hasShrinkwrap":false},"0.9.0-alpha.a6cfda17":{"name":"@syncano/cli","version":"0.9.0-alpha.a6cfda17","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.a6cfda17","@syncano/template-project-empty":"0.9.0-alpha.a6cfda17","@syncano/template-project-hello":"0.9.0-alpha.a6cfda17","@syncano/template-socket-es6":"0.9.0-alpha.a6cfda17","@syncano/template-socket-vanilla":"0.9.0-alpha.a6cfda17","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.a6cfda17","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.a6cfda17","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-c6CY2zPrH1ODzOwNICmmpH28vBWEBrkEyeFnv+KkkKCnC7w3EOpU7lTpXTFLfdvxge4bA5gX+Xa/OGQY6bw+rg==","shasum":"d9ebdbccbe3d6f4684ff4ed2045a84f9080c094f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.a6cfda17.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjIE9jyu2VAx5UOBbUkfbI1Y22Fc3sMC1a7XoKwqcylAIhANUZfmdShRyOa5EHhhW8miqImCNKWstRa1Y9mb7a61gP"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.a6cfda17_1518622429984_0.17596566136104475"},"_hasShrinkwrap":false},"0.9.0-alpha.726c0aa1":{"name":"@syncano/cli","version":"0.9.0-alpha.726c0aa1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.726c0aa1","@syncano/template-project-empty":"0.9.0-alpha.726c0aa1","@syncano/template-project-hello":"0.9.0-alpha.726c0aa1","@syncano/template-socket-es6":"0.9.0-alpha.726c0aa1","@syncano/template-socket-vanilla":"0.9.0-alpha.726c0aa1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.726c0aa1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.726c0aa1","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-vyq1sFtLvHeG7CgtYiw1F0FUObspyDFldvFds6NpNsxnO230VQtfgYnHiVDbQaqC4X40tQ3e6+/4mk+DscoT0g==","shasum":"455691e6824037a328aea147ebe942ada6cfc17f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.726c0aa1.tgz","fileCount":205,"unpackedSize":894787,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPnxjkHYJ7yTf5VebXqSzEAN9ibPyVpunMdFk46/eAogIhANAa7hiEtgDmpqPb4hCCn2ta4w/t/dJ19PEkmoYhBhU6"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.726c0aa1_1518729150558_0.11917959924281019"},"_hasShrinkwrap":false},"0.9.0-alpha.b41abc92":{"name":"@syncano/cli","version":"0.9.0-alpha.b41abc92","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.b41abc92","@syncano/template-project-empty":"0.9.0-alpha.b41abc92","@syncano/template-project-hello":"0.9.0-alpha.b41abc92","@syncano/template-socket-es6":"0.9.0-alpha.b41abc92","@syncano/template-socket-vanilla":"0.9.0-alpha.b41abc92","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.b41abc92","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.b41abc92","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-cGz3hnhZpfN09LMwYmUhl8DkApAMs1WWzGtJFPjdR2lBnAXBSnbOeGX2BGyfNSBl5itDc/uP1ii02lnpCANtUg==","shasum":"220676946744e2c33978b5276895f48c33da71c2","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.b41abc92.tgz","fileCount":205,"unpackedSize":891624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/2j8maq44V0xLeGOtjbPoWbC39IBzG9yel1eoV65oTAIgTPjuDwesLf+VlbOb+ZupERlIdku3BX4NuvSXrKAiiv8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.b41abc92_1518729732449_0.31262217439921214"},"_hasShrinkwrap":false},"0.9.0-alpha.0b472417":{"name":"@syncano/cli","version":"0.9.0-alpha.0b472417","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.0b472417","@syncano/template-project-empty":"0.9.0-alpha.0b472417","@syncano/template-project-hello":"0.9.0-alpha.0b472417","@syncano/template-socket-es6":"0.9.0-alpha.0b472417","@syncano/template-socket-vanilla":"0.9.0-alpha.0b472417","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.0b472417","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.0b472417","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-h0uWP5UWfvzLCV95xNRQHq1FJMrh0bdVbbchcT8Glw973gtxnnxm37HNkhL/vWOxwy+ghtWnYGVLy8DJzCvIfQ==","shasum":"b839bea610144d86d8e266f9a26d5a69eb5f7286","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.0b472417.tgz","fileCount":205,"unpackedSize":894787,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFNEwrmpy9GL3QVSaPwFs5qfZ7gvgDskZ+D/sljdBEGMAiEA7SCyFTiFMOfZJgX7uGBelhdc3Ze3r/4Lr0jroj5svm4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.0b472417_1518731121785_0.38566570083478124"},"_hasShrinkwrap":false},"0.9.0-alpha.0134f64c":{"name":"@syncano/cli","version":"0.9.0-alpha.0134f64c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.0134f64c","@syncano/template-project-empty":"0.9.0-alpha.0134f64c","@syncano/template-project-hello":"0.9.0-alpha.0134f64c","@syncano/template-socket-es6":"0.9.0-alpha.0134f64c","@syncano/template-socket-vanilla":"0.9.0-alpha.0134f64c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.0134f64c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.0134f64c","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IXo/i5AWWyP/d2AgMO3xf6PUJGEd42NOdBBROFk09tVa8vBK5j9rlbwrEv32y87OO6bQjJwVxa0yFvv1STeipA==","shasum":"a19b538f19e7c9f035f68bb723be2046a5b11d19","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.0134f64c.tgz","fileCount":205,"unpackedSize":894787,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHTKxOxCtm498SkUJmEIWkc1M8jtDrJPtYbjvxKlbwIJAiEA4gGnKYAOWB3o8unurw+q42LyZ9xwg+Hooj9/dxQbEu8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.0134f64c_1518740594833_0.9895468489059982"},"_hasShrinkwrap":false},"0.9.0-alpha.c35a41ac":{"name":"@syncano/cli","version":"0.9.0-alpha.c35a41ac","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.c35a41ac","@syncano/template-project-empty":"0.9.0-alpha.c35a41ac","@syncano/template-project-hello":"0.9.0-alpha.c35a41ac","@syncano/template-socket-es6":"0.9.0-alpha.c35a41ac","@syncano/template-socket-vanilla":"0.9.0-alpha.c35a41ac","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.c35a41ac","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.c35a41ac","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-uub9BxYjWvOyfaNAVeBCMgRZnGYoKho2FMkgcg2KhIgT+tM5f1tfuE6F7hFh9z5T0LlH4EGWx7nIHCtmt4VI5w==","shasum":"e4debe93050236d510a3e11775fd7e3023db41c7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.c35a41ac.tgz","fileCount":205,"unpackedSize":895346,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDiatw4RLyIThiVsKOYzlX4IFV5OzhOk/40aXAgH18l+AiEAtZ4IMcC/5nc0QIAfkbucafBT+0/MoGZJJ/HQWHiqWkw="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.c35a41ac_1518741113946_0.33819311324430146"},"_hasShrinkwrap":false},"0.9.0-alpha.85a10c7b":{"name":"@syncano/cli","version":"0.9.0-alpha.85a10c7b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.85a10c7b","@syncano/template-project-empty":"0.9.0-alpha.85a10c7b","@syncano/template-project-hello":"0.9.0-alpha.85a10c7b","@syncano/template-socket-es6":"0.9.0-alpha.85a10c7b","@syncano/template-socket-vanilla":"0.9.0-alpha.85a10c7b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.85a10c7b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.85a10c7b","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-GZBLJTX5cZmTqV9lniw+RItnukNgn5O+g5zhPBAn49KU0oGd2MlkI+CNfx4+O4/F5wT9iByvvIz7NI9xiyFTsw==","shasum":"6a0acc5d43ed787b53becb7c353766fff76eb5af","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.85a10c7b.tgz","fileCount":205,"unpackedSize":895346,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2EIIb6DOQ9QbdAYk/WZphVf1x1nR7X2+Hp2alWbWCtgIgBMwyz5Ojq+7JWcLjP34kd8yLhRGtuD0fgae4nzuQHOs="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.85a10c7b_1518787760041_0.10278135461114446"},"_hasShrinkwrap":false},"0.9.0-alpha.2029cd35":{"name":"@syncano/cli","version":"0.9.0-alpha.2029cd35","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.2029cd35","@syncano/template-project-empty":"0.9.0-alpha.2029cd35","@syncano/template-project-hello":"0.9.0-alpha.2029cd35","@syncano/template-socket-es6":"0.9.0-alpha.2029cd35","@syncano/template-socket-vanilla":"0.9.0-alpha.2029cd35","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.2029cd35","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.2029cd35","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Ba4Ek1R6f9ULDj+LUOGNUZh91F40JX+eumbZ5E6uLoBj4qax0DMqSycxRdd2QGB8VANsPRoVDPxSPqjfkBuhHg==","shasum":"8f2b19e059daa99be6eeea94bb6b7791a5d90598","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.2029cd35.tgz","fileCount":205,"unpackedSize":895913,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRwghNZx6u5D+S/7Aj2RQocmKGYoc/3PKbpJ1GbNc6wgIhANf4+FwP4oUY0qSeDi5OVRW3uzAYAygbZ5PKr4ZvDiLt"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.2029cd35_1518803041373_0.26985238381914933"},"_hasShrinkwrap":false},"0.9.0-alpha.ba067380":{"name":"@syncano/cli","version":"0.9.0-alpha.ba067380","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.ba067380","@syncano/template-project-empty":"0.9.0-alpha.ba067380","@syncano/template-project-hello":"0.9.0-alpha.ba067380","@syncano/template-socket-es6":"0.9.0-alpha.ba067380","@syncano/template-socket-vanilla":"0.9.0-alpha.ba067380","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.ba067380","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.ba067380","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ggp82RFyf+PcJklHhlJUtmw8tcl8RvQg6YgEBOA0w/9/Bkc7UKLeXrBytIwmZzAXlJH2yqVJ80/6JwyK73K80A==","shasum":"43f83a207df1060798d02e9bbe2e5dc60f700457","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.ba067380.tgz","fileCount":205,"unpackedSize":894593,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBjmt7RT7e08uo0y8v5vGS4HwVqN4ZMq0SwRJOD+bY/EAiEAlJjjf92mcJTgqxTlT9GERb653UTYas5ZLBdAcbcxHUg="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.ba067380_1518859383067_0.140539033130628"},"_hasShrinkwrap":false},"0.9.0-alpha.21374650":{"name":"@syncano/cli","version":"0.9.0-alpha.21374650","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.0-alpha.21374650","@syncano/template-project-empty":"0.9.0-alpha.21374650","@syncano/template-project-hello":"0.9.0-alpha.21374650","@syncano/template-socket-es6":"0.9.0-alpha.21374650","@syncano/template-socket-vanilla":"0.9.0-alpha.21374650","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.0-alpha.21374650","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.9.0-alpha.21374650","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-s86G/1+rs5xCv/ewNbTKlGidMsqP0Zhm/KolpF8wSWnw9Lt/vRrNY64mNxo54tCEqhFC947IvJdNCUasNDcNYw==","shasum":"81b322c5ebad4558c30fa5d40bd012939df75304","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.0-alpha.21374650.tgz","fileCount":205,"unpackedSize":894593,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDob+qqjoedlNfXNu61lErB9ZohuQi9eU4z5zVgGU+yjQIgB8oyQCybRcT+vBVLeU8KrQxwyS1/yKHCKLivLEDu83c="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.0-alpha.21374650_1518955444217_0.569318303474234"},"_hasShrinkwrap":false},"0.9.3":{"name":"@syncano/cli","version":"0.9.3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.9.3","@syncano/template-project-empty":"0.9.3","@syncano/template-project-hello":"0.9.3","@syncano/template-socket-es6":"0.9.3","@syncano/template-socket-vanilla":"0.9.3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.9.3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.9.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-zrEIseuOJY1xJX3Pl2yWMGHjbiGeWLp1gUVbUX0pMGiuuNn+8YO2YUJwfob9kmUyfI20kodZoRSj7xR25E9NaQ==","shasum":"2aac68dc3590c0d70bc8505f6fcf07231c71d4b0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.9.3.tgz","fileCount":226,"unpackedSize":1326086,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGWjts3FDhdWlkEIk7Buwmziz9eHKCq5rcllhx8FjRKfAiEAoEeRhOPGDBQOdCLyFMk/lzFI9w9v3c7M6JzeLrLhOoc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.9.3_1519055987543_0.6998106819270931"},"_hasShrinkwrap":false},"0.10.0-alpha.2119ed73":{"name":"@syncano/cli","version":"0.10.0-alpha.2119ed73","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.2119ed73","@syncano/template-project-empty":"0.10.0-alpha.2119ed73","@syncano/template-project-hello":"0.10.0-alpha.2119ed73","@syncano/template-socket-es6":"0.10.0-alpha.2119ed73","@syncano/template-socket-vanilla":"0.10.0-alpha.2119ed73","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.2119ed73","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.2119ed73","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IanlpFyGTqH0idXMclaCiED7cjbGksxKtZBaMFCPGgwe2/kKkavdS4lETDdm36yO/FRpAaboftMn90165PMtuw==","shasum":"935ca022b8ba0828638d5cb29a482640f6552f56","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.2119ed73.tgz","fileCount":205,"unpackedSize":895406,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB208dN/Atmd4zKSqvlN7GppncFut6DNnwfXQAcfi9NoAiBbeHHO0you4+X8qGubDxEtMvd+jILRqwxL63t4Ug0vfA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.2119ed73_1519056004076_0.09205508931916029"},"_hasShrinkwrap":false},"0.10.0-alpha.07e04ec6":{"name":"@syncano/cli","version":"0.10.0-alpha.07e04ec6","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.07e04ec6","@syncano/template-project-empty":"0.10.0-alpha.07e04ec6","@syncano/template-project-hello":"0.10.0-alpha.07e04ec6","@syncano/template-socket-es6":"0.10.0-alpha.07e04ec6","@syncano/template-socket-vanilla":"0.10.0-alpha.07e04ec6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.07e04ec6","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.07e04ec6","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-OELx+pvfGF/Xmvb52VyaBQVlwyW2IwHHGmssrSMRUqhm1ryM+Gm2BX8+bK6Zyw9BTSPvxK3ItzHLTUFuglGoRw==","shasum":"62b61af88a39eee9aa534a4bdf3195eaa6f114c8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.07e04ec6.tgz","fileCount":205,"unpackedSize":895574,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGKzKNr8VpcYYB7QrOu+DePNj3hx/5uE/C0ZNVzoFYmGAiEAqKrrIFrcvDW7tSoZr2AW/y6oszmKlCUbMKb9SJ9Y4K0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.07e04ec6_1519056477115_0.13338279928679841"},"_hasShrinkwrap":false},"0.10.0-alpha.d7d1aa81":{"name":"@syncano/cli","version":"0.10.0-alpha.d7d1aa81","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.d7d1aa81","@syncano/template-project-empty":"0.10.0-alpha.d7d1aa81","@syncano/template-project-hello":"0.10.0-alpha.d7d1aa81","@syncano/template-socket-es6":"0.10.0-alpha.d7d1aa81","@syncano/template-socket-vanilla":"0.10.0-alpha.d7d1aa81","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.d7d1aa81","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.d7d1aa81","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IeQ1SvslndYlJtU2yGCK0FoQBXI6m2tKyO3c5UyQ9l0cqsFYIN+6un6MsjOYTj7cqoOJbE0RNi8GQh566BzKZA==","shasum":"e1ac54d89faa1efd2ea5dfeeb9d2c27bfcbd6d22","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.d7d1aa81.tgz","fileCount":205,"unpackedSize":895574,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCarSL3KwM1AOHTQ/dCqNjAYLEfj0sIBpMRcV/1S9UVKwIhAL6QoUq/XnroN0QkF/3Y8FS4cax/+mTtwjF3qIHk2ObK"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.d7d1aa81_1519061143104_0.4800485842119415"},"_hasShrinkwrap":false},"0.10.0-alpha.f21aa8b8":{"name":"@syncano/cli","version":"0.10.0-alpha.f21aa8b8","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.f21aa8b8","@syncano/template-project-empty":"0.10.0-alpha.f21aa8b8","@syncano/template-project-hello":"0.10.0-alpha.f21aa8b8","@syncano/template-socket-es6":"0.10.0-alpha.f21aa8b8","@syncano/template-socket-vanilla":"0.10.0-alpha.f21aa8b8","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.f21aa8b8","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.f21aa8b8","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-kiVfS5tLLuxhi4amBPaVXHoKOJubcs/4pUdKlzbgPbG/z8uAyL6O3EHioNNcfJm4WljqRhd8DIa3RTiYq/pMcQ==","shasum":"d4fc9706b33c80ffc094350b266a53573eeb03be","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.f21aa8b8.tgz","fileCount":205,"unpackedSize":895574,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGBpEXHBPiuO1mkyb9yLxwc9ChXcX/bespSfT/ol9nTRAiAQxkDjh/Cowtrjq0Dmc63keDfjS9W8LKzGxUBN2O8Axw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.f21aa8b8_1519064415954_0.20440855632181298"},"_hasShrinkwrap":false},"0.10.0-alpha.a070e6d0":{"name":"@syncano/cli","version":"0.10.0-alpha.a070e6d0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.a070e6d0","@syncano/template-project-empty":"0.10.0-alpha.a070e6d0","@syncano/template-project-hello":"0.10.0-alpha.a070e6d0","@syncano/template-socket-es6":"0.10.0-alpha.a070e6d0","@syncano/template-socket-vanilla":"0.10.0-alpha.a070e6d0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.a070e6d0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.a070e6d0","_npmVersion":"5.6.0","_nodeVersion":"9.6.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-bc6gKZ9d0UJ3lG37jJ6BOWZ9Qg7opX0krsgUaONWYHFEPT0nX3E8N9D8nzXtLX5c8+qPKiu5p0BRntcEhOd+gQ==","shasum":"85cc3b915bc5101ee32cc42373712dfcc2f3180e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.a070e6d0.tgz","fileCount":183,"unpackedSize":859866,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICZVilDWhcgm7EOGwtGe0WdckaCwQbB4sFmJjekWUPNOAiEA22GlmhNi3sq7MdHsa/Pq1kdlJWdzQXJT6mrL6Cy2z/Q="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.a070e6d0_1519651065332_0.22863389525454347"},"_hasShrinkwrap":false},"0.10.0-alpha.a802431a":{"name":"@syncano/cli","version":"0.10.0-alpha.a802431a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.a802431a","@syncano/template-project-empty":"0.10.0-alpha.a802431a","@syncano/template-project-hello":"0.10.0-alpha.a802431a","@syncano/template-socket-es6":"0.10.0-alpha.a802431a","@syncano/template-socket-vanilla":"0.10.0-alpha.a802431a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.a802431a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.a802431a","_npmVersion":"5.6.0","_nodeVersion":"9.6.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-QIKw8wBNymZYJVBrS4++dAVsNqJqSgueP30zUx1Cl3hv/ZzoQBDLTqF1L46khhyVghBE6ou5RzdHfshBr1YTSw==","shasum":"cfb19a320ab72d1c64be33eb3b1ec4907230cd1b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.a802431a.tgz","fileCount":183,"unpackedSize":859866,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlHUwlhVRHNUo//6di6EprEXsBCvdvRYDp4khRk40hIQIgIbwe3DKX7bxqzfDK8b75ZzMP/Xf4T1JDe9TUqLqF6ac="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.a802431a_1519652524376_0.4957091552196369"},"_hasShrinkwrap":false},"0.10.0-alpha.ada8c669":{"name":"@syncano/cli","version":"0.10.0-alpha.ada8c669","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.ada8c669","@syncano/template-project-empty":"0.10.0-alpha.ada8c669","@syncano/template-project-hello":"0.10.0-alpha.ada8c669","@syncano/template-socket-es6":"0.10.0-alpha.ada8c669","@syncano/template-socket-vanilla":"0.10.0-alpha.ada8c669","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.ada8c669","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.ada8c669","_npmVersion":"5.6.0","_nodeVersion":"9.6.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-yLz8lGrmziAcEK3auOHBxP8SQ/uHDlhTRivDVzouDr4j+KjQuZdTAEqIyt2a1jADpUzUQuE0VwPH5GMfvEqORQ==","shasum":"e20bedf8e419d7ce6eea61b9aae99b7f55f1205b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.ada8c669.tgz","fileCount":183,"unpackedSize":861517,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC1Z19IVWCd1IjUQw1oI3UHh1xWbndEd0fMg4sZk1nQgAiEAttlqA80CdNORgmidx+QzIcw4YNGwdNh/Xc7lLu8oi70="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.ada8c669_1519678796980_0.5401996625799468"},"_hasShrinkwrap":false},"0.10.0-alpha.cf8ad30e":{"name":"@syncano/cli","version":"0.10.0-alpha.cf8ad30e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.cf8ad30e","@syncano/template-project-empty":"0.10.0-alpha.cf8ad30e","@syncano/template-project-hello":"0.10.0-alpha.cf8ad30e","@syncano/template-socket-es6":"0.10.0-alpha.cf8ad30e","@syncano/template-socket-vanilla":"0.10.0-alpha.cf8ad30e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.cf8ad30e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.cf8ad30e","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-icRREFFL3EXuXrXRoDeU76lKKunQPzlTAUZUU7nugxN+D9D+Gss4Y/0FkSsMWE8QbrJhLLGcfrfH92pMOYEVbw==","shasum":"d0f6c3ad79c1bbb51b9b6dcdc11ea394b5455076","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.cf8ad30e.tgz","fileCount":183,"unpackedSize":861517,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDczQA9Rtk7Ux/cOD+OtQZzPPL+Qluzpiw7VEF9yFQnMwIhANdQK4ampSUdXT0ccogDWffjt5jnU3EWHj67604tfxdU"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.cf8ad30e_1520513535052_0.6893663265784358"},"_hasShrinkwrap":false},"0.10.0-alpha.6f499666":{"name":"@syncano/cli","version":"0.10.0-alpha.6f499666","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0-alpha.6f499666","@syncano/template-project-empty":"0.10.0-alpha.6f499666","@syncano/template-project-hello":"0.10.0-alpha.6f499666","@syncano/template-socket-es6":"0.10.0-alpha.6f499666","@syncano/template-socket-vanilla":"0.10.0-alpha.6f499666","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0-alpha.6f499666","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.10.0-alpha.6f499666","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-oEqa6JItjZCkpuLZBu2RxkHLW5SadXoTrIlFrwHWgFnVCn3ySC63BEjDQHuw8mMZF3/PtaDinoT/j7pMglb2FQ==","shasum":"0499bfd46a02c7d8da17cd56abbcaaa45dc2c11b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0-alpha.6f499666.tgz","fileCount":183,"unpackedSize":861517,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIACgk7Jza5dNlKXYHpTG/rmvg6YD+LYYkIMWrw0KMHHcAiEAvx3AIr4UBfaaOt4MRUIlsZzYOHq8bi6f8NWuuWgizpg="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0-alpha.6f499666_1520523340687_0.08205388527000612"},"_hasShrinkwrap":false},"0.10.0":{"name":"@syncano/cli","version":"0.10.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.10.0","@syncano/template-project-empty":"0.9.3","@syncano/template-project-hello":"0.10.0","@syncano/template-socket-es6":"0.10.0","@syncano/template-socket-es6-validate":"0.10.0","@syncano/template-socket-vanilla":"0.9.3","@syncano/validate":"0.10.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.10.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"precommit":"npm run lint","prepush":"npm run lint && npm run test:unit","prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.10.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-qUUV3YiA4Q4OBQ6VksfkItPHc2ko45oMMF65/4i4ddPW6FNQsj3WH3IXP+NeiY6Pciu87enJiYdn+I0Bw30ddg==","shasum":"99f079891291f9ef5dcb3690c7454710dde8dfbd","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.10.0.tgz","fileCount":185,"unpackedSize":873493,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe29oF8GVC6HS06+4bnuReqnG/8dvdR/UaBwDzBEEAUwIgGAuHdPDxBWTGUo4K1PwALbfvSo6jKNQ+CzCwGolGMdM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.10.0_1520534934713_0.6881144431732875"},"_hasShrinkwrap":false},"0.11.0-alpha.2a1bf79e":{"name":"@syncano/cli","version":"0.11.0-alpha.2a1bf79e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.2a1bf79e","@syncano/template-project-empty":"0.11.0-alpha.2a1bf79e","@syncano/template-project-hello":"0.11.0-alpha.2a1bf79e","@syncano/template-socket-es6":"0.11.0-alpha.2a1bf79e","@syncano/template-socket-es6-validate":"0.11.0-alpha.2a1bf79e","@syncano/template-socket-vanilla":"0.11.0-alpha.2a1bf79e","@syncano/validate":"0.11.0-alpha.2a1bf79e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.2a1bf79e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","husky":"^0.14.3","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.2a1bf79e","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-vYFJd5J7SKKjB8kX33dpg9eYfaNDgHz96uZcWdAZN/aWlouwR3cMPLnlV2XiHSgj/6ZpGu63yfyorU4IC9C9Kg==","shasum":"3663c35f899f5d289e64731f9d3a23128e889359","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.2a1bf79e.tgz","fileCount":185,"unpackedSize":873545,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDS2PUSqP/hBvK0tWm5DD1ZqGQU0ugIwGOwoS8JVZiLdgIgfFYqnWOiutxVXzBEbPFMYI8zsArD1emmTghoOE0RA1o="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.2a1bf79e_1520538224368_0.44968737293111816"},"_hasShrinkwrap":false},"0.11.0-alpha.341516bc":{"name":"@syncano/cli","version":"0.11.0-alpha.341516bc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.341516bc","@syncano/template-project-empty":"0.11.0-alpha.341516bc","@syncano/template-project-hello":"0.11.0-alpha.341516bc","@syncano/template-socket-es6":"0.11.0-alpha.341516bc","@syncano/template-socket-es6-validate":"0.11.0-alpha.341516bc","@syncano/template-socket-vanilla":"0.11.0-alpha.341516bc","@syncano/validate":"0.11.0-alpha.341516bc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.341516bc","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.341516bc","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-mmKcadE/kR/od1o3tLPDoG2CRDmnWa2FgZKnE1yD+1PhJxMie6vcPQe//tZk9fLLFhxSy6Jt+xPPQPPvY6Pp/A==","shasum":"9f5db8c492881d869fd41104de56c55c7f258aec","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.341516bc.tgz","fileCount":183,"unpackedSize":865294,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBTKwL9z7cSdvMTJ0oW8+E5+flLpGjPZfETG3Kx2k+0vAiEA5smEXXZXB0dutA6MAz2Ku7YLGh3AM/Bq+yA9nxoHR/A="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.341516bc_1520551105212_0.0798595016322039"},"_hasShrinkwrap":false},"0.11.0-alpha.370a2ccf":{"name":"@syncano/cli","version":"0.11.0-alpha.370a2ccf","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.370a2ccf","@syncano/template-project-empty":"0.11.0-alpha.370a2ccf","@syncano/template-project-hello":"0.11.0-alpha.370a2ccf","@syncano/template-socket-es6":"0.11.0-alpha.370a2ccf","@syncano/template-socket-es6-validate":"0.11.0-alpha.370a2ccf","@syncano/template-socket-vanilla":"0.11.0-alpha.370a2ccf","@syncano/validate":"0.11.0-alpha.370a2ccf","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.370a2ccf","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.370a2ccf","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-8P3hMT31XkuYrbK+WdpELQ/L2r8sF1mNx556mnhbAdACoBsb9CXgEybjuAZDq8BzoMZABwwxq0XLsVuzmXC76Q==","shasum":"7a7fb74c995ae3d8ec68a6080bd3f14313e6e37c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.370a2ccf.tgz","fileCount":183,"unpackedSize":865294,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAa6yL1tqLXWX7xUHgHOYvXH8VsXqk/1BpdNwvY6iymcAiBLbl5QwbhmofeshKcGo+8vitVokYkwFKZw2ACyde844A=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.370a2ccf_1520552668866_0.5433861732464504"},"_hasShrinkwrap":false},"0.11.0-alpha.154d2634":{"name":"@syncano/cli","version":"0.11.0-alpha.154d2634","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.154d2634","@syncano/template-project-empty":"0.11.0-alpha.154d2634","@syncano/template-project-hello":"0.11.0-alpha.154d2634","@syncano/template-socket-es6":"0.11.0-alpha.154d2634","@syncano/template-socket-es6-validate":"0.11.0-alpha.154d2634","@syncano/template-socket-vanilla":"0.11.0-alpha.154d2634","@syncano/validate":"0.11.0-alpha.154d2634","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.154d2634","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.154d2634","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-vrpRovWUmc7k8JsQEGUYomTwubGGxqQx04M8RI0ECRAPE6TjfULd8yZriF6beqKsdPP78T/BDm+h9+S3FYfwGw==","shasum":"dbbabad50b6b1850afd0e1815cbc221d74d3e7d0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.154d2634.tgz","fileCount":183,"unpackedSize":865294,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHPRQuDJZ0jZbmzKAc81oqNhh/3/xGbmZ1g1y1a4ZcT0AiAE+rW2SX6ZjLwyB8iD/UKqf2v9Iw0y8DKnWx0MQ6CGgA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.154d2634_1520590116662_0.25410323640798516"},"_hasShrinkwrap":false},"0.11.0-alpha.e3741f53":{"name":"@syncano/cli","version":"0.11.0-alpha.e3741f53","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.e3741f53","@syncano/template-project-empty":"0.11.0-alpha.e3741f53","@syncano/template-project-hello":"0.11.0-alpha.e3741f53","@syncano/template-socket-es6":"0.11.0-alpha.e3741f53","@syncano/template-socket-es6-validate":"0.11.0-alpha.e3741f53","@syncano/template-socket-vanilla":"0.11.0-alpha.e3741f53","@syncano/validate":"0.11.0-alpha.e3741f53","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.e3741f53","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.e3741f53","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-+JDbujH/RVo1bp9tnticBGlAWef8a2OsVQBU0s/qEqaTlCHHXBW9TNui0chr0PRT+EeHKW6KFOtP6WbZ62R/gg==","shasum":"fcdc95d229830313b10ef108b05ea3833ef8e59d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.e3741f53.tgz","fileCount":183,"unpackedSize":866867,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH/QiF8B8tcFJF9sx/uivrpoebDQMikbBNTVGonbZxhwAiEA5H0pBZ55zBn49AZ8MCw+rDb+T3nzAlD+J2A+O4/2t/8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.e3741f53_1520623938616_0.9016862213063832"},"_hasShrinkwrap":false},"0.11.0-alpha.4f8885a3":{"name":"@syncano/cli","version":"0.11.0-alpha.4f8885a3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.4f8885a3","@syncano/template-project-empty":"0.11.0-alpha.4f8885a3","@syncano/template-project-hello":"0.11.0-alpha.4f8885a3","@syncano/template-socket-es6":"0.11.0-alpha.4f8885a3","@syncano/template-socket-es6-validate":"0.11.0-alpha.4f8885a3","@syncano/template-socket-vanilla":"0.11.0-alpha.4f8885a3","@syncano/validate":"0.11.0-alpha.4f8885a3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.4f8885a3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.4f8885a3","_npmVersion":"5.6.0","_nodeVersion":"9.7.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Ci3+hNdXvt+Fa/X/QaNXowop3LMN1vQXRelX/fqfpukuWCaXhcoX18MXUM+RZW5vYe5I0fTuJ/z8Vtr8FlkJIg==","shasum":"5a22d64e097ce04d1ccc23280a6d31f6fb4bd602","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.4f8885a3.tgz","fileCount":183,"unpackedSize":866867,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHRsf98hT0lgKwvTwMBsGuCif6KrXxnZO54/0HvUafhAAiEA7MYB9keJ7a0/Kb4PEIhALALqv7hJhPEFt8NW/w0IWX8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.4f8885a3_1520802914604_0.5691088264042317"},"_hasShrinkwrap":false},"0.11.0-alpha.8d01cc73":{"name":"@syncano/cli","version":"0.11.0-alpha.8d01cc73","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.8d01cc73","@syncano/template-project-empty":"0.11.0-alpha.8d01cc73","@syncano/template-project-hello":"0.11.0-alpha.8d01cc73","@syncano/template-socket-es6":"0.11.0-alpha.8d01cc73","@syncano/template-socket-es6-validate":"0.11.0-alpha.8d01cc73","@syncano/template-socket-vanilla":"0.11.0-alpha.8d01cc73","@syncano/validate":"0.11.0-alpha.8d01cc73","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.8d01cc73","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.8d01cc73","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Hh8fFdNbdXFisE+twHhXQsplaM/Z1hlvD8nDI/srQ+dA5OwiV7BhJKlEVBBMh1RX7LkOxgE6OPTkulc0yxvz2A==","shasum":"356afee8e8f41a7953ceb14331bdd6de4c9bf90e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.8d01cc73.tgz","fileCount":183,"unpackedSize":866867,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFCfjzJ8htI58dk7w9kpQUSWnRHFYEDez5CVlcA1cMyWAiEAzCN8BnDEktQTYZAaB6V9D4SUBU0nhy2M9BQaPcpdwfM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.8d01cc73_1521234705280_0.6840815835020795"},"_hasShrinkwrap":false},"0.11.0-alpha.0bde1d63":{"name":"@syncano/cli","version":"0.11.0-alpha.0bde1d63","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0-alpha.0bde1d63","@syncano/template-project-empty":"0.11.0-alpha.0bde1d63","@syncano/template-project-hello":"0.11.0-alpha.0bde1d63","@syncano/template-socket-es6":"0.11.0-alpha.0bde1d63","@syncano/template-socket-es6-validate":"0.11.0-alpha.0bde1d63","@syncano/template-socket-vanilla":"0.11.0-alpha.0bde1d63","@syncano/validate":"0.11.0-alpha.0bde1d63","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0-alpha.0bde1d63","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.11.0-alpha.0bde1d63","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Fm3KhGOHKBzmMeVcSwp10tVBbaWmtzDdvs5zKgaSprvaPsvPdKXQQwOrViaV/2UGihFjH6cqRWOyxeVht2t6Tw==","shasum":"c716217cc40d2cde7a1d8367613c31508d2bd623","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0-alpha.0bde1d63.tgz","fileCount":183,"unpackedSize":866867,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDa1EoSZCex82YBPYxVomuVRpaYrhvfDTlvSrlGUFVUxgIgeRqlv93j/xpqJXyv+JfJ6Xrz+9x6yVS9GIHJsYqdhcw="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0-alpha.0bde1d63_1521236023528_0.2945595495541746"},"_hasShrinkwrap":false},"0.11.0":{"name":"@syncano/cli","version":"0.11.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0","@syncano/template-project-empty":"0.11.0","@syncano/template-project-hello":"0.11.0","@syncano/template-socket-es6":"0.11.0","@syncano/template-socket-es6-validate":"0.11.0","@syncano/template-socket-vanilla":"0.11.0","@syncano/validate":"0.11.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.11.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-3py1J2G+WMf54WhGhyaEN8Q1zGTRJCr4LODSk6/SRUR/u4CKnq5rvx2nM+F2P4Yj/0asZaElz+QNFwhwuuhUbg==","shasum":"20b51875477c9dc7018dcccfb5fccd00bcefb961","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.0.tgz","fileCount":185,"unpackedSize":875175,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEu6ec2zjALElAPn5M3c/NFehzAAdCXS2vlIr3mAF9qqAiEA7Fp0X8bTImTO4OR96e7qdtEaLw0btv7c+m7NcsB5wlM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.0_1521273985670_0.45119958583862685"},"_hasShrinkwrap":false},"0.12.0-alpha.19aefbd7":{"name":"@syncano/cli","version":"0.12.0-alpha.19aefbd7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.19aefbd7","@syncano/template-project-empty":"0.12.0-alpha.19aefbd7","@syncano/template-project-hello":"0.12.0-alpha.19aefbd7","@syncano/template-socket-es6":"0.12.0-alpha.19aefbd7","@syncano/template-socket-es6-validate":"0.12.0-alpha.19aefbd7","@syncano/template-socket-vanilla":"0.12.0-alpha.19aefbd7","@syncano/validate":"0.12.0-alpha.19aefbd7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.19aefbd7","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.19aefbd7","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ygO6yaAO8n/PLW7mpg/x8SWJz9Xvf/CV9vrnQwYPlRwo4jDQJ0BBy3/twH9ZALZkn/GhI9rFi388Aj+fwDYh0g==","shasum":"a7114b88bd87d2304030d724483b36f162022d07","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.19aefbd7.tgz","fileCount":183,"unpackedSize":867083,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9lTO+DR8I8fWiFuHihK0BMQOFXNOQrQpkw0tkVktSzwIhAKXvMQllIezlG8hsyEciQbvqrDbBdksceUOVgCjSlYas"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.19aefbd7_1521275497773_0.4039765087973384"},"_hasShrinkwrap":false},"0.12.0-alpha.0e863359":{"name":"@syncano/cli","version":"0.12.0-alpha.0e863359","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.0e863359","@syncano/template-project-empty":"0.12.0-alpha.0e863359","@syncano/template-project-hello":"0.12.0-alpha.0e863359","@syncano/template-socket-es6":"0.12.0-alpha.0e863359","@syncano/template-socket-es6-validate":"0.12.0-alpha.0e863359","@syncano/template-socket-vanilla":"0.12.0-alpha.0e863359","@syncano/validate":"0.12.0-alpha.0e863359","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.0e863359","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.0e863359","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Py7wy+MccCpVFo0FHoG3++t/rDHUWiBoSfH5u/sAV3U7TSlmgdxdqoi6aszIFpymXr5IcMA9rExRIaVbDCt+xQ==","shasum":"a0b4703e18bcf0f2d09fd8fda737cf83c03809a7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.0e863359.tgz","fileCount":183,"unpackedSize":867262,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfIgQexQBkVDs0FnRLF06a4w8BIutRyZGWrwuWnKlFXAIgIy+PSYJfakrwDH/NCywFmuf5NjO7BjngyYMSmc5IGn8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.0e863359_1521295471020_0.9754177911194131"},"_hasShrinkwrap":false},"0.12.0-alpha.000fcc90":{"name":"@syncano/cli","version":"0.12.0-alpha.000fcc90","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.000fcc90","@syncano/template-project-empty":"0.12.0-alpha.000fcc90","@syncano/template-project-hello":"0.12.0-alpha.000fcc90","@syncano/template-socket-es6":"0.12.0-alpha.000fcc90","@syncano/template-socket-es6-validate":"0.12.0-alpha.000fcc90","@syncano/template-socket-vanilla":"0.12.0-alpha.000fcc90","@syncano/validate":"0.12.0-alpha.000fcc90","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.000fcc90","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.000fcc90","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-A6q2u8RPnyd4Htb9VvGKAfGy7abYlyIf3/8oDCCQ3JKfNUCI9CFusVnaErsRfpW76rJ7+0FRPldkaI+om7Jawg==","shasum":"48c6202b48210175d444a176a5c2d4a569080812","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.000fcc90.tgz","fileCount":183,"unpackedSize":867262,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkrFsHBziTJme8E2d2r8o80acV7UmaH/GTYLfHpMtdLAIhAIfB6JG6cYxorn3+uSF9HNAUMQKta7Gh8MpuCi25rB7R"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.000fcc90_1521300110961_0.49381609415273564"},"_hasShrinkwrap":false},"0.12.0-alpha.a517577a":{"name":"@syncano/cli","version":"0.12.0-alpha.a517577a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.a517577a","@syncano/template-project-empty":"0.12.0-alpha.a517577a","@syncano/template-project-hello":"0.12.0-alpha.a517577a","@syncano/template-socket-es6":"0.12.0-alpha.a517577a","@syncano/template-socket-es6-validate":"0.12.0-alpha.a517577a","@syncano/template-socket-vanilla":"0.12.0-alpha.a517577a","@syncano/validate":"0.12.0-alpha.a517577a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.a517577a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.a517577a","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-3j7QPkHmHW1c+0ghfSKOka027VFpfoIJPSX4BcuL5V9sY+uByIfLxoonKuZCIGj/+6xFf6zPQ2+N+tbBeVO9Jg==","shasum":"349004f449a0811625d9ea3aa6fb818eed07a7b3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.a517577a.tgz","fileCount":183,"unpackedSize":868208,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHALyxfg4Zblw2sM4IEOcjdarHbIunZdMbLUH3hPxidLAiEAgrlBEWswe/o8KnSfsb+lHcjhp2tACzvDl6xBGpCDKeg="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.a517577a_1521548502529_0.6256158414177959"},"_hasShrinkwrap":false},"0.12.0-alpha.cb34c83f":{"name":"@syncano/cli","version":"0.12.0-alpha.cb34c83f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.cb34c83f","@syncano/template-project-empty":"0.12.0-alpha.cb34c83f","@syncano/template-project-hello":"0.12.0-alpha.cb34c83f","@syncano/template-socket-es6":"0.12.0-alpha.cb34c83f","@syncano/template-socket-es6-validate":"0.12.0-alpha.cb34c83f","@syncano/template-socket-vanilla":"0.12.0-alpha.cb34c83f","@syncano/validate":"0.12.0-alpha.cb34c83f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.cb34c83f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.cb34c83f","_npmVersion":"5.6.0","_nodeVersion":"9.8.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-KB0qjlaR5HaijAaULq73z8w7ffkzvDkC63kCcVgfPye2OfSAERv1T+upOYLQJA2vPPyORAMvB8uy/DRIzPROrg==","shasum":"479ebb95fa20e8c079ac887421ffb4fd12d6ed11","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.cb34c83f.tgz","fileCount":183,"unpackedSize":868208,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaVVE8LI93HAwvyBPkDSpEsPTTvDntNKz4IlreEVACuwIhAJRhHNKqd/4A8yZHIa1Eq6vXoDuS4/caspzUZdiIJERS"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.cb34c83f_1521819201782_0.5237745816720016"},"_hasShrinkwrap":false},"0.12.0-alpha.7c8a6d7f":{"name":"@syncano/cli","version":"0.12.0-alpha.7c8a6d7f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.7c8a6d7f","@syncano/template-project-empty":"0.12.0-alpha.7c8a6d7f","@syncano/template-project-hello":"0.12.0-alpha.7c8a6d7f","@syncano/template-socket-es6":"0.12.0-alpha.7c8a6d7f","@syncano/template-socket-es6-validate":"0.12.0-alpha.7c8a6d7f","@syncano/template-socket-vanilla":"0.12.0-alpha.7c8a6d7f","@syncano/validate":"0.12.0-alpha.7c8a6d7f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.7c8a6d7f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.7c8a6d7f","_npmVersion":"5.6.0","_nodeVersion":"9.9.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-cf8zgvGiv8qk14HpKSe+5sUwZ7Mq/cdS/o/tEIm6BAw7xO7Tqt6bmhzaFD+z/y6aUqORHRotJYdJorbnDVLspQ==","shasum":"e5d5906e30494d4b8d4de659903162f314af9318","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.7c8a6d7f.tgz","fileCount":183,"unpackedSize":868208,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2flbzMnygBrKjl/UnwrIcXu6QePQzpQQ0SChUaWCndgIhAOUpcQBm8av6bUOcXam4367z1DsBDloDdSp5j/G62PMU"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.7c8a6d7f_1522410904898_0.4125084976436233"},"_hasShrinkwrap":false},"0.12.0-alpha.03ec3e0b":{"name":"@syncano/cli","version":"0.12.0-alpha.03ec3e0b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.03ec3e0b","@syncano/template-project-empty":"0.12.0-alpha.03ec3e0b","@syncano/template-project-hello":"0.12.0-alpha.03ec3e0b","@syncano/template-socket-es6":"0.12.0-alpha.03ec3e0b","@syncano/template-socket-es6-validate":"0.12.0-alpha.03ec3e0b","@syncano/template-socket-vanilla":"0.12.0-alpha.03ec3e0b","@syncano/validate":"0.12.0-alpha.03ec3e0b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.03ec3e0b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.03ec3e0b","_npmVersion":"5.6.0","_nodeVersion":"9.10.0","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-40PBJayR0EBubnf+Udhtor7w0EgqgttG0YFSc3Xs8I9X6TiGLhSH0MbGKa3f8l8kuEnw6TZ1VAkf5ceiLSLAZw==","shasum":"189bcb1a75edef3aeab72c5c4514cb9e02fc7bf5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.03ec3e0b.tgz","fileCount":183,"unpackedSize":868208,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9OcRjsFJ8dBk+JDGWElku2H/WI5JxRonXhE/ZPq2qBgIgepuDXSn1Fae8Gu7qvHGRAqEaE2m+8HJVy0b+lUnY2i4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.03ec3e0b_1522611092089_0.9853721649304099"},"_hasShrinkwrap":false},"0.12.0-alpha.2a64d24d":{"name":"@syncano/cli","version":"0.12.0-alpha.2a64d24d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.2a64d24d","@syncano/template-project-empty":"0.12.0-alpha.2a64d24d","@syncano/template-project-hello":"0.12.0-alpha.2a64d24d","@syncano/template-socket-es6":"0.12.0-alpha.2a64d24d","@syncano/template-socket-es6-validate":"0.12.0-alpha.2a64d24d","@syncano/template-socket-vanilla":"0.12.0-alpha.2a64d24d","@syncano/validate":"0.12.0-alpha.2a64d24d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.2a64d24d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.2a64d24d","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-vXeAa2oIykOISWA00COKLjJzviZzAJM52fttCHGo3xxaosdSH1TeJx99qWODruzfC57Ox5WicU4Y+jBMuwK19g==","shasum":"3860f6e30ad579c29699fe0a78021488a48ab402","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.2a64d24d.tgz","fileCount":183,"unpackedSize":868303,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQTvVYxP8T4Afomc1LVKmU4Z0ujrEiuAfiXWdHyuvqcAIhAIUSjxfdt1KNyA2b8Y/3fsMZkqSWJNKcLwdEc6oinyXM"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.2a64d24d_1523098836542_0.1290163173130643"},"_hasShrinkwrap":false},"0.11.1":{"name":"@syncano/cli","version":"0.11.1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0","@syncano/template-project-empty":"0.11.0","@syncano/template-project-hello":"0.11.0","@syncano/template-socket-es6":"0.11.0","@syncano/template-socket-es6-validate":"0.11.0","@syncano/template-socket-vanilla":"0.11.0","@syncano/validate":"0.11.1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.11.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-RvmykKHZj6Z9nnHnn3Qeg6KvVYRbclm8yqhJSevqjMPU7aNzD6jp034z6Uc68v/jEwWqUASacR9/T6Ix48c5EA==","shasum":"8b8e4a465e919d671fd3aa639b128b0c7005b5eb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.11.1.tgz","fileCount":183,"unpackedSize":868404,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1loDNp7BKYF6AYwjpPfiYd1sMgfXEOJMElQ5MkOizYQIhAKiQJLSbdoQtZnr9ePCFChZ4wpCEygUR3mfYHQjfZinw"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.11.1_1523126686551_0.9083724634349921"},"_hasShrinkwrap":false},"0.12.0-alpha.09bf62a4":{"name":"@syncano/cli","version":"0.12.0-alpha.09bf62a4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.09bf62a4","@syncano/template-project-empty":"0.12.0-alpha.09bf62a4","@syncano/template-project-hello":"0.12.0-alpha.09bf62a4","@syncano/template-socket-es6":"0.12.0-alpha.09bf62a4","@syncano/template-socket-es6-validate":"0.12.0-alpha.09bf62a4","@syncano/template-socket-vanilla":"0.12.0-alpha.09bf62a4","@syncano/validate":"0.12.0-alpha.09bf62a4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.09bf62a4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.09bf62a4","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-bpp5gMh3YAMhFr/l2AsJ4pC0t6N8Efo6i4eoTFFGe3rsx7aBz517YEk2dwvzNDw7NQYoKozvivFAQ/W1qGO8Mg==","shasum":"bba9e06d9b0505aaa4b19ef78c0c8092444e654c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.09bf62a4.tgz","fileCount":183,"unpackedSize":868539,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEomUtL2KZWTfMxrvUJtlqba+rVNttlC5JBT+hgc4vGCAiA7CQESzkkwq18DyB6CUSXtGfdV9RxOkCyuOo1NP0Rjxg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.09bf62a4_1523127545210_0.6227905139152163"},"_hasShrinkwrap":false},"0.12.0-alpha.a5ba8348":{"name":"@syncano/cli","version":"0.12.0-alpha.a5ba8348","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.0-alpha.a5ba8348","@syncano/template-project-empty":"0.12.0-alpha.a5ba8348","@syncano/template-project-hello":"0.12.0-alpha.a5ba8348","@syncano/template-socket-es6":"0.12.0-alpha.a5ba8348","@syncano/template-socket-es6-validate":"0.12.0-alpha.a5ba8348","@syncano/template-socket-vanilla":"0.12.0-alpha.a5ba8348","@syncano/validate":"0.12.0-alpha.a5ba8348","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.0-alpha.a5ba8348","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.12.0-alpha.a5ba8348","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-T52u+t5oPEwR2RZ7eiiqdCywi7Nqyj2y7Pg0abYk1piqA6HYGZtl211egTIlf4CLfhgmfFX9jdZ9XFDJCGxyAQ==","shasum":"5b2d68476b5b703d2baa9649b6daffeb856f3438","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0-alpha.a5ba8348.tgz","fileCount":183,"unpackedSize":868539,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaeob0CIvVjyQGJxo1w8vkYSFZZRneczJITVBuq4hLIgIhALsGvh4svVBbO5TcwKMt0fCEoqBjyyTk/wsfnsgFeDyQ"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0-alpha.a5ba8348_1523146615725_0.025788069247210554"},"_hasShrinkwrap":false},"0.12.0":{"name":"@syncano/cli","version":"0.12.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.11.0","@syncano/template-project-empty":"0.11.0","@syncano/template-project-hello":"0.11.0","@syncano/template-socket-es6":"0.11.0","@syncano/template-socket-es6-validate":"0.11.0","@syncano/template-socket-vanilla":"0.11.0","@syncano/validate":"0.12.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.11.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.12.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-fuWXmOLRaPBr+Dl4xcUUMk6I1rsdkQjNf4jgkMXiF4O32kKe66/jEWiSplSAzJLcK4JN29KM8/z2XITR+Et1xQ==","shasum":"3b9bfdfb5f10243e34ecc147c082208705ca21b1","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.0.tgz","fileCount":185,"unpackedSize":876927,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHM81a4msBK+Q1uxG10BuHrTA1PicZoGFZG/F3ibnD5bAiAQlP55T50803nkxSWQtYxWQNyiLG23pj67FhBmXghIVQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.0_1523175512425_0.4199826336515371"},"_hasShrinkwrap":false},"0.13.0-alpha.07ffc634":{"name":"@syncano/cli","version":"0.13.0-alpha.07ffc634","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.07ffc634","@syncano/template-project-empty":"0.13.0-alpha.07ffc634","@syncano/template-project-hello":"0.13.0-alpha.07ffc634","@syncano/template-socket-es6":"0.13.0-alpha.07ffc634","@syncano/template-socket-es6-validate":"0.13.0-alpha.07ffc634","@syncano/template-socket-vanilla":"0.13.0-alpha.07ffc634","@syncano/validate":"0.13.0-alpha.07ffc634","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.07ffc634","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.07ffc634","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-vO0IkHHbMvkFd/YjAbLYJ2H7tM9IESD7dr3E2SeKbhYoBU8jA+r0Em7TZjHscrf5OYkqQ6wfj0ZF0l9tWYQl/A==","shasum":"20e46f52abc2ffda3dc9ab219fe6ddcedfe47a99","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.07ffc634.tgz","fileCount":183,"unpackedSize":868835,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWFgBCivx1lSwai+06co77pDaj0roXsP9CfnsfVI54QgIhAISZcoa33cpFo2mHmtfo/n5Xp0dSxOvoo9hvwUTqXDpC"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.07ffc634_1523175813614_0.3415057768096612"},"_hasShrinkwrap":false},"0.13.0-alpha.6ff10785":{"name":"@syncano/cli","version":"0.13.0-alpha.6ff10785","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.6ff10785","@syncano/template-project-empty":"0.13.0-alpha.6ff10785","@syncano/template-project-hello":"0.13.0-alpha.6ff10785","@syncano/template-socket-es6":"0.13.0-alpha.6ff10785","@syncano/template-socket-es6-validate":"0.13.0-alpha.6ff10785","@syncano/template-socket-vanilla":"0.13.0-alpha.6ff10785","@syncano/validate":"0.13.0-alpha.6ff10785","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.6ff10785","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.6ff10785","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/ZVw191AGGSDcrChBRfK9Y0Sv7GSigrTHrfs4OPPI8FmNILH+FFdAu09Voq9GoQikkGU7V2CQwnfpC/+Srgn2g==","shasum":"53bc54b61b5c6b7f592ea2a3775201375ba3057d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.6ff10785.tgz","fileCount":183,"unpackedSize":868835,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuhpUPLBIEBYY2lBheyphiddHJImufGjuVoxpSM/wqRgIhANLfXhua/4XSKtKaDo3phP8qQwSpr6uA2Ed9qtpwI98S"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.6ff10785_1523176943701_0.5978744852833204"},"_hasShrinkwrap":false},"0.12.1":{"name":"@syncano/cli","version":"0.12.1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.12.1","@syncano/template-project-empty":"0.12.1","@syncano/template-project-hello":"0.12.1","@syncano/template-socket-es6":"0.12.1","@syncano/template-socket-es6-validate":"0.12.1","@syncano/template-socket-vanilla":"0.12.1","@syncano/validate":"0.12.1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.12.1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.12.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.3","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-5lPbTlaYqR2YpOqlUJkAAQqlXn9C32ZIv87FEV1xS+GevRJR9HpPzUnkoKoe5KCROgmS36w56XUc9sYd5FUPlg==","shasum":"ec6021ec13c87fbc7b77b8dc55319136a35f16ca","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.12.1.tgz","fileCount":185,"unpackedSize":876927,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGDPy+UuyzXhLZS/lAk4D41hXAHE07qiSxPa9uqxEfoxAiBebqCP7a6BKu5lWiDYdta4gmKaaeNNwg4CTgybe08vxQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.12.1_1523177283016_0.8518686761571075"},"_hasShrinkwrap":false},"0.13.0-alpha.25c0126d":{"name":"@syncano/cli","version":"0.13.0-alpha.25c0126d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.25c0126d","@syncano/template-project-empty":"0.13.0-alpha.25c0126d","@syncano/template-project-hello":"0.13.0-alpha.25c0126d","@syncano/template-socket-es6":"0.13.0-alpha.25c0126d","@syncano/template-socket-es6-validate":"0.13.0-alpha.25c0126d","@syncano/template-socket-vanilla":"0.13.0-alpha.25c0126d","@syncano/validate":"0.13.0-alpha.25c0126d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.25c0126d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.25c0126d","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-APAgfqPf7L7x+O/XbkTuwCQbQrjIa2WdZf0buLZ1Fmcts0bf5tAnqkAjPtvhFb7tbsjQy9LtnSKeL6GArn8VDg==","shasum":"81b6279f973e3e04015dfb1412697965ada73372","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.25c0126d.tgz","fileCount":183,"unpackedSize":868835,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHm5jQkWmShnqxSOyVpqExdMBndkhPwZtUd9DVcbKG/wIhAIxPueoqLAxAr39RH84AVY3UwZbzqlYd5zR9/O/Kp+0O"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.25c0126d_1523177531013_0.42261057336851215"},"_hasShrinkwrap":false},"0.13.0-alpha.55234bd3":{"name":"@syncano/cli","version":"0.13.0-alpha.55234bd3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.55234bd3","@syncano/template-project-empty":"0.13.0-alpha.55234bd3","@syncano/template-project-hello":"0.13.0-alpha.55234bd3","@syncano/template-socket-es6":"0.13.0-alpha.55234bd3","@syncano/template-socket-es6-validate":"0.13.0-alpha.55234bd3","@syncano/template-socket-vanilla":"0.13.0-alpha.55234bd3","@syncano/validate":"0.13.0-alpha.55234bd3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.55234bd3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.55234bd3","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-dDmbCVcAh3PfpImqWTbAk1uleIbkFfw8WYRphxpXxRx/Z1Edm8FsHgqqaKpfiv249vp0rmzHdrG3SsR3HuyaiQ==","shasum":"5e86b7937555b57372e47800aeff65926376e87d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.55234bd3.tgz","fileCount":183,"unpackedSize":868835,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFre+KJNY9m17a5/A36v/R4ytthgCaKbSL5KG9vm1Tk+AiAHeGSaouJTvVTXPkbSXW3WRSg1J1C3OUF+WFT08pLUrQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.55234bd3_1523271581603_0.9100538904619133"},"_hasShrinkwrap":false},"0.13.0-alpha.bf870b44":{"name":"@syncano/cli","version":"0.13.0-alpha.bf870b44","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.bf870b44","@syncano/template-project-empty":"0.13.0-alpha.bf870b44","@syncano/template-project-hello":"0.13.0-alpha.bf870b44","@syncano/template-socket-es6":"0.13.0-alpha.bf870b44","@syncano/template-socket-es6-validate":"0.13.0-alpha.bf870b44","@syncano/template-socket-vanilla":"0.13.0-alpha.bf870b44","@syncano/validate":"0.13.0-alpha.bf870b44","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.bf870b44","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.bf870b44","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-FqsRNzyftbAtPzt88YWDStUtCBFXWwzZWu5RBN0rXjEFf/C4tXYjwP+ZeBVxnRa8G/96a47MLq/rCn8Kbny7Iw==","shasum":"ff86f569fe49a67ae40bbda0813a740353c591e8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.bf870b44.tgz","fileCount":183,"unpackedSize":868835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1N/9CRA9TVsSAnZWagAATCMP/2hDD0tT4aCGwIMNyls5\n41WqQEl5w7OjoxByXGzWdQnnLXa7I5/oB6v9IUePbgNSD8PG3ciH5HduzqPH\nJiTpkmh/7iAk4KGzjMRrPTSsUo3kF8OrfD5PGbK8qcrQqJ6pMi4m6b/D0Agd\nmFCwCENxqNOdCmQ2ru5ZpwKhawbuehJDuD3FrJuJDUBSdTZqilRfG3gTilXP\nNEcKCr+UI1SwbNeYaSJpEXuMl4k7IETq5oub65ar/CLcJV8VY1AgOX5arLEu\nwMx+SEjLvXvv4jb7Y/h85LZlsOrjgptvk9xf/LEa6LjbaqbfSSykF2usSjRZ\n2xh7edYUY/TvDIvkOaYjLmJB0tYWXtwsLigk6S9bjtBdACXgsk9ZFEvr97SW\nUVXnFzmIEBXQYhWbpyfCy/vCaXJsH51mTFls/pnRGZYuCWcD0DWhtXCPAZJU\nOdZxiMYvdEe+dj554eX/pjadnitYOypJcPFA9jjcLxf7B+LJCDUBUGL2Qs/x\nlUfPSLiG90QxPl6e71zpn7cPfM++hhZ47W2Vvax9xb9pHin5g6DGf6wEYdl9\n18UY6mtmm1TMdHEsJ+rd4A7YuVLJwpU8WYO0AU9ooviJ8w9d5buonZoQISAf\n4mq5Ij2FdX8861EeBbykV7G2hBvK7fho6cYg7X/LIpUaBCy0kBHJFNg73ucN\n/qP9\r\n=bPb3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/uBWaP/ajMGRFzA/rv4Qe2qHbMUBcLHrDl9AR1wJcLgIhAKtUYaPpshTjVm4dZuSN5ujNvSUrIi5vEyncmVqCGEe8"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.bf870b44_1523900409449_0.39617941515713717"},"_hasShrinkwrap":false},"0.13.0-alpha.28a27a7f":{"name":"@syncano/cli","version":"0.13.0-alpha.28a27a7f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.28a27a7f","@syncano/template-project-empty":"0.13.0-alpha.28a27a7f","@syncano/template-project-hello":"0.13.0-alpha.28a27a7f","@syncano/template-socket-es6":"0.13.0-alpha.28a27a7f","@syncano/template-socket-es6-validate":"0.13.0-alpha.28a27a7f","@syncano/template-socket-vanilla":"0.13.0-alpha.28a27a7f","@syncano/validate":"0.13.0-alpha.28a27a7f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.28a27a7f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.28a27a7f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-keH1bmGCLaRSAwqFbqnpuB8RtI5JT4XcDc4HUWBc+EerJOoEPXg1fcSIRPtNzkSl9pH6crDH33vGkKQScqgrqA==","shasum":"c15b3d622cfdeba14f7442632aef691c21b0ba2a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.28a27a7f.tgz","fileCount":183,"unpackedSize":868835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa2B9zCRA9TVsSAnZWagAAqDwP/iBL3DeDV3E8ehL6NuZ4\nLc4KOu4Ckj480C73yDQPToplirnc75NzB6tEqAYHdU6pFWn/4nHmymuNlZpE\nMT6TbE9FZh9ZbEQjCv7ND+kwRw5h9vT6Jvojcv+CHFRcO69hMmb7eX0vnwQd\nhEPFItK5SKYkWwlA616vf2hm3EQvUZr9naNHUNsqBPVLCjwiOYrfRwM1G9tz\nWw+ARC+8+HFiTe957HquZOGPEEob/Q7qf3uWdnJ8k+/B3csmqyqB4bNTanjG\noBBeL1c5i1B4lX1WqgyCb2h0dAlL0dWceeeTCWGhgxYFCbcxjyXifJKe2EgR\nKPdmUv+Scr7MSu6OLIw30WrYJ6EqhnmbRjxy9qRkA3LYboLVRUECsp1q0n0M\nXFDmecZmevA8kxNNsnF2V9CPc1RFo/NTz8pc5XuhyTzywhT03yMWNamotn4X\nDcD1Ihmwn9SIG/6JHTvUY8SCZCPISOvX/Uwh4MkMLvLivjyQ3gWkWn+9f0P+\nE/nbonCRZNFm1q21hDyPBXo5lRaz4segxw4L70Mcc6KFRFBkB6dSj4yS5T4a\nvdqD3TzqEiQDfC2Fc9yBrS8sPGJRG+hr7uTFlIQTxsoQdLI1UEEhq+0NPYaa\nws9x4BDxhpBvwVAwgtnBRF5AcwtIdWvc3gG03722CagqOV0fY/QB5Iy7FKRm\n7Da6\r\n=jk1r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGah2pduwQJRJ/GhT/6mI3s2xbe5frDAZMX7Fifm5mQZAiEAlhUUZQgwaTYPKzBFw0h6E/jGckdIG0HZD1WfddK9Jxk="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.28a27a7f_1524113267080_0.9566467247184007"},"_hasShrinkwrap":false},"0.13.0-alpha.565727d1":{"name":"@syncano/cli","version":"0.13.0-alpha.565727d1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.565727d1","@syncano/template-project-empty":"0.13.0-alpha.565727d1","@syncano/template-project-hello":"0.13.0-alpha.565727d1","@syncano/template-socket-es6":"0.13.0-alpha.565727d1","@syncano/template-socket-es6-validate":"0.13.0-alpha.565727d1","@syncano/template-socket-vanilla":"0.13.0-alpha.565727d1","@syncano/validate":"0.13.0-alpha.565727d1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.565727d1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.565727d1","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-+xkPQkA9p70TELRh4Ak9Yj5R/QYIlTgylrNFTlJtCDH+NV6l9YRGLf1pPsaBKu4mwF3v87yfwN+EbUOW9Ca/YA==","shasum":"01fe7518fb12b4e5083a41b9dce19bad07a93610","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.565727d1.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4xZ5CRA9TVsSAnZWagAAhJkQAIh+LZTwwV21MpTmZYGu\nlZJZNmaScmkDnoeIwOOrg7S/lZz/nBnd2MBZPgX0Sy7AUEZ0z0M+VyukKsHc\nOeqkMYJ7D5lvJGsnK0XiXbAQUO0RARmnu24lZHCtqACoABLiO/oRsKz+8U2o\n7E0hGYSuTazpcOQgjhtrur1OeKGmgrUX2DcdhQVhjcc3zUnIfl5J9xGri7AJ\n5AqxAsfhhyvyGxMfHlySw7nC4WnKv3bCRLb3XZJSZYlHdcWL0sUQxB1ZHW1n\nVMvwN4fENFbqXygs8wRRk83uI/1g8A/CSQPddgMpKFHaSPYYc438a4PIrBlj\nYz8/ii/dwCxbKNwb2y94U//WHm928lzEnz3ksbQQJ3pLYNrhjD6o3TpGSLeG\nIXHQ/On2nVwb4pPVwyM5xspJnbZTik8gJL59ePYhrTE2p6MELBt6qNLzEWiX\nArlnz1QsEZFXls5WPmDrG0UJi6jWHO9AfL9bEslG1RHIuDkV5t70dDYSCG1U\nht4I5LNFhhHlSr8SdHmt6nQTfYgUwwrIEnOIFyPOUQ75V8Isi/9FDcyp2IyF\nLlEWYpknN8SHEXpVoMzeW70bR3PeYvKRgQpLQJamq4FJXJQ2zvoKwdMK28n4\nQ1P2nefsabJW0zOhVUoLywCZZPR9DDFA7qE7btpM8xmeFuXoqaPTDtTAwv1D\nct/i\r\n=pnUG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBzzS0IvQMPspvrmSS6zPMCp9aNa+yTtDDjEfZJRmUBAAiBoOON9JnXX+VASph7GSQuOKblBcJom+e8wgVzylxgyeg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.565727d1_1524831864737_0.31655764828489574"},"_hasShrinkwrap":false},"0.13.0-alpha.8370376d":{"name":"@syncano/cli","version":"0.13.0-alpha.8370376d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.8370376d","@syncano/template-project-empty":"0.13.0-alpha.8370376d","@syncano/template-project-hello":"0.13.0-alpha.8370376d","@syncano/template-socket-es6":"0.13.0-alpha.8370376d","@syncano/template-socket-es6-validate":"0.13.0-alpha.8370376d","@syncano/template-socket-vanilla":"0.13.0-alpha.8370376d","@syncano/validate":"0.13.0-alpha.8370376d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.8370376d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.8370376d","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-1wAKtRdc36LZrrckc2vLq4kS6HNIqM/7fL/wZ0xOdDBOjD67+qunTAbbxXUf/oz+b9RdZNjNyUsNzhtOZWPazg==","shasum":"4c03a05381025787153c61df8a5e3ef61edc80b9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.8370376d.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4yJFCRA9TVsSAnZWagAARgQP/jditSWlcgxYqfOZryjx\nVS6AGjM8mHKojTwVkIq3CPLFnWp5G/7JFLq8zRw6iKjEKUyJFd+99IvgDwg9\n8OYiHhpUke39GU8O7oIPtARsaOVhZ4p9iIxVwblPRsRP1pv9/paUyw9OHoU7\niorusZ7cxGETD7XfWDD15bdXynXxDgvDK2XeEailYaxwNT567YF/aQ1lPE1+\nKH9Y4nxG2vX4kzkkbke61f8iHQH0UGKmXlFmsDBPXxefYjbeqBsBcopufN3g\nJ92kMH2H/sJhMtzlt6jIYxcv8laOdQ24FDgJn8DNSjG34jjBIWXwyS63mkVN\ncyWpCl/Yr2CLpQVtgMBhtVhjBOabCoNYK3R8f4OwZtbgaKU9Sb2AyOy5PfP5\n4XIbFvlMqhkX4qud2bp6He5sZmP3fkRN2l9TesK02uMR2GJTLzT9EMYinbf5\nQ1rbKv++0pDsHexdp3FLTwNvCTXhFlfIayPM0N360UCDWnFSOZ2D0SoUAiW3\n1fb4oGSD+N370oli6P000U8gJVHgYxtk4/E5J1Nep5UZUr/MURL6U7FrZHst\n//rrZ/yWNlAeDdtYNSknai9CL9dSHeogq0qfIiN2Ymt260rjf7oqQf2aafv2\n1vnYLI4JpDz8VNOr7nN/OK3/EYqtNU9zkJgI8yREh4Yit4/qWg7r94JQyB6L\nfkgC\r\n=dzO+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeEfAeLJnK2Nz5kNP6GnhEEALm6CM5g4UOlCqpgXC/CgIhAKof5C0sq6SirtgW4gNAa5cNF4/8IbwtvEvAsnh/NqUV"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.8370376d_1524834885247_0.12596796904298024"},"_hasShrinkwrap":false},"0.13.0-alpha.8749f817":{"name":"@syncano/cli","version":"0.13.0-alpha.8749f817","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.8749f817","@syncano/template-project-empty":"0.13.0-alpha.8749f817","@syncano/template-project-hello":"0.13.0-alpha.8749f817","@syncano/template-socket-es6":"0.13.0-alpha.8749f817","@syncano/template-socket-es6-validate":"0.13.0-alpha.8749f817","@syncano/template-socket-vanilla":"0.13.0-alpha.8749f817","@syncano/validate":"0.13.0-alpha.8749f817","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.8749f817","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.8749f817","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-mHrdOdL9PGYgsI+GV0SAIsFlBpbfYuDUU4SkC7CDb729kiSfjFHQ4TU0zK2QSn0WNXB6rcx++SZTHFbTduHWBQ==","shasum":"520e05635ca2f5de29516be9b3d242223c7ac2ab","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.8749f817.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4yqhCRA9TVsSAnZWagAA8kUQAKAr/+TQKVeqZOVP3d9p\n+wyLUDX1LPPhxROK4gwnzTpgwK4XJu8rQAtosMYBxSZxcTN1Om2GsoKnMpWU\n9lvVAOxTiaGV5dEhCb1WThR+jxIOB4iE31qa10Yg4E+tSr72weYYbXP0qJRF\ngETFpI+J/J54XGUz0TD+z9hK/NOOb9x+CTpBwNOa/4tnxhCVmb+k5OpdQmIR\nHesHyv41E4ZCLzchSkaCPpKe+o5u9KD84Q5IW0PjnhfFcsACnSPkhlOfkY0u\nEre7ioI4uq0sm70N+IBN+Z3QmZ6xK5hla45r+LRJh1UUi6M2PlxcUvTLTjvr\nigUSILfIqr3eQumcCpZKImOOvkzrq8+O37pkXfSHaM2RPBJDs42AaHHDDkga\nl0pcC/0rR4OugA8wS1R1H0zhw2qGP+Ed4ofvuaxsEXkmgDTj5tomyDIFZiB+\nb7NKVh00o/OFofXPitOQFoXYT7xnRAElEuuF00MIPPM10XrOjPldCOs9Tlzh\nYoKJQRBr/To97y8bZV+t6m/1tDzYGtjdVDMnUGlZB6DgwHkhwKY6q3SUIrqM\nUTilbket7ltEv/+oA4xyMsWfaDq4uZvcHjwvUCDOKCT/uXDqHULBSCxDpCQU\nYbMX/3GrA2ufpUUXBQomaOk40FWRdr+I6akB7hBobHoGLSfU5ix61N1V6jW6\nXNfh\r\n=8Sup\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF2FzefxgGMN1slbSjy2abFkYBxrRlHM3hNbJg5aVl2AAiEA4e7qq62bu24eqtcn9aA1CWsh3+j+MQ0KDx8SAR1r150="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.8749f817_1524837025048_0.058406108954431435"},"_hasShrinkwrap":false},"0.13.0-alpha.915742d5":{"name":"@syncano/cli","version":"0.13.0-alpha.915742d5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.915742d5","@syncano/template-project-empty":"0.13.0-alpha.915742d5","@syncano/template-project-hello":"0.13.0-alpha.915742d5","@syncano/template-socket-es6":"0.13.0-alpha.915742d5","@syncano/template-socket-es6-validate":"0.13.0-alpha.915742d5","@syncano/template-socket-vanilla":"0.13.0-alpha.915742d5","@syncano/validate":"0.13.0-alpha.915742d5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.915742d5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.915742d5","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-FDrMnT9MmOyEZoSNbcgYMee2YM35d53TLsaQEFA7UanXPpzHOJx8ludMLFfCDWL/egQSMXrBHFY+3osb5Cnqew==","shasum":"56b446d7626c8dc1603de1084f0fa1131aa94b56","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.915742d5.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4yw4CRA9TVsSAnZWagAAMOwQAIO3PImaf+Mr4QkudHaF\nI/6NtTl8IQDqnXSu7wMvOA+Wiz7T5Bwjrxb++/WQyIfdb62Akv9nBExhe2aQ\n1pP2o/f71O9z9uPYzQKDwg/tjOax7qD7s9bnFdwIy3YdP3JcKyCaRXiQ0fDd\naQMnWpMSLd+pEE/qiccjrY+44AB4rO+yiMZk3kMhoIWQib/mRgYHumfEJMI1\nLe4sssv8Kztx7YpG4hQLDeav2FgdLpHOtJu6S+BVh9qArEL0LUb6VEEznxMf\nKh5q1miQuqshUkTGLrqZnlIT/4miN/ecY1X1ZOAlHNqtRI/zbkTDjha5m2wp\nTP2TzrXmm7YagUXYeag2wrmwiX89CaPAFB2yMWMHLHhiAZBzhG/cqM5D1X78\nArpJdRw21BpCrbZPqgzk9LmwaaVnvDKK6z3jfL73saAJG9yuklQwQiE+USmk\nypQmjlCwFD8ZlA1plfxCmIqFXamc3Ds3sS+wz3e7I07ezGFetPPWx9ozSys4\nVj9cbGqHJjBaiJfmqWowr/mSPgj6WypikweGA0oWrP9wKcKzHDmcEPs+eO65\n0E/9peZ9aKe0YKorqHTPds/+6lZJWW+tRfeAYm+eYLAB3LL40Xi6c0GZxith\nhF+N3c+473jI5skZKGSSv/UOUVW5ufjhGrhCmHi4gPv53SGzqlYYRENxdltl\n8mMi\r\n=rGC4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHP1iZF1Sc1xX/MTdBeP1fGncRCW68YzZJZzmxPFqybAIhAJHw63wvJencefiR5wZ4ndBieDPc6ZXCS/N1tXkRbNRT"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.915742d5_1524837431785_0.5487792843677242"},"_hasShrinkwrap":false},"0.13.0-alpha.eab41488":{"name":"@syncano/cli","version":"0.13.0-alpha.eab41488","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.eab41488","@syncano/template-project-empty":"0.13.0-alpha.eab41488","@syncano/template-project-hello":"0.13.0-alpha.eab41488","@syncano/template-socket-es6":"0.13.0-alpha.eab41488","@syncano/template-socket-es6-validate":"0.13.0-alpha.eab41488","@syncano/template-socket-vanilla":"0.13.0-alpha.eab41488","@syncano/validate":"0.13.0-alpha.eab41488","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.eab41488","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.eab41488","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-fUr/3r6IKgJbUfMeIy0OTH33alYOekvKJFX5gOVpwXYvHhvqCMM3VrMihXMYPi0pmnYPkTnozfm93hMCKW8Nlw==","shasum":"0c0f6f6d03d668fea46de3ecf418bfd1a8d10830","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.eab41488.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8ZlACRA9TVsSAnZWagAA47oP/j8w9FrB/QeqCpPzg4nM\nd2vy6AfaeSjDbdPQBts5C/spox9cFzFn2kJDUJTP542nsoai9tUNxDB0S1Nw\n0AKqXrbHEXJ8gmbUELDo429Dc5dlhazGZOSfd41jz9+tjcsbdus6JLQPRvva\n2D0ihVJ4PaEN/hVlxJQkHUcxZbbmURjdRPLaQbeV9xDR5HdWTTQPlRKpnVil\nT8fdJ6VHOCQJUKaTA8GOf3iVe+sUVVehpwjac4aBn1lLV2spqwg8cSOUjom2\npF0JnxusdB+SeP9AeLAkrKUjAfEetxakNDa0G0GyiB3m0o9CiXfOe54SFwWS\nZlbP+Cil3ZGs8Sc9bKDyReBAVRdpaHNMGKa7YiUtHfIf3CQxh/cScAl68ysb\nJedEI3jlRRwfcUtL/7akJzF70h31jZKwZRxLcfiGpZfRnOKcrp1XyBfPr7Jp\n6kyQcyVwXU51ZMWPOyASbL5b6Yuud/MY53a0PFsqgdNzAwYRGqGdZB/oy4aK\nw5X6iVRoLO10x2DSmOxokJSjrUcKEkN+sgmpPkAmDiKV6NrFDkSDckt9CYqy\n5igMpHuu9NouP5HSAxL+lgrVsYTgCGnQ0/5VXnRXLwHMYQ1nNBINGtaFQpXG\nLEGiSHxH0eeZhKemQG0eXo3lS8tP+GJ//yJrnjgYPS6csMePyoX4EcdJ/jFo\nWcAA\r\n=gdJQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsrd/dQy6Vobx4EHe/eoTP6vFTB2+QdkuPvsC+POb5MAIhANZDS+TSihPODtsQQgcSKc0ZPHQ535kcSBkkGiSwH2R+"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.eab41488_1525782848024_0.771289030666495"},"_hasShrinkwrap":false},"0.13.0-alpha.38bab7cc":{"name":"@syncano/cli","version":"0.13.0-alpha.38bab7cc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.38bab7cc","@syncano/template-project-empty":"0.13.0-alpha.38bab7cc","@syncano/template-project-hello":"0.13.0-alpha.38bab7cc","@syncano/template-socket-es6":"0.13.0-alpha.38bab7cc","@syncano/template-socket-es6-validate":"0.13.0-alpha.38bab7cc","@syncano/template-socket-vanilla":"0.13.0-alpha.38bab7cc","@syncano/validate":"0.13.0-alpha.38bab7cc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.38bab7cc","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.38bab7cc","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-YFnxaopNjThmqZtEBoDRq7ilrWGYE+Pku4D6IZqnw5sv6KQdlOXYQnnnNISEmsWg8MJywVu70STAZIX2Nyk1RQ==","shasum":"5a8824850afd358811d9f62a54c28517f3f1cdfc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.38bab7cc.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8sPGCRA9TVsSAnZWagAAdvoP/jVDIZbeuqrgpIiVoy9T\nJEKXnz0VAsvpmT0pD2lwe8IGCuvpcdflMUQouI3puDLGJKoy2dVbkAA3tODb\nelJeJF40IsONiBvuHvdgBalfbB0uyMJMLuhXyix62oNxmWEmtL5w4lelh8oM\nC9oXu1ebp+LH/lKOM7dLP4x/VqaGSSwdghccljD42tjfuHijrMvdedeE6GTH\nmHEo5FObi+nCr+o9U0fGuNfzZ4KXvppiJLMN9j3iIQch8ragAq4QftLRQvn5\nOEfQwvNg9ie1esYnYG+iGyQSZzXtS32LSBJvXrUKkjOdFHpsaqv7Jci0XjAD\nceNMnwppl6SSewrXFnbAmXkR7cIVEBGjfiFbiE3gRYWGRmroRoDyDMi52rUW\nNdkpNUixOH8jTXS4uaX5J5GRGn94ZJteI2LEKrjzuzFiWqeMgmJYzWqPiLiE\nKuii4dbQmmPV60i5vjuaZzoy8PwKdKJf1UAvp2TeHpLpV8V5RrNpwVUDYu5/\ndT6tBDjEhOeqbJd0aorprAIRfMbPast1gYqxwUml4IOtE4GF5X4zJ5Oc28n1\n74eYRBajzYPwuZguaWbdlE2iwkgWGqAueIPMkQnrkAGrZ+EERn+GUSQ1acB5\nY8YNPOJ/bralPADbkkQ1z0EiC66C/78T84HSiXjm7e/3C+9Lqt8RlnrybbBi\nHNIE\r\n=krRD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFfxWupf6uYUSqBw0/GcYQ09gpNPJCIEguUWxJXEbqcQAiEA5Q5InI9Ts/021gVU4keb26jOoGfzzBgJqmQNogFBWDU="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.38bab7cc_1525859270333_0.3370057167466658"},"_hasShrinkwrap":false},"0.13.0-alpha.629048f0":{"name":"@syncano/cli","version":"0.13.0-alpha.629048f0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.629048f0","@syncano/template-project-empty":"0.13.0-alpha.629048f0","@syncano/template-project-hello":"0.13.0-alpha.629048f0","@syncano/template-socket-es6":"0.13.0-alpha.629048f0","@syncano/template-socket-es6-validate":"0.13.0-alpha.629048f0","@syncano/template-socket-vanilla":"0.13.0-alpha.629048f0","@syncano/validate":"0.13.0-alpha.629048f0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","hashdirectory":"^0.1.0","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","watchr":"^4.0.1","ws":"^4.0.0"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.629048f0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.629048f0","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-yNa0fS03I/wSKghVYTXuYoOLwfPf36A1RJ2kAX92DVmnQp6gthG2Do3vZieWfeo21sn+REST/FZytD6Zf8GpKg==","shasum":"d20a4914ee5bf46e84799fe801b501ca723212b0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.629048f0.tgz","fileCount":183,"unpackedSize":873350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8uqJCRA9TVsSAnZWagAASXsP/12/h22vuWzpSkBWzi7k\nivRVcZx6+2fzhCmkFno9PU9XHB/ptJmxV5g9aS4SL5V7SC7Z1TzP3lfA6T+C\ne3csON9Nz/FQctRENNFMoLuEYd2VpKiDK0fPFW1XCyRZuUYIEywiizEglqsd\nQCGsEV/WKPsza2VSFQ+4pPQ59QUIvJsd4LJcNiDf+lQ28v4yHBYNAKwy3L7A\nSuoj502Q6UycmmdfeHkeSlSdjJFOwvuLu4XqORFpxROd8FQea9vm8X+wp1VJ\nq4xnSnEZMd0emjCwsl3iAGPUt/KYPDh7m/sOEksIxBrqN/sxESzd0u1uuG8t\ngmfsfrvKyQ+2lIcP3cs7c1M56jtV3F6qtNqV/V+k0CKrlq+CBWLseo5UsLep\nElD1+W5hQn72IeHCytbGtjbHa2soNC0tgcAoSFlmlCb0GyFb64bvPg1OgHHt\nvWaHf8qT0AgzSeOtgu/Xcmtnf1pj9TxeHLCkGb4E/6L7o+AXyN0Md9Lg+55q\nIsa/9hGXXbCG2yZ+q2NMmFJ/qAzNSlEmntiUI2urMjMklLYj6Rq6n/iSq7Xl\nts2c+bGZzsNtOxwVttNHJAyAP5cdrFpSxlIPoji4tG31Uu9H0HyrVw3R3d15\nvtaIHYzMAqtBfLEcPlCPhKcukv1pG+y1wfY6aC/JSaY9Zo5zdRGgsJjL7/SE\nOx0V\r\n=eFwV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKiIoaxh/2FkTdTAVbR+80RrHpQzjcm6AYKGN/LseJFwIgH35HfR0Yd2bXwSpjwCU5B71bCtsUkBNxboPc8LWtGzs="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.629048f0_1525869193477_0.8768332355032225"},"_hasShrinkwrap":false},"0.13.0-alpha.f7fbe757":{"name":"@syncano/cli","version":"0.13.0-alpha.f7fbe757","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.f7fbe757","@syncano/template-project-empty":"0.13.0-alpha.f7fbe757","@syncano/template-project-hello":"0.13.0-alpha.f7fbe757","@syncano/template-socket-es6":"0.13.0-alpha.f7fbe757","@syncano/template-socket-es6-validate":"0.13.0-alpha.f7fbe757","@syncano/template-socket-vanilla":"0.13.0-alpha.f7fbe757","@syncano/validate":"0.13.0-alpha.f7fbe757","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.1"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.f7fbe757","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.f7fbe757","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-XcAigUE/lrsOvIHzFY6uZ3P4ENpQ/EsfQm5AXc9n3M3bDiYf3GLNiVTJ6IG3IN0RZHQ6jtLOSXVgmLE9+dQ2vg==","shasum":"b78c34729b6bca473559d9a3eb8676efa2bee9ed","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.f7fbe757.tgz","fileCount":177,"unpackedSize":813863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbCFRbCRA9TVsSAnZWagAAeioQAKTevQj8ccz61JMx9v8F\nxpJLSP4BactNap/arAUcG9zh6dumm6xJwsfl5BULdnUm7vnFXQalO2YasZ9a\nozH1Xu5w4ha+kEUfie1o7ymh4vGLqoRgWry+P65X0sNrT/x/en6y22nZXiyv\n2QAe6EGv1L8sCsSiZyCQBQPBkoDocMCjz0vWktbBWSPsUAljpCkN5F7lZwGA\nfmuM8pzcBUeMGe5bJPDSCGF3jtNSpiJwYOoaegexVMYs8/mOULEkzWPOpuxb\ns0vqFUYc4QYrM5UZ6F1cvA9/TSwUxp5IFKiWQpfnGVKihJf1gjNVo+aZOLPk\nmBHpACbddY9pJiEtSe5HtJqBzG2h2cJcleme5IXOIQxZfjuTbBzhTfO/UZp2\nEyI3D1sfFxVLUwFLT8mGVFNQf2ZyaIZM33lXi3bSGBO6RUxeSTluHg3tqR8R\n7etUzkglrDe+nUqYLhEceHcwTeXzXUqyPXwGN/PyZqIIwS2Vgps192tt8Jle\nFNHR5IVVCgtNGywVeOXFjM5wqOsAhccfOMl8KKj2PBNoSnD4bypq+eRuQL42\nrfM5q2QTqawFo8OlZ3ryEuAYk6JQAYat6/v+R2rNL3q1poKtecgLIvjTVoES\n7Q5e35R0mC/PmjllfLecpMmDFFzzFMt5e3TNiMZR6XhySa05e6gjS2QYJflD\nwOty\r\n=Z1VK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDLvOj1iZxVuOUV4cctIMJsxlRzVe5EyLB0vocMI+7TAAiEA/f+lMnAfpZE/3QsL5TSyiGnw+plAnBWD8N9VVHgYPC8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.f7fbe757_1527272539640_0.5594757754052908"},"_hasShrinkwrap":false},"0.13.0-alpha.f6ea95d4":{"name":"@syncano/cli","version":"0.13.0-alpha.f6ea95d4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.f6ea95d4","@syncano/template-project-empty":"0.13.0-alpha.f6ea95d4","@syncano/template-project-hello":"0.13.0-alpha.f6ea95d4","@syncano/template-socket-es6":"0.13.0-alpha.f6ea95d4","@syncano/template-socket-es6-validate":"0.13.0-alpha.f6ea95d4","@syncano/template-socket-vanilla":"0.13.0-alpha.f6ea95d4","@syncano/validate":"0.13.0-alpha.f6ea95d4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.10.0","klaw-sync":"^3.0.2","lodash":"^4.17.4","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.1"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.f6ea95d4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.7.4","replace":"^0.3.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.1.2","standard":"^10.0.3"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.f6ea95d4","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Rk6sGN6lGiwX0NdYLax2iaP8UfEqvIUJ2/TsZlE/cpLXieo+T+++AzMQEx7oC/Q8ralqjR2Tkf2BNuQdt7OfFA==","shasum":"bad97d46121e5900d3f11e7475cae72a356a9f6e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.f6ea95d4.tgz","fileCount":177,"unpackedSize":813863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbCGkaCRA9TVsSAnZWagAAoq8P/RFdAbLrUoCVdRGEt64e\nrWpA4hs9iR8USTZx6pV5ElA1NoAIVBwe3Z2g5ArbVkyYXYTtQJ+4XO5k3J5h\n4O5vK05FsU5YpaE8S8CLMNNFRACX7mOTh0Sks4qjc+O+emviSEq+JhcPNBZt\nsyyNW59pT4ziQWc4TSo27ZHTj9MW2Kvx85dzcQ9nafEnT2sQ9AKepgoMPsTX\nHPXBJkg35et9z98PFn0sPALcQAW9f6UuVvVYh/9bDkJkh7V54qBkyH+JkUxX\n3c2dGoVg3IntH3a1ZQH/Qqb2uMEMY3w99vj/CFNhovwI4SHsaeBtfReHp2YS\neRD/827ILn99Xr6iLssVN+5m6X5JAKyMAyxNxVftUv+s09bwu49ugm5gNEL9\n/n3mplM9ww49fu1fMrRqqwq7We5VQI3wg06yJiE9G9yxICnFnLDekP+Lx5bk\nSjRhoAjxG6FaJpmoltB3HuTKQKYrdmUGQClsNcAQVIYwMQgHY31VPjf+lzuM\n4CWMr4J2ksgpDcaHhbWhRLAsulA9U+pubwiLqnu7WKGWceeZ/jXWzYPI8KDF\nD9z3jV4tYy8JBzMqUBFSkzbKLNkQ4113+ypBBQWu7QK1wvEiDEhCE25NzYaf\nMLuNVWVfZznjRb25Qcz1ON2xpIFlSRocWBybMA9oF3iHOfCRzXNeSelGkidu\nYFcG\r\n=kxdR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkJQuXjoupyggNpx2+WYeyhTpC2cfkb/jMGGyb9/+quwIhANi7HNKmY/DbSU6jyzF3zePg93ItBbu8LUqLT9R65/tc"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.f6ea95d4_1527277849793_0.7103433842960585"},"_hasShrinkwrap":false},"0.13.0-alpha.1858e543":{"name":"@syncano/cli","version":"0.13.0-alpha.1858e543","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.1858e543","@syncano/template-project-empty":"0.13.0-alpha.1858e543","@syncano/template-project-hello":"0.13.0-alpha.1858e543","@syncano/template-socket-es6":"0.13.0-alpha.1858e543","@syncano/template-socket-es6-validate":"0.13.0-alpha.1858e543","@syncano/template-socket-vanilla":"0.13.0-alpha.1858e543","@syncano/validate":"0.13.0-alpha.1858e543","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table2":"^0.2.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.1858e543","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.1858e543","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-KvBJBrZJOdf/UUkUgnRZFz9sUNMgOgEyJBhPCNfaRASQu8G+UBgzlV85cSUAjLnGAym9Te9tlPhUdX0z/qrBlg==","shasum":"f232b05c1ac32de21797f8c2ddd5c2dd53bd53f5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.1858e543.tgz","fileCount":171,"unpackedSize":797670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbKLmsCRA9TVsSAnZWagAASNcP/0D8d3MBM9jQZHh5uGu2\ntDc37tFMzu6mHrpDTNbRtfHNzo1K1/Z+JXfIK/W0Pu3uMcQ60npjqTiarjKF\njRiSKtn8j/NTXYAyQbn+N551XzE549KfybQek4EApfozJJ5KaKdXQNar1Jpn\nk2D/TvDjEfenFym6Lm4dGdGiY7ORmRe8s5rHUeEowBxsCg/Jc/vI4Ryu6qSo\n/rV7Anaqf5pMGuujVWPVx/CeAr/CHgugRjqTT4edVHpfIWBqrqv5IJcsUVrO\nmuUaSvfRU4TiEMcZFPWmWwYF22/nf9Da2yvwffARN7jiC1t1K6zAKlV2dwzi\nwxuQetbCxVw008ABydWYfLX4/7YRRYLkQ/LRPY0gUkLaddlz5uSK8imwEzgk\nJpOt30WIj+jzs9rWUnUaunP7vPuVrox1qe+ccTer9KRIZDXmKNOoMau9EYlr\nG2nJcXxSYdv6L1R6tGOX3pM1u3JpqwA9/9R+1x2Ynm8T0Ze0USA/Z+k4sUlz\nE262z5II5yvUHHZvAqHhm8CJZBxUjEkq0fxW1j0SilQygXDjX6U6z3dSknFg\nH5YhGptrXiZU6ufeAqYFO6K2fk5QUXwmYVDXXDoVgRJH62EZfgdItpUK2KzM\ntPCFVb1oUjkV7eP5lFVo4tSdJJ1I9doa0Vl5xlQiTnOwMPXSBt5Kk6o0Nngr\nwNpH\r\n=8AR+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEEgicM3rz6Bfj+BPPv9c/TmbKmCnzWqNtEhpzh1pFR4AiEAyskT5LYBREU8eIcGul610c/GiKWoBCorvI8r64pjVJI="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.1858e543_1529395628491_0.8721814865919559"},"_hasShrinkwrap":false},"0.13.0-alpha.e30b9db3":{"name":"@syncano/cli","version":"0.13.0-alpha.e30b9db3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.e30b9db3","@syncano/template-project-empty":"0.13.0-alpha.e30b9db3","@syncano/template-project-hello":"0.13.0-alpha.e30b9db3","@syncano/template-socket-es6":"0.13.0-alpha.e30b9db3","@syncano/template-socket-es6-validate":"0.13.0-alpha.e30b9db3","@syncano/template-socket-vanilla":"0.13.0-alpha.e30b9db3","@syncano/validate":"0.13.0-alpha.e30b9db3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.e30b9db3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.e30b9db3","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-JenI8bckKViApETQwae3MFl0bH1vE302CTf/RVJLmPakAKk29Xaanktj/WoxanTRFO0xuO23T5HZVeS8OM+sGw==","shasum":"6bc16b0c6200ba73062796ece7bd67b2d84fb67a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.e30b9db3.tgz","fileCount":171,"unpackedSize":797670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbKhFXCRA9TVsSAnZWagAAtZYP/j3jOyw+ToUhJPKaN7UG\n5gp7jQGAioAbXyFZX4f02bXVIQcbDy1TnZQmrxhAuesa7NLryieF2UX9UYbB\nfo+sxdmRfzy4U7EP66FmKYHz6UbpU7KOLMTiwCaM7Pd/wdR9/OaUkOI1LHcl\nLtnPvgH1Tmh5nqBwnZVewuqa2L5QxTO7AnM5/dkMqMni5koAABEJuku8iHwM\nRW2nmuF6wNRZ/6+vudsVJ8w3q8YtCjpj4irFwFbQu8KpAvZn4Euxa+uiHHFw\nvB2zGie3gMqufC3N+ZYGlfX3x+CuDFOXuvbyblEoY8E2dtLbGsPMyQmH5uF3\n7Bse1r7jqdeWfGj0yro6dYfbwq9A8cE86zf9Zxxeqtd8AH0QiG2Vh8xC88cl\njZacUzhhqpcTgjpP4PURyF4PR3KXZUNmugDtn2RkaI0srWxVc2Fr528FydVL\nBSCZ5t0348r2uvfRFiNHdzmiql6Izp6DNnHKvAithmgYpb7fhaoyHGKihFTo\n7xt4N5J4/fmM2l4m1/YmXsIfw6BMIR+h+KZldvevGay38k3ARU70EaJfrhFS\nCyiU3UE3s/md3E7KtOgoO0oC/es3pcsIEa65RRUNNNRy/m3JcEvYdS9IN4zM\njTm1c/m1lCWPaKHv9CcCKVBRjWm2jSrkMwUNVliyyV4k19NuLJ5tQxElV6Tu\nmg1R\r\n=9lPT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqvYQfRcnQYFqXD6aCHn97FxU9y0aFLBJ/wuEYmaNdKQIhAMe4brxKeLkyNSt8DcGfRhpuyGqCIA+0ftloCoEHMTH/"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.e30b9db3_1529483598269_0.3902142155184938"},"_hasShrinkwrap":false},"0.13.0-alpha.f522e067":{"name":"@syncano/cli","version":"0.13.0-alpha.f522e067","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.f522e067","@syncano/template-project-empty":"0.13.0-alpha.f522e067","@syncano/template-project-hello":"0.13.0-alpha.f522e067","@syncano/template-socket-es6":"0.13.0-alpha.f522e067","@syncano/template-socket-es6-validate":"0.13.0-alpha.f522e067","@syncano/template-socket-vanilla":"0.13.0-alpha.f522e067","@syncano/validate":"0.13.0-alpha.f522e067","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.f522e067","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.f522e067","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-AgogMoGN2il96hfNQjH6eQfIBUVTO/6MwBm4qckbSa4KnDHAOuGvOT1LV4nUHAN7d9/OUq9qvf92nVWlIZcDew==","shasum":"8116a4ad44442d9328132dc40529d36d98390c4b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.f522e067.tgz","fileCount":171,"unpackedSize":797692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUek/CRA9TVsSAnZWagAASH8P/0es5KpEDJbVg9fkWfef\n+rm+rhJe/7cekxRvTRJNm91RV+0W+RjcyaXQDd/lV3ddLvUmpbeusji2tNcg\nq7V+yOzIyaNIyGpBkfZDe0wePvwbA1lriYuKImF8Uwa85ylC1tQmW1Nziz1Q\nPOpEu0sdutNpO+Y7gd8AzFlRAOOYDUcMlc4zPLEkGW2E4arUmdUtjBW1HEAk\n2UkCMRU/evWFOS/mI1t81CCfbs33cfp3vxyPnISLgKcE6plSdnkmBO9b36lA\nunsQR7ISd43bgB78RWk6FgV8iYIZR9N0dkkvvy1Ei12DSNG/+ljRPaWuEOD9\nMeAbASNaco6d0rT3oab25mpSsZGmS0BpI3WOs+AkjA1y4pGaUtDhmovvLOcp\nTkIwy/SNgHc/SGdQDp6EMaYkr1x8spD/KLOUy8qV6e3sZt07xq+7xwIn7PTY\nWY56YUzQeXVp1D2x/rFqqDt6G7sbwgSwv9sN8T/t3j3fq2DGUvRpd8oybuwB\nTWfzH8c7eh810INfWj9OFstEyQ+AzBAXyJA3Zc2jUohZMtS5KIeoDDVyBbzL\nvBmRq9UPMQrDNCHfSGjFtL0h8za2MX4/Gpq30N6hOeMKvVfc3fA52MDnszPK\nXlxOIIo0rO/tHV46L1kGIZQvSXVd554ACwnv2mZaJwRbYsvjkqofB1wBZgja\nPycw\r\n=7WXJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHCdJb155SRbVNo5g3ixfUh1njkm59RKY7+uVS5pgjqDAiEAs01Lmc6WsjcUgr52WrLO7MtyagqcgR6iGM/5rDmANsY="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.f522e067_1532094783443_0.818222554678605"},"_hasShrinkwrap":false},"0.13.0-alpha.47de14f2":{"name":"@syncano/cli","version":"0.13.0-alpha.47de14f2","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.47de14f2","@syncano/template-project-empty":"0.13.0-alpha.47de14f2","@syncano/template-project-hello":"0.13.0-alpha.47de14f2","@syncano/template-socket-es6":"0.13.0-alpha.47de14f2","@syncano/template-socket-es6-validate":"0.13.0-alpha.47de14f2","@syncano/template-socket-vanilla":"0.13.0-alpha.47de14f2","@syncano/validate":"0.13.0-alpha.47de14f2","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.47de14f2","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.47de14f2","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Eikmv7NK7lDMU1WDjAU/Gq+ZO/Owvcc40qkpOz+KLRd3nR8ZD7VejTxbbQtAy2av+fyaeIWjo1ItSwRhreA6IA==","shasum":"98419bbe5e9772da0248241260a6918720e4e179","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.47de14f2.tgz","fileCount":171,"unpackedSize":797692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUe8+CRA9TVsSAnZWagAAPw4QAKOBBJQBx3PEVUTC0Ez2\nL+u7aCXbCpTaFWgQq595O9tGzxX1ND7GCwumeOETlDJ7/WB4Y73UOugQovbU\n/KyMbZyMq3ThzsJixapSNwWzRE8inr/BCSNopuFu6hiR/iZw6y/XkVgCKyG0\nYUufnDbOJbvVOnyWHMe4KXNijbEd7X1IQMZ9cPqSbsSZJcNbhXOUhz9Y1hiX\nadbko7AnKrgXQzH/y7K+F6FqLCl7QliPEGN4Q0w69x1XfkjofrtQX3EZvkUj\ni4CTfH/JKx99paAD4nomF4OfQPvYa4nZMDnMT7xrogv//SM/PELnRqFWTTSZ\ngejmujl/p93tWUIide7MzoqoniepiTNfH/k9nMx3aUbY6jYUKjVuvuE/y2u3\nc7fe67KnGBmw+ezhtoCnswD0i3P3wR2nOQaowYwKk1aCUEhtSK+E8OjkdGsd\njKlJqxtG0eSFwO14bnazA/HjeUHTrntxi5+ERut6LIccLdPCFoia2koN+q4l\nuaJF6eBXy+T1eRr0Xxwui0eKOc0xf1YBQ2DOM1FlH47zssRzcwLAyBz1xH1u\nMVvSdptKz8Rorf998mZHFsSiXPSvT885wWE20zlQnHNORUJx6PxqL7pfwn8a\nVZmTq4d5qkkVhaC79IyDHZKnnRFVcWMIAzEOWy7lJ3KlJEm9MY/Sq9nbPDZX\nZc9b\r\n=22t6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFR0/PYCfnxEVdfgv+A05OZp/y4pJHoNlIPed2LiJpTbAiEA4SFLMhzfwd6ggjvjuCbFYLSN/bR2SCtJen+rtV4EwF4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.47de14f2_1532096317862_0.928528125705345"},"_hasShrinkwrap":false},"0.13.0-alpha.644bdedd":{"name":"@syncano/cli","version":"0.13.0-alpha.644bdedd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.644bdedd","@syncano/template-project-empty":"0.13.0-alpha.644bdedd","@syncano/template-project-hello":"0.13.0-alpha.644bdedd","@syncano/template-socket-es6":"0.13.0-alpha.644bdedd","@syncano/template-socket-es6-validate":"0.13.0-alpha.644bdedd","@syncano/template-socket-vanilla":"0.13.0-alpha.644bdedd","@syncano/validate":"0.13.0-alpha.644bdedd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.644bdedd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.644bdedd","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-CdPbE8TUHgNKIXzZDzr7C10iDBgIQQ2e0BvLvBv528PuNpo4K4YwvgwelY4yqrel0NpQV/NwQdaPOnmEMexESA==","shasum":"dbe483898084f22bc255d09efb3a6a39a918e6a4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.644bdedd.tgz","fileCount":171,"unpackedSize":797692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUfkPCRA9TVsSAnZWagAAMkYP/2YVzm1sgjGkGqXNpTsZ\naHXX767oXXzGUPVA+RLUYMMOEBGinrGJsPX3ODjEQLPn9wtAuhBNs7wo8iTe\nvEQS8ryywh0IshRLq1T0V+am+Fn0QkloWz99ohqt/WjF/v4Wa345njOKOYnZ\ncHtreRwQ0iQQP3IhbCSg88jkhKBjDcQ07MLMph1S7hEWZNTbS5U80w/b4h7o\n/EAXugNEXXFJXwmkCgd9dcdZmi0Nnv+OmiqfpW45nlJ2szs/8JHa3t0SXdXw\nvOghRAyEUrupTjcNgPb9RUtZWFhcqsgf8sd1+DiD1PPvnE722y75NuHm7i7J\nWDW4dKWWFlwHjP/GoH9kpv/fmBopfIFEfTT3AOp8L4Ao78kV5mobUlE6miF/\nrkg37Kz44s9VZgRQJf9AxVYXGRUlKBPOjW5yVvIgUgSAJ/1D1IPxeRR87jFG\nSlZFflDkD4mzaWgOBQUANuysEYUpWK+XJV37heDKkGUg0HbpVfVjI76P+3Sn\n0pG++V3fiHXxWgJ5f/zhoJzhpxFcPoKjXq2h7AWp6fbaaD9dIwQFhDJiK0zk\nopsVpmpZ4OXN1JPpw9jetLz4szOpbey+2A/K6JyEjZixlcqOU8A/cKnGqm6b\nBjc+IaaJxQJvRylSAndZD+gdnaVrUuWIsUo1W7owJMfiyiTLD+m1ER2yWJw3\nxzge\r\n=1ty/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBV/tkXBPfuqHs3YPAlg2Cfpqg2wDA/3y/wBUvt3utsgAiAjPYKkvWDRipz4eBQ1jLccTm4SIhoTxy0pXtqVLnfQgA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.644bdedd_1532098831383_0.26505507840988685"},"_hasShrinkwrap":false},"0.13.0-alpha.b1bef4c8":{"name":"@syncano/cli","version":"0.13.0-alpha.b1bef4c8","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.b1bef4c8","@syncano/template-project-empty":"0.13.0-alpha.b1bef4c8","@syncano/template-project-hello":"0.13.0-alpha.b1bef4c8","@syncano/template-socket-es6":"0.13.0-alpha.b1bef4c8","@syncano/template-socket-es6-validate":"0.13.0-alpha.b1bef4c8","@syncano/template-socket-vanilla":"0.13.0-alpha.b1bef4c8","@syncano/validate":"0.13.0-alpha.b1bef4c8","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.b1bef4c8","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.b1bef4c8","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-4Idn31h3FBG47TOq30GcHEmefo2FabQSairiY87jW9bJXsKRvVCPmyUoW7iKTStI03XF0+vVvMehIrWEvXXHTQ==","shasum":"9e7a14e443b5fdd6459c649eda1351034ff0c860","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.b1bef4c8.tgz","fileCount":171,"unpackedSize":797692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbUfq5CRA9TVsSAnZWagAA1PYP/3np4FGIXtTKe8fcDpRs\n/RvTU44Saio/UgUcT5vTsewhT5PTsCrMTYHLYeMFvVQagF7gIF/rh1MSBx8N\nX0RpVaJR0Q2dy9uZRb3yAzes0xFYy9vohLg2G/BliZmcbpgH8pmgxRJ0FdFJ\nY9OMZvsel6IpESd0Ipbv7ze7t5Tgf9eN3Nnag7E03GRdZ823FvOqdcdGbCmd\nx7MAIuNVTcvhIUEoUmaDl8AHHto9qCmr69EK2gVkP1HV37UnpDmpv7VO2q2M\nPoe6A7Td4EjldBVP6XlOsP13hhhIgFy4znVOkQswLgZhutI9bLtI01dZHv8k\nhhwyo9OYuddUdEC6WD6+YEMmQH3nXVx3u9FPuYtETvsDZLG+IwSSl3mTJ4O5\n5MqaINtRq+GUg6IM7p4TtdksknhgTYfqf6A+UPScP0qefNs20qfneAcJ7V7T\njRh/GA4y7sCRUVOHmz8ydoqcfkmQFpqxnPjozS9pD1W0SzaCN0frRQyIi6u0\n/aSPvNDVP3byzcKJl09uwu3X33f5bfuor5WJpi00TWVOMiegl4jojX9qYjpI\nlArbs1S1FO6iO6VZRtQUR/MTHNq5am6gjJzWfEmOFEH/4KQdHUi5dg54mqiI\n/sBe7ek5VD5QtKjQ0cC/GVocY8Pf/Yw7UwRmd/vXMOZgSkK3Cy0lmazKx85u\nqaVp\r\n=1dOg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCucadzS2ranqcN1K+os8l+v3Izf3Xeq8LeA1y0l37GNgIhANdLkgWUeacZasqT9EKKCRgW7uPpbLttgOe6HVkGQdBk"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.b1bef4c8_1532099257257_0.7725786369830343"},"_hasShrinkwrap":false},"0.13.0-alpha.366a5b98":{"name":"@syncano/cli","version":"0.13.0-alpha.366a5b98","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.366a5b98","@syncano/template-project-empty":"0.13.0-alpha.366a5b98","@syncano/template-project-hello":"0.13.0-alpha.366a5b98","@syncano/template-socket-es6":"0.13.0-alpha.366a5b98","@syncano/template-socket-es6-validate":"0.13.0-alpha.366a5b98","@syncano/template-socket-vanilla":"0.13.0-alpha.366a5b98","@syncano/validate":"0.13.0-alpha.366a5b98","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.366a5b98","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.366a5b98","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Cty3PEE/0Mn9MlWaMSxxJW2HVuCo7NJa7GLfjrK4p7kQAfR0KcX5siMOVgj7MaVjNJooGR8Ovb53+XTw5p/bRA==","shasum":"b6946ac72b2e8304f533f5d3d65ed26cd5f5eb33","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.366a5b98.tgz","fileCount":171,"unpackedSize":798514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbVjxSCRA9TVsSAnZWagAAkVkP/26rVSPlEFxMUoRSKTvq\nz+PfmDwRa9gK7e9edoVGySv5acsv94kctcMPoj/n1K57fUjjuMt0BNvxKlxC\nKl1hBHECSqjnGNBZPlkt9O5RDrPKXvCaQY+rOB+yuf4X1t9qpybqtgXAm7RH\n7fP+w+ot7StzqfdcmcHW6Ze5SZXoNrmeZBgyWrC0n/UTQfcJSc5uns/LfbzC\nViC0NNUmUsa9o6lo8y2fsi8pF/TNhpagaSfa7xNTAmbKGmVXKcA0J6rBwwyC\nh57so5PdKnKo2HjbOzcefBBw930pSQTUlT1+zPi4XSqm6LUJJPTCMPczLsaJ\nvJsLBJzFD8IDOWse9vc1/6lRdek1SU58+2JRAmOQCOkLbxA4EFSkPp2Lyo9A\n3Q8ghN8UF/1CCIamKTAUox3O133pjBLEjR6XZYigSU5SITPT20o03kGGFF0G\n0ffkuxo0FTcgziGPIOVuWyt0vcvJeryZKqJ8iFdInmg9PNmVcEQESHl9XWM/\nwy3ycySNqF1+Kg1ulmkSdMMANwpITJWxGkZtiQ+x9dGLo+dQRFUN9xj0no4U\naOKNjohyGY9CLrMNch67ZNWMBM+y3et4TGKaApcCxiL2jCCj/juqAc0rFMmo\nacdSIILcUAV6rMLZ7s5JpiNw4hdGtLqY/hPMzLnc9qpflBjuTTUDy4hJNDEj\nhlQi\r\n=2R2c\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaibu0K4jvfUzyQ2RDy2Q9KSpIKTKAGoqwxNy8WpxGogIhAMvFKIa2rENOfMO4FOmdOHlIrimNAvguMOlxaXMo39Ov"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.366a5b98_1532378194595_0.13787840559999354"},"_hasShrinkwrap":false},"0.13.0-alpha.1366cb77":{"name":"@syncano/cli","version":"0.13.0-alpha.1366cb77","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.1366cb77","@syncano/template-project-empty":"0.13.0-alpha.1366cb77","@syncano/template-project-hello":"0.13.0-alpha.1366cb77","@syncano/template-socket-es6":"0.13.0-alpha.1366cb77","@syncano/template-socket-es6-validate":"0.13.0-alpha.1366cb77","@syncano/template-socket-vanilla":"0.13.0-alpha.1366cb77","@syncano/validate":"0.13.0-alpha.1366cb77","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.1366cb77","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.1366cb77","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-X3PNzrHByp5ZW+MU1QFoxee9DLlnpW/omKL1bGDfRfri+TJSvxOyl5LCtH90cH+GqoAYtr+fCEGAqPx0auaEnw==","shasum":"f082d1eb341191b3662d0d8ed8902743fe82ea02","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.1366cb77.tgz","fileCount":171,"unpackedSize":798633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWtpICRA9TVsSAnZWagAACDcP/jk6HK3JasoHD4gbYhuB\nfMZvTz7ubC4rVs6WK5w/LwkbQw7GccjvwmPK5rWxI89OWYQT9od6eGe04z4E\nU2CgcL+jadfjg4no6KjJYtBUXYirFfNkL4eKeF1F3Mh/ytgbh6sflOzUNRs0\nsBEWZzqeieJdVtZeV5jqr73CDR4qrUFEI+nc4qQ8yeOxVftwk0/CzlTVa26V\nK/I96q+PMT7M2rxgUSsInuAzS0L7kZnFl9aXMr96RVxYkKIQ6wlnZQIe+ZkM\n9lJdhz2WQpUclTDAYUM252vYI95iH/xzNVuPAc1sNsr1qiBbPGpCMONZ+7zA\nMs8e2qNRXT/5Ox5HRtnbWATQliHS3ax4JemHf6YhwVWeZHkvKDgh954QHWoj\nT6rJY+iS/65fyVB5yADfFjHIkweo1vWzSKZytVIPL1CuHIoLOR9DEwQb7zIQ\nqBNYpoSID7RzAzHHgEd/tqrbInYgPjLCZ+iw79lPqVSM7uD55XytMxrdBnov\nTvk1kzWZXECL7LDGa6hFGO/iSW56ouk3+0u9N9KAKsRKj3QYpySwOJEVn3OK\nmdAIychHykIHJXNO/Mh49+YcCXK65sTyzXQ+RVptfA0pCoEg1MUs1QpHM0OD\nxJpByyZwws0tn4IrClTuZjryYD03FM08grtDG2LmSNhLk9GpJzjmMkpLvtvF\nZc2n\r\n=OMTU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFkcZzmmeuG0Xdss/W4n2033AU6ecvgcsl5mFPRkppHqAiEAiBJy3dnw44QnN6uxyU+cbduGe4ydf1PGRj5aEa+ATkM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.1366cb77_1532680776191_0.09747810956951142"},"_hasShrinkwrap":false},"0.13.0-alpha.e625a06e":{"name":"@syncano/cli","version":"0.13.0-alpha.e625a06e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.e625a06e","@syncano/template-project-empty":"0.13.0-alpha.e625a06e","@syncano/template-project-hello":"0.13.0-alpha.e625a06e","@syncano/template-socket-es6":"0.13.0-alpha.e625a06e","@syncano/template-socket-es6-validate":"0.13.0-alpha.e625a06e","@syncano/template-socket-vanilla":"0.13.0-alpha.e625a06e","@syncano/validate":"0.13.0-alpha.e625a06e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.e625a06e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.e625a06e","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ENmjmeTpAHGw9VmYuazrLb+h9j0FcFfd8xo8xsPqwILqE30YEK9ZmNBDFEAMEKNmQppCe0C5iqvPJyByY40Naw==","shasum":"9c3fe0f61116efc15bdcbc31f203a5a7e0ae9cc3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.e625a06e.tgz","fileCount":171,"unpackedSize":800005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbX1PTCRA9TVsSAnZWagAA65gQAJGh5KUfWm53h9/xVYEi\nP4iMTI0bqzpSpq5+0LQdc3NHyVb3c26sIIq+dMhaSIkzrEYRO5myXf20bHnO\n7+JUCocRmHariae0Q2zcDxwgGi+V4cjm1J/FPfjTehHF7Du033t+qdpKT3az\n5Aczs5rRyRqxnxWraQHdF19zAPNR7bi/Xc21Etzt2OtADeChRbIUJ6FiAZdp\nKC65X9nGVctEPQo2TTKZEGi+V9vbzKwNiDuMtoY3oVFw/9VrUYU+D6zYcXxG\nDxd7xpzCpzeE756o6k0z8gi5nGZyMTrFctLNSbhTpNEPfxVF8rN5WdLv8N4/\n99k3dCQAaGFid1Z8kT3jauLv7qkIAdZJnbQFNV5G0B9i+TkljLlksg7eG9rN\nso7sfnSN0xsAUZ65vHSpOX3cfpbJDOSTAvQhOY9uL83ahZFaj+I1u9yXH+FB\nXabzc0U0skZ3C/N4JjLQRUtRVm42eZndsmHiq0CK0Qo6j3E4niIZSDfqcCim\nv22o+KAxYRVRU2w3k0TEvOccyXP/Rvhk7tIA5PDnKSD5nmaK29ZybjNEy7A5\nmoJRWusQDxdpSe/WAk4NnV9ZUFDGdNLuXY8gWX/iTDhB6Gs5S10DYyJ+J2GZ\nxVgfsJl3qhpNTwmCntu3FQTmrgPvH48LNmJ60WUlURIIGZRMPRQjAmHVIj7X\nfNq9\r\n=Hz1h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEsFtyf6PUd5+3k1IqKqndWRxafJCOmGbQvl//OIKYtvAiB36EQ60RY0/ABIFiUyhLcKxStE8wwGP76giLS2O5ktPQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.e625a06e_1532974035169_0.487506564678593"},"_hasShrinkwrap":false},"0.13.0-alpha.4d352111":{"name":"@syncano/cli","version":"0.13.0-alpha.4d352111","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.4d352111","@syncano/template-project-empty":"0.13.0-alpha.4d352111","@syncano/template-project-hello":"0.13.0-alpha.4d352111","@syncano/template-socket-es6":"0.13.0-alpha.4d352111","@syncano/template-socket-es6-validate":"0.13.0-alpha.4d352111","@syncano/template-socket-vanilla":"0.13.0-alpha.4d352111","@syncano/validate":"0.13.0-alpha.4d352111","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.4d352111","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.4d352111","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-jjRRCDZawpMEzaQnasm8D0pRUD4ul0gdlRm8xO9HQrbi28ER1EGuqG6/WdkxY4HrWYtB79ywQOgjYl17PDZnPw==","shasum":"eb332ed82d6975a00b04f8a65313bd4a60588515","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.4d352111.tgz","fileCount":171,"unpackedSize":800005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbZbgxCRA9TVsSAnZWagAABWIQAI0qv9vJ2ghw0Frmkdpw\n9QQYNRA1R8Wyje8tdfl6Q/XkQu0kZUWa83t+jQhd8UZ/+asZAcEyGMhgT2gt\nGiuXAA1qA3hOOLRr+A01hroAvTik81E12H0pmWzDLRagvBY66w7rwDZCcrrU\nnwnSA8T80tLYawcQ8B+Wms8ggM09a3HX/BDYvOSgtCmGu7146bP64aFny/jC\nXFSTsuUhg9+V3b0K3FS1hXmEQctILRV34YJoL4BYdc7X4G6LwJsqnSndDTrO\nsDhUaZYsjWqcZF+QkAgTwDoyRF9hbzEcUeX161l9gM6jRZgM3Egb1Z62E9GH\n8F/M4xDdtHAFKGqV4PXacQUcBC1YAGNoRxZoRouk+LX1VOHYDNwUlS2L3MNP\nA77ATrDx00BMXDG5s0m/IOy8dWTXCBXblvw9U0J/63MhjkiWNuEwIoLHa/rY\npPMU4jIEr0qKpb/6Oopp6brw4B799t/yddJXxRpaHGvZzK1+jSb8k1KYfT1N\nZoe8tbWKK7iDCDZusfhdoibygjsC05hrdc0fHNqGyIoI1zNuZCk9kLTmW93l\nH5vs2I3V1G32jwhRdEd/zq2CCFi4l7OImHmoyoRqHIFfbc2votSJsV3D1zGe\nxJVr61msQ8GGLkg71YlobLEGMyP6CRBIe0i8/NCOuByVadSpio1iu8oDgEoz\nP1Xa\r\n=CZjq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB64fVQlXTO/bTWa3nvIqof19i4rhF2koke9gzPQksAyAiEAiluHsMtS3TVHvYQKIQs57L/a6O14tfoqbTC6DRr45ic="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.4d352111_1533392944629_0.8963497240513432"},"_hasShrinkwrap":false},"0.13.0-alpha.a6dc7535":{"name":"@syncano/cli","version":"0.13.0-alpha.a6dc7535","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.a6dc7535","@syncano/template-project-empty":"0.13.0-alpha.a6dc7535","@syncano/template-project-hello":"0.13.0-alpha.a6dc7535","@syncano/template-socket-es6":"0.13.0-alpha.a6dc7535","@syncano/template-socket-es6-validate":"0.13.0-alpha.a6dc7535","@syncano/template-socket-vanilla":"0.13.0-alpha.a6dc7535","@syncano/validate":"0.13.0-alpha.a6dc7535","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.a6dc7535","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.a6dc7535","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-dBFj1qns+mvCmE2va9u4AgJrLinYKXqC7bN8dx028Fj1xEjsabbPjz9Su8tdFDLKZGYeeTh1bghAR0fSxTQipw==","shasum":"fc4194b55afaeb670ce5ac5a0b6b006761b20ca4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.a6dc7535.tgz","fileCount":171,"unpackedSize":801245,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbctAUCRA9TVsSAnZWagAA1qIQAJTcCtq+ddMjzgrUNId4\nPuh16KiUTpwhA0EmbVhqBnOZvBfzzGcr7PdSD/1MVfiTqrOP5EkJlRCErJum\na19yB341j4emzWdxb5U/eFJc/BLc0jgE5YtmtXYnO1Yakv0pAn5Eygaimdci\nM08c3bUNF4ydhEsMUSlIVkZ+tHPRhOraGu5TMwJMWdEWkGhDhPd7qw4oZC7O\nvm5Y6r7EYUy2pK7sojqicnn3t/Nw090wcWxywuKfDewnJtzLnO6LFoQ0fXQe\nh0IAxHrNiAb6uqpXFHNwC8UFLpsTkWWvSKnyZmp3ZbwunLpf43ltByikMmxy\nbOeI7ZEPSSGK399U1UXQ57HleLFTXRfZGnDqWi+/HG094vCOIGZviK3VwJIl\n36x6ncBM0ffURXtPFnGvKZM2Xi+zQPLGsDnZwAL16AGlZw87IB5RXiglF7AK\n/MsLdZc6fq/heffbdkl8Ju5V5qYuck/A9+NR1B1FLXQK+FNQs1UMx9ijCc/M\nVJlx95dQPEoDJXYhiPLaAgYhAzZujKYrqA1q2ylRdnf7aY15DNWw7JAcJFs9\n3JCuMgtfAHv/bRv5FIH3sQ9mEtrZhqMe5/o8o3bd8RI+wrHQlQkNAWLzvNVt\nBB2W836qFCoCtq/PYqMrtlfGdnZndbyVOEak4CI5K2w5gEs0v4cOCer/LGdE\nSbLB\r\n=B8Rh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEtyFZ3AWKPj1jgTr3yh+x/6D4ZhHIH9UP4GdqxM5JTMAiBdQKqbCDzE3x6bKPAbTlOFW3b/ZHGt9OhinE5LkEUvpQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.a6dc7535_1534251028391_0.5128126278787573"},"_hasShrinkwrap":false},"0.13.0-alpha.21599727":{"name":"@syncano/cli","version":"0.13.0-alpha.21599727","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.21599727","@syncano/template-project-empty":"0.13.0-alpha.21599727","@syncano/template-project-hello":"0.13.0-alpha.21599727","@syncano/template-socket-es6":"0.13.0-alpha.21599727","@syncano/template-socket-es6-validate":"0.13.0-alpha.21599727","@syncano/template-socket-vanilla":"0.13.0-alpha.21599727","@syncano/validate":"0.13.0-alpha.21599727","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.21599727","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.21599727","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-p368TKolYQWDvapAlPXG+ZvFYTy0yvgx2f917uAL9FwF41/685zfXweR7FHZZiRIzXyD3j50sTVJYY9FvyF00w==","shasum":"7e7097cfc4648195c043f6ad6028fedfdeed7eaf","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.21599727.tgz","fileCount":171,"unpackedSize":801396,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbezGmCRA9TVsSAnZWagAAre8QAJe6VEL/sPRNALTAL+Kk\nlvjZch9kpsw502l8POHUdxD1zO26B5u2xx3/1JVeuUdt+5p8fFONmHqwEwE+\n8D0cVGxKiyclEFAM4VOZJY/OW2/ZAl+1rW+1olgSKaWFpeG4YL2RynM2dg2H\nPwsZ988CLXOgKjt9Aqk5CYZWhzlHjR0FwUQHBpD2BQvXZXrMzFkdjruxE4hE\ngZmfBoYDsd6ki4isxfIuj+EXmzblHbNBEs5ry+el38cTYICsSDLAxVcbbodT\nZu31Ob1unbmw4jq15pw10Lg/SQgAACPGudztFlZ+1wYNiwjIfjyCujr5SYNh\namz6Hck6vnH30522iTkunolSGmbcUpKQo/nOJDnTkx/eJvT/2z4NLlUYuoB6\nTnHGj4qfaMymvXrRh4f8OJm2izZB/arfdi5JMwiTtJRjz6lAV8aiZbLbPOz7\naQk9V0ThrI5VJsMbIUQMJsAJyMkEYWa/+71Jh7BrVfKBidK/P1VxtK1/Z6BO\nw9sbhI2Hn/cj6lf9JgVj3zu/GjzqBhiSH8c9hLSGflKudE6i7StTECAWHc7L\nZDHEqO3fwvhaX3yo7f6Y2rS6uAJW5D9Fk6Qtlnp2PZ3MXQYi6EdX5p+tCHAU\nNkCBkXjjMS2Yfn50tubgfZtTUxVB6Ex0zg5hR1WPyxgI9qibBIDP2jAyM8um\nBhiB\r\n=1TSE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKVW4hmk7IJKtVtJnaEf5iPZJmoqoPuXBViXrWLliiDwIgU1/dc327sGCgB9oT5BUbI9m2AXMoUuWcesTcEdIS+Vc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.21599727_1534800293676_0.7191450585704147"},"_hasShrinkwrap":false},"0.13.0-alpha.a1ad49a3":{"name":"@syncano/cli","version":"0.13.0-alpha.a1ad49a3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.a1ad49a3","@syncano/template-project-empty":"0.13.0-alpha.a1ad49a3","@syncano/template-project-hello":"0.13.0-alpha.a1ad49a3","@syncano/template-socket-es6":"0.13.0-alpha.a1ad49a3","@syncano/template-socket-es6-validate":"0.13.0-alpha.a1ad49a3","@syncano/template-socket-vanilla":"0.13.0-alpha.a1ad49a3","@syncano/validate":"0.13.0-alpha.a1ad49a3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.a1ad49a3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.a1ad49a3","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Bu56nCiAIBX0Fjve+qZI3Z0p2JqwCGFfKW3Fw1HCCLqgOL/xn3teEf+R0cPKzNsqJtBAjNCYS8T6Lpf0s7CyzQ==","shasum":"b1e26e534d7a69fdb9dc8cede6731e5187ec938b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.a1ad49a3.tgz","fileCount":171,"unpackedSize":801396,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbezVkCRA9TVsSAnZWagAAqcsP+QDURsYdx1fY06Pk3cFs\nyZvhCnkRVd6tl+hJUKPxTLfNBSP/tMCGv6wUYl2ROHW7HfXUiRowCe/5UVLI\np+JD15JQCpIhyQwEmO5n9NCBTYsQbcN8HKgFMq0/iEhz38lnm9DEtAmeuJXQ\nCr5tJFJQN1Ct4KjwMfOXLeC8DW5tLrdTR8Q73fUgvWXHjrEzlWFp9blB5rNa\nD9m0wcGHOqhFdSjwCTzlpkv8teI5jfJ60TB8xIC6dToaDgo9qFPqmBIM2xcx\nfarGuaeLyq1ZKOuwL/MhCzXj1LXSbvcYfShQtTeCu9D9/s5yDF1LhAH39JzX\n4/dEwwpxPLeduqFtCYfxaJDU6ywNpdpplJhjFHXIkDhxQxCQPSf05oDcJSof\nsR7syKxn9XojSWcTd6UWlcKJRZxfc32y6QKAaumeTephooYTxRoQUWKn4jwQ\nDP9cwwi+vNE2WpGaaIhTiqFMXVyEZvMMel6Rn/s6oSfIGtRMzztYmMeHBpWE\nkV877clw3w8pXs+McgPTWDyDpGukTpIl7kPO6hfIROREpkQ7V4YIp4NVZbiJ\npXnOfvnbKlR5rJO+Ml2ctX/mUd9INR33OKnRfZHTkW9WwH20DLjo2g44otb2\niAXHz7VFkl8zWxH4h1tivIc2esrG7cOlpcmuXZ2tSnj8IhGjjq+d9hJMRk2U\n+nW1\r\n=JYXw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBSGzGGmLpW216RtrLjVkG0oxLtXpDgMiGm8XsREDb3qAiA3EVX33Oz9u51q3Oa5D5AoN0BQ7aGqf+oOhMShQp+eaQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.a1ad49a3_1534801251183_0.23636980093211357"},"_hasShrinkwrap":false},"0.13.0-alpha.2ca5a68a":{"name":"@syncano/cli","version":"0.13.0-alpha.2ca5a68a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.2ca5a68a","@syncano/template-project-empty":"0.13.0-alpha.2ca5a68a","@syncano/template-project-hello":"0.13.0-alpha.2ca5a68a","@syncano/template-socket-es6":"0.13.0-alpha.2ca5a68a","@syncano/template-socket-es6-validate":"0.13.0-alpha.2ca5a68a","@syncano/template-socket-vanilla":"0.13.0-alpha.2ca5a68a","@syncano/validate":"0.13.0-alpha.2ca5a68a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.2ca5a68a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.2ca5a68a","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-C3/hszNZ68Ok0NVvQFcFnRojxXefRQVliKGdQIK2GCEQxLQyItlpNs9ne/CeX1OLpL66E6f+HTVI6V/gkp0f3Q==","shasum":"ab64b548bf05a056133581a0eb4938327f9147f4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.2ca5a68a.tgz","fileCount":171,"unpackedSize":801596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbe9wXCRA9TVsSAnZWagAAu0EQAJ760GB+B1giFJdNz/5O\nesuWUeh6WLIJxgESPq3T+NERe23K4qPb48u/Mmr8MYacDgO5RDCQaQrELRa2\n900EodM1CXJvFf3fU7/HxWCrP320rOBr0GgmkQda35nWymm2mIKiOD/u286V\nQR+kgya3lYuGzgl0uZ8ZmP56su4xW4sqUUfO2yrVUCWo+BRCOyYIMXEiEhEY\nSnOk7qkHuKnHuj9afkGkonrIhcWsvt423tkaGcm+PJ2SdT51q8XZHHdMTXtZ\nOxCfK6CVmos96scS7fUU+0SzSrsYBgkmKevosujDgvlLD/c6j/h3wmu3AC9O\n2XMPKieh7uaLv7C0dxwqHhCnWqL+ezKtCSELns+s1MCip5i6kMfgIa0rEtt9\n5cMB6tpnOcPQUU5r77OVV64nJtKGKVTa2O1UpB/mFlHM7iH1hWsy52f0NnM0\n0APgpreUQSIUplCCCE23S+p+YnqzrLG0oK+lsv2BWsC07oX7MPJYSCFlTuNi\njW4iq5aJdJe4V7aZGxVYLnFpyHT7TscFfszZ4UKx1TrkXRnvbCGWuJehRkjI\nJR/B5g+ytYfCKBMZY4uvQIpuDsPb7uSI6YM0NO1rIq2t+ZLY2NViJM1yN+Bj\n9lEtMIe82xF+VU1E9nxk1XeVhNvbJKPCgXULDBhhzsBXnXPeKJooK8xiHHX5\nB//Y\r\n=N0FW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG5b8m0WQ9Q+qWHzgSDrVgapRYsLKvNN/rdA+LeiTb8BAiATU3DN4INeUtmBaJ9w9F+LbTGNGMgjY57Yk6131bRWuA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.2ca5a68a_1534843927199_0.4638405563578758"},"_hasShrinkwrap":false},"0.13.0-alpha.a7f34cdb":{"name":"@syncano/cli","version":"0.13.0-alpha.a7f34cdb","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.a7f34cdb","@syncano/template-project-empty":"0.13.0-alpha.a7f34cdb","@syncano/template-project-hello":"0.13.0-alpha.a7f34cdb","@syncano/template-socket-es6":"0.13.0-alpha.a7f34cdb","@syncano/template-socket-es6-validate":"0.13.0-alpha.a7f34cdb","@syncano/template-socket-vanilla":"0.13.0-alpha.a7f34cdb","@syncano/validate":"0.13.0-alpha.a7f34cdb","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.a7f34cdb","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.a7f34cdb","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-80+EIdVc4lg6Ep/WZ0KszvYvWv6Cf4URLotF87W2QAeFMTz06K0DESG4lJO9MLIXEbHfPfUOWWClA0LlVQlfdQ==","shasum":"a18490edf6fa08d583679f15baee4fde47103c8b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.a7f34cdb.tgz","fileCount":173,"unpackedSize":807309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfRdoCRA9TVsSAnZWagAAxxwP/RZWyNmgqhLpsgVJyBb9\nJyRzPQ37HpbKpTW6o7k0DQNUPqm+DfpZZ/xLvY8k+uRioFX9naTMuZALFbyd\nrWSgp4GXqj9dPK0Rg8h9XMlhvAIZ79wH3+uce//wWGJurjMeovrcTxidehpq\nbDv7Wu8uLiMYQsbLNwV8MQVtvBVhWLoBueNtr9mCw9nzRPeS968ATzTVyZta\niu2PFGsAMYNx+CwE0hvjhEIp1BL9qmx9pMZqVK8EY/tZQTLgiC3O1aIMulBI\npzu1PVJmVPK1W9fXYw0K6FvG2kontEcb6tCAWeRPL2eh1S0AIBbQ3alVFpCK\n6wqwf4dM2ueUWE7ZfrzRV48OnhxX59D45I5IXR9+/RS2GjHoqGjHgESfueo+\nG0vcHYXVEfXzJwQqo4nc8fjk+GRpuSOHvM6Edk4YRzfg/34NPb9EWSoybtlH\nNsVLklPo3XeboY+ExKIMRuFgCDD/yJwwIxWGUETUHMHxyLKJ9aceVifvu3eD\nEaD+sZwSCfor+0cetsfP6b4o3t1kRVIctkDCYDRYY0vKYFMAglO0DBeNkn+F\nydhCtZujzWOVPCYJw0HK3sY29lNnBarNp5J9KET6NTBDbPYGhA4vk+F+v5jP\nQ5QZMjNRuh4UR3CrdrqwG1ecgFViCTsWkghvWZSz8J0rOZ24o4hh//d1aiCl\nIQ3F\r\n=uZ/K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDtolI5PHOQvK3mxbyj1FQnhBI5lXzOym0bh2ID5+xNpAiEAgnIdoULEszRTE03PXG5NGXzWwwmVEMq2JQ82R+Ck/n0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.a7f34cdb_1534924648170_0.12716089974107492"},"_hasShrinkwrap":false},"0.13.0-alpha.e00ac5d0":{"name":"@syncano/cli","version":"0.13.0-alpha.e00ac5d0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.e00ac5d0","@syncano/template-project-empty":"0.13.0-alpha.e00ac5d0","@syncano/template-project-hello":"0.13.0-alpha.e00ac5d0","@syncano/template-socket-es6":"0.13.0-alpha.e00ac5d0","@syncano/template-socket-es6-validate":"0.13.0-alpha.e00ac5d0","@syncano/template-socket-vanilla":"0.13.0-alpha.e00ac5d0","@syncano/validate":"0.13.0-alpha.e00ac5d0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.e00ac5d0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.e00ac5d0","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-6NBF+b0TgdcChhZ3gDALSm8pIrbfs6fiSy1DqWSRo7PrwV5JTUocAIiJltB+Zp1UrXBm3fLTuQowu0EwANxKIQ==","shasum":"32e361fff3ad1b4cad77e6f3e8771f3f3a7b4632","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.e00ac5d0.tgz","fileCount":175,"unpackedSize":814833,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfSZ8CRA9TVsSAnZWagAAnXcP/Rgt0E5v+3xmdtAE5P2R\nji172G43oNcwwztqozl6QkBUN2iHlAOtUH5aYyZiJU5Rb+P4LzRBUY3bdH0W\n9zzVkx5m2gPp90DsHZBW3Bq18jgUvzRh9kqMl1IDvtChSmAqwxoM7A7Ek9Wi\nkoWLqIB40y6gQ9Y3IQaG4iJMphIFadCSeq8dBqHabtOOAfH7H2uMI+GKnRCx\naKAmfuYELpKk7r2gHt55eHjX4XsBt1FpVrq9FilhgZskuvZyY4zy0svvjL2+\nn/9DqYOKQx9xUhJJ3kZMKCiW+a3WsaIRrwRuPLnpqLXXCP0zG8ZOtt0XPhbv\n2JUUAknFFzRBkR0p/Bq2vPO2CeKNOFRQlyWnTDS+RvLD0zNU5HjRNOPhGbrL\nStbgrhvdcBh7u09rEjgg4OVAN94KlpsTyLx9LWbclAI7UA75un6TfXANMggh\n1H50dCQcxkvfSpwcNJjiOtoQod19Y1Ks32eLCznhVjos2X3gNuChoE0/tVZW\nPXbUUFYjZvU7FK8DgoUwmR/GuJ3CFn6A2IofALdyMyOT9k0omRnMXrD4BEwj\nNBAJ0GLjPDDktskAB5s1Beq8X1WHRvL2cxSDOxwxPm5naltndxKrJJTvSIQY\nXhYACTK2JWzDKynmVG2BSSBaJEq1b7kiR3+efciGlOOfVogeCGhA3agSUCIX\n+Q0q\r\n=wtyg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJSlmQA/Dwk+BVB+4PlOPCTgvUcH8ivQsqQwih4otX8wIhAL775jJpB0Z2N8Vs56gFYeZWyWebG7/zvlo/GDcZUjNH"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.e00ac5d0_1534928507389_0.8712095825758535"},"_hasShrinkwrap":false},"0.13.0-alpha.d88959a4":{"name":"@syncano/cli","version":"0.13.0-alpha.d88959a4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.d88959a4","@syncano/template-project-empty":"0.13.0-alpha.d88959a4","@syncano/template-project-hello":"0.13.0-alpha.d88959a4","@syncano/template-socket-es6":"0.13.0-alpha.d88959a4","@syncano/template-socket-es6-validate":"0.13.0-alpha.d88959a4","@syncano/template-socket-vanilla":"0.13.0-alpha.d88959a4","@syncano/validate":"0.13.0-alpha.d88959a4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.d88959a4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.d88959a4","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-l6dmbUXE12JKxfoI0elHotVewL0PskU1VK7Nnx/MazQFoTpCf+E8vvQ9uXTcN76VMyO7fsRKelXEkUg3VX8SZQ==","shasum":"207d3fc3e2208c527ff1df6f8afe2978426db4e8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.d88959a4.tgz","fileCount":175,"unpackedSize":815148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbiQfYCRA9TVsSAnZWagAAUCkP/ApkJSZ4csqEAcZCVk6g\n83Tpr8FNPwN4pvQZbAWPwfCfUx3xgLULnZvuyZ2v2PuTnA+hjnnKZcaRxsNv\nH7z/7rYnl7rJTeGtk06hscimiZyriwdbCNbLH6dygVtReCcpRs8vT4MgAjp9\ngUEXuAc3Cx8ZQ1XjUPVMLrBX0mAjPwcdrbWhM4Kw6oXDiaLJ5mRV5c5J8yw+\na8f9qmeg1gv6AL0zm7Qv0HP7d1OoFyhFs8nuIbQjQGXC+c+N6VhEx+zTrMyD\n8We6+T8u1zPVBVkyBVfcF+rh/F+dTLrYt+5pr9vv4pw5YXi1Ej+obcUXzURq\nmhRGjMbuj8y++r1yjBOzCCyTm5LP787gC90/eUN3riSvINoviVe291LtMQNr\n4dJGqT2uM9W6fFEQ1nBGOFAo5EvjoyDeR+kuF/gXjUvjXEk6/hq74H69PKwn\njo+6xiNz5nTk0r8N8rq//SkvEJ99dFIziVSpLDUMsXIxn/7dlcDa/V4lgqxE\n5X0IwBhOBm/7iIANzCJTqjeuYtzT43GCbLb4vAVPAliaR51/wP2gcKJyVz8f\n2Qr7v8msuKqBsvevqfGfuKK2G2cnGJ40vkbfj98F0VT710iU+gDuh9HZ7LRq\nJA2liUup8laVzWSIgJFvq+Hb5Lw8MAnY0FjuT4wDMVB7lfdhsj5qP+pgo8fU\nuEFA\r\n=Kop9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVmVsI5XBZ7JChMLS6nchb9IPJ5GdpIzIzTD0MeMWhBwIgSLlg2tZJY/o7W88PP7bJqj7NgDfQxP2GzssyS2EwM5g="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.d88959a4_1535707095301_0.8841847384674868"},"_hasShrinkwrap":false},"0.13.0-alpha.cad2ab63":{"name":"@syncano/cli","version":"0.13.0-alpha.cad2ab63","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.cad2ab63","@syncano/template-project-empty":"0.13.0-alpha.cad2ab63","@syncano/template-project-hello":"0.13.0-alpha.cad2ab63","@syncano/template-socket-es6":"0.13.0-alpha.cad2ab63","@syncano/template-socket-es6-validate":"0.13.0-alpha.cad2ab63","@syncano/template-socket-vanilla":"0.13.0-alpha.cad2ab63","@syncano/validate":"0.13.0-alpha.cad2ab63","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.cad2ab63","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.cad2ab63","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-RPTFgtmYvs7wVCi9oTf8wjajUgAQZe9tkLAXmazi3duNsCFeuHgBdK5vD7R5pIpxMdF/CVbGVRDnf7r6xxl8pw==","shasum":"bad7fc2a27839a28a8a91643ba50887d4e352d7e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.cad2ab63.tgz","fileCount":175,"unpackedSize":815148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbiQ3mCRA9TVsSAnZWagAAS1kP/09rOx9ajDVHqJuKdjrn\nDife3L5tnREbCn6uauOh+v9JfxfKXN8tzUdBd2yOHUB/4TuBv+3gSKFJEN9a\nli08HJCRs8nqTMIkjcL2RuCJiSOP3SLv11s+brGQ4k6Wt1IDnFd8Co33C4Ht\nvyfHOr5yqD+04s81gAuScxpAVUMrT1l9vWoQIwE681hSMDZg6I3chGpQ+LQk\nrdsjgTMN50nrg80Jm2JcTFXp3n9+hGTrR1j1tMFqsVkXUBzDj1iVYVX6K13o\n941BARPpQzY4vR4RVGIAmCFuQ1PnqElMYD21HSQgEkdgUIrdnfPwSXSw4OCK\n1UVeOOJbCR7dhr/CaCCkU4DeroX26WkzNrp/EgzYb4Rp07drxAZOpKHF7vsU\nF1rvZMv8Cg90jijZR8UHTekRAOIOODh1JNV8I1neZ4r+fKRfF2wKyJuolf+v\no/ATa0Ch12zWCM3UaQ9mYkyDarLJMMGuD3MnznzkgZMQ+kYbVSJ+D5gVZmo0\ntltYryml3BV9lxF7DaJ6GhUelAr/0g8Z4Z5rx87End2TjPZIZwJhC16U8KKB\nuJROeC1Z9eHO2rNulahRPNZ/Xl0VS6pcayNkhAibM0C+KpjfGuifwHH7YW13\nJ6hwyHkEb1nAaK3/4fMf9ifNor8RX9uc0YdyuhS9a62HcDBDCu5e3OVtnnUt\nJg+W\r\n=Qjo4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEmgILH86sTb9CDVjcAOgrE2/Ugy25iZNHTppiKUKgmwIhAOzzTS2C/DjQjrPCu1XirhT7Dtk3/jsUyRdMQp/XZmHg"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.cad2ab63_1535708646270_0.49138048519574085"},"_hasShrinkwrap":false},"0.13.0-alpha.f4705a94":{"name":"@syncano/cli","version":"0.13.0-alpha.f4705a94","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.f4705a94","@syncano/template-project-empty":"0.13.0-alpha.f4705a94","@syncano/template-project-hello":"0.13.0-alpha.f4705a94","@syncano/template-socket-es6":"0.13.0-alpha.f4705a94","@syncano/template-socket-es6-validate":"0.13.0-alpha.f4705a94","@syncano/template-socket-vanilla":"0.13.0-alpha.f4705a94","@syncano/validate":"0.13.0-alpha.f4705a94","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.f4705a94","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.f4705a94","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-i3MZDXpaVNhvGdUdB2v6f3jz7KBZFxdVlf/j/WKOYJDjT4crP5HBMMFNgIxlTo+EHi3BHMCvRIVwLvh7/YZLgA==","shasum":"0cd4eefcdf001a676ad7bf1f7cfe053c8c61c13e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.f4705a94.tgz","fileCount":175,"unpackedSize":815334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbiS/ZCRA9TVsSAnZWagAAhwkP/Aqs8y805zOdF1YwiZVv\n7/Es5AMquvy1E8AGm/LsIWr/4JtAHAH6SRY9T/mAq+Ys18Tuci8vazw2F8PB\nzk5uuEMrV++TTCerdN1UvbpRUMU/KOlUto5NqiagF9q1IyBXYjHqG7ds/z1X\nqcJjtHIzs69pc86adR9Zl1xJU1qbv30ahUznyk2iU2NS0UxLtxtcntdaRG8C\ncCWm6/UgDirnLR6lSLCDe1/4/XAEcSOCzxYWpMHOES3u6vEJLcfAmB1DoeHr\nohdPyofdXj5w5s8G1ic62n02AXoEH73IfsqlEw6pzLgepEuqDTC0xkZdOyHU\ngm36z1wm8SI5Wov750KL7PEf+HwPw0d5o1TsbOWqBDWkxpOHgIZZtxkvCNXp\nI4W4oYO/v1NeWkRfXKHbrYdStWs1O5Al0Jru13oonkpLoEpS2ARUzdWVTxlK\nv9P+wK09KRZECWYgziovDEu0sSAFRx4ZlIS0dafX32ojrIbvylmWlhYgI4re\ny1c7KUMkBahN941Qv80LCku3g9aQRMSPvvTUWTcot/bNkKZvcLQqhP/Yon6U\nkCbo5dhHmgulwSvzOllJrma17wDbrCx5Cv157WkEkrTFelaIZJn9R3tuGBip\nWpRCy/DYo+tWrAcEaLaqBgXhysWXFyZEf1BEZNRNRYa4ztHkeyMGKP3f5VqL\nwHmk\r\n=n20d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICId6rN6tnbBltnButvK1RybckfB3VUCMCV9BDUTODgwAiAQD3uPP2Nt15aQZbLA9GJGLydOyKAgIxucz65k3vsaQA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.f4705a94_1535717336336_0.21137436774036145"},"_hasShrinkwrap":false},"0.13.0-alpha.876ee104":{"name":"@syncano/cli","version":"0.13.0-alpha.876ee104","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.876ee104","@syncano/template-project-empty":"0.13.0-alpha.876ee104","@syncano/template-project-hello":"0.13.0-alpha.876ee104","@syncano/template-socket-es6":"0.13.0-alpha.876ee104","@syncano/template-socket-es6-validate":"0.13.0-alpha.876ee104","@syncano/template-socket-vanilla":"0.13.0-alpha.876ee104","@syncano/validate":"0.13.0-alpha.876ee104","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.876ee104","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.876ee104","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ZVMEyiSZXfO3R6hbpW/NCLi20nd5SIb2k8iJ8y4B/x0AwWwCn227SRoTUr8sY1yOMjftSmpGX3dV6/7Nlkccrw==","shasum":"9d746bd8447b29325ae26469e1999064082f704d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.876ee104.tgz","fileCount":175,"unpackedSize":815334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbism0CRA9TVsSAnZWagAA1v0P/01bZ1eiCKXh3QAGIGVn\nLTWVzeEGGH5rHeW55m7qDciGS1ZNOVmqFQrOvZxmD0gnd27QTURl0rhgC3cI\nGrs30vj7yrl67GOmJMkPTdaiLWPj0oCTUZR2IJhWje6vRQk1hk7s74fBbaBs\nJ1HUx7qjTe2/RpbE9DU31FeQ0QWX8giBITB9C/tW9xoBaaJgAHIU2mFXYOs1\nQqWSDOSlWxQxqPl6NBx0pxuc2+gZRPlLkZ7iu8EjxH65ZGXlv+dwPghHcGY0\nQRWBMKJKQlVlTUtdB0NVqSxu8iCx4z9dFX5ru3ijqvywyIiu8aXHHUXB4cU+\nZDQdOZbIQvEmDpBy0522ZRbtlqS19WuJVo7Rl5GmRBx4pk6q7H0unNXfp5+0\nmhEyvaj66wQl6RxLwxc8qYMPOmw+mWJwqBGMczP8V423xn9cLWb64rTfm7qV\n/oJpbsC5p2e1RGOEbVFT5OCFNin0kyJO7HlAp3dVblxm0TuLv54XCnhW4ucF\n5eY8DNYRMrDbQ2N69rL2esFtF8dPyEi3j3DyhfC85UuWLT/M+F7F7wSWULid\nd4UpNJ135E5CxbNsbv0EJYOXc2dgYKeNR0rikUoCT2rXPPHVT3hYCkROQqpv\nhOd7s0DpZD7VNFv/lBoEa00ojcmwAPS6WmdKCJs1pMP1ezpo6BDdtwoBpj90\nsf05\r\n=OT//\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBTrQSGf0qe/G2TyTnQB8LcOVUo4WFsrR8bZlcqNgBPDAiAVUEs5PykNXVtn6EmqHn3rtqyYbga3EK6kScy9PPEWdg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.876ee104_1535822260129_0.7621501652076452"},"_hasShrinkwrap":false},"0.13.0-alpha.951da2cd":{"name":"@syncano/cli","version":"0.13.0-alpha.951da2cd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.951da2cd","@syncano/template-project-empty":"0.13.0-alpha.951da2cd","@syncano/template-project-hello":"0.13.0-alpha.951da2cd","@syncano/template-socket-es6":"0.13.0-alpha.951da2cd","@syncano/template-socket-es6-validate":"0.13.0-alpha.951da2cd","@syncano/template-socket-vanilla":"0.13.0-alpha.951da2cd","@syncano/validate":"0.13.0-alpha.951da2cd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.951da2cd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.951da2cd","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Y5R0vEmZep6A9DA4cpy7qlB30XWic91aHR80gCcGoT/qGe2oeNL3V+jPALgZoV79vthtWhFKRimKYOgNbtrESw==","shasum":"cf2bcff95c7f883863d88faf0c5fc56286159b40","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.951da2cd.tgz","fileCount":175,"unpackedSize":816581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbjZFwCRA9TVsSAnZWagAAvnYP/AraTqaJhlybN82os4JT\nB7J6xSWzZaSPxBTGM0F272QJaiE/GJWGY19bNaBTar3lderBWobijnuSH49z\nzjep2qI7WZOnONwp/ie3XazuYKFCavPR+uMx34MhzO3XiUSP5wrriz5GXE6n\n0sRIkqWCM4CXdmb7CPfvH8Xy+2AG7JGjXNmzjylVZg+yhlkv9gHOwjxIyXtm\nWDnbTIP+XgF1/tje4wfUGgDo3LAUpDt/+FKhs8uC9mkzL/T9FwJJUkpFQHxQ\n/1Owg5j0x/XYcWokmNuzEBnaCroyzDVAdYqxTEMLbfEGmDSiD7QWjrjZm7r9\n6Gp30LQDlvSQecfJz6AahpSEyKo7U+zPrmccaCV4YbM632dwbBVcRTUmpzma\nBP2tijE1mkpwhF+lVPp6X9T0RuVgdRX2CKG1xWT+j0bQPbUCvb195v8cRrhc\n7HjFJ93KMZ/CDfhE4suTPbo0nimHv7sjatuFrjOrycgN4/bQSlXqo8HoQEim\nccDYO0ablohhSlFWCfRIe5cRZeeJeMOH69CK7UwbLUpk5fQTQ/kNO4wyA+jg\nfZJvPbQcVlS3G61Dg5mIfWfrU2QpqlMGbyIYZiDiMFwRFZu1g2rTP3d2hVNa\nwxMD8dORWvFxJj3pw9Bpzt1ln/HfbJ3mDoz8dQVSFYIFJlD9hYph4xhwps1Z\nnhFy\r\n=zTML\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOyYliPhqCYoambGNv59ktnXMfQWt812it7fLZZmg0hwIhANhPgihFwjwDCbuqu5mc1CsIvXYtVjJ4TcgHwHZ2w65P"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.951da2cd_1536004463847_0.6759857233234581"},"_hasShrinkwrap":false},"0.13.0-alpha.19e3d1e4":{"name":"@syncano/cli","version":"0.13.0-alpha.19e3d1e4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0-alpha.19e3d1e4","@syncano/template-project-empty":"0.13.0-alpha.19e3d1e4","@syncano/template-project-hello":"0.13.0-alpha.19e3d1e4","@syncano/template-socket-es6":"0.13.0-alpha.19e3d1e4","@syncano/template-socket-es6-validate":"0.13.0-alpha.19e3d1e4","@syncano/template-socket-vanilla":"0.13.0-alpha.19e3d1e4","@syncano/validate":"0.13.0-alpha.19e3d1e4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0-alpha.19e3d1e4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.13.0-alpha.19e3d1e4","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-dcRyq9c1eW1PGtjycAgjdZGPHRqnHP32h3TT2mbDH3a5UMpLKDOkPOBD0Y/oFYL9jG7X20f6Q/d6qOGwEd9iLA==","shasum":"4484f81062737e192130445c25eaa3585beafcf6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0-alpha.19e3d1e4.tgz","fileCount":175,"unpackedSize":816581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkR6CCRA9TVsSAnZWagAAQtIP/3aACYKdfErAkq685DYe\nUrL6eCUbKiibvqqv/n7wRLnGqAVJjOe4BoO+vm+pya3aTAmxiOutj1JeGoVn\nqZf+GUyri+v9H93c7v8S0WmT5eKPU08Kx+y/vySnpDaEiSFMXKDVjVP0YU19\nQ7Jq+wEmyphvUaEeM98k6x+i6J46CFpcKpgUj2tgDakZP0HilUbNm9EtY0Ym\nqPiTbnQE7WcvoZzHVzb9hp0kD5FbRgQLwqsGl4LMh6ciQ8tdTItJGlP1ihIk\nwUdZccPSO39HtD0qAZu5faMaWwy4dmbDZUCpslHgkvfQCAalwqUe/NT3NJmw\nm1TaTmQL953nN8wEmUZKkSvAt9zgUtqOKt0BpTlEekvOjF6r3tIK0fyJ5hSf\ng+k//TZmHtK4lQ6uiENyUwxXSgFaHjmJxjqndpm4Zbm2awk37GaMdZ6ghqms\n6qDUSUGW5nV2W8v44Bg7x9ldvsDofjCY+56ZQTNwHK712TRwbdNYDxUQwIHm\nH/dy2gyvAuY5QzmRWF8nNmb9TwBu88hYYSqYeg3VK3AeUVah2ExBtlvvihd+\nvDsB5mCv3cjrCByCfzCvDBQYxFN7gpSjGcctJF7wRZkRdj6y5yMnqHjyeBv/\n6MzzX/xuAuyMi61LY4Yj1dyLNwUxxPnPxUPobaDt1tdTGP2vhCwDaBwAKw7r\n3q7x\r\n=wcN/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdfoxcX7G6GvKyWHlaST7zdMKASFhrb94FiEPPC6KlZQIhAJ/iHO6T2VPi+2ksrc2mVcHNk9gXP+wp9CiHGBKvjzsk"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0-alpha.19e3d1e4_1536237185346_0.8650902380936594"},"_hasShrinkwrap":false},"0.13.0":{"name":"@syncano/cli","version":"0.13.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.13.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.13.0","@syncano/template-socket-es6":"0.13.0","@syncano/template-socket-es6-validate":"0.12.1","@syncano/template-socket-vanilla":"0.13.0","@syncano/validate":"0.13.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.13.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.13.0","_npmVersion":"6.3.0","_nodeVersion":"10.4.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-YHNO2ULBVdWVB1Fcfs4io1zR3QbopNy8/wAu/n+est9c2WRnPdNYg/FPLNEJMG6KYlnBQfciiy9jwZM/2mMbjQ==","shasum":"5a9ef1b596c439d38d02110e74ba434a91b1d28d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.13.0.tgz","fileCount":189,"unpackedSize":862976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkTtxCRA9TVsSAnZWagAAdRwP/jhqdRvwbEFObWU8CWD5\nG2/F5CL7l8ycXsNpQ8dobXgbcW0J+5i+f+5olInrEBhPK136MbwLub4hXxwq\nWdX6XmvjBMi5uD39s34L7jL0fsiZ9xn/Mnywn5QRDfq+CwPEYLgNgapi1+Yk\nZj7ntCmto6qVNo0QJ0rHTSV9ZfN/nauvSy3rfkn7s4U+LvO2qRXGPb2FUlOg\n/bqTI5dubyuaCitn+T9WHAj2lDGEyJjYf2hqdyabwTtl/+7SVeUdKOhMUBwc\n67Gv2XEooY0iyIm9AWF9TVpq9Aoal+X30gLw5f2biSgBZ1ntJUgtdxCwQHOr\nFpeSd5WtN40tVSFt9LdVucPfnwPxVZI5K++9oprNUO717HqrRacO+LhdRLmL\nrw8+PL+8cuJrSwY5dP1j6zz4bT0pBb8loT+2j+ZvxfBTlfX490o8v+/NKJ+1\n78ZV0AqznnvambUov30+1ZgNpO96FzJ48ge815EeWv0tHwHSMJ9p1pxgj9jL\nbb6kde30Exmt+jegMA3PUrUqUGvR5Qe5DgoN+qeQuXD01uzhLk22nC7Ps9PF\nq9BxS8ZbdM37613E2BAk+M+G53EWcaY5lUnfkcqD+Sctiphzh5khDHh0Y9Qd\nRFzty0Y0NjvppLxpuhp4MLl5g/EaIOwwkUezKEziUBXLBiFMX9cu5QOJffX+\nR5TD\r\n=MYf4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj+ZgwGmZPiuxdGXrQdG1PW9FPUrzgHCzICNj03v2IPwIgOX/6Gzfawglst/ovAW8lxcM5qys/CmZUyBePQKEh3s8="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.13.0_1536244593089_0.2019361503861543"},"_hasShrinkwrap":false},"0.14.0-alpha.aa5b01a0":{"name":"@syncano/cli","version":"0.14.0-alpha.aa5b01a0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.aa5b01a0","@syncano/template-project-empty":"0.14.0-alpha.aa5b01a0","@syncano/template-project-hello":"0.14.0-alpha.aa5b01a0","@syncano/template-socket-es6":"0.14.0-alpha.aa5b01a0","@syncano/template-socket-es6-validate":"0.14.0-alpha.aa5b01a0","@syncano/template-socket-vanilla":"0.14.0-alpha.aa5b01a0","@syncano/validate":"0.14.0-alpha.aa5b01a0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.aa5b01a0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.aa5b01a0","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-8/cfmWovOopboEkrQtMcfJeYcliry0g8TezkPwZBw4nZbVqPBbUBjs0APDicOGAFpa4acqCkOXFgn2C0om2/2Q==","shasum":"d29e775c8164f0a691182c4c984ac4ed701ace69","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.aa5b01a0.tgz","fileCount":175,"unpackedSize":818873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbkTy3CRA9TVsSAnZWagAA9TIP/Rg6gX4h4YftvgSs2L/2\niECBYvyU4R/pOdKnU9bgpM1OhW4f1yzQqMc6I7WL9LuDbz/q1ZRIt/OP8LNq\nA7eNVmVOcfWm0BEyPf0gUXBq4usHnY84iq8RRs7We5LM3Cy86c9Ah2Pmsxa9\n74+t3wcprVsZchdRllmAHXQld77o0IclfWyAC3AcrOA+JsyKQjYWPzKOzGdO\nTk8l/AZEkCGFCB0ntF70NEmpSA42v0JwW/jYQua8td9rhDF7/e9bnyTha0MV\nacOo0t1OjkhrIqs7C+oFaTO+DiM5kzUf1sCRxbjtLlCjjzt/ALCeOd5ut3Ng\nDBZW4404/sf7142L6hbONtIN0fXxGb4UxowmQtCeC/+UWMDowUEzhKVwNyZz\nyWiv1H4CiooDRIu7F33xTKvHemFVjmpu5VmxTXxVyUC1BY1lox4An4NyZv7s\nLhySEFxJVv71vxOHzRi14nEzuLjKAuCVXFbaxeB+teHKxW5T7twzgfDtJ+v/\n1joS1Wmw6yUEU4a69iDpZZKvT7lqrVsYuanrbub88d4F9jA7UBqUjoDT5hYA\noP7TaACKFuL52wK5+3/9l1SfXHYFDq+z25PN3dnc7sAIE6rLc60Nbokmz8Qm\ndG/5FmbuuypJpCSAnOW4i2UgDu8KCVNIy72X6DBnQH1r5bSNhz64AVD1YSPe\nRCdo\r\n=0Cxe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBU4ONgF8As6bqZIwvr2vUv+DbczkIAzFHbuYZ3gdB+gIgSL7ZLgodAmq+7LVFFFDbP3dlo4WTyHLSQuc3c5K0r6A="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.aa5b01a0_1536244918200_0.5468572648189716"},"_hasShrinkwrap":false},"0.14.0-alpha.5d7d2343":{"name":"@syncano/cli","version":"0.14.0-alpha.5d7d2343","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.5d7d2343","@syncano/template-project-empty":"0.14.0-alpha.5d7d2343","@syncano/template-project-hello":"0.14.0-alpha.5d7d2343","@syncano/template-socket-es6":"0.14.0-alpha.5d7d2343","@syncano/template-socket-es6-validate":"0.14.0-alpha.5d7d2343","@syncano/template-socket-vanilla":"0.14.0-alpha.5d7d2343","@syncano/validate":"0.14.0-alpha.5d7d2343","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.5d7d2343","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.5d7d2343","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-W/n0UM+6Ua/c4fpU3SSQIDdlETNjOPlkEfQCObjhyfIl8A/tai5UFA9mBrOqo7eXxeEE5uqclwtMcR9X4liF+A==","shasum":"72b7316c7fc917125a848038544935f7c6a02b76","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.5d7d2343.tgz","fileCount":175,"unpackedSize":818873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbl1C9CRA9TVsSAnZWagAAuGcP+QGzrgBhmcCDgaaBKPcq\nA9bvAGp0s48OR5iVBRrU5R9oKhhbqzzTzDYoUkVM2HVOfpMoV1kKXbeukRpZ\nuBZtgPm7+rVQoOvp5TXCPyIknEb+aXr75XRA3RIUPLtCW5tuTpdSc0p2Nri5\n48MzRccKntXEnaBHVGhNAltiRFZ15lSufXXOJq/JFVXexPVC8Q9kx3p8heHA\nuX3h3YW0d1qgWtueNoQEnyNBO7FXHLdsIDg1/Qn5m/tiGXilNngCvSmuXCHg\nvMvTKqg71N2cRy/hVFNCfjUKpMqSikRZTtv54chVaD25L3gUsvauplzRtPle\nPIN1kzbPLB9iuLfwJnaqV9V2rtZ09a1rQen+uUxZbPBN4Ipj3VXsiPm6z0hU\nVCriOmZo2YCWjAxpwsW44f4aI+J2LXM3mdRxjXLt4iIpkyZCfUdaZW60SebX\nrWxTV8onqcqDwc3qccVjLzTbiP8SMZmjKBMIosoqeL6GjazOCQkWiCFCwr3w\nx0u0FtZrp6l3AFW4d7q2BFZHKYVqzvCK8PJfZ7vqRRuAf7ZUeryNBiOg1JHQ\n4ylPp/jjKeFJhong7HOP1ZCTSQXeYAmKRb2nUdgbNcjIlYrA6Ry+guYNnSXK\nwL8qLNXYCXymtTUWws0B5VXos8e+ZOv5izvvBYd943ekR9gi7iuZnM/TE2jH\nV5NS\r\n=s2r3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIqshjqN30GRh6HEpsSrxEj3oypsu5eRK+Fmj6Ttu8JgIhAMnmiJprTs8jeiHvpzFVasywlo5rv5JwFjVT9zKX0tzD"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.5d7d2343_1536643261040_0.35281494412313785"},"_hasShrinkwrap":false},"0.14.0-alpha.f1f17e3c":{"name":"@syncano/cli","version":"0.14.0-alpha.f1f17e3c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.f1f17e3c","@syncano/template-project-empty":"0.14.0-alpha.f1f17e3c","@syncano/template-project-hello":"0.14.0-alpha.f1f17e3c","@syncano/template-socket-es6":"0.14.0-alpha.f1f17e3c","@syncano/template-socket-es6-validate":"0.14.0-alpha.f1f17e3c","@syncano/template-socket-vanilla":"0.14.0-alpha.f1f17e3c","@syncano/validate":"0.14.0-alpha.f1f17e3c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.f1f17e3c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.f1f17e3c","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-KR7lmmxzUcT/bz/CuSPcdLzmDUw5yxshNob1NEPKgntQJP6yr/xPhDl5wzkTSDg30LVo8hUMdSzhmJ944q9trw==","shasum":"6c1caad01b72ab943d08881c51c0139d295a2276","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.f1f17e3c.tgz","fileCount":175,"unpackedSize":818873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbl9fZCRA9TVsSAnZWagAA268QAIyZFfIpLAGRPgwyCapA\n+F4ZjDPo5jgy7TSM3vg46gP2TOI73qI15sgVFDd406B1omgZY7xBQlPTEvSP\noaIw/f4W/YoHdTT0ylJpZMxOmjStWLmruMUhYNAES1WbioGdGh2PPl40GWZb\nupI0PRZzx2aK0/Q/28DoCqdCEEfIaiky6gOidXwcSE1eFgT93nHRADzawpuZ\n9HCL5J/mU/6mFf9P/RmKaQWl3T2a87TeNmUBuAwK6QvlPEFiNGzEIYKaie3N\nPe+BU8zDWzw4/7n+nyJxZX3Gcl2A3nYez9qR2SU8KGb2zl5/GKHrlX4k903C\nBpm1khzhOnLMb8dBn9qiPcg7i7ibUTh3zLNF3O/eM3LgHQ1iV5nrKPtXNI8I\na0pKAVhH/p7KfsI+7W2D9wr76PeJKu2seTGBoPBgKsKyM5lMFMQb01q9uIX+\n3XAFNCT92p5nm8KPRrBkTj1BAL2zFosDeWKbhXHpj+7kj9oYpuABzBre/Vsq\n9QYFQ6JQNdHTXd/i5Adt4HtO7Hzh62R5qIty864HEYkojLjKy7ltZhSB39pY\naSU5JtajaOzbJlcf9A77xuJOz5QhkESZWQ7W3fZRLdR+3cwEgmIbH1x986aS\nGleoW74fK9bbSpn0h1qG3ThIvQhZ0UXHtB8kWKvTjDL/P3R68jxpoIJU5IeR\nWeQr\r\n=v5oO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHaYsw5rj89jFAl+yERdeHbEpt1rcgJ59x0zKvf//BiFAiA//uhE+WS+VCjnerN+68JRfwaXzUSs7p9ltAqsdMkzig=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.f1f17e3c_1536677848763_0.8786901921870305"},"_hasShrinkwrap":false},"0.14.0-alpha.3ca5bdd5":{"name":"@syncano/cli","version":"0.14.0-alpha.3ca5bdd5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.3ca5bdd5","@syncano/template-project-empty":"0.14.0-alpha.3ca5bdd5","@syncano/template-project-hello":"0.14.0-alpha.3ca5bdd5","@syncano/template-socket-es6":"0.14.0-alpha.3ca5bdd5","@syncano/template-socket-es6-validate":"0.14.0-alpha.3ca5bdd5","@syncano/template-socket-vanilla":"0.14.0-alpha.3ca5bdd5","@syncano/validate":"0.14.0-alpha.3ca5bdd5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.3ca5bdd5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.3ca5bdd5","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-apeNCbeZ1AV4wZx+wK69OSoW+kh0qfisd9hAS6ywqXkenkHf3X5+eDgaMlgEoOY79f+1Fznc/A6D3VZcI3fmwA==","shasum":"64b77c39b9ebf74dfad9c28346a73be5ef637da9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.3ca5bdd5.tgz","fileCount":175,"unpackedSize":818873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbn5vlCRA9TVsSAnZWagAABZsP/jSa6FMU3X+/fXYq963s\nXfqARVOCHCmSFdJQwVLlDUR7mU46u+tLb94WDrY8j6od5zeSUeAO3iCSq8fY\ni2kTe+vzExhCELf66zzZLzSfj7Lgs1tIyjFY97gZP5+q7KrSjVMdsnrbuE+6\nBy38v2ldMCXtSQqd5ry+Fa51/boBQYEe8A6tIMyWo0fC2MybSSnKyLdnUjn7\nZAlFR9jS+xlaSsy52p41pendYaA7CnGcJDNGhfb/Qxpazxk5RrWpsIRMcVGo\n9rlZwhynv8a9Q7a9SCb8h5Xbqi9f1yNumB7sng7AnwJTspgm+Xyd6jmQo6Nr\nsnNR2JomJBvKpy67USD0QNwl2L5KZeOdP78V9e1gbWM19TSKONSKnzoZQoIW\nrQf/w+JnZQcDGlvAX49Df4r/6/WJO0V/QZmRD7KfBCmHz8fuRxi1gRLuUYq4\nW6rLojo55spV8bWgMmNJkyAA+eXC3lSUYoGqNGMDEbqIOwtyjAyZI9aF+xPQ\nxRGj9qGJp6nBRbnQhs0VdGjXim6ZHzfcKg4EMYSEHKXRq25u7PhkfAwHs0Wf\n8Dau101oDFO1nhentoarjHqzYk6SPzC7d9WuEYeYlyPSk2iQceRDYuNzTem8\n4quby4fknA/ANdpaFYzwMLNjNIbw+d44Q8Ua8/7FikzQhoL2NPHfmsGTXS1G\nGA0X\r\n=iugo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBVSuTC3/S18BdsOvZ9QAtPQ46MnlwrxKb0piS2WitumAiBZqtvrMakbTmusM9sa0pDZeSssSG35nCP9a7pQODFeLQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.3ca5bdd5_1537186788672_0.044831988286065716"},"_hasShrinkwrap":false},"0.14.0-alpha.4e206253":{"name":"@syncano/cli","version":"0.14.0-alpha.4e206253","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.4e206253","@syncano/template-project-empty":"0.14.0-alpha.4e206253","@syncano/template-project-hello":"0.14.0-alpha.4e206253","@syncano/template-socket-es6":"0.14.0-alpha.4e206253","@syncano/template-socket-es6-validate":"0.14.0-alpha.4e206253","@syncano/template-socket-vanilla":"0.14.0-alpha.4e206253","@syncano/validate":"0.14.0-alpha.4e206253","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.4e206253","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.4e206253","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Zi4sff1ZbeqO1bTqjc/rlrYN+qYAooj2Zhjh0xAf1im7OAIk+lqSag0Xci/1RRkkL40ri9l+cG7mf7853/L9LA==","shasum":"ee85303bdf0561bd261210195f7042346c42dc96","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.4e206253.tgz","fileCount":175,"unpackedSize":818725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbo5pZCRA9TVsSAnZWagAAAHYP/iZ++pKvE0fqEQNTs3qf\nC2BOTE3OxonweSMmdPQ3lse/A8xdvSFs2lCTMd3irUD8O9XKG4RTZI6TTveO\nTrmgMU6ySgGBO3m5lOAavWkctt/neLvBvlO3hTPX21jXEx5R5aMx4EON4gpY\n6ZIFbFQiHnkhj9ndiHWR8cwDdsVFelalL/FUbYONRloDYuizn0UrBnd1upAL\nWOSijmGwr0ZjamGk1YmSmbYlDF4Iq3vXwEsISzXGMwAjuELmX6FQOPUAGSWm\nwhN0Ijfrn+ZHmpS84rR8fYCSz+CVEgBzyMbd5OBqcxUvVi5sZcYFuMxgeZ4u\nPgSgZOsgA/kKg2HvbXohT39h1E3nN0aATOfMT6imGxdJ3MYXiirRX/6PUka/\nUH9f6ktHmOHAmaAnvwnjxs6d7wUc312qQw+4noF4Oqi8K2aitkRMobpMrLrC\nKddYGO6Mi4wfbdAnFQcQfnsC+nU8JsVabQN7/1LX7YUiuXYlFRsvBvpd+ST9\nsCZ7Q1p+FI4wL9yZTIHgogE58VlX4tzlRQEKiwx6EsEqXwtzeQmnidm7B9rW\neU78GWZex7soMkWvEUdxaGnevSmF1cs9DifK8N4SIFE0Dci6cMsfo+fKmxUm\np6iSADwUAfJfmQNYNL1xAURTQ/CmH2Qhb5uX3GFriLWAmf8hDsbrzuv41ePh\nhcKc\r\n=xd44\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAwXtnyiNPiv9pAS7xHFfb9573MiDhrw1U+faa/VxeDjAiEA/KXU7jAIMwsqmAw44VOeUzLblV7k6RMYd+gZJFdXmWk="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.4e206253_1537448536838_0.30314016096708585"},"_hasShrinkwrap":false},"0.14.0-alpha.55265cbc":{"name":"@syncano/cli","version":"0.14.0-alpha.55265cbc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.55265cbc","@syncano/template-project-empty":"0.14.0-alpha.55265cbc","@syncano/template-project-hello":"0.14.0-alpha.55265cbc","@syncano/template-socket-es6":"0.14.0-alpha.55265cbc","@syncano/template-socket-es6-validate":"0.14.0-alpha.55265cbc","@syncano/template-socket-vanilla":"0.14.0-alpha.55265cbc","@syncano/validate":"0.14.0-alpha.55265cbc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.55265cbc","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.55265cbc","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ANroVdlSm1V+hIIxx5BQEcd+wp7v41/u8jvjTw8g90rPORqLCKZfWp9ax35MQQFgQreeT/odRXxlCKAcos95yQ==","shasum":"99942066b97f3ae46c3c89442214f135ee3b0596","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.55265cbc.tgz","fileCount":175,"unpackedSize":818725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbprklCRA9TVsSAnZWagAAzccP/3vASqJAiCF4omutHUiV\nzb4Y2jrn6z7GCitcvRWQXkzUVOtnDhMmgBkqstM7O4OCOEOINNjqillbVhZc\n3H3Qc6cW2nufedC1b2NUQP6eN9uXT8FXR2mZ+yvciojkTT4SUR2GfnSWbuKx\ngz1kTlmp8sxEAMFBemRZ4NTE6zfKatbyIJw8r9v++Bgj10idS4bp6Tg6cMOP\nFpqxsr1vJE4/6QYdms03q2RCi6M8YgeBlw0OWxYque+pfq/Dd/41/KyJ9itR\nzgWA+c5IilkGP0ez4Ez38TBKdhpfgc+BdIn8pcHiEK4Egrq++7QariC3o2dV\nb2crAqKH0cbzgYsv3BSo2BuPi11CU/xXMsp5oXGH/A0c6GLFGgvggbm20iQU\nzVwBE6va120bobZ528Zsf0lvSWiCAcZ60eZUJ5kOjQFKlT7CJYjmQNum1eQ9\njgEQ3fS4taPDuIlQtsHW10aunymAznFrsy5OCdPvRrCcXSu4GQWotbwEcdbt\nNOIr9iQGg94U3m+rduSzaMsAKC9JmOD66IMBeDce2XJiuJYSAW39qyNOQEuN\ncepYb8ufPO2zjSIf1qO6qkd2biGzwe8i85x4M2kxXfOOyHfH72O7w54uJab8\nY4VZai0H3DBZrOFtFJhxSaZ7wwibNRtVnfadq0jZxMLFb8c8aHy25ln6PgeV\nOGO4\r\n=RHlE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmIDG/Pa+n4dxTqm426PV3zYnK8KvBugFFut/A1WHE1wIgTjZJGgR1Kibq3eBbuqeX7fMonNiaEPJ5ye1bvtCvQUU="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.55265cbc_1537653029153_0.916761751312273"},"_hasShrinkwrap":false},"0.14.0-alpha.77beab3c":{"name":"@syncano/cli","version":"0.14.0-alpha.77beab3c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.77beab3c","@syncano/template-project-empty":"0.14.0-alpha.77beab3c","@syncano/template-project-hello":"0.14.0-alpha.77beab3c","@syncano/template-socket-es6":"0.14.0-alpha.77beab3c","@syncano/template-socket-es6-validate":"0.14.0-alpha.77beab3c","@syncano/template-socket-vanilla":"0.14.0-alpha.77beab3c","@syncano/validate":"0.14.0-alpha.77beab3c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.77beab3c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.77beab3c","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-VI9Cw9Cq8beq5RTe2BLT2eFIh/y1hW+HScMIvQ+GgDip+Ifz2LT/YHr3QUSHnq8uxSnEKA3GA+Lyng0SNHQKlQ==","shasum":"4d4caa9eba80f241c3c081fd2442f805956e911c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.77beab3c.tgz","fileCount":175,"unpackedSize":818725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbspDKCRA9TVsSAnZWagAA0JIP/RfWc+Ku/8S+Pmc8dsWN\nzhpj1lO+ohD/jqtb6fKr4lGE/+YQfZZ3V9D3Lr4yRSrrymcJEqQbdSGEA6p5\n6P6ljPurNyqudnZV/Onrjh0juw6OQtcoKK8In32cs43gcRfmeAqOH183E6R3\nOGlRRLaLnpnTuQINTvLTwxDiOfpZO0tX3HgxlBv1o+Y5pS2IpmIsTeh4cvV6\nUJxK18NJGfCJ7B6kT/ht/SVUEBu0CepRXKxBrOZrWzB+8EKvRhozQ00NjJlO\nsfVtkpczjMZVnbaHGDyyv3z9UUz0tyYg2rhzeQL0oAtGVdQJ+d8PGjifgtbY\nq7+UwNEmMTZCKfzz6r+iRO/5tB/4IGXTXbykIkUzYUxt1Y+fKckMzpWqzOEc\nbA5iZZ0CgQqHigzuelMV3G6OTvcoqXet2FGbAz3DkcTPfyN4kSktBvrDUNZQ\norqeGILi41MC6z5A4l8kGJ/zc5Z3DcQ7JgkLEIkXd32G6NoHrtH2UlOMEBWg\nk+96BCfLmvYdJSC4jFMGMmtVOyhE5bo25t1zp6dOK1Txk1cnuOewnuZBA25k\njP0AxZIlR69o1Ou0lIyC5oQxBG+xgE/hfuiL+55AdZNVKA4Q0FC8w0kKtx91\nJhnN96cDLW4prP9wqz+2U7zJEYcfgPCk+qxrzDk0/P6N/zDAGkqHluPTZ8lI\nsss2\r\n=z06b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpoV8ODc00eO9gD/CFEbdrNF4Yw4RoFsUMB5FUBHYeNQIhANdz0lOzgBkAHpYcg1253zSQ3YofK2bgmC+ZyS8e2Ia3"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.77beab3c_1538429130171_0.31523549200810597"},"_hasShrinkwrap":false},"0.14.0-alpha.ee70f092":{"name":"@syncano/cli","version":"0.14.0-alpha.ee70f092","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">=8.9.0"},"engineStrict":true,"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.ee70f092","@syncano/template-project-empty":"0.14.0-alpha.ee70f092","@syncano/template-project-hello":"0.14.0-alpha.ee70f092","@syncano/template-socket-es6":"0.14.0-alpha.ee70f092","@syncano/template-socket-es6-validate":"0.14.0-alpha.ee70f092","@syncano/template-socket-vanilla":"0.14.0-alpha.ee70f092","@syncano/validate":"0.14.0-alpha.ee70f092","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.ee70f092","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.ee70f092","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-7eOF+3F04WZV2bN00v9XSh3cvJ25K+FC0VDujdd3ZinTwA1KlSNxLAw6TC2jhDcyLQxQX2xgHTO6CdkOpIcoeA==","shasum":"1b0833b9a6c5392e1fb78292f82fa59820109169","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.ee70f092.tgz","fileCount":175,"unpackedSize":818713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbv6bWCRA9TVsSAnZWagAAZg4P+gIPWxr2xtXXHNmV7Boi\nFHPkJkVWZbGVHooMzhBD9VrMcLdHIcmpSe92Bn/JxHVSDwM7x21rhz5w57G5\nsGtv5DiNGl7VKzx//V0xx0RaTBECSp3CxNfpzA7K0AKqRmeTJ6T/KqOM4WtK\nhXEQVg0iZlZ9yFNJt9fQlfbOzDuMrZjE0bYSDzltTHBwkCbk+A/jXLmbWPpy\nrE7bFtLK5J4pPEGrT9NFTrmm/sDdepycE98Vziw1wuK3x0miVSbYhgDA/Xiu\nZGyyzVaBrz05/wCilODY9+hHafYwlW/mlR1v6y5OXWU2HqxtWz6eBGUM4VXo\nweEUgMxSeVCpSeapkUE4DdAHPKLB08PmtwCcDP0W67hILesTXlliIFdQC4+Q\nj59BPeDZAatfV+osDHJ+IHBbkppMp/8X0i/yFWaexiwXAGWhJ3QFLkVbs9Jz\nRMZZKMkQcxjUmY3KQEb2s8JCCnjtsLtyUkrM1Ji1+fulP0I9ECuOrQITI8tJ\nGGaKL/nc/+EIKjI49NOED73zWk3zGcYw11FZ6WUCC9K30KU1g3KPP779h1mB\nMo9H/uJ8wWt/JPsIG7F8u+SrGT1u6M3+fImrgyCldTvHOVwSf6jSpwHo9Wrh\nHWqCXh6dhimQ51xAeFHx0EEJtREFI0ZuqFZRgxqqrKERsoTdKaOG7qIPK7bj\n3IUc\r\n=ySD5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH8h7t5WNW+sQ1geKU4sque8KutyqIcwKim/dmoQiOA0AiAk35NBtZu5D4C1DjBAAMakgCFAccnH7k0V0IlOXc4+cg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.ee70f092_1539286741808_0.11894501342420205"},"_hasShrinkwrap":false},"0.14.0-alpha.724de65b":{"name":"@syncano/cli","version":"0.14.0-alpha.724de65b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.724de65b","@syncano/template-project-empty":"0.14.0-alpha.724de65b","@syncano/template-project-hello":"0.14.0-alpha.724de65b","@syncano/template-socket-es6":"0.14.0-alpha.724de65b","@syncano/template-socket-es6-validate":"0.14.0-alpha.724de65b","@syncano/template-socket-vanilla":"0.14.0-alpha.724de65b","@syncano/validate":"0.14.0-alpha.724de65b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.724de65b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.724de65b","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-t7q+/JAgklaH9oJ2FqS5HPGPkEqADnNeA8K/mgRzRUDL4lRmeroiHk11EcmE9yxGgL/cagjM1Sk84T+BaoAOWQ==","shasum":"cdf4ea563501a045839be61693df5f2870e26d22","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.724de65b.tgz","fileCount":175,"unpackedSize":819334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbwnJgCRA9TVsSAnZWagAAwlAP/RzyACoccFN6qu/otwa4\nShokrSh+f6a5/LBqGWXwQCcYpthiJ15lOw+qX5WwyN6oe/OoL3qwx7BvrMzH\n4LS75NZh9HV6YcdKqs3ucLPsqGiRKN+dOixHGCPfEOO4u1Z28NmnMIK4Ioj8\npmKzjZeQ0JLuLPckUpYgbUBF2cYfHHlJ991EMi7wQktYgIUKqXGjRVwae/Tj\nJkRVVYeP8EA9plJXyKTu5A72MfA7LK6qEs3WSAVI9GZjAklYnxNXn6mJ2R1o\ngHwG3hCz5F+2ypfuZLoly15s3iZcfzuGNP5umG+7/NV5kaf0SAlLgGAus508\ny+4gyj1EkgrZbqVX5nMPG8jFG7E4zYvo4DfCU7FMQMIz+TXeFrsO3MaSfsmO\nQChzhAnedcHFtJuIVPVQJHC2uR4vv2fU6UzP666Nq4Q5UbKnB4jRJhjJkzEN\nWo6yLE4WhdOvqbIgrRQhErCpZ0/nKofX66lo/7AW5us3dE+jSDMbmDctBRV6\naIme7m0ROgWxc85zk3BLBgUm9+4g0ZEMk2S0ygcK08SmztL+TJPyqD3qbBSJ\nQNX6ELenxoFezeAJ+NFa/2+pdmtmsoSThYw6pIvGwg3I0vXWbgCKxG2GgKNe\nfcHZCiub/QW86if6lXbSaKQNy12910NC5yKcDlxjVJ+BeFUIX9vvkhqKmjjZ\nE3Iy\r\n=2bCv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHYMALJ87/qKNMDRZ8ifEb/sJqXvDMT54IOHXhUdiMpsAiEA88YEmbEM4foYA6YTdPXh4NmA6Z2eNLdjmSXHf9rYhWQ="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.724de65b_1539469919799_0.3827447511180262"},"_hasShrinkwrap":false},"0.14.0-alpha.c588fc04":{"name":"@syncano/cli","version":"0.14.0-alpha.c588fc04","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.c588fc04","@syncano/template-project-empty":"0.14.0-alpha.c588fc04","@syncano/template-project-hello":"0.14.0-alpha.c588fc04","@syncano/template-socket-es6":"0.14.0-alpha.c588fc04","@syncano/template-socket-es6-validate":"0.14.0-alpha.c588fc04","@syncano/template-socket-vanilla":"0.14.0-alpha.c588fc04","@syncano/validate":"0.14.0-alpha.c588fc04","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.c588fc04","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.c588fc04","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-tlwGkxroUGpU+S3FuotZHIhoPt3RbGiADm0WWhrGp3KIjqGNEpJMgKKw71OfXZBYnkHBMVJerx3XXuTxSP+D9Q==","shasum":"69ae3853830e624ed62246bc642fd4d2ae57a947","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.c588fc04.tgz","fileCount":175,"unpackedSize":819334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbw15GCRA9TVsSAnZWagAA4d8P/RpplltcVLJceZ15J529\nc+lXgJAGvQJ68hSPdaCmgv5QInodVDdbPCIZTx6SQVcFmf6Lmym/4v8G0OlV\ndfZtWAEG56GnqNLiuvCvwe3UKBJkJMZ10Fn3jbhAzVumVIALEmswQszU+XQF\n6YjVO4YNcu+RNi1hjAFUokJqnd6UgavOIQJBjwV2v4xaqmlE1aGateHLZj0n\nbOqW3RWMwkJt0aUFth1akcR9NmarUIQHb7IxLu7ukcoG59yS4ClupTnRWx1e\neGUEjXhSUHKp7y85MEyWhjJgoyjzeXXVHDSVuICr+ktDtADiY4NDnjdh/dgU\nc7a575kOVws4JRvytwRghIwOYx2FwkVnq8XavhIxWhKe7X57BE6qnFGmaDBh\nwfYSykouCgqduAcFTX30BQcW9s6k4GU2mRmErZfcA3cygsp9qa0KVkhXPKsp\n91FqH1XmQMPijWDbP08vLkoOzxHuUZz21iN6yXt2cIEyqg5aSl8bRkR9aCnP\n5ojUvZP/72/q8nCFd8kg3YdjkFFQpq+5c9RxK3KHuWC3UF37mySp/090ITr+\n7ZjW9bP6/vAk4Bq1fRib2iFsO5BYOO6HLRB05ttleRhri7YILbDK65fp+UYo\naKhkld2dchkbT57fDJzu7LWWbvTtzhWc6jzz6/oCizpk0eX/RSsiv8XFzT95\nlktB\r\n=zKN0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvL/1Xo654ave11Yy11fCBmt44gbQueR+FiUUFU8mXGQIgI8OtA5vCeaEe6zPWXASeV2gt9SXNNZsKEzdW8b42Cbo="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.c588fc04_1539530309351_0.5855601668095318"},"_hasShrinkwrap":false},"0.14.0-alpha.ec29ed61":{"name":"@syncano/cli","version":"0.14.0-alpha.ec29ed61","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.ec29ed61","@syncano/template-project-empty":"0.14.0-alpha.ec29ed61","@syncano/template-project-hello":"0.14.0-alpha.ec29ed61","@syncano/template-socket-es6":"0.14.0-alpha.ec29ed61","@syncano/template-socket-es6-validate":"0.14.0-alpha.ec29ed61","@syncano/template-socket-vanilla":"0.14.0-alpha.ec29ed61","@syncano/validate":"0.14.0-alpha.ec29ed61","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.ec29ed61","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.ec29ed61","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-qL4SO5AiQGDxtqjf2XCkI7e5epu7X7+BXlejzPJJhyg+oEuwdR1/zA52zEItbvg3skeU+vOQO6YJkCw1U/CT+w==","shasum":"402413286b55353167718705977fe7ac47471c50","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.ec29ed61.tgz","fileCount":175,"unpackedSize":819334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbw3SeCRA9TVsSAnZWagAASFIP/jhtMtW73OjdiXDgWYCj\nxPVrJY1AVAPy0/P+b9n2GgUL4mIr29DI8+aJW6XPawNh0A55+zH4hCQsPAIa\nDDfAH6I6jK7xWsfKzpaFfB8R8gex9SnDcG0orWkE80M9gWmp4tEBDGplZ30z\nVYNqyseIXCPiaTfzbiy3o7mKnQEI4bbQWzYe8zc9oGPNqRrU+GytW8y0qykc\nckwjY5DZosgi8AVy77p/J3t7vR/lWezwmsAJqT5CJxHCLn+mj6VpNgjEj9a/\noLPicEYtxOTAZH6Z9R6Gyj8YjYV02XMEO/+GLOMf5kMro5V+b+ByvoQdubeh\nkLa/Jg8keYlFNLIuv1bwOOcWj5OiUSRC+eqTcI7DdVCD/1aRfIHtTypo169l\nN1ArETnVdOH+/WSsocMsR2aOFWTnjHNz9/j5Kpes3M/YfU8jkwFgmOjMkQfr\nzu5mbQ7BT0A8vG2/tP9107lvAWjGYlyE8aPILQ+acBnlwYCGqyO2JARadpQ+\n0Io2JnvSdWkH1cUmd3kmfv7iaK6BxMrjT5ysoHZxwWWePezDMOi2YI7CVusk\nhxVKL/wSXb5vDKHX9hnYiNg0GYXRKlkPr9Vnzi7M3z54BDIQBpGMrgMK+/5K\n7G/cG/v/Jk/8pxSli39rmfTNEeuIyuybljhq9rJA+bjoeVD36fSMvbnOxw0M\n1PV5\r\n=qBqM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDm1m6NQrGmVhTt7SfAVgV9xKs/CxVWkNuJIiAUbsG1KAiEAgUENVKS1oL5oUz+DvIbvdNZeJUUDOi7qyrKApELtzPY="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.ec29ed61_1539536029776_0.13155765669847974"},"_hasShrinkwrap":false},"0.14.0-alpha.08c691ab":{"name":"@syncano/cli","version":"0.14.0-alpha.08c691ab","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.08c691ab","@syncano/template-project-empty":"0.14.0-alpha.08c691ab","@syncano/template-project-hello":"0.14.0-alpha.08c691ab","@syncano/template-socket-es6":"0.14.0-alpha.08c691ab","@syncano/template-socket-es6-validate":"0.14.0-alpha.08c691ab","@syncano/template-socket-vanilla":"0.14.0-alpha.08c691ab","@syncano/validate":"0.14.0-alpha.08c691ab","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.08c691ab","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.08c691ab","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-zkBGknkOzbUIomGkleXZ8XVXFjaYBzI8kTLiRzp0L5Axk1qDxt6Ia2QAdHFeXKMLGLx3wpYxVbJPR5SLLSlANw==","shasum":"266cefe3d7192b420bfd66921cd2ac843ed0a80b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.08c691ab.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbw3eXCRA9TVsSAnZWagAAQwoQAIlB/mRFuP4zfLmRm6ul\n4ZhwQGWzi98nclivGGDYgqFSs0zqAg9nDHWftJMU8vMOQXPrDktbo2EGpRvZ\n1Ns50vMga6EW4WPDL2vz+I/wi4ajd1BGo9qezM0HkFwLdipbguiSWR7iDdIi\nYolb2BfX5Ny59JNNgwlTwUYpXIkWq+ZuOkIQeeqsdSsRW95i0xNEnzNoEXRM\nF2zyTyWANc519xwyl+af8YdGHh1/2hBWAsJv47j/SJfLezuxUM5BxhdIhtRO\nysRMdkieQaBIYZNW5HdVSiBaOkYor+jtNVteIgptDxcLW3NFV4sODgpHbe+S\nwiffOtIfcq+d0O6y2IljhqLU4Af2OrLhXNurtwLSuikB/sGGebGGsUkL33uX\nxzearSffKMILt2qCC5Id/Wn33HtVVd/q1X+MxbQLtTclLUcQJhuYqpdDgbGP\nCCD71dJMneB+YGpM1vIgJFd5T2VwLQxpGZlVT+kkd1c5DsTMoWznVdHWp6zJ\nQL6p2m05XdCJ8b++pPD0TxWaFOLd+z7ypcdqbCc7OLfT81AsOkK9cyxmqNZp\nl1bNL9A7J+CCQXkV7iguy9sKxEMeTFuKBL46Z8JjoYwX+E5HMITsiwg+fE65\n5A3+L9p2PZHhnX4pIyiz06F2X3V3JNVN4bqYi66jSvLa34qHizDXe5JETcXZ\nlxLH\r\n=FNXz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGRYRPE+Q9D0mEWxZpurcDwK1UCUBSBdl1DN5r96Im8RAiBg+nMrtbeDghj9vL8t3/2l+HrDAMhPjQdSDZrnDNQBLw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.08c691ab_1539536790545_0.12053204669990447"},"_hasShrinkwrap":false},"0.14.0-alpha.138edcee":{"name":"@syncano/cli","version":"0.14.0-alpha.138edcee","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.138edcee","@syncano/template-project-empty":"0.14.0-alpha.138edcee","@syncano/template-project-hello":"0.14.0-alpha.138edcee","@syncano/template-socket-es6":"0.14.0-alpha.138edcee","@syncano/template-socket-es6-validate":"0.14.0-alpha.138edcee","@syncano/template-socket-vanilla":"0.14.0-alpha.138edcee","@syncano/validate":"0.14.0-alpha.138edcee","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.138edcee","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.138edcee","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-FUM9cudxCHop48l4HqV/bfvZg++L7BAmY12w/xSkUc57Ci6fm8UAWVaSXcJYkeEjH1EqqtbVpk4m+7wXgzP/fw==","shasum":"aaeae02c854dad7f35d6229b2851c1ca983368ba","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.138edcee.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0H2xCRA9TVsSAnZWagAAu4kP/2GZAV+SQsEpu6cx8Dna\nTaEpPu3tEf9L8sECtFVo6UXE0/NNPqJP+Q2zzG+Hx67tqkKvwweNaCA2gA3y\nYiXSYVgnMc3QgnJpgTR6b78DouApvNcASxvrxTiNJARxkZHrR54llo3LceB+\nUSOiOr/ZuKA+A1Qh0UhbmGrLs6FukUcKRXsbQcXDFIluSqCdVCqCrrRgIJTA\n4Z3J2RloE84KKpDA2b1WCdQEnrr6e5oBUPP8B4MADDU69xxQvkLhsqNeMNkM\n0mCerzDsjpfY5UNEERfOZSKKXAmYCwLFEU7T/YXBIpDKkpBIIxJ5rq4j4ut9\n9ec2v4fpITm3OpNv351VvcaDEOO8zcTlCpR5IEByIVFQ/pEz7WpDhxczcnAQ\nI1a9ATo0+4gY8pRgqFVzAI4nQU5bC9DOw5r6/6lxcB+TiXz7RrdE0+9kuROb\ncrRiGKjsiIAcZnllpAkj9bxv488GwOcSzp6q+AQs7Jyi1poyNI4MEJqp9b82\nXR6I3PEB52Fg+vdSBexAfw+SoCFQzqFxHwxU6lcu/Gq0eqtcgKUdgYhG3CRN\nd8jdG7znUruLu5u840nkXctkLmDPHQVhK2+gUkNWBePuAUjIZO3iAIstM5Oa\nL0k4a1s8sgiGaBUuHYSql6I0cuFXumkgdC8RdUCTNjymiQwNu09j/tMCOCZM\n6Y0P\r\n=zdNB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHeT7v34mfMDdBthynL1QiFFSon2tQdvxz12J6wZ7BxfAiA1Vn94YdakopDXMGzERTkbH2dAQAngi9pFkIJCOs1dhg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.138edcee_1540390319975_0.2743216266012334"},"_hasShrinkwrap":false},"0.14.0-alpha.3d64ebcf":{"name":"@syncano/cli","version":"0.14.0-alpha.3d64ebcf","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.3d64ebcf","@syncano/template-project-empty":"0.14.0-alpha.3d64ebcf","@syncano/template-project-hello":"0.14.0-alpha.3d64ebcf","@syncano/template-socket-es6":"0.14.0-alpha.3d64ebcf","@syncano/template-socket-es6-validate":"0.14.0-alpha.3d64ebcf","@syncano/template-socket-vanilla":"0.14.0-alpha.3d64ebcf","@syncano/validate":"0.14.0-alpha.3d64ebcf","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.3d64ebcf","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.3d64ebcf","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ZdZ+XpIfIYTUJ+pEVUuTO/3a1Zjds7LEW50J3W+2HFBs4qAvEiTzaMvjqNq8QwGvnYNRhH50GZXOUQIJXVRzNA==","shasum":"83416b491e6cb4c8774eb128812e7e873355c012","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.3d64ebcf.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0WzUCRA9TVsSAnZWagAAVSMQAIVoolks3u01aFus842O\ngPmrTFV4/rvaglZE6pGN3yBVj1w9YWp2U4b5BROw6saIEtz8NuMalOJKBKhg\nK9gXDfawOD7VW5GhNYdssCMlXfHqLChcSKvGkLNXmEQ0WSNJPDqoLhycNBHv\nlvlzSblnoURPiOQTMbFQL3QNrvkuowEsgW8zoQ29vuQMymNBnFuNryYWhrn4\nukhtn7TE2dworQyKVoUzlP+VsWgpiDiMj6OKjbaVY1RiajGrY/+Ajpo48rFQ\ntAiN8txpEsjUNDB0W8FV2ZoWrPjTWXJ/qDlYs/ZAXNbPmyNb5M/vJ3Y+048C\npCkSlwYGanbKynI5e5ShK4fsZ1cMnD040dbHJ8yCzlkYwPeNJ7MfXiiCqUbh\nvbgH+CLpv9h6NpTJTtpxWj21X0vtWtUWG8b5pwRo6T7yeL+AceuERj7FZCJ6\nZi8fJWFAVcgb95JO9qRIdIPRvrf9jLPtIyFQSxg2mjOQHva4SwrPRmPtnSgj\n54LrabYk+TCIHFjs42XSGMllCCbTVJ3x/3DNNA/CXe+V9HsrNf0KdnoP7IUs\nKkIl0h+Ar/zF2CcvvD/LK5+xZKwGtasxM+V528rlkYPsGgMpzSkG9U1dcCrp\ndZA9Rypu4E1fWEL4/epqdLTDr8QJNhE7PVB0Qu5b4KXiwfGZRtPbUpXw1UBt\ndGcB\r\n=B+gV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICbR5gb7GrB6QCGihMpWxy9j8pREBEqRWa5M29MbzellAiA2ABhX4suEbr9HX9OLgTwwJ5w7Q8i0i2vACtvcqJ6QqA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.3d64ebcf_1540451540054_0.5680303285086201"},"_hasShrinkwrap":false},"0.14.0-alpha.a439aaed":{"name":"@syncano/cli","version":"0.14.0-alpha.a439aaed","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.a439aaed","@syncano/template-project-empty":"0.14.0-alpha.a439aaed","@syncano/template-project-hello":"0.14.0-alpha.a439aaed","@syncano/template-socket-es6":"0.14.0-alpha.a439aaed","@syncano/template-socket-es6-validate":"0.14.0-alpha.a439aaed","@syncano/template-socket-vanilla":"0.14.0-alpha.a439aaed","@syncano/validate":"0.14.0-alpha.a439aaed","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.a439aaed","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.a439aaed","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/v9Hcz30nEcAfnpRTMAGoubK0Qz+iILVXmqRVMPqw2unfXbz4OUy35+orht4DjtcxzrC0NgcagIj7tNcMnFJgw==","shasum":"5858158a2e25bf5fc9d5c4cc93d280ee4514a37b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.a439aaed.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0XjjCRA9TVsSAnZWagAAYw4P/2Bm2HvTVtLo1V5CpG2w\npNLB3hE6psJutwdWFqX5VP3ckZ2CcWSPok5k5isyj0DpNDFFnGSgR+erVrfY\nSe3Rn4EK/ZAbJCAwSNtbQy+SrlvelpY0u8t1lskA7LjX6lwDY3opiJC7hCxH\nrnppXw1D8q/sGlhZ2paNCM8yPfv9I1qKw+D/SHPw/wAhXk10+khbmWHqqDNL\nUGd6+O3zavHahA1h2biK5lNwQIMYmm0eGSbddi9H7+g+qLMs4T4uD5T8qN95\nZ7rT/nkFRvv+45f3oFDDJwWV2MZWas1QAvZCxWLTE3iLxBOOkDCP6rY+gT4G\nNmgiD0Qc4b6mLXCC3HxzHy3KdpYeQRa7kfQHX8gjIUOugnjyLLgldHyI9IWd\n0sQ9k8DEIW1PTIyttAMKrUsxtBVCLzpgmBDpPLdymrDoknD1B4NqC6Gpd6i1\ntaOiiyfneviKpBAZzLJ6g9BLaiHGn+Er053c6pb0YYg4Pdfq5XPIpwQhWyvh\nYUyPbQhqzgxhlMNHPGMH7DiYk9I9nKa/BmzN0uw41xr3AO6H20YOGPpiKTPM\nHg3Y9bRs+KVrnCiWtizMbLFZRosLFNZOp5cBZARYBsBrtSX02v3oLvCurwDq\nqdVjtzcthFdUs6lnEV8TM5bU5gsJhS9Z8BSipkjSsYQQcAVi3NLUb3ffSBHJ\nx5QD\r\n=qGUJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmpL8EeKApVF5DmqQJik5qztPHirQ9Irre7hYPXys6rgIhAOgTBJfbVOfXoCIluW/sNmBNLCd2nwBID4o79KBMR4lu"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.a439aaed_1540454626161_0.5771144123345631"},"_hasShrinkwrap":false},"0.14.0-alpha.80e949e7":{"name":"@syncano/cli","version":"0.14.0-alpha.80e949e7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.80e949e7","@syncano/template-project-empty":"0.14.0-alpha.80e949e7","@syncano/template-project-hello":"0.14.0-alpha.80e949e7","@syncano/template-socket-es6":"0.14.0-alpha.80e949e7","@syncano/template-socket-es6-validate":"0.14.0-alpha.80e949e7","@syncano/template-socket-vanilla":"0.14.0-alpha.80e949e7","@syncano/validate":"0.14.0-alpha.80e949e7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.80e949e7","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.80e949e7","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-M0SGTYW4D5oszBQ1ICjw0HU+NwRcDqo3Ib7/PgxW9//yes5JuPZ57498iYdLmVRnWO+QM0dRyh2Ko8Smdp4giw==","shasum":"9c3f7e69c65c0ecbc53ff66d8fc3b2adfb46785c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.80e949e7.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0X5RCRA9TVsSAnZWagAAUXEP+gPF+zmxoyL43I4lRnPA\nNRHxFmRl4ciUqINy7ZmDa33w46KwshJ7Uw+i9vG28bm/ApHe1cQzlH805P+I\n2Tv+M8WAUaod13ORZBnZL2/lUl1cZCUGbZS8r/DEaFby8lYoLFFRFlPBqBMW\n3+O7QFizrYmPnOymYZdGRW+mrPGOR3fv4uRavRIKPv4+tn8mkjwazvTPRYKl\n/OQ0QupDwy7WA9PfzMUoeCAWqzXRNxh/SOprqFwB89ah6LwGXaq4t+BjC+gB\nwkn+66h8LYDudv2Ov3Nv+ruqumMU/MvxhoibLb6a1FVSfL8zvIdUE9e6GKVm\nyHTMCjszsU2CSqiOGMr9HcvgQ12aEu8NZTA2Xmz6YX3yyIBcNNzLAgLyglgM\nGet1QOGK4b1ZHuPvR6hgevXRMEnAxOfrpKOhq3/LsWQhDUTbuc9bfyHYZ6i5\ngY/NKpa0zfyAAvJLqhw53Bh74uXEnEaWWm6OUXBjyQ01F6uRVkhZ164kjzj0\nom0T4RLDBG8FPIa4uk0ZD1Y3072v7ddTqW8GEQ+Vpm+LNHgRxharDKTcaHtf\n4QQdM/P+fbGjuxHW6oSBtpwwkYW12IxIKjfhOt1tupDM4Z4iAfQ49XepYq/w\nWlkFw1KACF/rLGAgS/2d8Mk0fqe9e+i9oojUws4hoT1ILdLwDow+LJzI60Hy\nV0L7\r\n=g9ML\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCoz7DB/Lce9R0IV3HuRIIOY/YJYf82g6sgxfRiZ2jvQIhAOuU30FQI61VZsJ8bGVbSBZWDECLbPwXRzl4vNTei0zI"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.80e949e7_1540456016845_0.9409595200341885"},"_hasShrinkwrap":false},"0.14.0-alpha.49c4ac2a":{"name":"@syncano/cli","version":"0.14.0-alpha.49c4ac2a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.49c4ac2a","@syncano/template-project-empty":"0.14.0-alpha.49c4ac2a","@syncano/template-project-hello":"0.14.0-alpha.49c4ac2a","@syncano/template-socket-es6":"0.14.0-alpha.49c4ac2a","@syncano/template-socket-es6-validate":"0.14.0-alpha.49c4ac2a","@syncano/template-socket-vanilla":"0.14.0-alpha.49c4ac2a","@syncano/validate":"0.14.0-alpha.49c4ac2a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.49c4ac2a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.49c4ac2a","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-68QuKALX3jSwBNAf33C+/HRm2s6qOXRP88HZhTa+qjYedhH7JFEFWH9ctv0JgnCJD8wKw9PUOzddqj/Yf6/fPA==","shasum":"05958273f8d57432c0a3a438fe8882fd6d970b80","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.49c4ac2a.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0X5YCRA9TVsSAnZWagAASysQAIFUvSi3/d0cI+V94TO1\nQd0SDZFRmGgCFeAg80FZQbSczSwIbROxo3XIOytENLKCGho+IZ8bKekNR898\n9y7hMGn1Pwkzmo7avn9oJzhkeoYDR0KdaO+jN3Qj1v5f+BOwAqCsl3LRbW0N\nJWbgQUHGGPFLjLjj3wxz9vhbKqO+fkMmZjSgPQpYeOpeoBOjDVr7lyETykfp\n4TWFZVCxMktvffMa+Oder9JjtpoCOgLRxvIwqTtwBORWEB3kmhTsIiiadRDn\n+uwaBL2TStn9S3kPSE9AXqNswKeEMeJehN1JnoR8S4mk3RzOlS4w2vs+g6QX\nSArjqYa9s3mO9nO5vOVyIorVYTF29v0L4kqq7WhneNnX+n/RR/qJgUJhofbe\n+E6Udl6DM9RyRUyKq3mlCWr+NiPPUhvm3z1HtlQNRFpV1wjaKlrsuY+jlpGi\nRrjk6j+XKH/Gz8PW7HvZZzRlLtuyDVlXeX7r1VitFHONC6bcHncr8v704SfR\nWqlzUMDDra49AGvpT/jolHURg/RLFtMpzTgkZNNEFhRPfrSwUxmu5THwxrYG\n1cTBK9gHeX7yeIh4VjRUwCu9sKfMqAdmigXcM3x/dyp/JDM9z9VtxwnJLOGn\nTa4sZHaEhQDF9Fu4w1A9UCIwyN4F8ciP23Hfc2q2rSpmUy1nU58N6DF6ffRM\nsmHB\r\n=pRGD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbChw/7llT4AydnUtMG2GIPGMP9sT3cD5Wq0r0UNaBKQIgNhUQUNFgx6WmWzzTQWUf9x5KQzXO7s7i8+iE6L/81Yc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.49c4ac2a_1540456024221_0.38267562546123735"},"_hasShrinkwrap":false},"0.14.0-alpha.fd376596":{"name":"@syncano/cli","version":"0.14.0-alpha.fd376596","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.fd376596","@syncano/template-project-empty":"0.14.0-alpha.fd376596","@syncano/template-project-hello":"0.14.0-alpha.fd376596","@syncano/template-socket-es6":"0.14.0-alpha.fd376596","@syncano/template-socket-es6-validate":"0.14.0-alpha.fd376596","@syncano/template-socket-vanilla":"0.14.0-alpha.fd376596","@syncano/validate":"0.14.0-alpha.fd376596","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.fd376596","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.fd376596","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-o23bPFFHVgxpD5rIg3PzGWxgfa/Ec1yZNa6p25570nn4Ne7d2QZD8ALJzlVnBMeOrDOa0hBNEiAnlSPV2dUmYg==","shasum":"b77ae18e428277ee3111d02596a59a930c741db9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.fd376596.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0X6VCRA9TVsSAnZWagAAPw8P/AgeIH7gJDxHCOJgNlcH\n04mlNE6lAIGaT8CvnV7OneqC0ZgTqztx3Rz4GJ7yxe+3YHFnUkScY1enbOPb\n5kF09qSqjFwczzjMytqjyQaxMHV7pjTjBCLWgtY3cnUedhU40j0mkf+9RyIp\nxoR0mp08Z+LXaTYE9xBMAdKRog+nIyhgPRCeWy6gFCjgnm/bJMVned1DZX9G\nAj9cr/5/ekVlFErQDehWbWVAh2Tdndz8i0gH6h3AhN6YibRt2P3mYKgJ64tM\nONTaE2ybW+URoHsim1+2anViscZluZcALIvjpjLGNEDq5cj6Z7Zgkt99PhRW\nztoDCq0Dt0bbSD05nLisLpBpq6B3pkSqZkU4y1roh87T0ZueFq4peS6N2Q2C\nXyvDZvcqC65o6tq5R/4lZ5KrOjdodt7zeHNdy9TGQpxA+HRMqASdXEXRAIZh\nOKKX6wuD6yOy21NXg1QpRln3/POihmc3h1rMLG+RbMgeXsogUtU6nwgArMJ8\n44c1SZ/ulpwGZyT7386dNz8J/64dc3huzOiaMspKPYolEak/e10giiMyURuA\nkKsD4na302tShxBqiyVvnDSMvse84oYBY24yDLc7Fyi3AVR7caU+LB2isU6v\nG9xRx3OEtVR5hlmdXQ3mCxkmMZMpcToXs3s4wJ15eBKfTD8+P+pKKou0T7oG\nFKu8\r\n=JwIV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwxI2BP8ixc1gxalQi6vZTG5+oux7I+XAnOC5/U0eiowIhAMQmig7YS027irz1Wl7wP5ehqp9RqNugVo15Ul+f4poW"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.fd376596_1540456084274_0.5025668344067269"},"_hasShrinkwrap":false},"0.14.0-alpha.59c5946e":{"name":"@syncano/cli","version":"0.14.0-alpha.59c5946e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.59c5946e","@syncano/template-project-empty":"0.14.0-alpha.59c5946e","@syncano/template-project-hello":"0.14.0-alpha.59c5946e","@syncano/template-socket-es6":"0.14.0-alpha.59c5946e","@syncano/template-socket-es6-validate":"0.14.0-alpha.59c5946e","@syncano/template-socket-vanilla":"0.14.0-alpha.59c5946e","@syncano/validate":"0.14.0-alpha.59c5946e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.59c5946e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.59c5946e","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-PPQiVvXB7yqnxQeChuCxtUmLXH8qV1g5VlLmXI4XJg06RBftb68gkELGwTmNfKNZ6P1lJitxWSAh2H0zkeCOnA==","shasum":"b3184fee14bc02a838726dc10cb379c7e175b4d9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.59c5946e.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0cxkCRA9TVsSAnZWagAAGmEQAKDjpvinnKLNBQxbLk+r\nyUA25q+4VovVG9Focyw0Q/6jYazWxPOkcThkd+tnkWedg6BkZA9t2aoLkSCb\nfuntcL/1U17AVJZDOPcuas+NoSBhmIxgeIM2YVXib8JLI3wAuCom1lR87kjE\nFiysqJiWz0lmXUXs+duvVTNWEDc39WTSWgCOyOLpriC6fRn1s1f7cZhtmx9v\nLHO1JBGU+dTBGf9Xg+xxC+3hODCWxOCMoqeoBtPlokZw7RiJppQpiX+GiFsx\njxWjQTxaa8O3Ae4ETV0qfMpizBbUdHg77LN6PMpxpCw85gDcmwzQFvjx9U2b\nrf+KEenR2zq97b61NUSeje/JLCymUo/t+/Jdt2cNJ+OrCm17PdJs01bhNpQo\nnrDQ8BeOM6ni6+0SuwlRILIcbeee3ZGzi2+dgeSNfuIjgUf1eTcl5nRn4D6H\nGkJgkEn6PXgn2OduL6du8vNNp2T8NAxcHcYMNQN6pyB+Sz5n5fF7RnlyujDx\nlCJkfZB9maqbiH5HIehBGaTjd8cv7o219QEH73jLpreZfkwrhXsMSPYEMyBU\nhuB0wkNblEYyUMDVRhdbMdk4c/db61KBCxlrpGlF5hF4vTWYQPkwPhPSMjp3\nDcVTmdcm0G1nady8mb7YnOZ5neEXNqOQqfV+UyxP3U4XscpVgjP6RtB5WuPg\nwhUz\r\n=aByF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQCB/SNi8LRfp35gmCThbkYg4x8fvA7NGpaQXy59MBhn+gIfVYpyvaAJ3iqc6Od8MFdhE9/4pvbRB9InrokWyJab+w=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.59c5946e_1540476004069_0.44412839546816607"},"_hasShrinkwrap":false},"0.14.0-alpha.64bd75a9":{"name":"@syncano/cli","version":"0.14.0-alpha.64bd75a9","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.64bd75a9","@syncano/template-project-empty":"0.14.0-alpha.64bd75a9","@syncano/template-project-hello":"0.14.0-alpha.64bd75a9","@syncano/template-socket-es6":"0.14.0-alpha.64bd75a9","@syncano/template-socket-es6-validate":"0.14.0-alpha.64bd75a9","@syncano/template-socket-vanilla":"0.14.0-alpha.64bd75a9","@syncano/validate":"0.14.0-alpha.64bd75a9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.64bd75a9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.64bd75a9","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-zr/bM8WUBOr3gN1ZFyDoZ12jwSoozw/9aVC7fViyA+fEhuM7u4Frays9NDK7DHrvZU+EdbvYpE+dh4MV+LAGrA==","shasum":"eca627561c5c5a3b8f655872811a3d76e1ee0229","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.64bd75a9.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0c3fCRA9TVsSAnZWagAAUOwP/ibDjbopghVgsvcokgXo\n8BxIPDrF6RfB5KT4H9vioLpMFyfHfTM3Bt2/R29KN1rRvzPrzd4yuIimMSqj\ncBnFA/bJH28QvNoSJoUURazHQGXyZ5rbuRNPO3H0sUCG4ec5SPG9DUs1SqQV\n/N7RoZHz3eKId1JEeTF5HmwlTV0/KHyDU5iWF2U0YmIgJ8gYQS79cU4/RgWT\njf8pFAUC18U7vow9JbWJrbT7JmCZjo8t2Z3CY68CNPGyHngizYa7SSHXymnM\nZteJ81ckoXAaSO9+i4a6c5gwjyuv4Q3sUFuSFfNmjr0uVMLvM7fvd3FJcdsL\nt+g1jH84D6vpzZjXX8LD+1LwrVf4osu6k4WSXsaLI9QoETKS1kGcAIJudZhV\nhf52mw/vdWvB2KXOK0zMAXzZcME7gnbJt20jk9DUH6f1i4rm4it9eNlpvQud\n1rhX0RHID/M3LW2IXgUxbwkKi0IMW8sfTD46wuuJa8fibbmuuGe6T62KwmZE\nSvKP6NQFxttwblUBDAo+tRzmbWOzCJhRECdjmOiGrs3wlRGAWi9MtVVNdOvW\nNI09C3l/D65rC4MuKgPwnCeZy/EkIcwaFwCpdjPypxamdJgifqzSZpOTODDX\nH62l+jc1WB+Sk3iMBs3Fz3OfbxDongueGjikkenFOrY3nr0BBgVKLWBS8XTy\n1K+s\r\n=fNn5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjhuuapR29WEEF0LbcaGepx6vIHQDq/hKXIoOi0qQW2QIgeFiRFewkIHruPE1vq/o/0DW+bTF94QWlI+A2zUQbgOc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.64bd75a9_1540476382600_0.9285170976385828"},"_hasShrinkwrap":false},"0.14.0-alpha.0365b401":{"name":"@syncano/cli","version":"0.14.0-alpha.0365b401","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.0365b401","@syncano/template-project-empty":"0.14.0-alpha.0365b401","@syncano/template-project-hello":"0.14.0-alpha.0365b401","@syncano/template-socket-es6":"0.14.0-alpha.0365b401","@syncano/template-socket-es6-validate":"0.14.0-alpha.0365b401","@syncano/template-socket-vanilla":"0.14.0-alpha.0365b401","@syncano/validate":"0.14.0-alpha.0365b401","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.0365b401","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.0365b401","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-jYhrHGGfxRZm5ZSqjuRMlHS+slP9zlmPxadx1xeazqWaCErwi6iGYiRIoPIV8rqbneWZbPdaoKVT2KsOY7kJag==","shasum":"23933e46c8ad7a163446b5ff83a072d8489cdabf","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.0365b401.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0c+XCRA9TVsSAnZWagAA7zsP/A3hAc23szhh8VVfR16Y\ny4vlTzeA9o+GGH0oougKE6rJUKZKc6AAYFRnlVxlqlkJYn+uL/ffzIZMEFOL\nNSGkcFDvWzVH7HW3Ka6yjG3gzKUId/0Q9nIKkHedmFy57Hu6J65OJ8FYje1w\nkmPyn2tL5EHpqgfq+/ZHGcSC2L6L9JSOcKKQGGVbhduJkGTQ1ifmswHL6iwR\nWKRwXFfMt7x8wqHJgkFyP9GjnHkaQnu+bpOhBNCusgyDxkfSyBVZj596bz0n\ndG97qyNLOaQxokk+z9Jx5yq1/PKvQN87px6yoSM+QnFsfiv3+Mxl9EZxqoeY\nvNMF24RS3cPKBpPdSb5wbEPiDr2+MFhG2S628nGoo5zZ2bTqNpHkt7ghLt7T\n5SSjjdWzhNNTsXNyWWFY+ZfjXOaV5jXY1Xq/iwTcBfghQf3IR8IhNnvq2CVW\nXXAI1OqYmK6W+IOTt7GANErHQ6N+rWYfSqDHDZaFzKi1m9JslmuOLkHoW6Ra\nKEFznv4Zh5ZApmZMPWTco7/Spwxh4yUuEpKtnQvvSF6v+OzG0y38+xRq4dJZ\nx8uHOwn93RbmRT19BwMnpUcOcf8q0tzGYB9wsYQMQVHKMcMLSjRHcJe8lD6/\nIZJdMa1qArtKnqUEnuKNNImLZYqGwDHYg4KP9fFKucMP1udtnDQqcHYxtHXG\n5k53\r\n=SIha\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBTRGDyLv+N1O2ZPz2Wpz6XyZJVuEIGMoIvU8cvIbW8YAiB1azMxcLtE70FqTaC2NdyjcmS/HoHFxeeWkB0rHlEiRg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.0365b401_1540476823119_0.23980877056828986"},"_hasShrinkwrap":false},"0.14.0-alpha.93743b60":{"name":"@syncano/cli","version":"0.14.0-alpha.93743b60","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.93743b60","@syncano/template-project-empty":"0.14.0-alpha.93743b60","@syncano/template-project-hello":"0.14.0-alpha.93743b60","@syncano/template-socket-es6":"0.14.0-alpha.93743b60","@syncano/template-socket-es6-validate":"0.14.0-alpha.93743b60","@syncano/template-socket-vanilla":"0.14.0-alpha.93743b60","@syncano/validate":"0.14.0-alpha.93743b60","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.93743b60","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.93743b60","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-UNqhNDItfGHrvWj9zvGQnZ6bX4bw7NprgOwaN2B5LBkW7uNe5OsRj8/7Ci+6jaxrKANt+VCayJHKCcVWcDuFZQ==","shasum":"259b9f08e07939c67c103dec1aa8c4fc256aa7b6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.93743b60.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0dFFCRA9TVsSAnZWagAAwKUP/Aqp2e93Tz2/A1hzJvun\nI4QATZTVxpm6kZuebjz1e68szPxAma5EFvlTJhkBn/yk0CmlTQtwLbq7FQvf\niwSqvTWeXGduANIPCTt88Y9Abq8brjTwBPIrbUwEOXoI1fGjznHFn2lAc4CC\nCbIz+Sqhcjp0EvOEafeRwL//6xfcUS95mNq0mrKZ0/Jdm3cOHBA2yH8t0Vpm\nPiRll+7b5w74QQhD8RppZNbAcNow1d/B6wdHgwgmwswCgPz/SooOW78qOaDA\nz4zifQBEkGq12/7i1kYhK4kOM7kPdzk2/RtpQ4ed+Rpi8RUg5lnrr5i+/6ot\nOo7lRtfjZmWQpR3jsyeIyHehJu2IkYi6Dcqza0H4KUEW462XweUpxzx7RVQf\nqOJn2wBZBh2Ez62Qu9ieyP3QNE+rIvo8ItEgrpILxFYmrCcLJJXAvzM86PbW\ncvBb+cEcdz77iumkQi5B+/w/89ZhQEecGS2nKTdPRt5diV4ZedCBCrNVMxQv\nr0JHdEK84hwtyiE125yGYlE5YqA0RZxVNO+adrckYcuhPLQeJxx8iT0Ut65Q\n7P5KJm6zA/Wz1OpVCAR9L/4GAY0fP+AtyUVnlHQKfLKuHDFXvQTxrEDxCp/1\n12wS4KY9TlsXevXVc1LhuaFYE2HHV0lOOYgZ0MPlX+hqoDd5DR3AYcr9Qlh/\n1owM\r\n=SRaa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC/+mQ4ssxdVQac6TaMSDpIhKaYxOmOAXveaKkigOxg7AiEA47ZZxobmnY6qs4R9CcgFpjOravqMwxr3lDZdp2QOPns="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.93743b60_1540477252636_0.533947788247582"},"_hasShrinkwrap":false},"0.14.0-alpha.0b43a6dd":{"name":"@syncano/cli","version":"0.14.0-alpha.0b43a6dd","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.0b43a6dd","@syncano/template-project-empty":"0.14.0-alpha.0b43a6dd","@syncano/template-project-hello":"0.14.0-alpha.0b43a6dd","@syncano/template-socket-es6":"0.14.0-alpha.0b43a6dd","@syncano/template-socket-es6-validate":"0.14.0-alpha.0b43a6dd","@syncano/template-socket-vanilla":"0.14.0-alpha.0b43a6dd","@syncano/validate":"0.14.0-alpha.0b43a6dd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.0b43a6dd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.0b43a6dd","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-c2NJRFeOaVefktzBt/X9B7HC679oyn82tZuZrC7YgDDEuWpobq402r9bkYb+Q7HHvwtnXIrGQJLycA+tD1fM4w==","shasum":"9e068d7327b02c5a1992d6a61cf69b5cbbec6ebc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.0b43a6dd.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0dFjCRA9TVsSAnZWagAAkakP/1AvMwES5DpbJ2EYyMfy\nRyGt6pZ76UtzADqp1300oEiAnQSXXwHgl0YTspY26yAdk9Z56kYgb3ul68Ff\nsH8MSI0Ux7fdqThn3kFSgVAtJI0OvtONqRHBNOjAgHDj0owcd4cTl7jujcDm\nr3uLSrBJeDJ+UOzm6mjnK5sGtJTKpdmHUP3Nv6AuSjE5gTDBrx0/j9ADy0di\n0XX4QTPaZAwYBORA2n2UbOHIGNBsxCwSsfygYtSBKCO5P+WDb0szRdlDHJ2J\nB1n+klMru3P2dfUOxSUfx6LNhQjfpnxtgSuyJSUflwNoknD7fuFFHYbcOHnL\nw9G2CQXvOwRf03bA8mTGUXWyWQIQZMtPSYatiIkrby2rHDpEmMXKpdBAYwWW\nonN5oP1gVw9qvx2WOfIr1Pp/8KViAurjjq3b8Zr8JL7zcsBIzxdhZMnyRspd\nSZsVkJQ4Zav9oR5nrnfCUt00VNau8OjaN5B5wOCpFeD63nobkkzLtPHxhU88\n6iBc98RjUdHK38JQj8WT1qZh1/tvQT4h2Mo6YaCe1muUd8/+CoOrnhgRpf8t\nFH9z0DqHdyyX9ITcKKiU5qjpZTHMRtkTZfedK9QzbXsKUZMj2tnaL0SMtr/2\nhfoSGJC1wdD9+YFt4/JlhUyVOlNuuw2bFfquYTy9oBMbTNOz8pn70wLTuqxa\nwAAv\r\n=IsH4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDYPbxqMiAbGwMXFPagHBRbHRmt9CSmXxblJZl/u0dM3AiEAh14ihx+O6c8XuKebGhd8ELRQqyaCJadLCwvsv2r/nc0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.0b43a6dd_1540477282347_0.5012672654333008"},"_hasShrinkwrap":false},"0.14.0-alpha.715db1c5":{"name":"@syncano/cli","version":"0.14.0-alpha.715db1c5","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.715db1c5","@syncano/template-project-empty":"0.14.0-alpha.715db1c5","@syncano/template-project-hello":"0.14.0-alpha.715db1c5","@syncano/template-socket-es6":"0.14.0-alpha.715db1c5","@syncano/template-socket-es6-validate":"0.14.0-alpha.715db1c5","@syncano/template-socket-vanilla":"0.14.0-alpha.715db1c5","@syncano/validate":"0.14.0-alpha.715db1c5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.715db1c5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.715db1c5","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-I9wlqaq91Jaq4W37JiwzZkZjmH5fbTWszYBOdmE1M73UtaBs1Nga+Qx64g0+SzjUldK0SwHudih3WBPI8xoWZQ==","shasum":"835739aa1335f7dba39bdf0cb5b85d4ff79b6cc8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.715db1c5.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0gguCRA9TVsSAnZWagAA910QAIwALdlk8rSBw+xUgwzJ\noyZgu82GXHiF/2w7dXWMTrdmG4LOQ56I5EMW1LUfD3OCWDukrR9/XWJap78o\nBaeS8gVT+rt7VXf8sIH8AzR9ZrPyCSQLPcwubiasBmUU+KehbS1uHVyuRll9\n15bhrQR3gn4nrsrmLaL5iRFKyKL4MEyGwiIFlYigM3QNXNyuSnudP0VoPsPS\nhtPTSUGWkFu1DjGx3xlatduHIY22Rgs8Fk6W01e7FN674R+O1W5YaxFCQAzS\n7IEME164+5Nj8jSvx3cDiCbZ6QjahckOg/fFtJD024mxUeqJNa+aLLhXxHu0\nBBU2ERPkmbkhzh+UcCG/njs50vbABHTXh8v7A1VH/u4/diIZKooQ3Dirr+6V\nH2lot+Idu4cSSHkT+0aMN2jCUU3t2ssSBaUbwVZ4ATWk6Mne3I2ExlqUOerI\nfCHLdb1SW6LApZvxO7N7rzLAxdRkpGu/UCdhgop2/q/6je5BH659QSHV6Rh1\nzn5HaEzy/AMNkcttRQjrCpGblhIhIHUYK+p20nknw5Apn178/ZX/jCF89si6\nfEHBxYzBTU2bJl2ca15KlfTjy6KXfJ+cH05fYjQ1rf1b9A7Zi6jxKSbQRZ9l\n3LJFu1gvRxHkmg4ITFJQn0OY3B80hkKyf0OROkCVOlbxB0Z3DPJEz+xvulpA\n4Zl/\r\n=aWhE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICD0hgdUMpjNb/VTLoRioQsPuOAVBw8Bizjl7bZ5okdzAiBmKgeB7ikiKR4bxSUgD6XLrdzxA+g8kXbggwZtOSoCcg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.715db1c5_1540491309915_0.5944680295398554"},"_hasShrinkwrap":false},"0.14.0-alpha.21070c90":{"name":"@syncano/cli","version":"0.14.0-alpha.21070c90","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.21070c90","@syncano/template-project-empty":"0.14.0-alpha.21070c90","@syncano/template-project-hello":"0.14.0-alpha.21070c90","@syncano/template-socket-es6":"0.14.0-alpha.21070c90","@syncano/template-socket-es6-validate":"0.14.0-alpha.21070c90","@syncano/template-socket-vanilla":"0.14.0-alpha.21070c90","@syncano/validate":"0.14.0-alpha.21070c90","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.21070c90","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.21070c90","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-c5hSPM8Cusdik9Wgw/FUvG4IIGSIATXKaAQ9thGt/Zu8BSog1rupx6TGqyHOM0W1FMAHOb7dCDnlYZm0OERHqA==","shasum":"0352b92be53106b600b107f0e222abdb8fa908f7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.21070c90.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0hGRCRA9TVsSAnZWagAAsxQP/1U0AOhSCKbJVwUZXz/R\nNk5adOTx+2y8zum1KaJPySStcDHqWS+cZyoTaahHwnbkKpQCmhcc569L1NYK\nph6VZ1n/MTdAI/FXZLZsmvLcybAOASyz/p/rNtLIHBBfz77Q2RSGE8ZV+dOa\ncpJrXRODPjLx0AJjdUo5h9rz46iVMdLg2XRnw2udGMFT0gex5wUhyba8qTY/\neb5iZI5j03M4WEgex/HbLCCYiWBOtQyDUQAenOFtyKi1KlOK8rtYsqCo3iU1\ndbeyPsXV6MobLQ3oyslV/50O4aFU3ohQwOzJkYlcytVX2dQJ/pFonf+lwUrn\nJEzwpvl3Q+C9c2Cxh/a2R3cNKZnQtbopPyQl/dDg76fTnOnagva5XIiDdQdm\nBu+KRXmoZ5uNIg/qEgHGASSYq08lYQ6OntjkjRBWX/zLJPopPZgGvAVnB1nz\njWIpWd32GPLHn6xICLmuXpvuDGlc2FLnAVgx6S3c1pgx1hH3j9k3ZCZurF59\noz1+W47hYszmJ66m/NHLnZzqy/GFIVohnvZVYhCFaDfHL3udWj7F60UKqCsd\nssHt+L+UWtZcKAwff2Wp6w3rpkbpdJnNVxinBbqOuQVyXZnW4IgsnIDJoewr\np/fzCzBmElilZKgRMqEBp47bRb+TbeY6nXVtzaufP8JLe2Fdg8MarFfVFtUQ\nuoYD\r\n=N4ac\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICWmm6oHR9on/iWAi5/AOfgEAOw/DzsszQVmRSQ4BUuRAiAZ/pdTCUR7Nx9ed6zP4A6SWwMmlwqODf+XZctNfzhj2Q=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.21070c90_1540493713029_0.5288791861403521"},"_hasShrinkwrap":false},"0.14.0-alpha.388c37af":{"name":"@syncano/cli","version":"0.14.0-alpha.388c37af","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.388c37af","@syncano/template-project-empty":"0.14.0-alpha.388c37af","@syncano/template-project-hello":"0.14.0-alpha.388c37af","@syncano/template-socket-es6":"0.14.0-alpha.388c37af","@syncano/template-socket-es6-validate":"0.14.0-alpha.388c37af","@syncano/template-socket-vanilla":"0.14.0-alpha.388c37af","@syncano/validate":"0.14.0-alpha.388c37af","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.388c37af","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.388c37af","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IM8j56+w0LgHq6VEUb5PGARBwP76k+WOMu977LdP7Y5Kbg0bXjklIAAFAhLelKeZo1ioj80HBuM0O8GPi95kVQ==","shasum":"a1d47704ccd7fc674cb18f534dffc7bc0a243ba3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.388c37af.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0hIsCRA9TVsSAnZWagAAGzoP/3jmQcz0dzwkTgZiWb4l\nsAJFjBrQpR2aF0Y69VexW6PXANx4dOcGYyhU0bwllmgIgj0jcAG8KqUmyeSB\nRXvTPl1wdv/liSfbcoD5ziGAU6sh0dpaAsjOI9ceIy8DoKprN+qsuZgf5L1d\nYfAAii34WJRXztyVQ9fZkFsYvQqfvoE1ia/54m7RrOQlGgAu+yR/EKa46fjQ\neqYr7akzJkYIbdh9bQQgHFbZd1YhRJVPGWlYJYQEnH39JjsEUA6COeQN6SRk\nJI26jRiM3xIrv83NoImnDs+sX7UBvDc/E7Msr+XE8XGkLK/gSeoRsTbunYMt\ntNhKl3rl6HSHGoKKk2fivEy0kPtto4fopYujLabtaWgo4rGMCINxYLBBrL4B\njmmgfxBDiHLG6ILDR6kZ6ja5F7aLkkezY8g/jEYOl9sUdC87xKZVjKQrrok9\nDcmQiox1hnI509Fmk3klunQAuRI1p37kGpoqHwroWWL7sLb7s5euhxCu5idE\n750OTdqlJ66vWfO0PrLMbr0AEe+aTHcX1m+c612MSImFAHFerUukoKzI6LYq\nSEpY2Fyss2RtXDYvVCX1WD7HLWz6DExuoFzDubjPp/l73HDr+xiCs10g5wFW\nO3BQ2P80/KPVF65Es7bp2dlnommag4OWxc/DJsYySYlTxV9f/J7yYHaoy4md\nZ9sR\r\n=iUzs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFKBDYaKR1orV2VmS6oqdOhHLDd8SkFHp3uTCk0zUnaoAiEA9PMNIKcc0f9IVybDSQEUq5Lq7vqUqQx5XhRm2p6h+7w="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.388c37af_1540493867197_0.6069242184190078"},"_hasShrinkwrap":false},"0.14.0-alpha.c413291f":{"name":"@syncano/cli","version":"0.14.0-alpha.c413291f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.c413291f","@syncano/template-project-empty":"0.14.0-alpha.c413291f","@syncano/template-project-hello":"0.14.0-alpha.c413291f","@syncano/template-socket-es6":"0.14.0-alpha.c413291f","@syncano/template-socket-es6-validate":"0.14.0-alpha.c413291f","@syncano/template-socket-vanilla":"0.14.0-alpha.c413291f","@syncano/validate":"0.14.0-alpha.c413291f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.c413291f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.c413291f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-7AhBjWs5MoYllpKk+ER8BOZb7mAQKq311y2W6c7t5wVUrGH/GcETRgXi3qkL0NkRhM8By78VsBzC0zGdKdgFcQ==","shasum":"0c0b87587863833ba2ebffab6ec9f3f555f190fe","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.c413291f.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0jgMCRA9TVsSAnZWagAAi2EP/0tj7IFssuGk2zENgy/I\nkAQ7vo62O8R5o6Hk7v7PusxpO1q14GB9h3KGcJvcwV9ms8bSykqMtzlqmkwT\ntLFvnZtEiR1CGf2z1eUoRr0uetyg8z6rSqdIbDnM/qLwwpNENjtZYJPADi8a\n03XO/qGx9+7dME0kNIAJv7q++bLi4vqIeHLVmbMTu6o2YtXRuAcnls11aSSk\nu980BVa2ZxH1p4/jabfh5a4AueBVnRaN3JM2XZwFoYQEeJaWY/eVlXxibhm9\nt8SOysLXyOBtQ3kLggE17RTrD81nNRH/uAy1PhWMPSWadh/4gPUx4xw+EVbk\nFGzB+s/okYHMFa+qGTO8VwbcZC350Amo/ACpnEXe2jnJNWUm44l9NEH2Er29\nSXQVG8Fv6oTqfpLU5mNvtrirq3HcfCvQmoEKVNwClIW2sd3JLrsoQobgI6E2\nRLqHoeUnVJ30Jwyt9YUhOQmF5wAFo/XP82U+oe4oX8kGaI45YXr8qMH6DCgk\n5LGveMOdpnCwe3YSPXIlAJv5WyptSOtidDxiY1kBZ+/PYPccFQmXiOLrbQBF\nSOBdOggDSQTUBQUwgTAgjIHBghFwJ7sPiFh00EdXshRjpnCPLSNaoeJeJoV7\n6pgPn10CIS0U6+Tq1fTPlErT668FwshoJpU068c5xuUFDdcQWAUzYGGez8/D\nxany\r\n=hoNP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIArwZEZOs7JbzjLaJX9KGmjeCL81p761Dlu5G04y3cj3AiA1oQh7HqkMFEq/zqqgy5Wan4iVjXkt8q8AMLSAoh0URg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.c413291f_1540503563916_0.873408657403786"},"_hasShrinkwrap":false},"0.14.0-alpha.ad38f177":{"name":"@syncano/cli","version":"0.14.0-alpha.ad38f177","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.ad38f177","@syncano/template-project-empty":"0.14.0-alpha.ad38f177","@syncano/template-project-hello":"0.14.0-alpha.ad38f177","@syncano/template-socket-es6":"0.14.0-alpha.ad38f177","@syncano/template-socket-es6-validate":"0.14.0-alpha.ad38f177","@syncano/template-socket-vanilla":"0.14.0-alpha.ad38f177","@syncano/validate":"0.14.0-alpha.ad38f177","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.ad38f177","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.ad38f177","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-r35nZDl7KoWNbuJboPZd+LyOw28Al8YBcHmY2k6sPbPyqm2SK06hafThQc7orOKf4vL75j15++AelzX/GW/VnA==","shasum":"ddf5e403c1ef3d4c027b50b7edec65626aaf6c64","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.ad38f177.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0suHCRA9TVsSAnZWagAAv6oP/1IP5TXCZFt504LhnVEz\nUijQJ8CB3qKEXIYVB3WAWb5wodu8fTzP9vjDI1ifpRgJwlt+NIDT1xJtNo4M\n1Gbs6tBBhvpmExTlTP8u00INyh6k2cEhsjWmNhprPHX3dvKl88yqFM6a3d1W\nfy/mqS5y+z0c91iXknbDK0d7zGpwBqSU8WWxhDVJcdZswjUHPRkHtcH+AyeY\n1VY5bqxisuscAhOfR7HtV1aGZ6WidNv/VU0cd/N2Y2SS0mMZ4hEEmcrtbgzV\nWvYDMtjie6e/5Md1TymlE8J/msJqBpu0Li3+2JIOL7SK99aoYa6zLYMu13LN\nULjzQ7vTw108mwZxnn9/KX57YIlbmoMceJ0EKPJBsu7Iptg1G9Z0tCTnaRO3\ntqj/fN9b2WpkoWimbp4q64+KbuYggjGB43b7cvYHCgEqGWk1l7EySRk0rrDM\nch56RLpiMRjxDCxA8AQ3i1pBxmmiB26mrlaDaYhDyqaxiSL/dElhVh07Phus\nUAIxjvwu5Luy7VRfZw/ILqkT0cuAfU2TJiJAZkqunK1GbpP+0jYwJ8FDvzrP\nQFvSH12u39EXkqIfZEpz5IFRrSYlSNBZRDtMrZiMJ9cLzmz0ZdapujO5RtVS\n6XOpqVcgrdOEcP/x1lhl2LR+S+lYVdTJRzAo6hGvYsuGg0sus4FKGPAEoxxx\nBj9K\r\n=E3Ay\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTIHK+i+It2Bpc+TwwDw0RHXeQdxzGmH5R+iArXyNjKAiA62qLlL93h0Pnh1VRIIBWcQOiKAFcxWCqje5YRHJSZtw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.ad38f177_1540541319079_0.27520099671546494"},"_hasShrinkwrap":false},"0.14.0-alpha.44f130b9":{"name":"@syncano/cli","version":"0.14.0-alpha.44f130b9","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.44f130b9","@syncano/template-project-empty":"0.14.0-alpha.44f130b9","@syncano/template-project-hello":"0.14.0-alpha.44f130b9","@syncano/template-socket-es6":"0.14.0-alpha.44f130b9","@syncano/template-socket-es6-validate":"0.14.0-alpha.44f130b9","@syncano/template-socket-vanilla":"0.14.0-alpha.44f130b9","@syncano/validate":"0.14.0-alpha.44f130b9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.44f130b9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.44f130b9","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-VzwD7K2B/z9W9YdxK3j/j2cUyq4WuyqFfHj/3a2QKD7F5euxK2mAik+uFyFqNrSqebL8IYny6IvncnbY3nGMuw==","shasum":"f67f1e7d058bede611b33599fd2621bf5d10027d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.44f130b9.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0s9OCRA9TVsSAnZWagAAfFQQAKFFAepr1e7c+FJAoEA/\nqb2CtbjxskjvpbNZHcXzdLmvUZrECkhL/nv0BZjUAL8hxvJF4DhUIMEUaFe+\n9rErv3k+qhg3avxZ42MbKscLMl01nY3hn/22gx5gNwOq1kQwzxV9GsB/7HPW\n5P+227kFbJ6ReDy45Biw0CMiUg61knmq3fOzug81nBc20C21KMFtLi14pvN0\nNqUckxy5u6Kolia9XjRQeLicHtoLMIzm3wm4vCyeMaoj7NwTR0xB7fTwOJSM\nwiuF1jbN6pZSWDxvk3qnf56/HiiHrN20RPFf2EbRnhFA1WkmvsPqkl10vClh\n5vHqRrbcETp8EN4hlBWWhK/dOXzrYri3P1icMeH6G5HglgnmajKGDQcksQkk\nrklOBjllTvM+SYaaEk6ndRU4ipR3PN6lwYkCh+ld9puI1KCylPJ2T2VND8+K\n6gnzV/RsOiGVh5KRu5eHKoX7R7DE5GXt1NC+ZQqpkPUtbey9arlRooxkqfCB\nkCQc+81hlgMbqJfqT8cpWJRtP3E2bN2+z0FXO9erWDqvOK5uerPiajOyzJMJ\nB5lqX/uDmb92gRUoj53YZ0EB+/vH3BPuyVtKIh3zfUq1OOs5uYWcEGbAUMHR\nhSuuwH6G8FSQzwwHO3sm8JAC/fcmGgM8NLx56HWWICXkCmtUTiAP99duVjWK\nbHfo\r\n=j0uz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDE5WAICzCSqUfyZVIK0FFJ1rQSBkdTVRu6ppUVskBuUwIhAMBoCxrjPVjzMdnfi/tPuwDdk0Y+/tkHtEJxpd5sn2Ik"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.44f130b9_1540542286168_0.8586367797365955"},"_hasShrinkwrap":false},"0.14.0-alpha.02d355a3":{"name":"@syncano/cli","version":"0.14.0-alpha.02d355a3","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.02d355a3","@syncano/template-project-empty":"0.14.0-alpha.02d355a3","@syncano/template-project-hello":"0.14.0-alpha.02d355a3","@syncano/template-socket-es6":"0.14.0-alpha.02d355a3","@syncano/template-socket-es6-validate":"0.14.0-alpha.02d355a3","@syncano/template-socket-vanilla":"0.14.0-alpha.02d355a3","@syncano/validate":"0.14.0-alpha.02d355a3","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.02d355a3","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.02d355a3","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-C38VeOPscucD3O88Qg8GeDcbrqjBvi6gALT1vbo90SNyRRefT5wjGtS6EtB3VguwpqoaHDL//AbDoYnpgFKM3Q==","shasum":"c1f848bd74bbfece04c3297505afeab70277df27","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.02d355a3.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0tAmCRA9TVsSAnZWagAAoYEP/iH0NTBiZlHoJiIIohkg\nuLDoQvPqcH98lVl+mG528CEsuXK2l/FDnFW9sZhiIiq06qfumLpa+GKCDvod\nM9SXTP1QiK5nkWCgeywJfHS3Q68gxNJ5sZtvJ9G0EpB1lRsY649G9FKUOvjb\np3Cnuwgj/tsysIhah6PAn4+Pm8vqtn7du2ez8Kr3jMOhWrSUb/wKAKFuCEf2\nDRGE/onraGnTYcntLho39IzPv18fRzRh4PIn3I02GEBQAJyK1z4S/LXFrgjS\nTESNGvJMjW1rogllb3sZcSoZWDIJGVZFb9WuDCNQDBqjOaeky98omNCnz8v9\nCfpiq9afJSRFBm0lLTAVO+Z6YczFWMA2krfeRPU9MB5OjGbAf98paeFRfAAR\nDo2n5mVntXx58icB9RzEgPI4hPnYILXy2Y8sIQnAOmENmXxrtSaKPaN9v73R\nmaZNlb2bE3lKJKP768fKDkv0y1KXUcg85Fzw9axPPGet71hQOKGYmbTbBnJa\ncGxErJ3IXj8cAmZPl0VpImT9y/BVHTHqFcMjhrrtd+PO2cMDU+YIHv9zo01o\n5CG3IOrt7xT17zQOUEGOEf8PRJ3t86IrRM79d6XGG2mLL6kXrXR90uTybjqw\n+LoDMaOj1+DxeEuclfUS4FMYs7+hvK9o+0iHQyWcxXGEWYXKvMZ+D2D+cJU8\n4CBP\r\n=5iRC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDuZ2TH7j2VYJRTo5XyR1F5y0HX+UFz9RgoQUfhpWZigwIhAL7f5vaCTfoKH+qUTKOAH3edNWsqMHG7jrYYaSL304RC"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.02d355a3_1540542502143_0.6752791925668808"},"_hasShrinkwrap":false},"0.14.0-alpha.374c2694":{"name":"@syncano/cli","version":"0.14.0-alpha.374c2694","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.374c2694","@syncano/template-project-empty":"0.14.0-alpha.374c2694","@syncano/template-project-hello":"0.14.0-alpha.374c2694","@syncano/template-socket-es6":"0.14.0-alpha.374c2694","@syncano/template-socket-es6-validate":"0.14.0-alpha.374c2694","@syncano/template-socket-vanilla":"0.14.0-alpha.374c2694","@syncano/validate":"0.14.0-alpha.374c2694","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.374c2694","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.374c2694","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-gxyA9EfzKgZJSMT4xAofmnH+aUi+HDPSa/rWBrH11gTrmSVHwhCYPnfBZ8KVr6VqTzc7WLAFGf1WYx55hbzi5Q==","shasum":"7eeb300bcced6f046b64acca07348a35fec5093f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.374c2694.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0tWGCRA9TVsSAnZWagAATrUP/j++lWTPUSIMO3m8Ba2c\nnlXCgWJ7tynS6MD8zz3lfGK5C8SyeGzMEeJBAHTuM21E1J8e4OzD7MfRHK2w\n911JA4dhRLdYEDbWocqx39LbPMsQ/CVI+VxUA1Kf0oF6nCgj3iUbc9BWyeSh\niENBXaFOah8RAQWQd3qjCtkU3C3yyHdet2jdoZ3028HUsL3AuN2vSOWR2kAl\n99r7a5HqfClUoP5J/pBNJjAFLPf7KJt5gEedpKECYvVz7eiH4D3w4YikePMD\nzrRud851Lf/zIS9IpeX3bAbHJy83iLm05E7OHMqbKHGnAO2Q+CWBSYUuDSRE\nslP6N3SpG3g6vUSMAjpKXT1piQMMgOsi4sLS79BjsL8BM2sNLx7iqZPQNaG4\ntDWDHTxJaftdjJ/ISe7Qaj7hsWDyzIMN/MXzvWl6GLp6J5jrISPnIH4OPEcM\nkkeVV/lIaBYtSgJ+aAEkS0EwtfWFUyrLNte/0tUIOgX6jm1EVICCmGrC8UbX\nWce2DrEy2aBifnIp2uI31t3uCj4Eqm8smb42DU1z5WjszxE8aoBp6tNojyJB\noEuVTOnI3ve/anV1zbsY+79HuzCRO2r87BfQ3ZYxhBj8RvWl7jPH2sKKmbpT\nbrMb0p6YaepCTVFuKp/tsnYahwCnnYeWF2HoIew7KsiRnMrAbmd8v8BQAXzM\noU1w\r\n=OZ4/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFP8b07cL3iQ00iZeJC6vNeb0drD6esiHTSK1ZbQVp9jAiEAmf1+f3swgTfx4PXtASnbfbuauekHLCxvIfCo3lMxUdE="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.374c2694_1540543877352_0.8505653675189924"},"_hasShrinkwrap":false},"0.14.0-alpha.18dcf303":{"name":"@syncano/cli","version":"0.14.0-alpha.18dcf303","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.18dcf303","@syncano/template-project-empty":"0.14.0-alpha.18dcf303","@syncano/template-project-hello":"0.14.0-alpha.18dcf303","@syncano/template-socket-es6":"0.14.0-alpha.18dcf303","@syncano/template-socket-es6-validate":"0.14.0-alpha.18dcf303","@syncano/template-socket-vanilla":"0.14.0-alpha.18dcf303","@syncano/validate":"0.14.0-alpha.18dcf303","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.18dcf303","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.18dcf303","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-HybXJ8m3giAGyvh7ZZ+3L8FzTawM4pNT5lhynG1nK8N/um4WOQ57NiMavzVOdOyPIY/eqo/ergUXgTgDQYL0WA==","shasum":"d5da8bd9761f9bd836f6f137a46a95d715eefe26","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.18dcf303.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb0u/yCRA9TVsSAnZWagAAiqoP/0hwJ/0kR2jKkVmGLZef\n2eO3/sXcw61oBMOakmkbswasxXH69YqjhDwo2YEW9OwhyUlJH8bTTWtf2hzX\nz22QxvzlzVGOWWD74Qfpv5c0Wz5j8feumkAz+oljwBvtGSyMFm72xRF9HejK\nR/4g4hyscpPnt2Ue2EpmSsXunXl6oWWGBAyNJEHQJIryuI8xfIVXeOxM2jg3\nJ3fV63vwRPHAHQ0MjrUD3iSXPr4G7DS8Cl3v2QQ/MS4sj7o0/reYP9Q1o3P1\niQYWzvmWE2MHAFde3LcPkPMJPdTzB6DIlyCeOvUVmEfANMkc03dGLmHc17jv\nMrNv2fMzTl+CKBus+RDQ3PoY9ee0M/occe3n5LoJ1h6MsG8to7gtyZdhXl4I\n81vXn9yJLSo7MyAVO1k3mlX1uoivW8h8YPmw0CsMtawLFkkRx1Oq87LMKtH6\njdqE9HUBFrhRtOLkU9ftcmfQdkHM7+ABhfNSDQipeqE8ogSdTFe1YwLgSAkH\nH8xy5gugOJit5A5/hfZycSmTN3Q63r+9ZjcfaKgwZTEDxlttemi+06DInAVq\nuo9Nasm71I0NemQlHTfB07uIRzlbG1Tf8cgAgA0ynzrrv7ErsE9cpzIk29Va\nbgdOTXyINXRPmKQEIlTa6d0bxNKJ8Jthd/PjgC5taL1tOYTd98Jkq0ZVs5tI\nP7/p\r\n=pV6U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCT8X8XISZl+Zd+SqDHvtDTifgnnWLxIbfvF951KggevAIgasT7Kg20+L3LLqHbCUz+rrgQ/gsjcpXCGilKbm6AeuI="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.18dcf303_1540550641187_0.9425061133119919"},"_hasShrinkwrap":false},"0.14.0-alpha.68bd63a6":{"name":"@syncano/cli","version":"0.14.0-alpha.68bd63a6","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.68bd63a6","@syncano/template-project-empty":"0.14.0-alpha.68bd63a6","@syncano/template-project-hello":"0.14.0-alpha.68bd63a6","@syncano/template-socket-es6":"0.14.0-alpha.68bd63a6","@syncano/template-socket-es6-validate":"0.14.0-alpha.68bd63a6","@syncano/template-socket-vanilla":"0.14.0-alpha.68bd63a6","@syncano/validate":"0.14.0-alpha.68bd63a6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.68bd63a6","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.68bd63a6","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-AVSNxscxE+LUH7b3Mkfs0NrMI+Qo0sC/QEurblQGaWGhd1Kf+9H2K19M4VpuEuL12G23NIWw4/Niep3w9pKxaA==","shasum":"f751aba6dc3e714bba8cd3b1d199f2bea546d6cb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.68bd63a6.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1M90CRA9TVsSAnZWagAAqB8QAI/xqsUeYVyHqCW6TFVe\n92ThmZB8var8ySbT2jSTMXp5nF6VlSDca2Q3+0c9fGWLTe1kMKd36pinzyX3\nvExcKbqcJP+oZhhhtPBZY57nEaFt49r+hGGm/EqqK7b3qntfhM7hQ8JBYJVY\nQD//ZGIubkcvPOqzr5agwGpRk+cScoopq3qrjZFnA+8sFgK2Yi5Etb4+kW+p\nzcSswne5eI+i/kNA9Z4JYxNZNL9pJ5LJhvNAPr4Gd2U/MI7Grk3TsANE0/dc\n/L9ey472tDxiE8lGD0mh2l6tte0gFZUtctL5x+6zkLnsqUzPZZ2flRR8R5gZ\nClsJ6HdzKm7zlgwHOCStE9DlFj7CuZMa9cHJ9BwYrwciTyL0WUH9cgwse2fJ\nSoE0cp8uoyKhrPmqX0rBZ8Z1BiuyYN56Gw1HZA5vu7KjR60cFAMlt/NU1gAY\n+hPQygeCnC4xwapsq7q/Cer8ce5lfp+bk13CGDK6a0YROE5Dx76ieF5W1Myv\nH/vhjgWc2ZU9BSKXDg6w+mMa+1qMuRN0Fswyet3NWPKIDLJzBHYCzyfyGe7K\nlfW80HealW5xDIUkmcdrZMlsqrmSTeCJmw0hC8kInijNBujD9NdoUEapjAjK\nMIy8JaUXJbjYHyHmYxyB3/Ku0l1n/aC+gZJVQU45v4h/pUrpwhdc0PUgofsl\nqQJP\r\n=11nr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnWgcG8zLXRUEvdbUkSTeNJr7HS/ITH6H1zZjhDmBgJwIhAKJS5YTZZiKuj5icWmTV9QPn3ybeIbZ9eH42Era1g4/0"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.68bd63a6_1540673395915_0.2464642309554903"},"_hasShrinkwrap":false},"0.14.0-alpha.39a50714":{"name":"@syncano/cli","version":"0.14.0-alpha.39a50714","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0-alpha.39a50714","@syncano/template-project-empty":"0.14.0-alpha.39a50714","@syncano/template-project-hello":"0.14.0-alpha.39a50714","@syncano/template-socket-es6":"0.14.0-alpha.39a50714","@syncano/template-socket-es6-validate":"0.14.0-alpha.39a50714","@syncano/template-socket-vanilla":"0.14.0-alpha.39a50714","@syncano/validate":"0.14.0-alpha.39a50714","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0-alpha.39a50714","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.14.0-alpha.39a50714","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-tsy1Xv1K4PeN5k9PqoJ9bZKryA7mW8BbWxCvDjQbT3sbEpbQxt4cAsm1izdjXwi7jgFHwUKoPE95+9rz2WfRuQ==","shasum":"175532e94b6ae4834e3ca17a1f29add563b19f34","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0-alpha.39a50714.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1NQGCRA9TVsSAnZWagAAKQoP/0/4s4Vt81pC03aS2/xb\novbbblm2XgwxmSSXhsX05RT6KSPJXnQdBBDeZOyGCXpeCiuf+u59QNj9uhlX\nQjbk6AtaMd3F6BBDSdeH4gq8ILyq8OL7362lbX9Pmb/zCKH12bjxPWnbteh/\nakZiEtwP4TvBIgvndhhg3oyOx5EqgqpGjAnspL5A0mU5JHlYPSB0VDUZnK3N\nnQfC6LRSUW1/KtSnktLdvYh8CXFQLiBp9TbzvZr1c+vfEp5gedy/IB+BRn0Q\nNQWslJcatojlO/EUBzI0WjbLyYXVnkV+agho+AT1qRPcZjszAI2KRbTZahqY\nbbblruT0je80VmeWQKOrysv6J6M0UEmr/v7ZrTk4sPOwBFzk2Vtmqpv4F/ir\ndmrwW12+d2xH0L1lzpVUZrFXLMefRKQApjLEF8dVu2jQW55jXiyW4fD1BUE2\ngDNDT/eVKdXZX854y/jsBJO2qIlByXQurwkDusZwYKuc1U8LztMhQCTRsa9n\nDzKsZ0c4bj3LikPFPZSfEZGnhQHffV61k5JRG9BnRrNgnYmTwOehIGZUma+k\nHvWKlylDWxS/ztX83qBjYvLTgNra84BgrHkv07IhzoePXGcJeYn9KcKLgnf/\n8FiMmtAzakTbpDXaBUMCzsuXfbFCt4i3f8PuRool0jFcTSZGKKWy3I+gWV6+\nYp8B\r\n=7DiV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDXBKGUG310Oxl0amYfR2GMPX4VkYc23TdUoJR1mknaPAiEA2TtQaCUdGJ12JMSRj+ymgdj1eFwDtwuoNBAnumubT70="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0-alpha.39a50714_1540674565647_0.07421531151400629"},"_hasShrinkwrap":false},"0.14.0":{"name":"@syncano/cli","version":"0.14.0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.14.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.13.0","@syncano/template-socket-es6":"0.13.0","@syncano/template-socket-es6-validate":"0.12.1","@syncano/template-socket-vanilla":"0.13.0","@syncano/validate":"0.14.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.14.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.14.0","_npmVersion":"6.4.1","_nodeVersion":"10.4.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-IzxYaqQSdWQ29W3MDv6cFnxZeGrvcjzUFu/X85AI+1ZeG9flaIvQA/EQ7whPAoxn1DkpTdQFSvLdoLpVr9aCYg==","shasum":"afe12121a1e1570cfced0add4711b4fceafdf551","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.14.0.tgz","fileCount":192,"unpackedSize":863980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1NXZCRA9TVsSAnZWagAAp4IP/1mefPdGJijxjZT7y3sT\nbJSuTf+Ze3yOVlBdOx/o8G0PKpwa5RjLHAp+/z5uiHTmfPRcRIDNncRkVd02\n05sRspJ7L7NaEYVZ6bDLbDG3F1Mc4wT1dh3R1nvRIuQTF8iR1DSpsL2ago+T\n8ap1H6KQSPRHZd9Lo9f7vIb4iFdMiYADCHuDyvCavf/6MN8n4GzCYbGupgfb\nmS/zdPd2blTxr0B0A/YYmyOLCV66CFULXhBX8ElT0PEe+cR3GHesAftxeeth\nbxmiRAEo6zga7rHK3QO0xHVBzSF4MdMjxy9pMtyJAnCuLrvRdaKUuUBi0t+0\n2mfHF7DaCdZ5lgpEsU0+Zp9divvxtYEMmtmZ/QVJ+qTrwhPyYmlb2sm59x5g\nVB1BSVmYelTV6+bTvJ+QPWZMc+gv+TdjikUZnjyWHGCzJJQB4DRO2UKIkD+p\nykAAQip4cY1dNvTC1v4CGh9nSY1hEGcqpjodO27OMEdWrOx8e65Q2kE6fFuP\naiP/N8MS3nWx64LaUizHZ91lHWNSBxVfWzTdveIOGTes723F3ea/LZ2ilYvu\nSFUgQQ43MaBx6/2jekcX96A7oQzF9uctK/vqChx6rD0ZA0pnx4ZyJJ/GHS6L\n6zI48pQyOR5aCuShmduAh+uMtVm84F1oIjMMfJg6ii5nSV0Wu+tQ6jS9nr7f\nLzNI\r\n=AP4g\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEnqO5Dce6YQ+XK6tYVI1knYao2Yg/iGMFgMbIdPOmdpAiBCfIGJpCYzp4Uin0rWidosamuiKVmAcF4+mqaUjb7pIQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.14.0_1540675032936_0.22023393564051652"},"_hasShrinkwrap":false},"0.15.0-alpha.3caaaeb7":{"name":"@syncano/cli","version":"0.15.0-alpha.3caaaeb7","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.3caaaeb7","@syncano/template-project-empty":"0.15.0-alpha.3caaaeb7","@syncano/template-project-hello":"0.15.0-alpha.3caaaeb7","@syncano/template-socket-es6":"0.15.0-alpha.3caaaeb7","@syncano/template-socket-es6-validate":"0.15.0-alpha.3caaaeb7","@syncano/template-socket-vanilla":"0.15.0-alpha.3caaaeb7","@syncano/validate":"0.15.0-alpha.3caaaeb7","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.3caaaeb7","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.3caaaeb7","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-x9egaHq7BiSgqQcW+LXlrHybnsNAkQ3Q/EsPatCB0HTdi8fkS1fM17ElpYnXeoL8fFmA1uISujgtHxCUNDIKnA==","shasum":"b52209909c25e45106247105805a5af6b5ab21c0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.3caaaeb7.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1NiqCRA9TVsSAnZWagAACxcQAIwuQRt8ahTRNuGL9TeO\nmLyok1OW38wYgjzt9/Ii1Mewpy4h8sC8RX3zA5nRtLY5591FWw92UdUcR16D\ng3qfoLzcw1HMzQeuUcUIX4S8wM6tHb8Kg5GdxNSW5o5Ixy08EOXpXATT4kKy\n/Wn+SnOVm9Z6nVG0HjlCinCL/0cLIB6gPxUSh7LldF87tE1t+bT3D30WZPPb\nZV54fjqPLcr9Gr6LqYMwVYuN2eVO2Av52fn+O8X6o835VrAx1R7OooOmxa9C\n9TE6TdB/+DnVVardmVJdPCwoXkBCpHZpLm1BLmoGt5a0WaIXHXpP8mcAkJgG\n/lsNHRZojUoea8DVeP1iRzZjA/L49QJwq98ZEAUAx+5h9FkCC94WlSyZc1Db\n/lMi+VP8AIshOaaR3z5uufNst2H60jn2E3BhKljX/sORt7KY1CRi7Ss3SOkq\nhbCMmCWbDzNvsQtOzi/nMkoXxwkv+j3xYF1m+5q99oCmqwEr5UuWnxBdMK9e\nH7wL+z9ogX8M9C55tUy3g1fR4KU+ORgZfwrciY1gZ3fYj6QuezjX8+tXQHIX\n3YPgyh6Iw0YyKr9puqz1LA5No1gxh5DVnuInA/HF1vRgItNzfmKzQ/hg0Fat\n0xPMi4kErM+/XIF34YHNm9ggqD4IJV+MDShFclVyLsIOIr9ZNuWR+FY+qIPX\nNbMo\r\n=ZNhG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDz7gQJP5XiwSJcXDco97Fw3v9mz2eMhvH1ArGP6DuQVQIhAMWB65hsNa5uOsy0JwvoqESkSQM7Zwok8NgnrLs2Ncbg"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.3caaaeb7_1540675753638_0.6118978914457998"},"_hasShrinkwrap":false},"0.15.0-alpha.cacefa6d":{"name":"@syncano/cli","version":"0.15.0-alpha.cacefa6d","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.cacefa6d","@syncano/template-project-empty":"0.15.0-alpha.cacefa6d","@syncano/template-project-hello":"0.15.0-alpha.cacefa6d","@syncano/template-socket-es6":"0.15.0-alpha.cacefa6d","@syncano/template-socket-es6-validate":"0.15.0-alpha.cacefa6d","@syncano/template-socket-vanilla":"0.15.0-alpha.cacefa6d","@syncano/validate":"0.15.0-alpha.cacefa6d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.cacefa6d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.cacefa6d","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-DtQjJDmLPBz2X47w5S1sRYcG8Cmi22oO8O3Jr47g4+5KNLP7GQgDMIRjNqx9quxHEuHv+DtmM4/kheCldmysow==","shasum":"5680297be822eb7941be6dbff5c82e399de6cc7b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.cacefa6d.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2CjfCRA9TVsSAnZWagAAGU0P/38JDJHwywJLs54E201O\naVUmsR0xk4+LsYZvIRaBTlT+VaoaqM/DbP4Dg5B2DJtzg1ExekoYEn4c+JvO\nr8Yujj+ZeN4RddQZUXNpJBxGs/zaGp1ecwbnzPfod/2XJFuRAyKPyfIieWAy\ngqfK3ZekiFbZwzg8601lekmy7+UOlmzlRDZ/S9BjDhpvJOmtj/o+rMQICm2L\nVVqpbTtuF7g2p2CLVFqEjpe0zgzPSkfW6xWZw0mqX74c50JwBCwHUVr9Wo5M\nlBYR6KpR1YWXtQZhBYdgNKXk2AkJwD1VqyqfopW7/Y+cWHrfhAJSi6lG+YE5\ncoAyesvvtH/mSk7mSWpIqrRsaxhE0tD8AVb2gXt4f6yICijRYNVizidqovlg\n9cxfcBVxKh0fOAjI8r5wKU7fOddupu//XPUH7QZc1T7KlgvyA8SDP8M/zkXu\nzQwhH19r3dc1zHXsSaPaXsw1Af5a793dGA6VaCwRDCD7l3lmea6cYMDyEe9u\nEAHEEihJLKdiCVY7neRpLTNXLrEDjyf26oOZK70K94makb6Epr/V45Tw32A8\nxHl5+zoUHO0t0dY04+9GtdBssx3BstIgGGRIKjCXktTvsujHJO3T/5kKql1U\nJ153UOgCNT48eOmgfIEgKc+bXaItoVPBmvED0DLMmRkXTItjaeLAyDpzmvV+\nhP4G\r\n=HD1e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICTLaHluzyDSKEBWug+JJqgpl+lu7RT0VG/dpfW79FbLAiEA2DNzHrmpN72xbCi18wjIS1lVarQKY64I3bKPPqbjYlY="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.cacefa6d_1540892894428_0.7283483756911824"},"_hasShrinkwrap":false},"0.15.0-alpha.0623427a":{"name":"@syncano/cli","version":"0.15.0-alpha.0623427a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.0623427a","@syncano/template-project-empty":"0.15.0-alpha.0623427a","@syncano/template-project-hello":"0.15.0-alpha.0623427a","@syncano/template-socket-es6":"0.15.0-alpha.0623427a","@syncano/template-socket-es6-validate":"0.15.0-alpha.0623427a","@syncano/template-socket-vanilla":"0.15.0-alpha.0623427a","@syncano/validate":"0.15.0-alpha.0623427a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.0623427a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.0623427a","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-7Jzmv3+NY3wjCoeY2NzwXmi+poMX9oQXbBiGBmSD9WDwWbW3mKvita+5OE9YHpuS4eYYjMoniOl2kx1MH2uDZw==","shasum":"d7847dfb10184803e7af2a56409f78417fcc138b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.0623427a.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2En6CRA9TVsSAnZWagAAgGgP/1lFdMMUIwCZHUj6MFRy\n6SjwuSM2tpXx6F8dgukrBqLPWgI4xt7DN00hysVuTXpxJrcyphhHf9UHqTvJ\nKkqU7JI9/YlLuE1ezOH06u+iZh4BKDM1QscQX64BykE8PGxxylSFawWfo9xM\ncZw5+msEMrL4e1iOkxl2JdQVOJnE7QZs3jei1zZkMALys32hvX+3YyufQx4w\nNQPGMgIVantSLmBA/wzJO9QBYbUZevG2jnjfYKEz+L45PiWoQ3kJl2eHI74n\nE5Z9ezruC7mUh1GxQ0SY6mc4KXNdB9EywXL0WJ/Ln6uYscu+Xx7wW+UiJUiD\nOHRg93MFUIh4flUZEF2VSJjEPujUjazETqCYmFW9Wlcslu6kFf8ypcEYnZtV\nO76x3FBAIk1ERg8R+JUTLIOC/7dtFTP7+Vvy5ik2Ksyf6wmwrq5wvrDNFB+W\nXzBWYYqXcBRua26OKhv5obdsNQ7pOJTLuemazJxV8TrJzul69Ah+/icGUMVB\n4/UdjA9TZlcbdXrzPEEW6gO678JqpBARtL1Ho1ccEuCqFqlRSCQnapCbIYuq\nGiJQmdSoPAv7yA3R6X/ue5U+gsCmh1W21U7lj0z3nZPz9bDrW+jaNnFf15Zh\nfjYfEjOMtijtfUwcHrch5fN4fUASRfitLvDq1I1MeCwCKQ2dF+G4/qwgcJyP\nxQAl\r\n=9h1o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX+UhLiUcB5IJw9GI9fQ6v5fHsVEij1sG2g5Nb8KVUsQIhALEJdWelJoNgq4HT8dkIcRtdng0KREJHTX0gB5eky6GN"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.0623427a_1540901369459_0.08794833649299538"},"_hasShrinkwrap":false},"0.15.0-alpha.9ff9a2c0":{"name":"@syncano/cli","version":"0.15.0-alpha.9ff9a2c0","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.9ff9a2c0","@syncano/template-project-empty":"0.15.0-alpha.9ff9a2c0","@syncano/template-project-hello":"0.15.0-alpha.9ff9a2c0","@syncano/template-socket-es6":"0.15.0-alpha.9ff9a2c0","@syncano/template-socket-es6-validate":"0.15.0-alpha.9ff9a2c0","@syncano/template-socket-vanilla":"0.15.0-alpha.9ff9a2c0","@syncano/validate":"0.15.0-alpha.9ff9a2c0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.9ff9a2c0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.9ff9a2c0","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-SsLv14rn1p25SX110FQhezNCXmaLTgpHq0FcnqF2cbKfqYU83kwXHiihvcyIba5tVFB3bY7eBc7EBwhzA64fLQ==","shasum":"1c22463996c0eb1b55aec9b8b3aafa4bd41f6adc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.9ff9a2c0.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2WjOCRA9TVsSAnZWagAA+xQP/jJVgiPZ6xtyraOQwwCp\nmM3xS6yujzscfgmkbVFOZbfyPXxZ9RTXXzgI1VGIGuAZgarMdPgrvt2NXEhh\n+vjSpHgAtIfQBA9U0S5wBDzowN7CTcBRYznslc1PWY828Vvau56WjXY0zXTO\nACnfF2qOsVvHLPs6HEOus56D0ZrTzDiyWQSvt+Thof0w53Q8oO7m12liP5Xi\n3Ykz2IOhiIXwj+j1HE43Igyf+3sovIdv1QgGRURAzxJAdFQnHtMvZ9+nWhmk\nYasGJR6L2xlbR3YWyaWeAy6tm9AegDGnwBV0cVw2qMxaUPVsGsd59GXZgh15\nBC5UH8MJ7DZzS3ew8yauyxV3gq5CS11NgXQ5e+XONiDGAltnoKcWECmxlYsP\nJ8juqf92fRsrPpOEKCSOyo1m/bInCfAUUEG0yN+840bl97Ft3nq0l91D3j+T\n4mNzsjY7CMQXwz3gn9so/QVbnLrR0VIbH4Ell0Xz7Bk35k47X8nZSISIAoW3\nJfnSpfxMn6+YX3HaumlKVBkbpa7Jgq0sH/7EM3fG5cwi7nficHfp/8yFMHoB\nSu4i5i8LZmYCpPv0GHKbXd80xm+INdGn9bXXvDFAlLOoY2AjDl2f0zLCCXyx\nD8HgI8lUHUUTNRwFtmwJElOr1VuFpmjaSQu7GcW+f4iCop8mw6JMsPGN7CFn\nwbFh\r\n=4Ni7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFilXBhhikZXjY8wLpbMg2BRXtEQrbR24cEdQ0ue3gdgAiEAuWAAQHYx8VqxJ63rfm6PpCs4Zpx3J3pQvL4punkDRX4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.9ff9a2c0_1540974797522_0.45071993768143237"},"_hasShrinkwrap":false},"0.15.0-alpha.eb87735c":{"name":"@syncano/cli","version":"0.15.0-alpha.eb87735c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.eb87735c","@syncano/template-project-empty":"0.15.0-alpha.eb87735c","@syncano/template-project-hello":"0.15.0-alpha.eb87735c","@syncano/template-socket-es6":"0.15.0-alpha.eb87735c","@syncano/template-socket-es6-validate":"0.15.0-alpha.eb87735c","@syncano/template-socket-vanilla":"0.15.0-alpha.eb87735c","@syncano/validate":"0.15.0-alpha.eb87735c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.eb87735c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.eb87735c","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-sRiVQbeC0yBOO44sc/NFYyJWFIIYNSo6temICw+mQjfjDvNgGdQI9H2BBDtf4ty9hJ6feFUJWseuhuUmB8DYvA==","shasum":"92b23c20851f97074514d359b86c9055340093dd","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.eb87735c.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2W/hCRA9TVsSAnZWagAAScsP/1DOzi66lNVAGUzqDldS\ngWdL4AzjsTWRDSfM10LrmhOe4kFAp/32tECenKRJdfsb1lSjmJY2DjsCtGz1\nQ4iGj4dullS+P0y7lLiNeYEZ84ZqGn4MQzOSal2lRkV0qrheWNUeqdsxRG7n\nesJjzKCTmyxYDvoQz9NnbT53DFG7uuT2FauR01wiP200RtcuyzFQgBv2AgPg\nyalK5nlQ3fjD5YKUgxzsOC/rVnp2mMQCg8ZEfOqh3adDKxilSiregT/7i+R3\nDJmFMnB+9e6ctffFg3I5+sMdAGA/qXrCB4NdUWvB6zSbao9jCMqcC1PNbjdp\nN/7ZRMazuAEOdZY2084YmvSA/FnZgVWfOkOJzf8qZYiDeWack3iwXyjELu4M\nTzoG6aCIEx3Kiaw9BurHFmdK1IEF7Sut2/l1DFMexcrQoSu0fp0xeyTaj00n\n92kFVxjwj11dTw+pkrt+fEgCci2cYYaRXYheABTy5relyXxg3M6CwuLX+nml\ng05vB6Mu5SRZPvokM0N2EbbhOudPHwl1eR5lSYgovQCGcjmCmjuBY1DU3IzV\nOWTF/kpV5xCbVSIO+nGqF6RPaMDamLDygxTM7NCGsEJCZiHZOznu5crVGTuM\nDvznwqXKIow2dR4IrIMM2Mk5m0kcQ6un6Jm84bQW2Sb5BMp3MzlS5ULRf1LC\nljoF\r\n=78YY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj/y8L+q+k2+1GxCNBP4C5nV151BNlG6fr6VgdQrZ+6QIgIwjyX+ocvriZkFIDzrEanVKx+y1KFU/EB16B2rIjul4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.eb87735c_1540976609249_0.518232913143303"},"_hasShrinkwrap":false},"0.15.0-alpha.00549f11":{"name":"@syncano/cli","version":"0.15.0-alpha.00549f11","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.00549f11","@syncano/template-project-empty":"0.15.0-alpha.00549f11","@syncano/template-project-hello":"0.15.0-alpha.00549f11","@syncano/template-socket-es6":"0.15.0-alpha.00549f11","@syncano/template-socket-es6-validate":"0.15.0-alpha.00549f11","@syncano/template-socket-vanilla":"0.15.0-alpha.00549f11","@syncano/validate":"0.15.0-alpha.00549f11","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.00549f11","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.00549f11","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-fH62d+DNzwPWpuiIJGEH0SEet3lOZ2Zfipn5YKeNabaaON5/QZ9n7SVON8my+OeQvd6tG6nsUPISyh9gvN8EAQ==","shasum":"7f335225b5308d9a0c7d4902475fb5b8d3b9c757","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.00549f11.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3Bs+CRA9TVsSAnZWagAAryEQAJ1wz6mteILXzbmeroZL\nK2Lm6D99iOHj35d53eN0LZ60JPUURIFpZAe6hdy4nz/MjwlcHaqWC1DcS7jm\nnTH+DcR/60THoYw9Dtz3vSyL7yGliJU6TNNLX5UtP+T6rai+UhRPUc8aNwW4\nnL0xjdwkTFAHg+FbLJOM9n4pNAIqVucXdm9vj6hLw1ACByiebSN441oj5uce\nXHa3p1T+hK4ptQacPoNZ/K/+md7NSJgovlJjeWgn9mzOy3b91WuC0hxLrtfN\nfnSg6vEu8f/2X7HsnJXMbiQ1xeQTO/CdDLAnbulCdVD33/kL8buYIytuadRi\ne69Hia55w8sKsZ2D5FGLBpS+qv0bz/5YXSCAqnGIuSlXYienVUxhUGu3DIpb\nPc8Db1nk2DctO8rBtXgzNHU5XFteRu4ALCMjYGeQyzjbBluU7z9Zd7zUWEC4\nZvwweT1W5M6PckPqQq1anLAEqNccXqyczDhDcYgwJzj+lbzZNLux6lfDaybV\nCrBZckE97G31I/m2VrvF1wsQ36cXVGlgDk3fXta3fprJ9J4RW3jKoCQ0phjl\nUJXTFIxP8j7MR0nGLIYpY+fmRVTF6WAb5Mi/yiIKfk3q3D8g8lHZ1amQpjwJ\n/GGBRr2E4NDJ+UDZ5Gy1yxnioqpAM9lex5/rtYqukqsin+CIyM3VN8nngX3c\nVBaI\r\n=WhP+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTL93n2uIs8pBQ8C3pZNkWSdbBssq8DpPtrgmyTlrOPwIhAMTA1hiq9qwnnF2sAKGJH+prwlnlWT4lU80sgr7d++fY"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.00549f11_1541151550106_0.22110207749770439"},"_hasShrinkwrap":false},"0.15.0-alpha.871d9f11":{"name":"@syncano/cli","version":"0.15.0-alpha.871d9f11","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.871d9f11","@syncano/template-project-empty":"0.15.0-alpha.871d9f11","@syncano/template-project-hello":"0.15.0-alpha.871d9f11","@syncano/template-socket-es6":"0.15.0-alpha.871d9f11","@syncano/template-socket-es6-validate":"0.15.0-alpha.871d9f11","@syncano/template-socket-vanilla":"0.15.0-alpha.871d9f11","@syncano/validate":"0.15.0-alpha.871d9f11","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.871d9f11","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.871d9f11","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-JQ/t32BjMlji9GaKDF0LZf5jA7ftQjzlUbhfm32+t7JwC2s3gbttDtcb3CgRFJqusGWnVCnyHUBLjorLeS2dEQ==","shasum":"004b6c5df6d95dbbfb37f6df610755e4df4a0dfa","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.871d9f11.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3CIoCRA9TVsSAnZWagAAXSEP+wUiTBJMovxJHu6iz15h\nVac+9dmtlPulU2+VqmIRQOXKa3N2Yi0DnNuAjV1jHhsJphanv3FEL0XuhbzG\nhUR8znO7PMFl/uWMxmJ9HLseiv8Ur2hi6auD/qclxqJJZStEuvz4mwb8U02C\nTwOKSTEeYmjURaqqbNfuM1Zq1D7Tqkisk6dfiPJrxJtOzce4l/PIhUIcpgsf\naE6XZ95LM308waJZr5nyCC2pWHzTPzlCRrgJvtg3J4K7t/LPSimgK5TP62GG\n0+J8MTpqDlNdgHoqwVsFFGyV1c36Gyjr4XnFea/08vXCmVQs7LEjT+oyy7JV\nV8iV2Y1Ef+Kgi/a3kh2TbCHg3P4hyoHNRcytxu0tN2/RwFMs8dnGdJDOPOCa\nIPULXAFpxn7jEaEVfSe1tuP4BYsV9v0nr5hrOY5H+M8SNKSUcKkGD+yBGYsC\nGKYrqedvofcl7TpuKdclAY6QOHyeLHooP6XcR/Qf6ytRAWBhO04Zxzi4GNmY\n6BgjfXyI6o2dtciTpJM95MGQvPRNbB9PHN9dRZNUEn9fYRjE/Bv0yxx0nYiG\nFD3tLU6j4Z9R64Xd0s8UfU4vU0fQrNv0OEez+tQ5r05TLZM7Uxh+dOED0p0U\n/8X7R91PhE59H7ObtebfSK99+4G55TEYGZh/CrB6/CAzd5815VCHSzgtZRxA\nUeZ9\r\n=2t2J\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgJWDKgXd6dyFO8ApWiIH4/fcZHkN43uljqeSr74y0NwIgQfKiSqib53otxHUtDokWpWL2ZcM/IXZGCXchTBnWbb4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.871d9f11_1541153320069_0.16202193808807386"},"_hasShrinkwrap":false},"0.15.0-alpha.59d56d06":{"name":"@syncano/cli","version":"0.15.0-alpha.59d56d06","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.59d56d06","@syncano/template-project-empty":"0.15.0-alpha.59d56d06","@syncano/template-project-hello":"0.15.0-alpha.59d56d06","@syncano/template-socket-es6":"0.15.0-alpha.59d56d06","@syncano/template-socket-es6-validate":"0.15.0-alpha.59d56d06","@syncano/template-socket-vanilla":"0.15.0-alpha.59d56d06","@syncano/validate":"0.15.0-alpha.59d56d06","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.59d56d06","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.59d56d06","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-VA4JOimzQzVv2Zzs+fTI8zwwE+zYGUvurJyi6fFInwxQzAT/UOF1hBPyCtypv7q/fzBD8Vz0GgKxPbEKDJ7MQQ==","shasum":"202429fbddc8463045bac64e79f8fed044980ae5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.59d56d06.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4BaYCRA9TVsSAnZWagAAspQP+gOJLLtMre1NCQXoilcy\nsGoF73wIPb1+7FTKQ7+qzGa52GyZUk9hjLen2MXxapA/C+SWxLQo1rmB5T/m\nfMZ+qVrQpIv91ISE87Vb/tEZvTRWM4soSextv4Iv9qqINSEQy2dqQxkgvpzR\nZv49+xB2nExBGnitikBPkGp22sUL34TLIGrbGTmmZ3n2BR1HQJL1OVgXkHO1\nOvv0Nq+00xwvGenW5Mo42H11JZ+xF5fZg8UQtNv3An9/wC+zwRCkSdwcBM+W\n5s7ICPCVZKz0rDtpCtdg7tUceQhG4zWiTdFsjbEAiE6sNcwi4Hjk78K5aWu4\nyMHEK1lxq6eSBz2nWTObtYgpoXQRi4OoIPAlDmcuPlO0+UE2P78mJFITpAee\nmKSPGKnqoB1hk1D+WcwpWroyjhOyvhXnc0WQbn5stpMGWDbTI7vwa+GC6ydK\nIANYrubBnPJ0S5JSih1Cg5bXn3Rs1gtiY9S7y0c5VSI7ViuYlyufgNT+6K+e\nCFLe8UlsNdVyx4E8rz+Le5DEsV/06xqhj2/FV2P/Lgp+Dr5anWmUXZ+qrZqW\nF7LviCFu/7zd0sIZIdxhKKSrgBpqUjNkStSoMyDk5bcF+dDZVBjhncc7LJt9\nlMSgiwUx9gnDMb6zBMcKZZ1o87QH51H/KUnBcM+MhXSeUcVAya/Tr3veiOEZ\n1e0z\r\n=0Gz1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1meZzgipwAFac1tGFU/ke6Rm+cfpmY7Vwu3VDVmJ9PwIhANwJCqd7ttants8pTK50T+JGFr0gPoQE/OzWAJ8FSSmI"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.59d56d06_1541412503350_0.19454789735386346"},"_hasShrinkwrap":false},"0.15.0-alpha.0727a17e":{"name":"@syncano/cli","version":"0.15.0-alpha.0727a17e","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.0727a17e","@syncano/template-project-empty":"0.15.0-alpha.0727a17e","@syncano/template-project-hello":"0.15.0-alpha.0727a17e","@syncano/template-socket-es6":"0.15.0-alpha.0727a17e","@syncano/template-socket-es6-validate":"0.15.0-alpha.0727a17e","@syncano/template-socket-vanilla":"0.15.0-alpha.0727a17e","@syncano/validate":"0.15.0-alpha.0727a17e","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.0727a17e","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.0727a17e","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-9CeVtw/M6n1X1qdBpXpoAshGpnp0sY7zameiab/yfbIUswSxCCOkihc23xxVdg0c7HPtPMIF5taKHQzFkXElSQ==","shasum":"bd461b34b2365ef0c4006be8f03c52fd2ef9fba3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.0727a17e.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4Bi1CRA9TVsSAnZWagAAC6sP/R02sCr8m6Jn/ydqRfie\nbViqqD2nxxX8npI1sXa6C8spDFRV0/EK2ZEuxGNYuP4pSQn8OmpVf5qc2FPi\niQ+k5gZpfq7QaVV4ffBP5P2ztKFgUPj0LKzwXGYh6f6bmi6kU1rv9lwg17uv\n0r8I2usAR/qz0UVXD7amZK10YdZd2lDKTzu1vrRXXgTF/SdCjL5vXCD218uo\nl2yy3/M6Xux9LTzb2/qjJCRmTd7SCI9m3yGfjTqdlyeNTNegyxSvrOjOf9Bt\nxL1GFHNuqpe5iZ6ZNosO6yTBQo750ZB1VjdS0tyo+nYywiuQTeWjkmojE7TZ\nAi7nI1h2HRc4gKi5gK8UtPYC26rnp/wmw0wBqdkjWZ47y0NpugLiy2y1122r\n1wDQg+ZLJT1jyBGu2WBcQ8olxWEfu5FvCvrvo4MlJdQtEB69tT1bfuc+kEr2\no+bzapG5+fbVpuGY3DjqHB/X8TWLzn6o8A7+vyPCzgetXywrL+u2PAQSOQof\nkgR7ML29vS6zyzbVvpPRWLuAPv4UVVv7VSb6Z0yNOHVk3PpkhLYVpsU37/zT\nbKJ5ec3jsVD7TNbuFAa+p5xbvxJFYS6plsZ8zN2tyrkAvjmMmb4+iooAIb8Y\ngYdc6TlzZ1tpwbSfZP6RPf5cDDCCeOdg1sSjLyFicbZioAFQapKyjHYjQYkW\negcS\r\n=isUY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYIOLPGRIAEiHUQZK2aRDfES8QYbu8sR1n2T8H5k7xEwIgISHtMnoqmkUGHq+YzM7dB4DX7dYm/6GwgH7y+TBQ9Ow="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.0727a17e_1541413045149_0.08095526816521548"},"_hasShrinkwrap":false},"0.15.0-alpha.0d3f4b82":{"name":"@syncano/cli","version":"0.15.0-alpha.0d3f4b82","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.0d3f4b82","@syncano/template-project-empty":"0.15.0-alpha.0d3f4b82","@syncano/template-project-hello":"0.15.0-alpha.0d3f4b82","@syncano/template-socket-es6":"0.15.0-alpha.0d3f4b82","@syncano/template-socket-es6-validate":"0.15.0-alpha.0d3f4b82","@syncano/template-socket-vanilla":"0.15.0-alpha.0d3f4b82","@syncano/validate":"0.15.0-alpha.0d3f4b82","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.0d3f4b82","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.0d3f4b82","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-HwjXyFvPhXzvjn9WUboKmOkbtoBqdwifNOdC0+MMYh3X1tWG7p2/AQteimKiNlgampxuLn+R6kinvhEU1z3nZQ==","shasum":"520281610195c91a69438f6e249f6783e31fa467","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.0d3f4b82.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4XoiCRA9TVsSAnZWagAANlkP/3j2X3i1+/pl1d4b6ukO\nDdXLqeOJCI3cf5zbWcBp6dcblIoUHF5kbSGVuHUaaj3S7UDsb8dfpNdia+nR\nq6rlOTEyRD0/XIzr2GV0QUKbClHQQryuD4J/jkcK281PAuRmJMt15l4pB489\nIDBexT2w69lRnRxiggSNmHSPCpKNrEg6xljCX+Z8bvvalEQAdnjCJSnPFBHT\nruoeH0pP9qlx2vRezRgsdATbu6OzIfK75nAi3U0YghgXfGP+K6CYwfYdhDt9\n7RMuonrQNJ+xLhZmm1GBx9CSeNtJZsmj8eT/PaLUvq9xeGxtpU3rtsp7mgoY\n63N6anlhyE/eflMtYn+yMQuP2NsgbkWT/cDhSB2ib/rhWiSY8zQG8EFSb/rE\nUJcgyu7R/q2ubDOe1GEFlMkuSU9V9H8h3Om/a0AtYQi+PMJWEdJS4/T6uIRB\nyyDCUwfIaRzgyOLZ/jxCT9OFqZVQ2Kcbc51a8ujOyT2QuNAwYKYjuvw8sqSB\nVeg85p4HqGOZOdjBY45/PniNIFwwYep6/rPuJ9b40SCZn54UtRxLgcSC7X96\nRTXyxdce+Pb3x/H5dUFFhyEaWFMWk7yca6JJvaVFZQ+cW5ErOoy6Vgj/DUqf\nlcfY+p7n4C3F3E2zgtvEk8O9pnWG4Yp7mwlr8hm/hvp/yOYjtEdACmYWpxMi\nj258\r\n=J0DD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBFrcwMB+ctoFL+ZYM2LkwUx9DaiqLBo/S/9S/GfuW7+AiBv38NPNVpkhBf3ctF2lrWFVct01CKZav+f+/p7tplr7Q=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.0d3f4b82_1541503521894_0.828737775315787"},"_hasShrinkwrap":false},"0.15.0-alpha.72f83bba":{"name":"@syncano/cli","version":"0.15.0-alpha.72f83bba","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.72f83bba","@syncano/template-project-empty":"0.15.0-alpha.72f83bba","@syncano/template-project-hello":"0.15.0-alpha.72f83bba","@syncano/template-socket-es6":"0.15.0-alpha.72f83bba","@syncano/template-socket-es6-validate":"0.15.0-alpha.72f83bba","@syncano/template-socket-vanilla":"0.15.0-alpha.72f83bba","@syncano/validate":"0.15.0-alpha.72f83bba","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.72f83bba","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.72f83bba","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-ZOpva5Bu8VSD0k5aOuvlosL906DdHM7PV1X3pLmG0k0ldS1TJmqMByiu+cSkD+GijWzBSq2bLOGF80SynLLIzQ==","shasum":"25b1fd86a36025af18eaf6de000460b2dbfb3230","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.72f83bba.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4/xyCRA9TVsSAnZWagAAn3UQAIHsE0XTjbs9QL7vLA3f\nT1lYJZMFTmIb9p9oQkdv6xhwBCJWtPGZ27x80yCfywWxlPVChEdY0ZusVBgb\nI8Lwl3ElZb7RwLFP2cYG+oxNQO9k5wRXbcVxEJ/JccfMwQeTzZwhXqKVAbWf\n8C1c3KxC+3iFbkFi7pplUgSOWmH9sOT0JwObycSElP5DY/ipO18I/2sGSHeq\nVULbAfA95rPVjgXFwTm1Sao7MiwWXuy8zEEHPzdOi4A58T18uXc4ySv+6aLi\n4RT+4e5C3v6YIXOkwha76FCBKeqfYK4hL2kMppoNMqmZcdxpwmo5tm7FEyIa\nHOYAH6+lEZHeMFA/hL4fTDqS+X48ol46o5xuhAIeFLOM7oVxO/Rs735bajgr\nz9ZonPTVaizkgnRqtIViE12E3+KTmr2dIOrSMNyJ0y5qZuD9N4o/aS/QRkBs\nYlCWeeVYTFdM8aaFzxZkJaPIAvPGipPIv/fEZc1lpZuNCmoc3ENAxxfH2nMv\niUlxwQENDxjAC4Yt9dyPEDLxMVHRnAuZd9fHB+Nhs6YJr+xMtEal10q29p4u\neVg1a4mEgvWepeNY6A0JAaFZzf46tDnTqeEv6RSGWc/On0qOi+NXFHI+RDKH\nA/ujvupdJd24YStXv9aUh+HkNqtVbFZztnH/hBOipl1Avj7Ju9azoIZA4pih\nmMmR\r\n=pv0i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFyvJjMZWkZUkoY2cj1Y9Lhh9AOONKzVdoRLZS2ecRAtAiAYo9blVIO8cUYCIoj6grsQpsKPw41cUcAsEw8k32HG/Q=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.72f83bba_1541667953389_0.4737056266803563"},"_hasShrinkwrap":false},"0.15.0-alpha.95270cec":{"name":"@syncano/cli","version":"0.15.0-alpha.95270cec","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.95270cec","@syncano/template-project-empty":"0.15.0-alpha.95270cec","@syncano/template-project-hello":"0.15.0-alpha.95270cec","@syncano/template-socket-es6":"0.15.0-alpha.95270cec","@syncano/template-socket-es6-validate":"0.15.0-alpha.95270cec","@syncano/template-socket-vanilla":"0.15.0-alpha.95270cec","@syncano/validate":"0.15.0-alpha.95270cec","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.95270cec","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.95270cec","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-FXVvx+HedtCHkzhkbFbe5wy+RZ+3bi05/DAZvHhwP3K9uc6rj7ARbtXeW/nwDRdqlxfsZDZfbP5sdbPY2Zzd8g==","shasum":"48c3ab4bd1d56821932f3e0ca5536fc6ca78a923","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.95270cec.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7VpUCRA9TVsSAnZWagAAk5kP/jVZv6qD/oY9q6v9EiRk\nNs66S4JrpnGYx1ik0RSSwhdi9b9qnKev4Djs0ES+cllUJRXuE8kUJWoKCuTe\nhlq+29O2abBTTMHCS4PFpyBmYYiHcneYnamPx+ZG3oT3LEC4MWdnkxJuLF5y\n4lZOUBv05fNv1M/SBrby1apY3tQ3OwyS3ITNbDWfPhzOviluqAG6Ebtco9MY\nHd4leVN+Ged+ceAvioRoVWUq2Exk8jCxZg2rsviR+ZN5WRlcQVR2IgfFPTPq\n8gRM5TvlciMB9bXF1aJA2sR41KfMxVnOkPSU6aqn0eiS8SQggXmaAY2HghLR\n+CVIyREgz1IqeDzoOq2XBj/W8ee+ypM+2SIT1lREWxaI9HSYlxLkBzqRamj/\nKuihQxJPx4j0rxG6t3tNlIMOLM7RS+vg0VDKTO6dSb9jq3KT8vYI/sdytR/r\n/gsBs1X9jwMON0Oce/BPZsD3++U35fLTLAIdPt93rg9o5O4rD0DS7tCwCrtm\nA1SRul28cHhitq7QIWakUfuJMggVSXFZOQVCDRqqqOrkOcsTu32Il+8aot1Y\nTsIlqjOldP6oU0W6uDO+26HRfHd1K70K65qvtSVOOlcZTo466XTG56P6qkrd\n6Zn2HHmzwNIAN75mC08pC+LonNqdGRpyvegF6e9wkhkM1vDvhiHVnZupdccK\nxyQI\r\n=llqz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC/1OG3h9+D47NPwClSrH6Z+ykf0tRkXv232K4N1EHirAiAGhGSb1u03l2btaMsIZk7Wbf66tXoXmcE8hMc5i2NiSg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.95270cec_1542281811253_0.2509407822852594"},"_hasShrinkwrap":false},"0.15.0-alpha.a4339471":{"name":"@syncano/cli","version":"0.15.0-alpha.a4339471","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.a4339471","@syncano/template-project-empty":"0.15.0-alpha.a4339471","@syncano/template-project-hello":"0.15.0-alpha.a4339471","@syncano/template-socket-es6":"0.15.0-alpha.a4339471","@syncano/template-socket-es6-validate":"0.15.0-alpha.a4339471","@syncano/template-socket-vanilla":"0.15.0-alpha.a4339471","@syncano/validate":"0.15.0-alpha.a4339471","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.a4339471","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.a4339471","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-L8jqsn/Sca58QBpi03WjSb54JlLl090MVJ5JO1LqQ0hv2xXmPzW6UQJVxBgDU59EfW4m2PFoSIxlul8uBC2rwA==","shasum":"2a5d0e3084da297405bd3e3bf5e5ac0f602e7d29","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.a4339471.tgz","fileCount":175,"unpackedSize":819331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7tENCRA9TVsSAnZWagAAm+sP+wQSHyMwk7UIZlps3b2Z\n2NJEXlOQQy8hiAQQJ/QuGwN6OSXZ65OYrRTcag4lXia4oVxgqFEojE+uaZGC\nXB74LQcKS6u8b8+1BlbPBOBA/YZyJwcdX2v4YaPg2Cq2nl7EoNUKY0+P63J8\nISQsS9br5re6NEZUiP0OX9l2VETtSlJdXUJROPW0/22PbpsLqgDAlNhJh3e8\nrH0bkzmI6VWwcpp/m/GsV+nZCDBSXEsyj6Cryco7uvLkiY0s1ESg7GeDFwgG\nfSomHS+pGT3aUAbBJk1fb+2WcVApVA3N1UkSpPVRIBMS3bMLZ/0BVxhETa5N\ntMHeMiAyqY3ieCs+FlF19ZfYQPUEo8xMT8Dfq6kUt1OIH+xetQWMU0gSVq/n\noKmAt1erlgWcBy+IXmvGQlE+YpBMW/VnAfusWKJX3RFMlz6QWMwGIndu7rHv\nHflrEizrroDjN8Qgys123MWv+hEaAeK408VYnnG5oxvs/QX0waPQtynv09ur\nzKf27vlYYkiXSo0d9IjwwJ2z+SxQRfLxHYmqozRvmf5kL24QADA4ZIIU/zEy\nhcgpguFGc1s8PewkJxY5gWpGtfboXk6uwRaA+kwOmXIojGKGkWUPZv/yNsRu\nKOb+bF/fIvw8ct+y26hVfgLR1nkDYjPlM+ai7B2H2l32jpr4p9NGPZruGe6I\nNJm3\r\n=FH4R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCu9AYVuHNUAXriBWQx629N0HPT5xQwrLLBYqDHg6UQHAIgLLP11N2V50pvac+I4bZGup3l9nCJbGBAI9Sua33IFGo="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.a4339471_1542377740608_0.3735660169592414"},"_hasShrinkwrap":false},"0.15.0-alpha.3040ae7c":{"name":"@syncano/cli","version":"0.15.0-alpha.3040ae7c","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.3040ae7c","@syncano/template-project-empty":"0.15.0-alpha.3040ae7c","@syncano/template-project-hello":"0.15.0-alpha.3040ae7c","@syncano/template-socket-es6":"0.15.0-alpha.3040ae7c","@syncano/template-socket-es6-validate":"0.15.0-alpha.3040ae7c","@syncano/template-socket-vanilla":"0.15.0-alpha.3040ae7c","@syncano/validate":"0.15.0-alpha.3040ae7c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.3040ae7c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.3040ae7c","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-0w8xaGmvhQI7Y3yu0aX4hSRxeXOVYSWq+IKd7K995j10OzFGZG6AA8JfxznI3zKcXb+4Vg29wUn3ftDKKUexrw==","shasum":"3b2849aaf0d40e2ac67aa5e9d66c9f02c518b8c0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.3040ae7c.tgz","fileCount":165,"unpackedSize":800277,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb7ueECRA9TVsSAnZWagAACwYP/jZUzv4jqoBS5PbKTaJu\n3Wm7/orcwoZL5BldWzp9O/D9vDrMs99CA6k62IxBcp8gYlfywuFB9B1P7TFq\nstZ6F5Nzhx0ph9Oiok/D09bnJQ6ov4IfE1KceqXr9YMvHhYr+4qy1mYYtN8I\nH9JPTV2u5BmuLyORkuCN2XqZlc4tnEIvAdeKkhfHnqGSvGy6m1p0FvSuhGq7\nFwoYrYAh3/kmBcGp5cR2Pq//kP9FkzD00JpdX/ZmPwBu3MIa3EqgfyjWMbVx\nSOGAZuOgcXbbw0rTN+sVrQP7p6OA8dRdF7UeYTaigGHO/3n7OaW7yoqyHa1s\ngqV7jc93npITGge/7mJt/DDmVFrFBPRbwE6979tq+QZKJY/GvBtptLk46DFy\n1ijMrRR6WX44cIiVLhu6GpsrD5PdM8HSrdTLUMLyTOKyV7h7KmjCGdVMdIdX\nMrrke6S20fYor6mnacyamWBoeXd3JqEqoAgjgQYkpEvOWfPqpWvbBqrbI0mT\nTDC1dDFPc7jSnR3IHGCn8JaKuFJHQdVjmI/pN1d24i8rriP993ZIQX9z5xFL\nTdcsG1MCtoC7guQcLoqSZ6UuwO+Nzt38XJrPlZLBG5TJNt1x1qQ6QCP5fzoF\nTmXtCLiANat03apCSe8bQrI2RxNUCTYLUiLX2tuIovUNbUAEThrb7yAVk2y6\ngMeB\r\n=T/Tg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDiTlN9uDkGjjIsG/kmz9bgCBsHv9/cf5ItvNoOSY+f6wIhAPIpLmN+XgqQ1cl74i51kpP7WeptQUdB6UaV5tJxN1ZM"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.3040ae7c_1542383491759_0.6059577627007289"},"_hasShrinkwrap":false},"0.15.0-alpha.2efe58d4":{"name":"@syncano/cli","version":"0.15.0-alpha.2efe58d4","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.2efe58d4","@syncano/template-project-empty":"0.15.0-alpha.2efe58d4","@syncano/template-project-hello":"0.15.0-alpha.2efe58d4","@syncano/template-socket-es6":"0.15.0-alpha.2efe58d4","@syncano/template-socket-es6-validate":"0.15.0-alpha.2efe58d4","@syncano/template-socket-vanilla":"0.15.0-alpha.2efe58d4","@syncano/validate":"0.15.0-alpha.2efe58d4","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.2efe58d4","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.2efe58d4","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Q6LX6B1qYzowX8eVWg8RW1JmQi1/THRrNFnQyIxMMP36Po/BgFL8+hc21H3aKzVC8ovdtQCbdDgrbbWcC5qGOw==","shasum":"efbffed35f3d0a14bea1dbc7305ea22331001429","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.2efe58d4.tgz","fileCount":175,"unpackedSize":828373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8JYLCRA9TVsSAnZWagAA4Q4P/0UG12Q+tphA28wZ2WDm\nGGxLEHZRKZAIgxF8K9lJUGVZ8pWX0dfoM2u3V1SbXmXths9oPsRpuZ0fumSq\n6cJiEdYXdS7K/r7FDszmdsZ/nqZHyXWq1qWxIbCKIyNKhyN4NuiGhv49SMJO\nW6B9kufQb6/sVlyG+WAf9o1jgRT0CNotS9Y8bJOxec8sfMG9pUtiEZRbUg/5\nPKQPdM0UitNoXjzM51YMTky/0nU3hLn6cxo7EuhHlpaT214PhW48isggmIEI\nq9cNnMg7awQDNbaDv08BBFCv6MoC+oJZ8X9eJhKI/AM+H4Y7eWK+5RkM7frg\n3Sxzx80qHwLIoz2jPfYTmiMdvh5N534wRKGpMPnAojBMcXRGMCTMbrijWNK/\nil90VuOZ1upgeM9PQa2oghkmpZtgS6ltqkRicHGfjG1LuzDmJWypCWu0KeRr\nhJ2sm4/sENgP0r+PYIWUPBdXhIuFFOV7/zJ3Bl6yiEValFIhvJPz1zHVJrov\nIeFS+/o1mQkdh9vGcrgqO6Q1sr6WHnKQwrtpj53rttuHR3GB+sR9O86ObFFb\n1i62fu8OMzoX+qRDM+Xs/x9742+GOTFplsQQ7pASyJsiMk/u4RKnqBkrJBVJ\nk8SVytpTaEw/Jj26WZEJLa8MBQfyusdfr9iRrTZBbhroXh+AGUt8qHjfQAxM\n2z9w\r\n=5Xev\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDz1IdkERpw1IvFL7M2qGWUbqQC8Uxqu6a5NjSiPS450gIgDScFd1UK4O23d35eU21mMKFFKZKHMb6knkPxFwWkfhg="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.2efe58d4_1542493707094_0.3514802370987262"},"_hasShrinkwrap":false},"0.15.0-alpha.ca690862":{"name":"@syncano/cli","version":"0.15.0-alpha.ca690862","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.ca690862","@syncano/template-project-empty":"0.15.0-alpha.ca690862","@syncano/template-project-hello":"0.15.0-alpha.ca690862","@syncano/template-socket-es6":"0.15.0-alpha.ca690862","@syncano/template-socket-es6-validate":"0.15.0-alpha.ca690862","@syncano/template-socket-vanilla":"0.15.0-alpha.ca690862","@syncano/validate":"0.15.0-alpha.ca690862","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.ca690862","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.ca690862","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-PYO8v1gI1VSX30JaBq+hX91im9MIEMT+z4gFww+9WL/iPyDkG1yHOs/QBaG0/Q+YO25tOWWHPt+pY47C6c6CJw==","shasum":"694568d03f3400987c70da819646890e27933f39","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.ca690862.tgz","fileCount":165,"unpackedSize":800277,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8JZICRA9TVsSAnZWagAA1CwP/isJ0fXBJPEprtVYHiix\nNGmgwSx3NJiWxWVsMaXQ1l+Byala2qCGl6tjc/Xj2bcI0hJikmMVZMhw6zMF\n/i6jZo7GzkQAUsPjVhto4BIU03jZb2mYNNzxBW2M2aTZOwjFfKwBviiwCU99\nvC5NVBmoH0xUcGHndR+H4No1+oubdf7fGK/EmeGeb4cH1UVAe+nG2bKZ5YDQ\nkJUOLs5OmiakyXE0dxrF1K27aXZHYlJqVJnVKWr+uErzKtfmUICNqiONZibY\nycsglaIbbhG6VwL1g9cTGpTy6M6wGWMdzMqAMOY8RJYemXjTQIgtwgmTN3Sw\nijPJO76I2VqNc824Sz4hDIY0Sj/fEfU6HkICgiqO4coO0JJZBef+L+OokxhL\n6qf5+yC8t+fP5gWZmUv6IL9nlD90yZVcOu8yKrHrhUcWpGHfakVwtVq6pJNP\nQpVnRqkoTtZGMl73AD4v9ccz+TQjxJGnH9ReAmcY3/R3XZ1TUt+d2FpM1z8A\nhDGYhTTb6WlXZ5dooi2UDZHalAXY/1h41P55eOQ2HuE2kIZaees+XQlSL+0x\nOZDij25KsAfpfiQKXpVxneLp+42+Tgk7Wct9FzLIFXggIOralzBvA1+835LA\nWPcw+vgaoM8/pqVKN8v3LQiCsDZ1xISvO3rgRi196mAzyC609OKJ4mNf3hju\njScr\r\n=KLas\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCH0sLDBy9tZ3HHzBt618iusdR6hQvF248rruCs9bFqB0CIDalk9tHx0j0Z0losm+7TizTLiRLF9KaxZ0w0Bpx/E0Y"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.ca690862_1542493768388_0.05988028255224909"},"_hasShrinkwrap":false},"0.15.0-alpha.dbe50f90":{"name":"@syncano/cli","version":"0.15.0-alpha.dbe50f90","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.dbe50f90","@syncano/template-project-empty":"0.15.0-alpha.dbe50f90","@syncano/template-project-hello":"0.15.0-alpha.dbe50f90","@syncano/template-socket-es6":"0.15.0-alpha.dbe50f90","@syncano/template-socket-es6-validate":"0.15.0-alpha.dbe50f90","@syncano/template-socket-vanilla":"0.15.0-alpha.dbe50f90","@syncano/validate":"0.15.0-alpha.dbe50f90","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.dbe50f90","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.dbe50f90","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-zrl0NeR02cAkJeCil+fNBF7QgrV6PYdxrZtAJ8WB4wQUiUhgd0IHyq23grp07z+z3AfhCzeAJeWxuDDdl/cN7A==","shasum":"728230c62eee204c4ece112ec4c3228a9b144273","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.dbe50f90.tgz","fileCount":175,"unpackedSize":828373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8xoRCRA9TVsSAnZWagAAi/oP/1hTaoGbjxRNbqld5UHV\nx7++4UHopdNlnVLvNnIZu1RFu3+/Rf/2++qJ/Z4qGRK4LVYDLAXLUOtr89Gr\nJkv1TbvgJ18JPCEbeRPxalJ9jaqy4fIzgeWALmElG8aBfJkR88MGr7k3ax5E\nfrUg440rr3DC4Xv4gSBDcjxm3T9/87epWqAN4sZYm/gMEnPf7DJq9ggy7/PE\n6D9ZT+hSYdxfxdKDb+iCkck8Y/449karkjBhnYImfm0l9CMV7yynEJ08LsOm\nJuSeL7j4LilXmi64+51CT/srFpiIE+AtTRW9COX1E/uPkiupPAmVkAsR9m/M\nzrrNnhcOGfG9n9h0/x99GJaEarGtqvls4gv++lM9Pi6Je6/qUtiYLhGTEqzk\nnGkKHP/N2BMM4vptZUCWqscyvBUsZu5s1RXZDup+JiON9vESoIogcB3cniSA\nCegHiEYVJjo95ivLEwMCsmsOq8DBZgGye2PTTDZLZgY6XuiNCzYJveg2UzLu\nCXIK49+IJ5crfAVuWdd+Al5LC51+nY3Cd4q0n62E7UGt520KdHxOZwlRSH3X\nwmGP1Srqywxl0EdkHE1d7O5zO/pcrfK8zPpKLJCtyfmOTdzAf7+77rEY3Ury\nLgdbzR1EXSs2xCnfTGtGgLrPnL71mAYVEAyoni65krFPn8Lyp1okjpbMsZFx\nadAy\r\n=+ZAS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB5FcgjbaLR6JSZqfj7XX43T7znUZckeQPtn1DbrAHmAAiB3OdgQAGn+5Gacsv9UkW2s1Ri8WN6WkEo+Tz7ADJ9jGA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.dbe50f90_1542658576527_0.7498235354718898"},"_hasShrinkwrap":false},"0.15.0-alpha.d78b5d4f":{"name":"@syncano/cli","version":"0.15.0-alpha.d78b5d4f","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.d78b5d4f","@syncano/template-project-empty":"0.15.0-alpha.d78b5d4f","@syncano/template-project-hello":"0.15.0-alpha.d78b5d4f","@syncano/template-socket-es6":"0.15.0-alpha.d78b5d4f","@syncano/template-socket-es6-validate":"0.15.0-alpha.d78b5d4f","@syncano/template-socket-vanilla":"0.15.0-alpha.d78b5d4f","@syncano/validate":"0.15.0-alpha.d78b5d4f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.d78b5d4f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.d78b5d4f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-D2wRx+S6Fh/h7obBZ1YnLJ2xiF4J2cfpdW71n+f5XQcSvdS6mATt3q/GOLM6ux+yhhLrYUmGp2LtSiFvSQuebw==","shasum":"9c92ab90adbc38d3fe8260ec030adf378e6a69ce","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.d78b5d4f.tgz","fileCount":175,"unpackedSize":826737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9JIgCRA9TVsSAnZWagAAKEkP/1dxBV8pB0zWPi0NOBqI\ngoztW7vPqOOp7NAha5PcJFxiaOoQoxPywLAaeR0A5XjXnpm/VUylWQZcZvSR\nIMxz4wZ5CvO1KSFuV3nHAIzkuFIJLiDt2wNvFZcFRRrLb7w/p2MilOpmHGsF\nNYfI2qsdx1G5oXvdcqeBCORB9qsEHxuG2c3QGHligZ4iTY/gXWO4yATyMywP\nzkNDT3VIHgBVSWwW3UU2KblQlfYZKEM4DFT+6Tu8HvqGmE2MRb/oVo/4EmnU\nZrHh8kFueExo0mQHDwD2aYGAQeDvDavjlaw6FEsLxt+k5B5B7O2mAh8kvAGP\ndKoaj/QKKtUta1oG+Y4QEqqAKVG9+Wr1dG/fmTQ12lLrY1T0gpyj8xnU3iLx\nNpFODZODrVjGKfh6MTrK7svgi/atIDd3QjQJoyqBZq8SlLOPzt4jMXFC1VVd\n9Q0ssUvcZxW9lIpLSa3RwfPU1ptmF7PdN8ms5aTRcdQ0uQO1z0rdDVaJuJ99\n6U7CM8t0y0VdHL4EKXlWQT/c78llMK/2US6sua8AdyYGSmygToQS5RBH5Q15\nfQRclTPlcYjZz1rkwdBYt6uw75LbdE/SNOGXSBW8TVqxhbMi+Jr+ZibtJ6kR\nzIhKWwApGYDWW3VmRnKvPr3zGvOPOrt+Zdb7yuY266x7wtwklvMFFD9Io82N\npOli\r\n=P7jR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpH2LeVgQK+sHGgJM/sw9I0uFcEUsYtr6HHaN6RBVyhwIgBt6kYN+fUfXJuBjD/iTNlwlL2/lqpZh8hZHHrJDP5CM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.d78b5d4f_1542754847581_0.2729091395145635"},"_hasShrinkwrap":false},"0.15.0-alpha.69bfd854":{"name":"@syncano/cli","version":"0.15.0-alpha.69bfd854","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.69bfd854","@syncano/template-project-empty":"0.15.0-alpha.69bfd854","@syncano/template-project-hello":"0.15.0-alpha.69bfd854","@syncano/template-socket-es6":"0.15.0-alpha.69bfd854","@syncano/template-socket-es6-validate":"0.15.0-alpha.69bfd854","@syncano/template-socket-vanilla":"0.15.0-alpha.69bfd854","@syncano/validate":"0.15.0-alpha.69bfd854","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.69bfd854","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.69bfd854","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-/CXI//CCaWU/9zjPCIZW4q6I4gtz0eOnyVh0Y78x8wOO4xk6E5/yTKnly46GNU3zH42J0RuevHwLVnS7keMSaQ==","shasum":"364f94009a152e992d3e5f109f4b3329c0042082","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.69bfd854.tgz","fileCount":175,"unpackedSize":827213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9JVxCRA9TVsSAnZWagAAQYoP/RVdpx2DN5qoH1ZFvu1c\nbdIhFWuKFQ9htWaV8koHxQKlUG98gKrHXMaGyail5Ep1j0J1qHEzHUEWndOy\noiB/FcHzfIcJmJBaGsY3yN1rjHg/3AbylKQGjrioGsgbsVDP8xRDpLHd5pPd\nFOdq4WtW0aQBKWcFH+rK+GHP2DvbUpHGsRKk+sGhYILaHy54ErxBQEGHE8JS\nSDe+ypbHJy2rfkj7qBxqUVb3a7uXo5FBQTNWvHS83pGMKZxmbUhGaLGR+NmM\nFabo8Sdabx3KB9K9f2GOhnFuWzlEfACcNI8yCiRXupOmL6g2V5RmGBliPTcE\nKTXBlz/xaEiEVmuwhTFonoLzdXjhe0EgS2GwK9ERNDgb43Xx1RXAMG9Qp2oc\nx14e4eQQ+nJpL3XU99AfHvLz7H0WDaBEoJjvr5wRNE9bXDt94VYOz9Oukc5w\nCc1HV0NpTo6dlzaUDMjd3XdPcjUcEfEdHelBIMWIqkQqIyJ/ZcwFM+04skjY\n4TXYFzyd6UcMOvHy3VN/7dXTDCMXHf11vNLK7NdPSbdHjhjH0E+zY7eU7LGs\nGOefcJyDXGpwFW4wSDxxuo4rJGT8Fqh5tgaLtApHnZEHJ4hCMcnen6K9cJXn\n2BhRZlm0Zlq/9FVYUoU1UQJVz0C4jgUnKDe8cKwxA4J67aqAHS7oCicS1Wg+\nR4M/\r\n=Vefv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBjVXx2B0FUMIgV/q2v5haVFS+iCIWq13UEJ0O2mLO/kAiBkINFYVeEQAT7SRoHbAOA5rOMWJ1fogFNj+tk+okN/aA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.69bfd854_1542755696624_0.06584574435288526"},"_hasShrinkwrap":false},"0.15.0-alpha.27be2902":{"name":"@syncano/cli","version":"0.15.0-alpha.27be2902","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.27be2902","@syncano/template-project-empty":"0.15.0-alpha.27be2902","@syncano/template-project-hello":"0.15.0-alpha.27be2902","@syncano/template-socket-es6":"0.15.0-alpha.27be2902","@syncano/template-socket-es6-validate":"0.15.0-alpha.27be2902","@syncano/template-socket-vanilla":"0.15.0-alpha.27be2902","@syncano/validate":"0.15.0-alpha.27be2902","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.27be2902","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.27be2902","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-S1NTY48DotMi7B6jVem0+3sdKQNF9iBp0Py0WIhlPL3X1UPVJJo1PBiCEi8S7iOJG2IH+wns3aZomPKnZV14zw==","shasum":"b5bbefe528b6d8246905108ef9493129d747b10f","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.27be2902.tgz","fileCount":175,"unpackedSize":827213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9Je7CRA9TVsSAnZWagAAX1oP/3mTwTTHktcoJb+9du1h\n99J+I5BNWN21B4I/khLzXV/5w7DpUwjgu65wLEZ+XOjHI6+LWBiSUSk1Ld34\njkghyghZ1uXIqegKi7i30jkfIGdkk0gCOmzVNKTCw44tmoyyab9vXoodjv58\nvGIL7Glxs7BI412dL6Fbpmf/85iyeYq4Vad7jru1cq4N8rJnNBbvxZZ5fHVo\nXlAFb4hqskjvlhUL0QxYvbDSiUjjNxXFEhRbfRbUue6PdvT/r7G+eMINdEAb\n4wMlJpaVBHF+UqldAk25Puu2ya2Qi1FzSjdcfzb+1gTMlRkR91mGGMbR8baV\n2JlHEisWvqDehVSZ8VK40nFUsDsgvp5+vfHgtM/VLbSFvPyDDaXkVHW55tMb\n+9oqJT9u0pvYj3onI59eFArTgnNjHKwfVi646A2pwXzIOywMqGey+TIE5w7H\nyUqB0OPXjxUpHvimFjTQwPbxWj+0lO1fjHv17ht6YUyqIQmur2/F/lKonKtA\nH1Igi+A8C4ZXWrs7CWwBKhbsUHw893vArDXlBRIrpGRIqaH2stPqz5XKrFmO\n6wKnsvXRZTtzRRsID+tOE9qHdqhCIHiRkd7IuxpCZNRclTMsc8SIcnLPCPa9\n0oZQoQycmX48kqkTnt6OeDi38lm7WpA/hkWDYGLKhEduPWIuuVrgz+axzEOa\nUq0U\r\n=BIvT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7qlIY4emqnGP0Syj1pnxEV83nWciBh7uaGWpHxebgNAIgfogs0AFWEIPoqJGdjxR0KNCEnT8A1UoAa1lwgm8HWlU="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.27be2902_1542756282441_0.7295615862082967"},"_hasShrinkwrap":false},"0.15.0-alpha.63afc4df":{"name":"@syncano/cli","version":"0.15.0-alpha.63afc4df","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.63afc4df","@syncano/template-project-empty":"0.15.0-alpha.63afc4df","@syncano/template-project-hello":"0.15.0-alpha.63afc4df","@syncano/template-socket-es6":"0.15.0-alpha.63afc4df","@syncano/template-socket-es6-validate":"0.15.0-alpha.63afc4df","@syncano/template-socket-vanilla":"0.15.0-alpha.63afc4df","@syncano/validate":"0.15.0-alpha.63afc4df","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.63afc4df","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.63afc4df","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-k7n7grLTTc3iU0dQaqJdj6P9LuAK3ipXXGoc1EymIZlzGIK7hREuV8AEGoGkf5JiUUFbLedgFugL7LVJceOjRA==","shasum":"c1dda91261e588dd7bd043a799d6b0864d1908ee","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.63afc4df.tgz","fileCount":177,"unpackedSize":828491,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9J+zCRA9TVsSAnZWagAAZvkP/26twRnf//0aa7blLPrk\n23hk05N/UcaL6nwor9KvQFQ+7d5BHXZp5F4WArzOp8dMDcD9A1Qe0b92s1X2\nfD3kgBK/MEHCWmVEnh/zqsL6cliK45KfyNrYFAvsSP+Vlorzo6v1LHwEehPv\n+nmFeOh0SdKatYG5aAZJEbsqQpBzrqQ/NsEXgw/d2InzaLwUlRwJRhyprjYI\nIRJHqirvfY6buDNGg+Ih+ol4Q+0eNjVQQ4e1NAc6tTRtLbAX04iewkLx3sC1\nXvOhMK+FCGsXNzyl0PvFY3dvDydTIGJI1elzKXRYoznzkp6miemChXP9Z2NB\nikpCgFD1qenE1FtyoruAqEQsmKsEMYplkgSsojr8aC2eugG8O9HywCMdnSQA\nckwSzMA6yydeuBvY8w/VsscJ+ewhY5rhRY1NHn0pMedExVYi+Ous85X3QXNA\nPHtBWMeYAiTeHbWmlXUQhtVMJFbFFVfo3MZ6avlnr4urrqeJTSIZmwn2wvzm\nrO82q5z3kJ2doMsdx8PoLeDFNpYWS9qrPq5A7ZWicHFVaTBaqHNlee9PLdyp\ng/820K5QbKivEXlNPZrI3XO8zN6C/9vQanvO9UoApa7jI/hlaA75QhxV/WKa\nH+wUAFOvX2i1Mbi75EE59cdsEJut9XSsavDb9QahGQbaYEvvOTrZ+w+MIwNc\nR5aE\r\n=dxu0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqUV4a5XuqBYBDvu056tuXG7z973pfXg81Br6oYF7mCAiEA4ZZSy8jrB4d3rIQsAJ0Xu3xToaOEY5OAlyuZTY9l+ms="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.63afc4df_1542758323236_0.4897969763063563"},"_hasShrinkwrap":false},"0.15.0-alpha.d433e023":{"name":"@syncano/cli","version":"0.15.0-alpha.d433e023","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.d433e023","@syncano/template-project-empty":"0.15.0-alpha.d433e023","@syncano/template-project-hello":"0.15.0-alpha.d433e023","@syncano/template-socket-es6":"0.15.0-alpha.d433e023","@syncano/template-socket-es6-validate":"0.15.0-alpha.d433e023","@syncano/template-socket-vanilla":"0.15.0-alpha.d433e023","@syncano/validate":"0.15.0-alpha.d433e023","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.d433e023","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.d433e023","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-cqIAXzbM3TBeV94GwRZk7lnFfqW+SOzOd3sEmVzJdBg1KTkMn3EFI0uR+UJ6nW0v/S7dkeZ0LN0OjjUVM81hzg==","shasum":"dc70a0614b510dbf810597fbd3c86f62ddf2a78a","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.d433e023.tgz","fileCount":177,"unpackedSize":828341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9J/7CRA9TVsSAnZWagAA1CsP/1cUGBswC7M6FCh/ZLeI\nr/rkiYMecO5F96/9xyksrzECC0F15ZktzWefMTNNfZCsUGCML/1yM6S498CB\nQJJjuA9UsQXhG/GljwSd7sZsf63Ex9bmb8CngGmZvkDWJ4ur4VKfIWMV0veD\nma34sVeg8rbsnMrt6v6J80ISTwpdDq09K0V8kYN5pAJ2C2bdqRlzlNNYtUHe\nM/LJmzHhGNdZ4eFmyXVxz48AVDV+ChZJTpXsVrHOUZCPTHNF20T6YmQ7Fftc\n+alzlXFTCYUnPIoCW7yWOLDym4IhKhrA1odcDintmRpqKNwTJ07Cj9qaONma\n+FY+rX2oe19debmZ/osbaUToqbWbwmhCoicEKH0rH4s9n24kyt1VhfJitw4e\ndOSZ9f4l3t/y0xtDfWcLjouI/Qf91Zfx18FsWgZMrWz98Ixm3fDjrOp1IbeO\nIzyx9HM9MGrOqU68YPHUrsSPIyZeRJhtHP4Szc42FBGIAt6zDzTlUb2hOZW7\nAqsxgAHEM+qoAQwYVVcyTEuGjzEJlvYJHaQ5T2Ti/jNwM3tKr+xHndSmFiEE\nJOzR0p+u0WqrevUy/xc/t/ERZcgO65WkFjcumU6sT6MKnRtuZNxe+gx1C8Uu\n0nKVWodp6WMVOAH7aTNx4lVlqW0zXXqf0Q4OGg0WW/STfsQOG1GhcdGoOU9B\nUjXe\r\n=yTLS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4R6NlInDjJQjJCmMDE99qn5NdAVyEjTLpysiBUKP8mQIhAP/ThJsB3K/mVQTYrjcaoXCxAslDY9oh2u/1aiU+GtTX"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.d433e023_1542758394879_0.7665998431718175"},"_hasShrinkwrap":false},"0.15.0-alpha.ac22ddfc":{"name":"@syncano/cli","version":"0.15.0-alpha.ac22ddfc","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.ac22ddfc","@syncano/template-project-empty":"0.15.0-alpha.ac22ddfc","@syncano/template-project-hello":"0.15.0-alpha.ac22ddfc","@syncano/template-socket-es6":"0.15.0-alpha.ac22ddfc","@syncano/template-socket-es6-validate":"0.15.0-alpha.ac22ddfc","@syncano/template-socket-vanilla":"0.15.0-alpha.ac22ddfc","@syncano/validate":"0.15.0-alpha.ac22ddfc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.ac22ddfc","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.ac22ddfc","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-iNGzVNj8Ii+iW30s4CLZuwK/B4LWWjxvfUVmxsu7NUhGp/Z9aorbISojcGMZIbpIdDkwMoP0ZtsZwPhzuriWPQ==","shasum":"8ac5f09a1eb1c2e8804dfc074223fd4bcebe55b6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.ac22ddfc.tgz","fileCount":177,"unpackedSize":828589,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9KWPCRA9TVsSAnZWagAAfxIP/1eBKmC9aKA3qdpUVNvv\nkL8eUZLRof5O2gxPA1uIZChCUojziMKZefa+Lz36DK1yXD/CYMNL7ioZ6+PD\nPUv9Xgy5UW8k8gWg/V0LyGXDTfuEioGd6fccRLbWoKNxT7UKmC/HC+phuwZp\n8xL1ahQ2iYgS2r0NCow3xhvNP0XbNw+H4t3K66bKAF7Wy73LP+OEib7Ankpa\n3xMQ86+wflkbtaxAQsck/V2lvlLuM+CHNyDv23f/mFbeMX+ez/8SXn5EL77h\nmHXbM28J4ajwwQfxCtvN9xpjz21zX1JfN/q/dKbNNsUrKz0IWswH1SmFWcr/\nVaG9YnlnaszqHgsBZ3cAavbaZLqs0zEwOHnU51CEU9AHV/9wG07JpBeXyg9L\nB3uX71NjeymY1RMrTLpSBYpuHjYJRKm0xq/vVZmQPwZTBMS89Q7EsHtkr8uI\nVX6LXQCd6GGAOv7WZs9fQNr/63eG/GgAajzVh4DR0neTt14EccG8CI2UXCet\nozTG00rbEHVqeK5QUvmtPd/x6wEQF3WwxrhqUXPct+t8iWCsoKYPK3SICnX/\nKI0mEs3sY5Wr50WOkzOhK1xhgRRgHdVbFC9RfKI5zvqib/VWti5jpf7L67aS\nmylIX9dp2Ok5zKDgM2SCKWGVyRMI7uFjyL/wCL6FoVOsdKBK9vAdm3eTZ/Ke\nVLm4\r\n=zRVs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC13uIQ091tM2a6j3wlTxTWXrhD7LhHp7JAXJMBntMO2wIgfICrSRdCby+3B2YNjLZvOdwLP4PLqgKhkR+kqPcEo+U="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.ac22ddfc_1542759822375_0.09191682466155382"},"_hasShrinkwrap":false},"0.15.0-alpha.48d0a1e1":{"name":"@syncano/cli","version":"0.15.0-alpha.48d0a1e1","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-component":"./lib/cli-component.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-component":"./lib/cli-component.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.48d0a1e1","@syncano/template-project-empty":"0.15.0-alpha.48d0a1e1","@syncano/template-project-hello":"0.15.0-alpha.48d0a1e1","@syncano/template-socket-es6":"0.15.0-alpha.48d0a1e1","@syncano/template-socket-es6-validate":"0.15.0-alpha.48d0a1e1","@syncano/template-socket-vanilla":"0.15.0-alpha.48d0a1e1","@syncano/validate":"0.15.0-alpha.48d0a1e1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.48d0a1e1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.48d0a1e1","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-iqQTj9Vcc78REv7fMC9359/yaUjePETeOo8PwVcRe/7v+QGiLIR8/pUESEG+EIMVUQNokD8zNFLPXSzcTfFO8A==","shasum":"f7aefcb6abbb064a156a35aa8f31391a35d2d239","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.48d0a1e1.tgz","fileCount":177,"unpackedSize":828589,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9KgYCRA9TVsSAnZWagAAWaoP/A9BLlPM6vdFUrHWgxD9\nRLVHS2flCVBsrwYyLYBzWHTlwe/dp+dn6+RrjSD3bDWy5Y2N3W3E6yA3vvwe\n2YBn2V56umfuQhDTRAFIu2H8yHqDbOCzHwOw6tonD1+mm3ntuGYDDTHKjvbn\nGACFbeI0ObueCiVwILy3HoFgK8UjYrY+X3Mk4GdGPaEwVKvX566N9zPRzxPl\nz0Jr2pI3sEybsyhOyIZdkelbZOitcc5BPkteb9FHesaM/X3rCA1lum07yoit\nYD8QJDUl8qbIthyB84kFowrNY8QxuKQglu4IfhZ/PsuspgZJrlzsQlVjhaYu\noNLNuz17s4YGd3P1GFW7PsRaMBySUDR+l47SibH6DNUtrLHQynPHZ7sIy1mN\nxj6rdcWi1pTvLlunhkQ1Klp3LQ8wgtrGINlJdbiPP8N8cvJi7ymbDuTH6CZV\n4eXazM0ius0xOlhT7YxOiC7c13F6RSwezgfPeH1qhwm1EJlD5ThK/WDzaVf1\nrdKI2eApJJHrQEz2GgsRMRaul+XbyW79CqTwZ0lO8Ey0Dee7hgOdoiWQMV9G\nIfXhjNJXWjGS5QJmI2UnXySMNSEmBj2c2AHGP6vHBLc38VmoHGwu9B93uSUP\neszwT/cx2srSPH5c1tqtVMUKu7uKEX32iu+fDVQk26DDJ8nN+ztbAMxbfdEw\nqPyU\r\n=yT5C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsGMQMB4BGbw5eVHhAJ3TqyFddQHNA0xG8raphjUV6VQIhAKxCqe3NqsTKK6Snmme7DhsPhBC1klgbLP7+LS/LuQr+"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.48d0a1e1_1542760471670_0.8752429596629028"},"_hasShrinkwrap":false},"0.15.0-alpha.cc288a4b":{"name":"@syncano/cli","version":"0.15.0-alpha.cc288a4b","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.cc288a4b","@syncano/template-project-empty":"0.15.0-alpha.cc288a4b","@syncano/template-project-hello":"0.15.0-alpha.cc288a4b","@syncano/template-socket-es6":"0.15.0-alpha.cc288a4b","@syncano/template-socket-es6-validate":"0.15.0-alpha.cc288a4b","@syncano/template-socket-vanilla":"0.15.0-alpha.cc288a4b","@syncano/validate":"0.15.0-alpha.cc288a4b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.cc288a4b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.cc288a4b","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-qu8PGzujxNU9+l7MAqj2EIAFREhmnRplPgI6EDE18/bnQVH8tIv20qaDbP+Bw7S7tLkalhRXJwdyTIXNQSPGsA==","shasum":"a572c2fd2acefa0b94d6af1e7bd1d8eda12ff72d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.cc288a4b.tgz","fileCount":177,"unpackedSize":828577,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb9K2gCRA9TVsSAnZWagAA5uAP/isS44lnpQl14Bss1XNN\nT03vtLM9PyJM0tVb0EMEcgzhuGp/hAT63nTlMOGj7bI2HFmSpPGDNjtxDQ+0\nY2YWxcl3P8q6f4+ImWj+i9OFC+mnLRaOZkceH5PLOxqbE8YbNJhnakj2WKk+\nzWfPZxJAWybJlvNtm0fFmWaS8yGAHR52Ba8pWz7ghEEIK0FqFX5iN+0tczdV\n3BSHC+qUCo8S0fA47kLpcIQOT5hHj1+Wpgr3Pb7ThnMgnx2ZFLpcVyfywg/J\ndQhqA6btxUfeqxkQ+SJMABuJPJAvPLdLP8m1FwZ5oZtpzdZp+iEI/AFLqIE3\nuoV5ojm6/YYf8Tk03o3tj+7Kc3fsB6VMFJNBsEK5H1R804hovWoR/UPzl+id\nL4p2tQhTTiA7nCuRKOesn//YVBLng3l3ZnAXfu50vpNkUOocG833SITZNQ79\nDCo2bTpwzZqMykUZ19oODNBJqP2AJfkleVQv7vXmLW/NGoJslQnl3APmmO48\n01Atphnq3yD/nD4ziu+KDm6kEUFurtQoLbJjWRa2oAMDPDSHVWS5K8GR+LDi\nDg3/n0yXgB5fjxNiHYbcJ7TFMALjOi+tguuEcTSNLInEiI9ZNBPdW+c/WxK+\nredsdARtt8Jl0cn18Pe8tPxiCBe5pbwIH+cSdKW9muwFix9zRajzijhq+3K/\nNa5I\r\n=kGxw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCIxQsQLbI+8RpQ9ku55o5u5vV6O1zt1YfcH4fKVFsvrgIgUUlIUPbgmONgV1VQp4kGREjA2jX6Ja0s4HTDranJgkU="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.cc288a4b_1542761887492_0.34408215351766747"},"_hasShrinkwrap":false},"0.15.0-alpha.9c3b0a84":{"name":"@syncano/cli","version":"0.15.0-alpha.9c3b0a84","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.9c3b0a84","@syncano/template-project-empty":"0.15.0-alpha.9c3b0a84","@syncano/template-project-hello":"0.15.0-alpha.9c3b0a84","@syncano/template-socket-es6":"0.15.0-alpha.9c3b0a84","@syncano/template-socket-es6-validate":"0.15.0-alpha.9c3b0a84","@syncano/template-socket-vanilla":"0.15.0-alpha.9c3b0a84","@syncano/validate":"0.15.0-alpha.9c3b0a84","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.17.1","bluebird":"^3.5.1","chalk":"^2.3.0","cli-table3":"^0.5.0","commander":"^2.12.1","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.0.1","form-data":"^2.3.1","fs-extra":"^5.0.0","glob":"^7.1.2","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.10","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","npm-run-all":"^4.1.2","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.4.1","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.9c3b0a84","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.13.4","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.2.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"npm-run-all --parallel test:unit test:e2e:group:*","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.9c3b0a84","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-Vvr3KP8Io1ddQUuox1UtrB3uxEznbLODFGsIVxav0tri1gwjcqCyntnZcjmGERjTB4kUp4REQzIuIwvr5tZj8w==","shasum":"6a857a5e450b796238e51dfa4285d348f520da39","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.9c3b0a84.tgz","fileCount":177,"unpackedSize":828577,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/AVSCRA9TVsSAnZWagAAPWEP/2y5Y/KshGr0XwdzxfoQ\n34NlmAA68I0E6HI28FKA3ahAPY/VjVGSpENF10MDw9DVdVzXBAtg0qKlXrQD\nhY6pkbdJsS8J1A6JJv2cm6AKY669Al9doLucZHAhNjtYUr8auVigAARsAfZl\nWCqOfSw8sB59oxxJpiQ1YbKftBK6ysLGKHliHrjaEin/VVtOevs5WcrZFqzV\n7IBtBhEq4Etl3OJR4SfZCw0C8VWKdUR+wmQK/SBOHtQhSx47nPVOKniJRPnP\niuD/hFDhCVL0/A0jD3SHWBf91TaKmvRcS9KkXmzHV+TSyMHBgPyBWJpuG2D4\nIliaoankfw30Zwa2FNwMV8uDKFYmYcvsa/CCeKIfdLobHyYiHdbCLuNWFMxh\n9V1Nnsce0mpKmyUXVMR0v497G2n4+JiTjVq48n1DL4Cxg4KAFVdhHmnQttdx\nA0xBghw0g12+3NETsczuoNeZeQaCrOWA3msZxwyT3b1H2jsQ98mi5tSOqdAj\n99O079dxiVn0C5YopYW3+Shh+gD+GNDVNaEOMpycdSwa7re2PoKK4bDsrOd5\nWa+LuQyOLD60WYt8N93UO7hpVPhyvTGb87gWnWm/6y4phxq42W57P4ZjnYdb\nQ6kFy7t2XwKx2eS+cTu3B+dkipAirRbp7/8PDbf/rZpJ5hSaaFK525fbPcbn\n3Plb\r\n=DuOS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICIgmKdG3B9jvjqBoufj0mfMyvhOHHFF9R7iO2pkv04KAiAJIJfc6CPqkIWtbPcS3BSf51xROICPcZthKM5TdNArrw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.9c3b0a84_1543243089780_0.8977786075904028"},"_hasShrinkwrap":false},"0.15.0-alpha.03ca347a":{"name":"@syncano/cli","version":"0.15.0-alpha.03ca347a","description":"CLI for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.com","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.03ca347a","@syncano/template-project-empty":"0.15.0-alpha.03ca347a","@syncano/template-project-hello":"0.15.0-alpha.03ca347a","@syncano/template-socket-es6":"0.15.0-alpha.03ca347a","@syncano/template-socket-es6-validate":"0.15.0-alpha.03ca347a","@syncano/template-socket-vanilla":"0.15.0-alpha.03ca347a","@syncano/validate":"0.15.0-alpha.03ca347a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^3.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.2.1","readdirp":"^2.1.0","semver":"^5.6.0","source-map":"^0.7.0","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.9.2"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.03ca347a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.4","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.6.1","babel-register":"^6.26.0","chai":"^4.1.2","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.0.0","mock-fs":"^4.4.2","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.03ca347a","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-w66FaNnylIyYQUa0Sd2+n81BLoEXkt5rBNH/f7jZYQCozCw3nKXzxMLE8uKhZh3Xa5PMQ0EsZWMttrbr8EHZ6Q==","shasum":"511242dcf4b4ece08e2269bc982c57b16ef97aff","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.03ca347a.tgz","fileCount":177,"unpackedSize":828554,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/YJ1CRA9TVsSAnZWagAAHaMP/ROMzh5x88HB8Bm1b7ue\nadaVviuzJ1mQwHBwP49pDeQxgGIus1PkRvnNPiD6COPWYOSblsBDi5mSm7+1\n03hW33G3GvqpDXwke/Wpa5sdsUSt8bvLuQLFXI/LLh5XUgvXY9xPNiMrDlck\nC8cNVfJUz4mIZsLMSaqqnf8hUqUe3eqceCxxG93UwkpDga/l9Ek0ytfFstae\nJiiuusBa7qSCTlSE2Xn6PuXIEAJcN7iDolYIxiwyWL77jadct/L5gL0mYKPt\nA+/qMpze5NkpBd0YK9AVDJXA1rHm51y5Se7U0znWTmz5MwY9qZb1F1bWwFjp\nl/47yrqDZM3t9KEqpeKyUaMXsVq3e5CsxzSwazeYQvpw+gZ18GE3edbePi5X\nOPE81GO1hr5Ec1kH62nUGJ1zs6Y1l5bd96569RQ0Oc7FOJP2T99OFCeqv1Yk\nVM71yXfRDcFMH1WRCKIH1FI+g2vT/mVykFmI7D0GhmJaPzSlHgxE8cvzFrfo\nyY/JrV/Jf3vzymOBmnTVJDHt57iV0ogyarVg6Uu0lniQkbUeSZ3M0KZAzSKF\nsfAXloUKq4VWk+jb+xDnOveJGz45d1d181U6+hosMe+LAF2A/97BfbN+zvM0\n8qctUbm8BSIHlHv8cj/9CmlyiTdyrLSMWivvS3hAlB9+3gVp04bC4GHknSHv\nDHkc\r\n=QvQx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCK+abOal69G6kVkY8ComdFaGbai13QS6BaZ4paBUeX8wIhANgZZ+0wAILEYzCRhJLLLUNhh1o3IDgdP5pFxELfMMyR"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.03ca347a_1543340660461_0.688653951226532"},"_hasShrinkwrap":false},"0.15.0-alpha.e76e6594":{"name":"@syncano/cli","version":"0.15.0-alpha.e76e6594","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.e76e6594","@syncano/template-project-empty":"0.15.0-alpha.e76e6594","@syncano/template-project-hello":"0.15.0-alpha.e76e6594","@syncano/template-socket-es6":"0.15.0-alpha.e76e6594","@syncano/template-socket-es6-validate":"0.15.0-alpha.e76e6594","@syncano/template-socket-vanilla":"0.15.0-alpha.e76e6594","@syncano/validate":"0.15.0-alpha.e76e6594","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.e76e6594","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.e76e6594","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-NnAyiABDZMkoh2RZCt/J8gfmDHMvHYsTvpHENQgr1xbCnJYCGuWZ6KMmcxYxjs8knWlxPrPCHt3yvBVNRj67xg==","shasum":"55442b7be2bd5263cd43d3e4c12f908198e05afb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.e76e6594.tgz","fileCount":178,"unpackedSize":829068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/dlLCRA9TVsSAnZWagAApOgP/jgTq0eKAC81TQVHOA34\njCYfdsMRznQugYKlCF7T87m6Yczkf61lQtViruDY3mAsuZUF+kIawi1MjMj6\nQ8nftLoyeQVRy1cL0w5pixTaKPBzsrkiy+avFt5OA+zUuwTyaoE4kLQTsT1c\nLOFVYpLRbPuYUS8SeL3oX66N2ZBhCX5NaReLmwzMGfMrmDYEmbmq0MM+7N+A\nhmL+O/TcHx4c78J6w+jaqRX75P3IL+KyRDwDmFV5LSu8k77icW/tMhScgksm\nXJlJkr32KLn++SAZQrE/b1okyLzss6MBEDVCjW8OzS7/2BnOB+JB9qyTaUFh\n6ZCW5t1h647jhOLdojsEFb5y1ucAocHvC+ivDNpV96AglGZWA71IgditQpAb\nUdnj8rtpdgNBmL7HdVuJWBgY0dY2Eb691yN1begq519B4TWFJxAlzd09QGNJ\ngAx6jN240lzaVNUTjsWOqalX7cxbyrf48sbCQ91EJLHAAnzX4CPbW8pvjU3T\n2srWONHND9QCX3mQJP1M0IFampWFrNupDA7Uj2BrHxIK1+qdZAh3WX+wVUcw\nGpecay1xsmh+7AOIRLaTpcHpV54sScY8gbDtY2mXFgODIavDz0LT1Hu/Xdns\nTPYKbkFJwph54KulHnVAYEVkwCbQW3U1YXdMbiwYvL901lGfcwV/S/IVHxOI\nPVAT\r\n=eION\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH8OD0BvRieOlJNCc9N5EwLiQLq9r6JbS1invYNhtFaLAiBbSHEz30MdEV2z9/7Wyj/WAZpfIcU6a/jQCkI/IRZ9lg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.e76e6594_1543362891173_0.2785275147602304"},"_hasShrinkwrap":false},"0.15.0-alpha.9ed71f12":{"name":"@syncano/cli","version":"0.15.0-alpha.9ed71f12","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.9ed71f12","@syncano/template-project-empty":"0.15.0-alpha.9ed71f12","@syncano/template-project-hello":"0.15.0-alpha.9ed71f12","@syncano/template-socket-es6":"0.15.0-alpha.9ed71f12","@syncano/template-socket-es6-validate":"0.15.0-alpha.9ed71f12","@syncano/template-socket-vanilla":"0.15.0-alpha.9ed71f12","@syncano/validate":"0.15.0-alpha.9ed71f12","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.9ed71f12","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.9ed71f12","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-jVhAojz3sfIrCxXuotBkErLxmsIgox4PxDFEfSws2vIZvzNEhWW1tubkzelB82/xqFJjlyfejWsEEav75l++cw==","shasum":"b55f7a8d201f5fc4f3355639d263f2625bdd21a7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.9ed71f12.tgz","fileCount":178,"unpackedSize":829068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/labCRA9TVsSAnZWagAA+cwQAJnuANAA3nQ9YLAO6fX1\nevS7XWiKzUMXwMoaUyHygMjqITPvWGA663d7S9gnXjzDF4ffQ08NJHXbEQ6h\nHszFrr+xCYaL8/qm7Ih9Qmd1GlA4QPTEPVRgLMn9gO4VjQRz0FSbLYQS2nWs\nIu72kgauBCGrT/+zfirTKRHdnbBkn2Tlr+LgNqbqsS4YJfW76NbphdJ70wHJ\n3YCIhDB9WVV6v0ETJBSCQp+2aFo5gcQbNwRCjYpiyxm7NWLNq9I/AMu5cX0y\ndEb/5dheJDhpBTPQFceVtApipzv3Vn0FeEvUNx4RontO7pVt7mqDoUlM0DLi\n6DAKf/NjdD+Dj72PR4tTDWw7fFB7wk2TFpEEtDKEV1sODBtGT+1mrYBNjU3G\nKZvnTtao+sYkwklA+MKPi9bFomfZ0yoQ3UXOiueCcQIe4RN3aIvgsd6nQkU9\n/JEA+P9+80Ylm+EBtU+rqCEkvM9lpweX5mUQAnwBf9USgcMNx6A6xIIQ2zPg\nzBn1DObbtSb5pjGPVptq985x3ivrkOGjX4JV8CqT5e3wQYoPbkPPzaYOOiTM\nJR6C2kVEAomu3ZKdvz99GaEWfDWJP/Od7G2nFyLAHgs4Zoo2G+jp+750vPo2\nMl+XETeimGFjG5bxULjSrot5X14zmEE9MKvJ2Ef5JRGOcNbQqVG9to2s5JB7\ntByp\r\n=30xb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGXgKpd3ieDsxdh6bZYqzTyIHjZH2r+1QtmqsEBmqkPlAiBnM/rSXTtuIFHufrGrDbkAyIklOPkC6/PWp3bElxwsdQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.9ed71f12_1543394970745_0.24968419397022612"},"_hasShrinkwrap":false},"0.15.0-alpha.2dc429e1":{"name":"@syncano/cli","version":"0.15.0-alpha.2dc429e1","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0-alpha.2dc429e1","@syncano/template-project-empty":"0.15.0-alpha.2dc429e1","@syncano/template-project-hello":"0.15.0-alpha.2dc429e1","@syncano/template-socket-es6":"0.15.0-alpha.2dc429e1","@syncano/template-socket-es6-validate":"0.15.0-alpha.2dc429e1","@syncano/template-socket-vanilla":"0.15.0-alpha.2dc429e1","@syncano/validate":"0.15.0-alpha.2dc429e1","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0-alpha.2dc429e1","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.0-alpha.2dc429e1","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-G2kl7a4OjmNh7nOGGU/DpoXHBG1gDTu1UB6P/W0UljiI+zf4iYIQQN8eWeUR1OJ13rR8zl8vXqAwyDY3iiHF8w==","shasum":"165055092ea769172f59582b55c249d8feeec7fa","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0-alpha.2dc429e1.tgz","fileCount":178,"unpackedSize":828983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAPkbCRA9TVsSAnZWagAARiMQAIG6KPaORnxTFWFdRXsP\nefsBTE+dXr1ousZJOO6y4ZADpaVigTHpQpScdyrsJXtqL94D3UZNeLZK2lna\n8dbh1tXy/uLBEXpZZiGs7QbHLWdSffS3WvENmBQwI81X+yM+eRKhzNizBD6Z\nygULtsxHzpZgx7QIggkM9SpwsDg33dXpFc6xZvCgOqrKufz54ONCKJEP7vLJ\nKSxHTLJIwRBRioLYMrGUAxeRLDvVoFxjnEdUQ5zWhr9xqZASHFJ0gH/rQCL0\n5wXpE7mVrAtkdI/qzXJEVqFu3LaY4J/km51gNPnkmSyNDA/5oXUFsvZn4Z0f\nakd5rT7YbqxYDKmRz+OzYZfbgn6Epts+Tuv077+3II+02LH3MMxFJg2pj9bW\nAgi1eDUywEstqwDjHI3zuH8lWxA5voejZhDFBM+fvr6ulRoXh2o/8O9lLgVG\n7tnQT45hDkhAWCMgX3EchPOkJj7DAKWSgnlc4prkpfwYawpRAYSOImvmxh+q\nNfaTy4v2ZUZCIlg7iSD4stZnEdFCgE5nOoAQUFylAvhGTIIvaiwLe8mZb3lp\nhQK4ryvy64yLoCxEl3Fe68FBQzq8pWxgNcrsuaYx2KnGO2ZaAwv7KkwC0+E2\nUF3rI8Rkk/HB25nd+UbyooTfM57elizz5gtmbn+V57Zz4hqKLj+Xe9CX+iCU\nOptL\r\n=wSBn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFEt8MRLWkN2BqLtVvsnFyEqcYpXYKREgenEMWQ5jY/xAiBp5rbfilzDNo4CdBkQwnPT3CWaKKalptsPLJtoY+diLA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0-alpha.2dc429e1_1543567642879_0.591321950859846"},"_hasShrinkwrap":false},"0.15.0":{"name":"@syncano/cli","version":"0.15.0","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"_id":"@syncano/cli@0.15.0","_npmVersion":"6.4.1","_nodeVersion":"10.4.0","_npmUser":{"name":"qk","email":"maciej@kucharz.net"},"dist":{"integrity":"sha512-k4xMkJOSZMmkVCPHVNiEiabLfKOZLM5bqCCMT3jIASPHL6lMBSGEYidt/FQObhJQzlq40jbjiZm7wkpxyJWWTQ==","shasum":"15c1b25d6d1d94c139f4963b65490deb57516bf6","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.0.tgz","fileCount":206,"unpackedSize":900424,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAPm+CRA9TVsSAnZWagAAvxMQAJw1K6wxBcIBhtRdW+6/\n6FQNFIFVx3RK0emixcrDh4BkN2qvGdJit4X8eOXFQ8H7Min18Ur/QjURIJgA\nT+XdEDNU/mRWfa+fae/PUrm9PCdzPYYWqIGaoIP2n/yk6EhZGRTPIlAsw9h1\nhsN8qzPchDqgI5tokj6l8PkTo7j7ZlC4xsbDPNhcu4CiJFLxuU5STtyCki6Y\nr9he2wfGnzc77/uBWwMSNzDqRfOrMtGVOzJyUR3Q3eiPiqqiwE6pano9kZgZ\nvuGw7DjQ7qxhOYyTvSA0PcozACpOzCdr4wyi90XdZcgOV5a0cc14BN8fbsFQ\nYMj1KuCmID7LUPov9rkuGwTxzHDt2IV+cdtbPrC98c9cN7UhxOXGEK6GE+vb\nFdoyJ4iT/ANuO1V+upZlStwy/Rvxsh7mTUp4u0BB0HICIYVrEG9DMjNw0Xy4\n0q1jDNJqbwP6XQaEjdL7N+EC9y1jUZuUAEUYGQ9JJBBruwYxOWSNUjeDiPyb\n8i3utFenkRdp2nBix1Bc2c79Rmh0ZC8KtywnlYh5vqdyElFFOoyJdOnSXgfa\nedygCvTyh2qKUtQnupaPBGy9ijfJevS46nEuflBsBPzW+ryfk3NGHj1Uwvcm\ngDTVaCA4feW+uA30Jqg2YsO/xpFfobBYBSh3QCj2REFiYv+FC1iquJtZa2lF\nptW8\r\n=6t5c\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2/uIV0yLNR8B7oFuqMgp3F4PkZbXTJXNuPBbfd4bgvQIgeaiCPxbU0GCoNc064/Q+4a1gyoxqlAoAHS4KrzA9P/g="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.0_1543567805876_0.3393918282778099"},"_hasShrinkwrap":false},"0.16.0-alpha.9187aacd":{"name":"@syncano/cli","version":"0.16.0-alpha.9187aacd","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.9187aacd","@syncano/template-project-empty":"0.16.0-alpha.9187aacd","@syncano/template-project-hello":"0.16.0-alpha.9187aacd","@syncano/template-socket-es6":"0.16.0-alpha.9187aacd","@syncano/template-socket-es6-validate":"0.16.0-alpha.9187aacd","@syncano/template-socket-vanilla":"0.16.0-alpha.9187aacd","@syncano/validate":"0.16.0-alpha.9187aacd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.9187aacd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Quickstart Guide\n\nA small teaser of what you will have build in a couple of minutes from now:\n\n![Teaser](http://i.imgur.com/XAxBGof.gif)\n\nTutorial steps:\n1. Cloning an example repository with a simple front-end project (a chat app)\n2. Syncano CLI installation\n3. Signing up and creating a Syncano project\n4. Installing a Syncano Socket\n5. Configuring the front-end\n6. Deploying your application to the cloud\n\n> You can test the app live at this url: https://production--chat-app.syncano.site/\n\n# Clone the example repository\n\nFirst git clone the sample Chat project by going to your terminal application and running:\n\n```sh\ngit clone https://github.com/Syncano-Community/chat-app.git\ncd chat-app\n```\n\n# Install the Syncano CLI\n\n> **In order to use the Syncano CLI you will have to install the following dependencies:**\n* NodeJS greater than [![NODE](https://img.shields.io/badge/node-v4.6.7-blue.svg)](http://nodejs.org/)\n* NPM greater than [![NPM](https://img.shields.io/badge/npm-v3.9-blue.svg)](http://npmjs.com/)\n* Yarn greater than [![Yarn](https://img.shields.io/badge/yarn-v18.1-blue.svg)](https://yarnpkg.com/en/docs/install)\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\nnpm install -g syncano-cli\n```\n\n# Sign up and create a project\nOnce the Syncano CLI is installed you can sign up for an account. Run the following command in the root directory of your project:\n\n```sh\nsyncano-cli init\n```\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n![syncano-cli init](docs/img/syncano-cli-init.png?token=AA-FCRPrJ3ZIb-BBPExoicDOEYwmJIx7ks5ZA04PwA)\n\n# Install a Syncano Socket\n\nNow, we will install the `chat` socket from the `Syncano Registry`.\n\n> Sockets are modules that enclose a piece of functionality needed for your app. The difference is, that instead of functions they expose endpoints for communication with the server, and emit events so that integrations with other sockets are possible. You can find out more about the Sockets concept in the Sockets Overview section.\n\n```sh\nsyncano-cli add chat\n```\n![syncano-cli add chat](docs/img/syncano-cli-add-chat.png?token=AA-FCfYQqSnXey3sswNdb2J8ucj139hfks5ZA06SwA)\n\nThis command will add a `chat` Socket as a dependency of your project. It has everything that is needed for your chat application front-end to work. By now your `chat-app` project structure should look like this:\n\n![chat-project-structure](docs/img/chat-project-structure.png?token=AA-FCT6MprdPYs0qSCYYHNiaXaukMQIZks5ZA06swA)\n\n> Run `syncano-cli list chat` to view the Socket documentation\n\nTo make sure it has been added correctly, you can open the `/chat-app/syncano/syncano.yml` and see if these lines are present:\n> The chat app Socket you installed may have a higher version number\n\n```yml\ndependencies:\n  sockets:\n    chat:\n      version: 0.0.1\n```\n\n# Configure your front-end\n\nThe only change you need to make in the code is in the `./web/index.html` file. Open it and replace the `INSTANCE_NAME` with your `Instance` name in the 8th line:\n\n![Change instance name](docs/img/syncano-cli-index.png?token=AA-FCUMcgCI6opGwnkhxZcqkzrH5bT9fks5ZA07UwA)\n\n > To find out your Instance name you can run `syncano-cli` command. It will be printed as a `Current Instance`.\n\n# Deploy your project\n\nNow it's time to deploy your app. To do this, run the following command:\n\n```sh\nsyncano-cli hosting add ./web\n```\n![Add hosting](docs/img/syncano-cli-hosting-add.png?token=AA-FCbUYxpggUN6c8mR6c8uB0OOcv4SUks5ZA07twA)\n\nChoose the defaults when prompted and type `y` and press enter when asked `Do you want to sync files now?`\n\nYour web assets will be published under the url printed by the Syncano CLI. It should have this format:  `https://staging--<instance name>.syncano.site/`. Go to this url to see the published project. Open the url in two tabs to experience the realtime in action.\n\n# Ok, but What has just happened!?\n\nYou have successfully configured and deployed a full stack, realtime chat application. Well done!\n\nHow did it happen? Here's a quick rundown:\n\n1. When running `syncano-cli add chat` you have connected to `Syncano Registry` which contains components that you can integrate into your app. Run `syncano-cli search [term]` to discover more Sockets.\n2. The `chat` Socket was added as a dependency in the `syncano.yml` file. All the dependencies installed from the `Syncano Registry` will be present in this file\n3. By providing the `instance_name` in the `index.html` you simply configure your web app to use your API. The `Syncano Client` library handles the rest.\n4. When running `syncano-cli deploy chat`, you tell Syncano to read from the `socket.yml` spec and, based on it, build your own API endpoints. The endpoints are available for use instantly after the `deploy` command is finished. To keep your local changes in sync with the Instance during development you can use the `syncano-cli  deploy --hot [socket-name]` command\n5. `syncano-cli hosting add` is the last command. It publishes your static web assets from the `web` folder and hosts them on Syncano.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.9187aacd","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-IGkcsWW0W668fLIoW7m1ftzsXFuVUq4+tEwHtdR1xPjW0Zb0tzmTjEztQz56vzpwIFNbsSxbp9MtPRYN3SFgsw==","shasum":"60da568d397779ac0370fa94b30f7e578dae66fc","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.9187aacd.tgz","fileCount":178,"unpackedSize":830479,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAPrBCRA9TVsSAnZWagAA76cQAKAifT4hycK93c5H31cL\ntKwLf/2CuESk55e97XdRucGP+CCNsTGazeYx7OaCuEmHQx4xOlDC2ycu0wAr\nVEnM+Ijy7R4JUnVkTslYJw6zcHJyIPmccpLxFU/6UHYTBbfnh+JZTfGXWSmn\ntAi4VCqqxLET8bcn07ZaB8Wl4ZF8GXSp72C2Kn+3aryPV2Pik5QHsnVZtf1S\nJ5trGk92CdCsaFCxpRRlUjYVtfBnrirpS5nR6SSnUbTb3UMhPPaz1sizxcFK\nOB5xxvcmFm2XREi2cLDWLkZSzQSdE8qDrFg9r12BS6c4vLKDYTgAmRe86RVU\nDpRdIfIYwSO476VNhC46mYq6Hy/m1mKn1ZKeST/8kX2yZAP6ZN6+BN1qYSNY\nmp9ePLiL11V5rTnwAyvYzJra4QgSUPR9BNSqXxOsn3+osLyoh0cZWsc5aWws\nFaXHB6VIx0AwFLNx5WuRP+TzJMaeAjo2BfCPteuDM2GtFbpwtYGBgUpld/bE\n/lf7Z7fqrCwHr2tfwF3gxO037pFQFoPRJLLaeQAsuA7MeQYZ9U2X2X0+MFpb\nqoCbCRcccz0C8l8E3dbpaNDHtgsQnTjX6WkeizdXhjMehi7kRi5YLJAq+3cL\n30W+RkebluL1rPbQSQQ0o2qRjndNiF1oth0xfN7J54dsGrbvI0+r6d0PSdnm\niHkK\r\n=EAaO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkUyCi2IBuIZ+bbYajQsB3dBdlkJgsP6UOcJHZxs6HfQIgWy4n/OCPMmWOlq2VHCbwJAb9ZWxMmnCFPmQAnpudMmA="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.9187aacd_1543568064699_0.5298021416200047"},"_hasShrinkwrap":false},"0.16.0-alpha.712d58c9":{"name":"@syncano/cli","version":"0.16.0-alpha.712d58c9","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.712d58c9","@syncano/template-project-empty":"0.16.0-alpha.712d58c9","@syncano/template-project-hello":"0.16.0-alpha.712d58c9","@syncano/template-socket-es6":"0.16.0-alpha.712d58c9","@syncano/template-socket-es6-validate":"0.16.0-alpha.712d58c9","@syncano/template-socket-vanilla":"0.16.0-alpha.712d58c9","@syncano/validate":"0.16.0-alpha.712d58c9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.712d58c9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, log into our [Slack](https://syncano.io/#/slack-invite) and chat with the community. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.712d58c9","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-CXSfzulAbkZXgJ7hQSoqeF9DkXWEr/w/bWvB5TRx8xuCRLsZTeKP9tydr2Dcm7xSZrGV9gu/QrtFJiztxOkBJg==","shasum":"0d5bf385a508c3bc3b56b810896e3a2830f76589","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.712d58c9.tgz","fileCount":178,"unpackedSize":826400,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAQLRCRA9TVsSAnZWagAA3WUP/1mYVOCOu4nq8UhXHX4z\nkBWKYhliAZqtQtXquCpHWFUS42QrWQqecUSvzptml7H2wSOmwW34uoMUOUUu\nqcaFh0i9XpMQlIjcY0EVdOf4dL3XNxibiU76LTBjhbSUwAxPNZnTaYm1jxUE\np0sQTBoY7psbjCYuDEOp9mNDRqofG8BiXY7/zxaJpeiujDx8xXd1BXzc92nf\nm+K6HOiKzL84nPMjf465cBQcQ0SsguiwzqS1ItVAX5kJN9hjyun3MRSySIO8\njed726wIBUx0BvWSQ/DCX6BzVRWn1CpQxEDtgYNrHjmNPGYZUs0MP7K1igPn\n7QZzXaZkzEm9ITE4dZYEw6pvvJ3GFkqxO3rmqxvj3cc52mh2pii8iPZUcaQe\nW3ShjgilnDj8yUZveqoPAg6v2kk//cPUPjiciNh59r0lXzta0izWf22EuvMq\nZTP9aHi/+4+j/L+4zjKjdMUC27nQk96rtFFrg6Bke2yXOq3KtQeH7ThCSlyD\nXm0tC/otot6tPGZLU8hUAIDjFys2sHGg1Eb2wGHbCoA4UOqiXRoo11s5wVQl\nzEGSaZgKdghUAhFin/e5HzJW050i9zkRgi1iHqsRfBa6guwRhvezPGjuYTTq\nxhnAf6ImKOA3gkMN0k5+FMD45Aeo3Y6wu+fpGhIztkAtekxa22fF6DGPo33b\nhDOI\r\n=siwm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICpaEu4Yj9o/dnV0nu3Yr7AcYSmfll5CGS5DqbszVH7FAiEA2v7PhvERqk6aZlutwX9YUKjMSmOCzATR+pG5V8nfR/A="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.712d58c9_1543570129138_0.14492758828287955"},"_hasShrinkwrap":false},"0.16.0-alpha.d11174bb":{"name":"@syncano/cli","version":"0.16.0-alpha.d11174bb","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.d11174bb","@syncano/template-project-empty":"0.16.0-alpha.d11174bb","@syncano/template-project-hello":"0.16.0-alpha.d11174bb","@syncano/template-socket-es6":"0.16.0-alpha.d11174bb","@syncano/template-socket-es6-validate":"0.16.0-alpha.d11174bb","@syncano/template-socket-vanilla":"0.16.0-alpha.d11174bb","@syncano/validate":"0.16.0-alpha.d11174bb","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.d11174bb","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum](https://spectrum.chat/syncano) community space. Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.d11174bb","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-5W5N1jGCAemveIHW2C6FJZ7qIpAJIAMc9Jz6UNAdtUM9hcetzvyJLDduoqQOB4Yn4kZsbtfj59e+CrlrC7Sshg==","shasum":"203e060e53bd3f1d8b887fbabe7720036f0b60d7","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.d11174bb.tgz","fileCount":178,"unpackedSize":826383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAQPyCRA9TVsSAnZWagAAjGwP/3XOUQY/DPqzR9BmBajj\n9SsQB+GOE4Lw7xsjV2srX9qqztsog+VW1HD2gHbq+wFLDIHOZyEz4fH+t6fT\nC5Upn090EVApTBdK2tDursNs0vT32LNuS3oPsaXvT1XvjqOD1OiE1vaCw24O\nbCMswiyAAJHu4hjEEWgOB90qtR4UKnIp3avqMlZ+N5QCRqwjGPUqrEWblQ97\nNLAgHFKaOAYDeie7INU29Smwm2NCIwZoy0gWe3okGr8k8K8EoHFnc1dqeqnV\nsDfBqpTuIGD7pw4Oqw7KOOjyO3TB2TJa/wbXPt+kztEohNi9ZzoEX0l/391n\nEMwFlTPgkXeV9AL/VxaPkf/EB4UshBUvbskgMcO9X/Ss4lthvJcqBEA4hgrK\nnajyiF9TIl70dqNHzJN2kk9bio4o8gjE+BsqWqtZKqORx7lBkqKCDArEZ+G1\niPsbGu/FDMfDU7dnD1WRD4GxybdNFKRm1mSPEKxGCMsQM9zefnwNdVoChkAj\nLSCsH7gBemSrE9JBWdKrR26vFcdurZv16nNKzD2v3cSddFbIALwocL20Vl7N\nocZ6K7NqgYIu95nFp/WZ8A8FOSM6nT5drcW2Ohwq4RHjBl0EhdUXMVsPtWP+\nojakiXTuTaWlJY7qshVt0i3LPSMjCpTDfow5YMJqljJANivx6ufRM2MezQoU\nXu/t\r\n=wDV2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDT0xYtcl7jyUWJ5Gje4jNefFbw05OiZQaDcsZeii1cXAIhAN8w213+e6LZJaDuL2N6I5/GiUE9ukyHSIQeb8XZ/YlA"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.d11174bb_1543570417967_0.6229999286825605"},"_hasShrinkwrap":false},"0.16.0-alpha.d218f2c5":{"name":"@syncano/cli","version":"0.16.0-alpha.d218f2c5","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.d218f2c5","@syncano/template-project-empty":"0.16.0-alpha.d218f2c5","@syncano/template-project-hello":"0.16.0-alpha.d218f2c5","@syncano/template-socket-es6":"0.16.0-alpha.d218f2c5","@syncano/template-socket-es6-validate":"0.16.0-alpha.d218f2c5","@syncano/template-socket-vanilla":"0.16.0-alpha.d218f2c5","@syncano/validate":"0.16.0-alpha.d218f2c5","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.d218f2c5","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.d218f2c5","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-yi61tWOUDNgyrMu/q1zHAAHQN2OLuHMehHB3xAEjbavihB1wIiLIS4dPVMRvQ/U9LG8ggbQWgqtup0In+Pgofw==","shasum":"bc0810f3eab936783970ed5216ec4fd68de8ce43","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.d218f2c5.tgz","fileCount":178,"unpackedSize":826383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAQQZCRA9TVsSAnZWagAAuAsP/A//NQhnTmDOHECb8QUL\njkp/+BunGVCN7H0E5CdxD3vH9mZiy1gPn7LbyYRiJfiTxffGiXgJV2fZxzkV\n1lIQOoYRZx1oP1prTAJqgXqD2NpV0pobBfQPZfHSDzGWna+fbJRCHy0uP5JJ\nT8qg4/kaFNAmRcxSG/PmIEvsRnA4xTnrtzj4yefdNcTV00JTA7x8a6sFfHiG\ng5n4PsPfir8WSXGHxI+ONfp06KWnQR1nN4OB2to3ETUyNRiB3MpPjAdKRGdu\nOo0fsZYENsoIr0sU9LLNvwHZlMunB2v9VeXzZYybnEDFNhkVawY3TBFzjUXl\nfDayNtCmaFEY1V1PUFBjXzyEYhE5rrfc/o6ax5WmgFHXwPTfzGliwm5hAjes\nJqvLZax1YBc4hIRRMUH82BXdjsX/j1+s33k2F9Y6+FJprqhO0u2V10IDGVgJ\nShB1/3lid7Ghx+0YVeP4L5VL/sPJ/BQbaWK//bPcaYrs7A+sHqfZqb12h6PB\nohxdwg4WxTw7Z9qZumCInGaUFeJPwvbnTlgbarm4MvsFOKIuu+jpOMUdQm/n\nvdibaxt7SC9QK4f2zFP5ix6eng+FU4Ow5ENXLLj1/FsOLO3lSpH37vOXHV5i\nPLDD0wQLCk0Cyp/ET6xuESBDAndJbOLyccz9A9QApgi4nFQw/ftswuk6+UWI\nj+P4\r\n=Fisb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEj73U2OxEav+WZm4yAzw7I/RPtvLDlIDm5pNv2wWiuRAiEA/QpK704GzdIKc3AqJh/XVVDQqFlu0LI0R8AUffchBP4="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.d218f2c5_1543570456692_0.12229196159424349"},"_hasShrinkwrap":false},"0.16.0-alpha.502a643c":{"name":"@syncano/cli","version":"0.16.0-alpha.502a643c","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.502a643c","@syncano/template-project-empty":"0.16.0-alpha.502a643c","@syncano/template-project-hello":"0.16.0-alpha.502a643c","@syncano/template-socket-es6":"0.16.0-alpha.502a643c","@syncano/template-socket-es6-validate":"0.16.0-alpha.502a643c","@syncano/template-socket-vanilla":"0.16.0-alpha.502a643c","@syncano/validate":"0.16.0-alpha.502a643c","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.502a643c","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.502a643c","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-19a3E/olvSJk/iljSwMQ+a1x58QdEI4azfmN/q3Zz0BzTdmJis0lyAIeUtFKsogB7cLRrqUAvLtJippTD8NLrw==","shasum":"8157fcd0dc72a2333174ad5e8af0a405458e8eb5","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.502a643c.tgz","fileCount":178,"unpackedSize":826383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCDSJCRA9TVsSAnZWagAAguAP/3e2RqomYY9ZHWV/25S7\niO2fysazm8uCtknl3CCNxFGTPw3Hzxdm6aeW65aD3X5yhkKUIS25rLUmfDE/\nY/AzOmGttCUAXMSzoERNwmxScTW+A4iUjZ49e1upID3+Zkt+ESsxPyDK4UWX\ncZtoCRZUdLnTqEuHp5S68+NDYR6a8RgH8dvf+TTEpYYKoHSrioWVUAbsHVtJ\nFO61vTg5PL/0ZVH8fYmeaR5Sc8PqRvU7GcuHXPAPMFp7LM4L5o9gbSEzVCvC\n76oVWNIvbaJp+YsRFCL3WBCLpjVrnyE3kJTvCyMmtiGCWFp4Szwft3dR2Yet\nuz1x7LUjoXgHC0JmOTGamUGbHA8lBi4sLAfnlEEIImcKG03o9fFPXOGh2Oy5\nNsOm2bmjpg20co/J9q2QL2rdkPriQ5lxMpP1Dptr5btz7iUkmx04gRGN1dmR\nDo2FrqkoWREE3XRjsJAvbQfV1b/jKIQAV4tm84g+19QvBS6hC0G3La6vL+Qc\njAv13XNkerqDuMnqZeuFC4FhiSm301z/0ibYXvmUJNaGpSwA6Xr6FV3PLSHo\nN9gjPJwisJ5KdXsYCDkECnMqkY6Ng9uV/p/N+pW8ByqDnaQw8Lx7p+TTnkMs\nolTwORoycKzQtOE3mEolAl8tbavHNpEri+ia9F27AFmI30qoA+9kCUBh5iQ3\n9bR+\r\n=N/Ll\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFJAfzQq3N+scuXDjyaNxr/F+gZaBuTPpk+9AcXCHVsUAiEA0+1m99BNIFWrRxYj5+vSMKcj3ETi1XcEEGv0jxTs2zI="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.502a643c_1544041608809_0.11634658563018019"},"_hasShrinkwrap":false},"0.16.0-alpha.170f6390":{"name":"@syncano/cli","version":"0.16.0-alpha.170f6390","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.170f6390","@syncano/template-project-empty":"0.16.0-alpha.170f6390","@syncano/template-project-hello":"0.16.0-alpha.170f6390","@syncano/template-socket-es6":"0.16.0-alpha.170f6390","@syncano/template-socket-es6-validate":"0.16.0-alpha.170f6390","@syncano/template-socket-vanilla":"0.16.0-alpha.170f6390","@syncano/validate":"0.16.0-alpha.170f6390","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.170f6390","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.170f6390","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-JnKh3FFCdp7EDSH2AXIEoDwEU8wxe/rbOxVhfmvduaZs5E+Os/W+vYU3pAVet3kQPyNoIwDCEaZtdmRvGqrzMg==","shasum":"0dfa8fef0cec5d8ecdebd9da32c0893ce7e8c533","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.170f6390.tgz","fileCount":178,"unpackedSize":826383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcCFFGCRA9TVsSAnZWagAAKFgP+gKic+/liPAY785vdg7S\nF/8kt8nA+DrdnR7h9G2db53g2QDo52hMGbL8HUf8UpudKTc8Cxekozwu6Lfh\n7KCJIaQ4QnuNN5nJd8ed8nZEURaeA4+bZsfMCcPygxkuRXipPpBuexdO2nsQ\nWqDrWid7wDLt0P90DaPvJgmh58URzhdIrahN3sk44tMag8XLuE7pQXwg2k/W\nahj1C354DGCNCCOjLTz+hIU0GOO5P9uCPSSJ6k5AHkwRZOWzosp4QeRK+xwO\nFFyDuS+DCECeEi6t5xijjCcqsBQvOHYgkuXfx4tecVl6GQzZDXiEpq1CkIDs\n2igquNh5AXx6wHlD4UYdi9JlePUR+lxaZxskiP0z9iTSASu6EmdpcfMhImMx\nyYd4UB2wxSMRzpmhysJPVXU2H8akvL6J7txBKLsp3VQsnosSn6Ep+WpKbHUo\nDCtxLtobSu4QdQ10YG4LU5ZK2sXZIci02rV11viNYJVb51fkg70kW/EBBY1M\ncAc/QCOwTbkH5YydskipdMxAUU7hXbPwiRemYcExYXtFwvT41vVXzt5EVmtf\nkEWPgvWjc0kn1uFlmn8gHoSnLJV9Jtic7FTNp2byfPGk3L+rHh9xXihunzUu\nG6SgPPu5I+wQZ3FQlsFMDj9bEE+IFx0MLDfO2DCpzL9DBlZG5YNRP23t+6bc\njrxh\r\n=48RU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICSo96305kFufr1JxEWn7ODdSSeNRuCLh3xSuzRtbqVwAiABo8bLc4AtK6jHkdzOxNaIo8recjh1ySGsjcRx/8bTdQ=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.170f6390_1544048965426_0.530803492244375"},"_hasShrinkwrap":false},"0.16.0-alpha.e59ea94f":{"name":"@syncano/cli","version":"0.16.0-alpha.e59ea94f","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.e59ea94f","@syncano/template-project-empty":"0.16.0-alpha.e59ea94f","@syncano/template-project-hello":"0.16.0-alpha.e59ea94f","@syncano/template-socket-es6":"0.16.0-alpha.e59ea94f","@syncano/template-socket-es6-validate":"0.16.0-alpha.e59ea94f","@syncano/template-socket-vanilla":"0.16.0-alpha.e59ea94f","@syncano/validate":"0.16.0-alpha.e59ea94f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.e59ea94f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.e59ea94f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-YYPB8N2WMbK/B6CpLN4xBlu4T7UJ6BUKUTnTtO0IxI1XQmypZ9MMLzZCPqL34YM3owmQ9MhlyS0qzRIdE3Ax2Q==","shasum":"a07393772104b90f331a8a15564f7261b5e71316","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.e59ea94f.tgz","fileCount":178,"unpackedSize":826383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcD4wuCRA9TVsSAnZWagAAYx8P/jwl0eVB8Eccp6L4BRcR\nhloHdULvCgPLnYYODDDzngfSXKUakdMkreo19cBIeOu7Im1QtCb6DljGvNwV\nhp77oikoXFVodD/IIMQUqNRD7WcSrWJgOG9lPpz3gvSK+yd+RhzNDLnAjXj8\nHWVYtJx2BH0OHtwPmuGgu70kAmADf7WUL1fwnNalffREe4Rv8VC5sOJhsacD\ny3NoZg1ik4eBa/T0nDf9XmzdcRgIMA7Rya68vwSDtsOutoQFkciQdcwyS8oF\nuDXdywjOn8ZreDnnYtoD2qp3l8PWO6BM12OWdrH6cCsSshEfzc8InY50Himw\n5I+X1/gIgtphPkOtqXvUwZUoY487wN7pe44rMD82H0zehsOXtKyMEvBvVrSZ\nCXtue3+uJQFRiCr92RaOQhcicaTfNLTsJ65G+6Aqy4Q/04ywu8v4yVvphCQZ\ndVWZtRTDbl6CKUGzHB4iBkWnOAVVlAyd0zrCYBxOcaPIfC8TRHJ6+C0Ldgaj\nOnhoaqcg5HuAUI/5gGvqmQbgqdmpkeQ0+8CCVyuLjQunHl3w2kubv1CDt/eb\n5FWFdtR1XUyRSvpSsN/d4KdA6kyYsAc7qJKcEraty6KQvmXQtK4VWSLj7//f\nU3RD7OqcucaKqGunT83cGq88Hjwc2clKC7sQ+SPF0nkbS0bLZ9FNSyZLjKYr\nKJrl\r\n=Hbt6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBLGJJDm46dshLn2+zLv0SY/gKZU6UsiFPb+isgdqJ7AIhAPl5d6mcIMy7e8pqlMZMEwlEageJ8zflrLa7tsxVIj/v"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.e59ea94f_1544522797778_0.3005081094488784"},"_hasShrinkwrap":false},"0.16.0-alpha.5b416f2a":{"name":"@syncano/cli","version":"0.16.0-alpha.5b416f2a","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.5b416f2a","@syncano/template-project-empty":"0.16.0-alpha.5b416f2a","@syncano/template-project-hello":"0.16.0-alpha.5b416f2a","@syncano/template-socket-es6":"0.16.0-alpha.5b416f2a","@syncano/template-socket-es6-validate":"0.16.0-alpha.5b416f2a","@syncano/template-socket-vanilla":"0.16.0-alpha.5b416f2a","@syncano/validate":"0.16.0-alpha.5b416f2a","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.5b416f2a","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.5b416f2a","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-aIxpc8f2UTUNPiCFP02njbf2C9TbHDVbzkY+Nfd4Yrv4Y1D083B+KsEstSErkp5lgPQKx5Fvwcv4cr+IofWYIA==","shasum":"4f55e2c2d3f8853bda53e9acad62c6febc22b28d","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.5b416f2a.tgz","fileCount":178,"unpackedSize":830506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcEjnVCRA9TVsSAnZWagAA5bAP/3L4dHPu+m9oOKyqWCWS\n1XKMQR3v674Zkx+tnc4/6BdiOApG7r+i8F3BmmqmRsrQvW3nKSPnRcEQjgkE\nMkxJ/UgFPlBpH/bKflL19BBsBL3k4kfbtFJ4wRraZ0HpnMKDjqitWmRt3vQ3\ntQ28nL3xYBq1UI6yseLeqfSr55YmkXBmX0kFubv5GJ9t9AjVTgxPLLmkICPV\n1zaq9K8iVQ1zWdbyamM/dQ917/XoDhOXzqPKL3t5OkH0XSaubVjF3pzByad4\nHT3G1M0DDUhogo8FAd6XlwLuxqPtS62zbDmBYtNlWN/9lcL6W9mIwUrMkdfN\nnNbdZ8UG86fH7oXg17rfZSBZFaUIctiS95cfXp7XKHMzDLLarLLU+BlTbt6e\nSVPwfQl9ZmiLvtRrudXV7jjYgRAquIEB1l4b0QbO0jLUqmlgce4IXAXGW7mB\nwrMs87nV0fcpHoO+7JjsE1gaXjXe89j87PpymOgshyL4kOtt1znWlgvI5a2o\n0rp7oixWcR0BfKfsXt0kYpzGjc+F23FZHxtJ3o8HrL+tA3/ZnMS6eJPHo5kR\n2EqDoRkv37JrajfgUfg7M8PVwswgohaikYL+u0VR7CLTp3jK7jfVijcklLzf\nvc5GzE8VuDRTjULgGZ98aQccUF3NeD96f6mhkMyKhUyOzQEENhq/mI1eWaDG\nVETk\r\n=ZRFR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2eW//AAg/W5AgbEbLvNiJkDawCIDZZbuwwjYIvyIuagIgJlFJ7MNHT/aRFo7cg7iTI0+a2cwIzJz+bLAT/fJ9Ph0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.5b416f2a_1544698324960_0.2644041523454759"},"_hasShrinkwrap":false},"0.16.0-alpha.5bf8c834":{"name":"@syncano/cli","version":"0.16.0-alpha.5bf8c834","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.5bf8c834","@syncano/template-project-empty":"0.16.0-alpha.5bf8c834","@syncano/template-project-hello":"0.16.0-alpha.5bf8c834","@syncano/template-socket-es6":"0.16.0-alpha.5bf8c834","@syncano/template-socket-es6-validate":"0.16.0-alpha.5bf8c834","@syncano/template-socket-vanilla":"0.16.0-alpha.5bf8c834","@syncano/validate":"0.16.0-alpha.5bf8c834","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.5bf8c834","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.5bf8c834","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-OT0NpwCJVXnhNUAZCcNmspDChXqB4/zsLAHkyYwE3+86zE+8B/QTM7+FNwLF2Gg6Vzatvk2DCJ7okMkiK879Bw==","shasum":"cb30334af88a147b597d7b5e5c3e58119b0608e0","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.5bf8c834.tgz","fileCount":178,"unpackedSize":830617,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcEjs3CRA9TVsSAnZWagAA1RsP/Rkdm8wwjXBMyK9hAEoO\ngOw3KRqFNiRMVhRsh30UqaerejB+DFor312hjEaImkv161eQNaNld++JQxdo\n8PK6sESyWlHjKbsMAg3Smm/y6X1hQVqDTgQ4ldVpiNyAmpFDH300puPmzmqX\nod41i2rrda0DJYoHqOKJgrnVWzTDShGaoG/yicbHdYNfiJM8BsHykUXo1csq\nUEAai8apcZPhSFuaFgiqSGxtxKdj89tVGV14KGH/Dhs7PdZJCUG6ZpPXQZ/X\naFw8Hwbqxl5KlJvQ2iIIhGeEn87QRpsZAkbHY5Dr0dbQcnbNf1P7dgvyVrH5\n46iRjzTWg9yX+lKYLxe0Qppwjzv5WoKCiogD3TYSgGLychSlHJBcWpuhkAw0\nx/+rpKM8BLANz+H44cMazkg8JjoQkoxCRy2EaGPUmk9WeIoG0UaAdeBbM3tR\n1hqIpbUegO/4awIwJQ/kazDTiVe6yeHf951I0+lI+Ys/IZoovahWjVHfJtvS\nT9MzbXrzLfgVoRemJV42+59f3dG4+5VeE3OV+I+0K8Ag0OeycAeRgcC3Vpr5\nEu4rldlMQ2ZeZDwkcoatFwOP729sS6Ru35F9o7Npz7APPI3W7/+i98bAImcD\ntEXTEUXvDrFdaKb6lpcJFM4jh6XyU/tpQOVaQhH/OY463bolkwpkhBOmcXht\nJQW+\r\n=OOGL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOpAZr/2FG//HkG/itUHDFfn6dpkMGZWWYdQJqPnFZNAIhAMLyE0yqHdi0jHALNzwvXfUYLY1YHia8kyZ+AGsPp17S"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.5bf8c834_1544698678440_0.23774502956943722"},"_hasShrinkwrap":false},"0.16.0-alpha.c8054e23":{"name":"@syncano/cli","version":"0.16.0-alpha.c8054e23","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.c8054e23","@syncano/template-project-empty":"0.16.0-alpha.c8054e23","@syncano/template-project-hello":"0.16.0-alpha.c8054e23","@syncano/template-socket-es6":"0.16.0-alpha.c8054e23","@syncano/template-socket-es6-validate":"0.16.0-alpha.c8054e23","@syncano/template-socket-vanilla":"0.16.0-alpha.c8054e23","@syncano/validate":"0.16.0-alpha.c8054e23","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.c8054e23","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.c8054e23","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-nuWo0YCzy2qgm+jaxskBJAQgpVnraC1XnLIa76BVt86d/4s1j6MaVveOU7cZflFYKElv8xHBZA6LWoddWF2ZIg==","shasum":"f57c0158ae82746dd6430ef90ca3341ce6f97629","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.c8054e23.tgz","fileCount":178,"unpackedSize":830617,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcEmqdCRA9TVsSAnZWagAAYcwP/jn1HeoGp8xRuj/7gamu\nP3LROifGUk5xktESMvQ5kIe4GcWcMX8TGZTmSnEUpQNvZyfrcf2MsfAJzerW\nfFH+JiakUZ0zUXemQSlVX0PK5DKNPZlt/dtdpTN2DdJ/EhZJYUXvb9/iTb6D\n3JsLzzAZh34eQFM77AsstLSaGCp119s/p/1hv08+IrNNhwXrIJ6I6UOubTQi\n7dKg3i8ejm6LAf4KDoj6mZVzripv2UMuL4wp5qmzFs2wvDIVCXot91kXm4qC\n6E0A6HKkxU3Wj0EG97qkigjkvHv7S8AnvyCGAVgxqMpP7XpjbpunYz9shmOK\naXMUswd7it+nQ+BlTyzIjYKRnXs34jds2LLHOPvYvT6r5SulDrtsfL9Q4R/b\nNXkPDPZTSMyu0R93xM2gvGBH2h7hF0diA0wclLpoLFED1BM9ILlc+UlT1NMC\njoB16QJfbaNVuk+3kirwDqoPEb9JimsUc28ljQErVh8vA7WkiDeZg8Hz9hFG\nMZBY6LUkxQMBT6RwmKVpO3UqsPSEp1M5x9Y+7RKmk86r0PqArg9lwMOdrr9/\nvWZshiJyowUf+aPGVgTH4VClGjxs8QqY8hpxFf73NuQLMtrLMGqlLesJlYkI\nSFrZh8rmrcizG5skt2iqpJBMRx4OTtdSDGtpHfbmIdC48MzeMYMJUwsCKtVj\nUL0V\r\n=kYmh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHENw6VNClVunfqHhiKBQcMlXHXx70SZhgGfRcG9qA7gAiEAki+4DMx2dGGqiLK3+avRF8c4R8t/181dMMH6g4P4bBA="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.c8054e23_1544710812772_0.7734713232680352"},"_hasShrinkwrap":false},"0.16.0-alpha.757cc82f":{"name":"@syncano/cli","version":"0.16.0-alpha.757cc82f","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.757cc82f","@syncano/template-project-empty":"0.16.0-alpha.757cc82f","@syncano/template-project-hello":"0.16.0-alpha.757cc82f","@syncano/template-socket-es6":"0.16.0-alpha.757cc82f","@syncano/template-socket-es6-validate":"0.16.0-alpha.757cc82f","@syncano/template-socket-vanilla":"0.16.0-alpha.757cc82f","@syncano/validate":"0.16.0-alpha.757cc82f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.757cc82f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.757cc82f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-5/QgtBYx/udz+JOtPlfv15jaB7G3U6A5S9OM08DS65uYTBvyNdcBj+4UpfX02Ve+fHo1TakO2iac423nuY6Z/A==","shasum":"622d576bb855bbd1f567bcbe161240029516651e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.757cc82f.tgz","fileCount":178,"unpackedSize":831324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE8OXCRA9TVsSAnZWagAAWpoQAJYV2MT7M/9yubktkqhG\nN7AoXxFF0/75wAtTO16PaNvbAa7qUNBaRY+KczHBMG4Ec1sp8W/qA0b16oV+\niTRGYte80BcQNfdqImKnLFYfu2VLCtXAWuqWvyMahZLiOAq6sjri8KK0Te8s\nnR0K/yytZ5HS09BMuziyM8cRM+xg3QVlGHzkbrVlWlp1KDwBSQrdw5T2u5uU\nbAtsuPmSqUoqe5Naj7GDGjFwbRe11Q3RIk9T4XhD5tgrdyk7f9yzmait5Hxm\nXc8pDZcDID1fjkcgT+KkzBYk7n5uWYpJXWmHoLbAC5cCUdOU+9dAc7GbsEzJ\nbNEJZpIUOqRLB19Nio+QddTKDDqyrQAlPstTWa0xJ8iystR1COq3jS8D1Hke\ntJvA/Nuyrte1wUbI2gqQXqGAILv456l0arxDnXg3m+Gxu1Cs7MsRqDIlAAnx\niOeXqXZ/j9/0iSJkOBPmKBje3LsVZ1imo3IzUCPeorsmVKAGUI6qK7HBuBK8\n+DbRAjyK6iiVp1GL67H02GHDZ7LlX6pqk0nLnmuyNk9HCNLqyBFgdm3yp1Oa\neGEvOjWxgg0qKjVp1BYyMxUYWRKSrK5Uzbs9iKe3iNS9JNKMdqMxWjlrAExb\nXoAPW2UH4LfvkjmZq1SO9fj/qFBD0eMtsISkuGimYd/dp2niimRF2KeTVIYJ\n6oAr\r\n=tZ1C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCs3BaY/j+tdzAChtHrUND0+IMTpL8bOUIgBpF+JD2kBgIgKDjiIGqPWqI1YxjB/DUiZVrM6+wuFq8BCDmfI7LsYmI="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.757cc82f_1544799126475_0.46993005917545605"},"_hasShrinkwrap":false},"0.16.0-alpha.347df5d9":{"name":"@syncano/cli","version":"0.16.0-alpha.347df5d9","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.347df5d9","@syncano/template-project-empty":"0.16.0-alpha.347df5d9","@syncano/template-project-hello":"0.16.0-alpha.347df5d9","@syncano/template-socket-es6":"0.16.0-alpha.347df5d9","@syncano/template-socket-es6-validate":"0.16.0-alpha.347df5d9","@syncano/template-socket-vanilla":"0.16.0-alpha.347df5d9","@syncano/validate":"0.16.0-alpha.347df5d9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.347df5d9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.347df5d9","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-WELjaprp53UI4lG4FXC8JFyZttu0xmWZUMuURyoHmOZOGhEJ/PqVApskyZGbDHMlRINIu0qR8x35AY8GDe9ckg==","shasum":"5b1e5d742b8db78fcc6d709b7190746b27135d0b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.347df5d9.tgz","fileCount":178,"unpackedSize":831405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcE8ruCRA9TVsSAnZWagAAl7kQAJhg+4IG6zHwJ2sxwTp8\nR/FL75tluQ95NGiqRqMhT0P5fKro8K0y0070+djoN6Zg8YLjsYFdKV+O2x5t\n0WyLVghmtmIdFGLCKQO+5mxqVzg3wyuY5prxIoZglr668VdzEQi/Fs8A4RLX\nbd+xLBGixEKzCzhxZCIsypj3zRBWHOPd4z4YTl4p0tVd1WAdSmSk2gk9GxAt\naI+OYY3juffDsbrpIrZe2kltpKOBlTrYVLe0UP0tX3HumgMFSCh/EfkXX3Pm\nWWjsankW71R3QQ4n9MjRu9an4CycH+AMLIyxvR0Laxn+anH+fLcdwHQMTtRO\nopR0vgR09umEHkIX2nXvXYQ6NuW2MyKVZhEWL6cQlW2L/zqr5PODTNRgXFcQ\nn120HLMfFXkzpRIpzbNO8tQR+y5oqHgkT4DYej3WqscY9PiBucMb16NLTXu2\ngiQ08PbisCOJ6r2ErgQXR7PGA85yIVHe0z+FZ4u7WMVSGD8LbZS5aHFJeH3L\nfuLNofJ7kmEa239DqotpOPZeAlWbWS2zEjUPVP95SeuxVUOeAW923sL/z0TK\nZNYk8iZ1j2d6jYwtz9Af50oCKobX7+okBg7i89GUj7vRSNZcXiMRVrEmZcWG\n+Wntbfp3rZiCQn0xhQz7Mg6B6ltGmgRGwfvtLSNaySWYlJN+dV3/GrOlQ0zh\ntfeQ\r\n=jwql\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEYFCqT3LGixZuBUa8s9etQV7x7nduD6Jfa6i7AjeRpgAiBdgdmW/ooyIEJjZwBfsuE0M5o15Dsg33xpx1I5tS+t0g=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.347df5d9_1544801005731_0.5707144333520844"},"_hasShrinkwrap":false},"0.16.0-alpha.1b061bb0":{"name":"@syncano/cli","version":"0.16.0-alpha.1b061bb0","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.1b061bb0","@syncano/template-project-empty":"0.16.0-alpha.1b061bb0","@syncano/template-project-hello":"0.16.0-alpha.1b061bb0","@syncano/template-socket-es6":"0.16.0-alpha.1b061bb0","@syncano/template-socket-es6-validate":"0.16.0-alpha.1b061bb0","@syncano/template-socket-vanilla":"0.16.0-alpha.1b061bb0","@syncano/validate":"0.16.0-alpha.1b061bb0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.1b061bb0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.1b061bb0","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-YS3H/x6Bq2VZgSA7OzvA+JZ5kgDmQ3xsA41DuZ+ZKqxSEyhK6mdtjxMYPvwfQqRbykops2YTz6xbWT/o+0qk9g==","shasum":"bf2b0de478f08c1df87cf3b87222b38d443407d3","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.1b061bb0.tgz","fileCount":178,"unpackedSize":831405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGAJnCRA9TVsSAnZWagAA73IP/ifQJ1UblizDx07Fqe1x\nyjKAnRl7lKhwACktHcGJlBWjpNbfZNMMNIcHMluRlW8Stswu47yccZwnoQ4b\nX5dy8+Qs9Q8WVpBCEMkxogku65pAlpTTO34HRrof8dMsy4/Ruj8Vx8oWvo8z\nbzrBvmJPO97jPu5rOk/qqhigwf5BNQsgxtAPz6f0hxscsAUh+XwPCICXKB5K\nm7NxbUR+2b+2lWJX4kvk2edEyrD2uu5zYLpT/A2k995BZmRVCwasx3FcU+Q/\ns/zCLb6f8hD73XnMdmkNPiFq6FhYAY7c25bBtvLwC8FqLzLY6lLqTpm3PyjK\ni9Nr3TO0biBKKdQNljACqoHmj+Rdu7QLrVF8FSmC58E7Nl5ry4ZA4Y2XBJV3\n3ppf6FbP7p3mn8csqjYs7zA6BsvrG4IyeO6YyS+n3gm3lh8+iTnvxYYsK/bM\ndnb5LY/TlIfwU6mS6PpDwfpvq/19Q0M2MOOTinJWIOzVkfEJlKRJPw6QJ5Lv\nJloJPLh9mTcvHGfBqLLIVdGHQAom7XP6ITcdATjsLwU50o5Ky91SOkyUPPOO\naliW/oW5hm+Ngl3KKBVF3cCKfRC5eM4lWPz9pH/zncaxo+RhRJ5i6Dtk6O4Q\n0ngCBah3a/nKKqs5IHpzEk2Z8EWSWeFu/G+GpKcLRrFanpMN8fYJ5xUZhGBF\nxiNd\r\n=WMTx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuv71i2VPEAZ/5BWEiYsZ6iqfJF7Vrg8OKLccPXDBjGgIhALkRX5kkZF9T36FqkFhT5ht5Vp8AzpDJfHEApOjz6Lqq"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.1b061bb0_1545077350370_0.3995964495704456"},"_hasShrinkwrap":false},"0.16.0-alpha.489881ea":{"name":"@syncano/cli","version":"0.16.0-alpha.489881ea","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.489881ea","@syncano/template-project-empty":"0.16.0-alpha.489881ea","@syncano/template-project-hello":"0.16.0-alpha.489881ea","@syncano/template-socket-es6":"0.16.0-alpha.489881ea","@syncano/template-socket-es6-validate":"0.16.0-alpha.489881ea","@syncano/template-socket-vanilla":"0.16.0-alpha.489881ea","@syncano/validate":"0.16.0-alpha.489881ea","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","lodash":"^4.17.11","md5":"^2.2.1","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.489881ea","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepublish":"npm run build","postinstall":"./scripts/postinstall","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.489881ea","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-uu2nrRd6RS4kP+Ho00e7DFiqtyE7ZaRXenJrh7qTqoE8wHuHEqnCYreinFsL9kmWPjuKVhcSUoi0890ZIkvFUg==","shasum":"019e4641aa54f171955c262afe41d14afc184252","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.489881ea.tgz","fileCount":178,"unpackedSize":831405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGPF8CRA9TVsSAnZWagAAaBcP/RqAqoNTDuFNzQ02ijVu\nJ/YDnml2gyj5TAtny1W6UmEDWV76g14UGESHgpxxtFz6tlKW/C3FtcaGOEha\nzxhrPrkGEWbWtL43ol5QnGPdnAe7gGiVLw6MS5r9AGwDajdzMzJsFsZOPf5D\nSBFXF4TNNv/IaHh03lbztTJBTW9JF4S7L1Xp30V6IK3ROccss2h4dFeDd5Fl\nBMSv69H//DoIra3ZGovuMJ3GjDoqBiAVDfkhvMOHIY//sRmVlPG5I5NNcUo8\njf5V44o97HKTcIddXKAcNETVS4tabrsELw9Q8F+ZZ+joNw9JfQFEHCaXxkow\n1kJwOq/n4t80mqC7JPry+k6rHUR5HGMzDdKfQnCbCxKvdbOUu62fUP5Y7wV2\nSVGBSKHpxeTr4eipYTDNqep49qNYJgrnaNotmrJSdRIbyY5+2yHsFYsdBHar\n5JZBDnch83mtpzsPFRoVUv8x7mHGlBRs+MmPH6u+7viir8shve0tSIYaGQJL\nkW2z/jQMtPyaU3t4QPSDb2BiG6AZEZlDKf38BZZfXlVDPeiWCSlo9gDMN0Kd\nH65fpFRBQbcNDFCjakA/lCMv0wXoDwMWqI1pv084EHOj8dzDfbIBaU89Jsm2\nTcQ03Taona80oGPiSB/qa2LV25b+BIt75Y+NC6j68uoHk2sPWUrXWNehRfgU\nNtAz\r\n=YZLA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICR61V5AkrqQt9Nm+Br8FHZUAUFjWWraiNwM0LoL6fILAiEA0cBCqG/0wzYLl5HdFc7Rwz1qvf3YSKcKy4UlerJ000U="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.489881ea_1545138555867_0.17671421631135886"},"_hasShrinkwrap":false},"0.16.0-alpha.597338dc":{"name":"@syncano/cli","version":"0.16.0-alpha.597338dc","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.597338dc","@syncano/template-project-empty":"0.16.0-alpha.597338dc","@syncano/template-project-hello":"0.16.0-alpha.597338dc","@syncano/template-socket-es6":"0.16.0-alpha.597338dc","@syncano/template-socket-es6-validate":"0.16.0-alpha.597338dc","@syncano/template-socket-vanilla":"0.16.0-alpha.597338dc","@syncano/validate":"0.16.0-alpha.597338dc","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.597338dc","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.597338dc","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-g96tV7fIzUZnixe5akSrJZQdwP2jtySYrCQhA9hNDrcL5hfO2/vrlQSb3tjqKsr6+lE/n2osdP57YAXHsDVbQw==","shasum":"beaa625a89cb049e37e3304bab150bc1857f7727","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.597338dc.tgz","fileCount":180,"unpackedSize":813787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGPe7CRA9TVsSAnZWagAAN9wP/2xbZ8Hrg6L0JJFr0lOb\nZMb2oPkSpWFt+OCuyJaokO/PVdjL14mi+lNkKG68tyRinYVWjB9cvj9ellbm\nkv6z9YBFWIJC+moFYpP8xJLgpOT1Lgn9cYJVK32p2ogX9mB4MFHEu53cIs8q\nzsf1O06WJ3WI9hlcehqkpIrCX/6yRciZMpim0Ym91TZVIRMGgYo9QhLjwWyV\nB3zqoIo67RMr/ytWGDcxTpfNs3TcnTRBG08Uu3/XfyKRoYKSXzDkil9Klz6A\n5xYID6i1MC9PCC/sSCYS7Xr73Cwi7HV5EiEOgAEad/AWFQxZMewLsxYQuJ5j\nDMIsPvriFyXOUD4i5U8uJ+a8YD2CBTATuCxBDRawyZrff0Tub4waADpVR0JT\nNqXZX5RilkNFLz7/8WgUgwvLiA1XEH2tKYC0lBQxWTTbNGIbcjGpCUL6i5Dd\nOnlgerSuKvNsA4wA/yzVEqHIPJtJvwyjQ+mePpYdZEebY/kEOXaWUlKF/+KN\n/ylfOvscCcRg8I4gQAkoPN8j9SUfL3tcBZVhCQURptPF+Hk3cwlWaDELmix8\ngItiXgDpyzpJEGL5B7Mxb+AsGxulHJveHedZRysgq6X6MRXXfnSin9URsXfK\nv5FNTZE98cKaU9JkIa3Vcu5CV85jQX3b/bjlMSp+Z3HQFwRVweazPyCoBEGV\n2cbk\r\n=WKlc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2hfiyuy6jeDtul7FoUimNehXXO2sWC2XNHbDSgjEZEgIhALCYBXTHVdY6gvELRfwD3GVyLoFfzP4KrvZaNQ0ZUCX3"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.597338dc_1545140154850_0.07980753108417837"},"_hasShrinkwrap":false},"0.16.0-alpha.51021336":{"name":"@syncano/cli","version":"0.16.0-alpha.51021336","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.51021336","@syncano/template-project-empty":"0.16.0-alpha.51021336","@syncano/template-project-hello":"0.16.0-alpha.51021336","@syncano/template-socket-es6":"0.16.0-alpha.51021336","@syncano/template-socket-es6-validate":"0.16.0-alpha.51021336","@syncano/template-socket-vanilla":"0.16.0-alpha.51021336","@syncano/validate":"0.16.0-alpha.51021336","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.51021336","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.51021336","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-GlGc7hTu2jkAxB3rTrg9XcFVFK+ZbyvRvGZ73rhGR+J+jfVd9lJ/DQhSlF1ORxrjbiVLBt9UMSdcYqcZTfHHEw==","shasum":"5943815553fad901a40f8128cde8d569831d533c","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.51021336.tgz","fileCount":180,"unpackedSize":814224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGQYZCRA9TVsSAnZWagAAbCoP/RNqqqnvO0kBmWgHLBpQ\n0r5t19bdDS+JfwTkSczhMKEq9iktDItF1TSXy1rg6u91HswHvkHTvSySYhou\nikzAwspqGWFa1nrgGqAp0D56h0lwSV+0iXE9vILoVZR+rpeHOEx2KmfmEJcj\n8CUaE/JBCzah4tseX8Q2rzsTJobKeQwR2tGN156d3x98FHk80IMuWwsz+TFA\ngTackJI4rcSPHsODPcHr4U1WrMVbwajMOpHFe/AgL/3HIX6gAvdmob+o202o\nlgDLSgthAuAwoNKMMOXKn04MVT4Ahj6G9EA0pZHlh1n9NWJyeFxLl42UoQDA\ntLYML8N48pU7YNzkh5s0HhFeA2IGAyc3zOmucc52MdhEEgUbyTqNqtVifDb3\na2Iiy1Pev8dYWmLRMFW1HRb9QZXmHpDx5EarnfOFpTI6sAZAK7k+ApoLDJsF\nbEeFyH3yU2dbBmsjdfRvAL19afmlBybo/bcb7o9xOjwEdnedlAw/tLUhim9R\nfvBabaHW0OdHNx0nhQ+jRS2qPmmEd3koeBeywG1+46V+GkekFS22V6345Sqj\nud7qs+IAytZgENBo5iwXTFvHSr3HCBEo2LT/aDhKsiSLfXdZtZ0M64nHjmRj\ngsG7L31Ns21BQD1QYmdsgIkLnzpwZmZ3qJ6+vRT5+DjmiCZVIBXjLI1nT7qF\nJYJ3\r\n=Msth\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDWq0YdKyl4w8zaryFwO6BTq5SrRE8gYlTlRjCAOnzADAiEA+c1enrZSxw3BWhZhZzRHHRUfemhtEQB31Mf7f2Fzp8k="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.51021336_1545143832913_0.3695281939230828"},"_hasShrinkwrap":false},"0.16.0-alpha.53baf816":{"name":"@syncano/cli","version":"0.16.0-alpha.53baf816","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.53baf816","@syncano/template-project-empty":"0.16.0-alpha.53baf816","@syncano/template-project-hello":"0.16.0-alpha.53baf816","@syncano/template-socket-es6":"0.16.0-alpha.53baf816","@syncano/template-socket-es6-validate":"0.16.0-alpha.53baf816","@syncano/template-socket-vanilla":"0.16.0-alpha.53baf816","@syncano/validate":"0.16.0-alpha.53baf816","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.53baf816","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.53baf816","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-xsVfgat14/5LDAmFPOWKMe/CuohUC8RNTho+k75h6l4TmX036dPqtANK3lo3xPFRbS0Ly6qpyVe9vK5D7Y1opg==","shasum":"396b6d8ac359f263cdfb702db12958dbb5d89c4b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.53baf816.tgz","fileCount":180,"unpackedSize":814224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcG1y+CRA9TVsSAnZWagAA7p4P/jhvKAXqTIDP5oNXSKbl\nPIFa/yZNaBLTy8QGjrK3XlGjSWMww1KUMmxbEpHXF/ZeFBJccisqGj/NIgQi\nG4RNutS9iUFaEjOONFeRQab9DnezZ3mcJhJEl8Jp7hgJHbuvlnknlSUqtjhq\nomU25VSiIyt87C2WWDCweggBZTNz36nsj5wR3RUMbbKkzr1L266xyjwrdnG9\npCTHxVQcfYy7tGCMTJ8b7fqZzGWOY9ono6UQDecZGZ8LBhU+eb3cjjnvr5YA\nNnQbZXU2g6+5b4wF7mu9pmVatC00Yo946UGU/qd4AvKXdhmcJCxce2hm+sYt\naa7wnl65jEZE9cruC2skcH+nRw3u5jS/+3NbRST7i4kAoDFDHxHsL4D0T2E1\nHjc5uM0ZmNjt4Wgq1cQjiGALc3UAnc051eOZEbscUvVZa71N/Mubfl1vkMha\nGaIS9nnM8NXLgElaL+ydzoIQ8rU14/lywE+/PPngOq1WR14gm3AV6P7/7Wb1\nOA1HD+zaEGRorOu1UWfGN2Si/TAPs49UCbU7FZPYu9QzdG23fR/z3g3uaJIA\nbvwvVjWLUydXf7It+AJ9QWEbPn8i4O16Rt5qw8kGPeyOl59cbodQtLRoScWc\nPPkrK6o7b691Y8FDrKFy2r9TRk/R/0PpV3vBwSIjeiNPMOCpry2Ks0SC4JUF\ncXiY\r\n=KRed\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEeLP4alXkFEPZPk2quFcQ9GOK4vRJuAbTpdZVZn8YjYAiA25yMhGHkgNRcPb7Um1YBZORe3MLmBhtGjbfxalF5cmw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.53baf816_1545297086404_0.052363281177923326"},"_hasShrinkwrap":false},"0.16.0-alpha.6f9c2368":{"name":"@syncano/cli","version":"0.16.0-alpha.6f9c2368","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.6f9c2368","@syncano/template-project-empty":"0.16.0-alpha.6f9c2368","@syncano/template-project-hello":"0.16.0-alpha.6f9c2368","@syncano/template-socket-es6":"0.16.0-alpha.6f9c2368","@syncano/template-socket-es6-validate":"0.16.0-alpha.6f9c2368","@syncano/template-socket-vanilla":"0.16.0-alpha.6f9c2368","@syncano/validate":"0.16.0-alpha.6f9c2368","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.6f9c2368","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.6f9c2368","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-9a8Sj2uDky/D8vLqzqrbnDKMiCrqY/qguz5nQn/eZf0ScVy1P3gpzUkJHDjTzqm1vEDammy2djHTyYQhFVr7Xg==","shasum":"01fc0ec8604bb3da1adaa374ea44d29c883ac787","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.6f9c2368.tgz","fileCount":180,"unpackedSize":814224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcHQirCRA9TVsSAnZWagAARBoQAJPaH1yw3jUy71f3b7rV\nJNfc4RYoTEq2Y25PgvBMmOfYI7myFI54RPRxq1nLCe1WxQ7bkJvtQHD+e7rA\nAs84rcAtJNAZTzJMzauQ+hkP5O800ZQjiSunXypAzyhfyzeEy6+2kuu17tCa\nAqJ+IBjy4Pm4gK9BASTCRbjE9waaWbsGY5+4H86+0DmXMEJp7LxOpimiIUn1\ns0rqMHbyiIh8wuVw9dJzEKVWngTr/aLmIok8E0Who8qezDEV9bcus3grqR8A\n155QWu9fTTZVp/7qTmmqzB7ibubXeFP95tmquAdxndK0GAJXEG2CIVG2wyON\nlmtuZ3GwJwV1OPjjprP+uFmhpvAeSI/tP9FV4jPX1dAC4+fBDI4EqlSy9Gvx\nFIGJPkdgbZulnVIxjg0yakpJDKIcI1W26dOLYUN1OUmWu8I/Znvl5UUt3Nut\nzDcBuxLBUPyhRjtVEa+3tE3/6yP/tXCwSmWVMOF5IwTt1ndZbWBS72GuJL+g\n+hXpYZdGEjgV/2bz9iip3/YPVd4KXjs9fR0Yv5zJwg4TqxzcBEt4hZtPqnps\nwB07P9eM/o19fw+FdhAx0IoS7GTIJetvEFVUR4LO6PqJtO4Ns7Uu+O8s+r4n\nIM8M5GOg2IrFFhFU01L9SrlDLlP+kFwiM8Vo1oizizYzHj03OOdxZfMjTEC1\n9SuC\r\n=Psof\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDLsrRlBzJfNq1DSAW5tuTPLiAxIEl8EYwGXUXRRiVeAIhAPOx41Rzaj6PCbtlx6RxkRdey60H71W3QXwm5Ypn4E0A"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.6f9c2368_1545406634613_0.6000731013910079"},"_hasShrinkwrap":false},"0.16.0-alpha.09656f7d":{"name":"@syncano/cli","version":"0.16.0-alpha.09656f7d","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.09656f7d","@syncano/template-project-empty":"0.16.0-alpha.09656f7d","@syncano/template-project-hello":"0.16.0-alpha.09656f7d","@syncano/template-socket-es6":"0.16.0-alpha.09656f7d","@syncano/template-socket-es6-validate":"0.16.0-alpha.09656f7d","@syncano/template-socket-vanilla":"0.16.0-alpha.09656f7d","@syncano/validate":"0.16.0-alpha.09656f7d","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.09656f7d","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.09656f7d","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-H9N8J+ZKJubHJ/ONFWg/mAQm1r18RomTYFMChhsZyv6mCBNFw+USTVkljjsriUUbbJdkYdytE/GaVKMzqvUpHQ==","shasum":"eb67e37526bdd129fecdfe4566460775e8ecf5d4","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.09656f7d.tgz","fileCount":180,"unpackedSize":814224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJOQtCRA9TVsSAnZWagAA5IUP/1RCcoBi4e5KeqIOGH1o\n297jnA6GUHEMVJzQqQYLamUZVZOC8GaDD+x66U15Qoahxwf3qln7Xfe7PC1Y\n7HVr0x2eTFLN6dK71/AvVYE5EVRRgCA8jDSufBi6C/xdu1VgRcpmz9ikG5ck\nL8rKZ1z7nfwtwJ/GedJ4h+HUxXl8Uo/zCzXjbQ3zaFbwBogFTKJslcSalSRB\nVeRm90b4o4+7k71+yedVD9eR4KM71BbFJu1OuiqTayZWB+wB489ia4DBZd4/\nk/fiEqv0kPOg0OmObLzPJvjhN2JoV9uUVUpCKS59AD3vubABeo6s64PRXgT+\nuh/fKTbwLHcnkNX89Wx1iB2MtUouq5vr5kXgpEGJ5x9+qe2uXGfrLz/zH4qY\nXUIpTt+qBSEsWY/T1TxpB+o4hFxUBdI41/SHsjtcEI1zf/HrEKK/swnYiJYS\nFD2THMng70ZMAIkawhJ1ZZ8y4b6BLOcx6xy0mB6s+AOSiLRv+Day8cW+SMIB\nCE2tbNm1F7QYQ5VZd+UgtvsbBngDVeDMB63cUYaCMxBTWZDf2MZ3XKFasUjv\ne7upHb1K16wClBKDN6D92H8a9bHF8DgiVlV3bB4D+OPIUksPkeMnBhQYtGDU\ncCXIEmzL7/vt23ep7UUCQmMtPfOYcCSA1+VNtkA1HwGIyLxIrajt7y9JaWD4\n/+b0\r\n=OrxU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgBhKA5HHL19Hv0Cp84lje3wRT8k949SDl5q3/+beTHAIgVH7PLtFQCLDyxnxjpH6BAoDX7O3pCgtqUf+p8wDwBsE="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.09656f7d_1545921580857_0.9349092747643055"},"_hasShrinkwrap":false},"0.16.0-alpha.063ae9fd":{"name":"@syncano/cli","version":"0.16.0-alpha.063ae9fd","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.063ae9fd","@syncano/template-project-empty":"0.16.0-alpha.063ae9fd","@syncano/template-project-hello":"0.16.0-alpha.063ae9fd","@syncano/template-socket-es6":"0.16.0-alpha.063ae9fd","@syncano/template-socket-es6-validate":"0.16.0-alpha.063ae9fd","@syncano/template-socket-vanilla":"0.16.0-alpha.063ae9fd","@syncano/validate":"0.16.0-alpha.063ae9fd","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.063ae9fd","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.063ae9fd","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-8ZfGz7JFv1R5jG9b1t9/2QFc539PdnvWQtL5LP4+kK3otednIe6jnzQ2nYeWi7hGI1WP22wQmzhd6jmj6KubHw==","shasum":"ab01c2984c61d24a76b818ba8e5e62cf61c4fc5e","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.063ae9fd.tgz","fileCount":180,"unpackedSize":814224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJ7y3CRA9TVsSAnZWagAAbV4P/3KjRQmNzZO03Z2R//9c\nyWnPJJCXEMk8O2Rwm9d4n6tWRdFtZrI98tzQBxZ7lL9W9kDpcYKO3Y8hDUln\n4283WrHPDX9/qX/fBoPzXtJqjZSPNZxbdf3rCWEKvURwlmQUDjti+LXBNLo8\naXrzADPm7jbM6E0UvcfQdrqULL/EhYM39hbBeWBDePyad2Hr9tUiNkRqXIjJ\nPFGD4tEIZCQ0qGKPQvjdVAOEQr2jWcNm0HSAt1UNqKNiaxBWnrKkWirOQVi2\nkmg+xM+2fZXIh1/yAGRVPjtJjI3FT3vDQJLgoDy/dCS54lZaZxQwNwXS4GTf\n5SHJxdrxVSu5QZZ7c+Zhaief2Gv8h4Z1GBzJ7rfl34ouhtG5yf3gyKUUimF+\nYpq5T9CDEyhwCtbL45m8CdfCCZqQJxPlrpBYAsZGaIy9mW/g8JG2LEnFhfW9\naFnAykl9yMC4WOmdfSjC6kt0VSGh+3Y/0mPOZ/PA+jwK2do2vdBU260xmmzY\nXsFMM84LznKwasNmIn5sF3Aw6BReQ41WVMuidTfNFyY0NZsVX0sDt/aOeZrJ\nY7WlBol7cQrXTLckmJitWYnMfEiKqdg3vuL9UQdPyzXQXNkUj5UYDJUTcX6h\nRl/NPMBmqqh/jY5qjyDueW6oDXoSGxY9aXnbypSGZnKOw4xcQ/elqFrKpayL\nfWk9\r\n=OBrW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZSBkBfvkBGd1MdX5sV1u0n5Yb7B/6CDGWN3MSVYmeyAIgTd/VmtIwaE4sXJeTtFo7P38UYXBAgGE4ok/VHLltcu0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.063ae9fd_1546108087344_0.9927449470813292"},"_hasShrinkwrap":false},"0.16.0-alpha.7e24cb04":{"name":"@syncano/cli","version":"0.16.0-alpha.7e24cb04","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.7e24cb04","@syncano/template-project-empty":"0.16.0-alpha.7e24cb04","@syncano/template-project-hello":"0.16.0-alpha.7e24cb04","@syncano/template-socket-es6":"0.16.0-alpha.7e24cb04","@syncano/template-socket-es6-validate":"0.16.0-alpha.7e24cb04","@syncano/template-socket-vanilla":"0.16.0-alpha.7e24cb04","@syncano/validate":"0.16.0-alpha.7e24cb04","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.7e24cb04","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.7e24cb04","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-u99uU3XvUx3Wub/04qJrlr62x8BHVzjH8yXq7f1/iXM9GtRbhaeqn/OL2em4VnlOH/cnLFR6+N73y5mrnPFTOg==","shasum":"01da77add4f4d0e2c262798107757d2d2e1d1a10","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.7e24cb04.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcJ+ewCRA9TVsSAnZWagAAdhYQAID42PuQR34yrcKeopOD\naYvD3ghmtC3djUw42az2ol6Z00dZLhFx/QA1YXR98AAzGnQ+bKvYSxuJQsx4\nh0drvZ3f3K94++7ZUXfutZNqWEYrkb7hXO4bbLikqnWs3AocoYd8bOHcgNr3\ni0ACj18sJJVH9YAYnbfmtLVcSrnaxbIEI+a5Pd2oXhMSgqgURR5S3pZYuR/g\nmFtGWQkjYAKJhBUw8KW2hj1Xr4f3WcfFso12a8BZ+Abbku6natYDgERVmyiE\nu13pFPL0R0Q2t4ujZUKmiA8/kbsYVe1sCsn2WRBX9H+JO0ZU2wCml3ik9f6n\nqNLY4q4GNRwAdAy1w1dbdsk5TWJ+fl7xzgq40KPlT769DcCRLhzLpaOukBVu\npvMNhXqqh7p50VskJ4Ubynd2VRc+2B0vIc4xgypFfnpobZS0gY6juL4X6qUi\nk+0J8J1QwbKvq1teeS6doVrq5ooM2g2Jfc+lR2UKO1dmgEy9KkqLD3fit5vM\nafY597dg8pvjDofRC8LWGFOrlGptmECRANOJ4zWMH0mVI/6wrsh2PDf1hDhu\njk27uf5rvk1pkTdlgYWYI7GxL0EuZVG0+Fls0uOL1HWxC/cZ+x7BkBqerE5r\nVT+8relx/D0GYVwgxbGasI2eLCjjinmIHclMO+Ql1n4FdLR1nGknelTVaIm7\nPO3H\r\n=fMWj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDYUTXa4DqzWg21tpm99btL2jeAAdH4CnANsG5+c8R9gAiBwSgJaijEDl+V4Ah4S5x68ZEVGP0kMCYIEQp6tMVfprw=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.7e24cb04_1546119087739_0.9423416131827007"},"_hasShrinkwrap":false},"0.16.0-alpha.4f0fcbf6":{"name":"@syncano/cli","version":"0.16.0-alpha.4f0fcbf6","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.4f0fcbf6","@syncano/template-project-empty":"0.16.0-alpha.4f0fcbf6","@syncano/template-project-hello":"0.16.0-alpha.4f0fcbf6","@syncano/template-socket-es6":"0.16.0-alpha.4f0fcbf6","@syncano/template-socket-es6-validate":"0.16.0-alpha.4f0fcbf6","@syncano/template-socket-vanilla":"0.16.0-alpha.4f0fcbf6","@syncano/validate":"0.16.0-alpha.4f0fcbf6","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.4f0fcbf6","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.4f0fcbf6","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-DXWGPHyOip7oXa4WVEJZ61Jgxn20dCCp6r1LAXwUgQ95tJaLF1UWoZDz/oIYBkY0nX4lXGDNg9loON31NLV3hQ==","shasum":"0ed5e526152bdb6d1938f370a905b567795c79bb","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.4f0fcbf6.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcKhm+CRA9TVsSAnZWagAATiAP/isLuE3uo0TC3vGq5sG5\ndWnhl+PArqSUXTjwqJBBE+K2dY35S1fEomYQQWt9GARphbXasMrhpmDjuBBu\nXl2K3JAtOGHE/ZYWFe51jKCW1UYLD1XEOfvxoxuMYRkNulvcEsdyXasqQAgK\nHCbaJK3cUqn4pNX8f2CHR4FM18NVKZcIre9pfmadFdikdTZMrOb2lwCa8gfZ\nlzquUX5vWJ530y9DCDLP9uZth/QGesNR49vEKBucSOr6mk+Ch+Cpg08XZyPh\njKvcmdbhE3wa+CFh/YomMpLmZocUQCZ7YsX49w21CZAB+ws2O0I/A09oTYh9\nEGtgR0h8bG63zD3Fol5DmBCj8mWYHKfasZNsTt0WlSBeSPf+1hMHEuFFvKQR\n9OYiqSRS/VWI7FYuCG/lhW/SkBRJDcNXi69gXIvvbAYFpi/6gxrlqkKXcIUo\nAKogNnnIueglRg5fpE/VAllrD86oASJesPTk6V2ewQygiTPG+aBsEPdEh31O\nKJ6TxxUfbZEKYJB6ziO9dqLxe4I9Y37HXrs0+NqII6UU+uNn4HQpxKhO8OAS\n0tFmhPPH1FkeDKo5qJAN2ZS1NR6xCFeDuIRqsoCkbj8xGAZGzseUM/NcGd7W\nuOoNzZj3KsozoAHsIMFFcPX49+8C2tShVqsNVLAKoZG6KgLf80xbLVKmr3mG\n9umN\r\n=8Q/L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCG/kwaAhFS2Crz6iQ29NGXvUhS7sWL9sPIkVnVHglqqwIhAI0LCisw7nCDDKeUcSh7bxO39BT1SJ5zdersU34UEoVr"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.4f0fcbf6_1546262973429_0.03483148502460853"},"_hasShrinkwrap":false},"0.16.0-alpha.820349fa":{"name":"@syncano/cli","version":"0.16.0-alpha.820349fa","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.820349fa","@syncano/template-project-empty":"0.16.0-alpha.820349fa","@syncano/template-project-hello":"0.16.0-alpha.820349fa","@syncano/template-socket-es6":"0.16.0-alpha.820349fa","@syncano/template-socket-es6-validate":"0.16.0-alpha.820349fa","@syncano/template-socket-vanilla":"0.16.0-alpha.820349fa","@syncano/validate":"0.16.0-alpha.820349fa","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.820349fa","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.820349fa","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-TpYskuYC3xmdjkG8ZF7Ckj2+V8xhzK0GJ/gOxJKb+CGsFNFB6s4YUbTYl0PPrUuksnDHKA5Y9Zr+xOoCyGdV3w==","shasum":"2ddf1d48deb42eb8231a2e79fb8180b793de2e54","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.820349fa.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLNOlCRA9TVsSAnZWagAAcxoP/i81uDPttdLqTIjghODT\nVcvoVhIu5/byit57p6bY4MuLsNneuKpOazV42EACizxjNZ9PQsiFJwbP29I5\nZbrC/gAm5W4YGKkhEtv+TxUxivwQgosJbHZYzkAO2QRDG8vwbrBnSm/+seFX\nwWqJwZvgVU3Rr7L5NITxT95CRxOTAwA4KRIcnCzFVdQLEELY05e2T6VQjm3f\nf2jYvrTxiSkiIVZEBbYiOsTLvFOSyGz0LDIXcvfjy/8FvuUKptqhRfBH+yzv\nbv46gr6af+zShTRWIYKEkI30I9BBGYPBzhtOIJJhF468RzX7Q+JsZ5A03qqt\nkASrcJhzTAHG+eymtOgQiHhHcXXP3vF1/5wfTpnYsTEKZ66WpCK4iXgjm6Qk\naVSJDJ8iGCON3hQO/aDyYYu0QxJYLc9uWdpsgr8UjaiGIlQXDRLAvFhyeaaN\nHDDMBMAI0ct+cOtjwzwRrVqWBQClmMEUm10YIpK204ed+t6tp8L+mQi3ixw5\ni9bJbiZetWaTPckoYSnIwTvtTG6kllX3YU6dirCSCdNO3LcJ3ojfmH3aGcvH\n1NHSdmnIWzto5doB+UHYGg5F2OjM4rSr9ykyTMGsnlIxwiVEvXk6KpYQKp59\nmXqR6gCX5i75gjcW0xI5ACrDacwektPbQkmo9ukr4r+fE/Cq/ha7v057R4Jk\n13D7\r\n=Ky+1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcrID4Nz0RBgL779qaRnVxjY0I4773mFgfd9aq1WszagIhALFOJ6D/REymPOigRCzA1pA9a4wg7tn8rJOnDSVq8esS"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.820349fa_1546441636820_0.8107971706777943"},"_hasShrinkwrap":false},"0.16.0-alpha.9825315b":{"name":"@syncano/cli","version":"0.16.0-alpha.9825315b","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.9825315b","@syncano/template-project-empty":"0.16.0-alpha.9825315b","@syncano/template-project-hello":"0.16.0-alpha.9825315b","@syncano/template-socket-es6":"0.16.0-alpha.9825315b","@syncano/template-socket-es6-validate":"0.16.0-alpha.9825315b","@syncano/template-socket-vanilla":"0.16.0-alpha.9825315b","@syncano/validate":"0.16.0-alpha.9825315b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.9825315b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.9825315b","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-POhneg0gu5kcNLDlsNkMA0UQrqSj6D6DH+CKyoncLrBswxaMPhpDNYRSzL+RufCCd9kuiIARYkZUK4G9bTlwxA==","shasum":"65c5db49a7fe71eef1d507690aaf8dab88086cd8","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.9825315b.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLNsmCRA9TVsSAnZWagAAXyUP+gOSnuwWBPoFgvMOxVHZ\nYmWwdnBpK96BcA/vzhwGVhNbNC2AyX8kyZCoBV9DA6KIDcHzmdivmFCP0iqJ\n+/53SoOE+9UX0h/8dKPTWw0f1N2REdZcLOb6O5frdKKg7cNBdjheCNFOB8Jb\ngfwc/hGMzeeoGM5hIS/yicGqFsGEzWPEFT01qfUrlWUEbDKQjGTOVd+3d9S0\neqXDbErUrXdoJu1ek81DhqxFDtseonkBlwRGXAxcIjeZziTfStoY4bQI0CtP\ntqwMqTiPISlEAiJiUKMkptIGO0th6N1LJk2r93nQ3+mK7oLFjJ3mGW7xzm4x\nws6U8aaU9nVdJf1NAFlQV824TeEPQxLVvl3pGLYrVkrVveUuLBJGNGx6xvY2\nP/ahn2p6OSCnOzMeWmSd+9MduFJYhG25+msADM87vv7O1GkBB8AiRnJrdYES\nfb1cXreh3BHj9AOzUeXHaL0k512ZcmOUx+WbhcOCHjbTPesMRTk2SwQ+p8Df\nQMcK+2c9Ud8Ey4Cm/cnv3VeOXlRRXYo3fxLMWN3vazLM1aMktqYLGMh9lpnQ\nwcrLQgn6N4DStSSCmL9OqaCV6uh1ZqezKNUbwAuCGzW9dzsJ8McAlKkyUWpA\nXailvF3qj0hkQ2yYDsUUvY2kbyxS9UCMbFywBLu+7fA0cL3PI2tRKGucd8ax\nTKKC\r\n=UrxX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFa0TZkt5weZAgI2e8a6CWMhN2yJCoy6QzU809sfaNlQIgF6xKOWZ0AnaGJw77ATbSk5EpDqutd3RsUpnpLOZRfck="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.9825315b_1546443555598_0.09262789265590832"},"_hasShrinkwrap":false},"0.16.0-alpha.3fa2c49b":{"name":"@syncano/cli","version":"0.16.0-alpha.3fa2c49b","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.3fa2c49b","@syncano/template-project-empty":"0.16.0-alpha.3fa2c49b","@syncano/template-project-hello":"0.16.0-alpha.3fa2c49b","@syncano/template-socket-es6":"0.16.0-alpha.3fa2c49b","@syncano/template-socket-es6-validate":"0.16.0-alpha.3fa2c49b","@syncano/template-socket-vanilla":"0.16.0-alpha.3fa2c49b","@syncano/validate":"0.16.0-alpha.3fa2c49b","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.3fa2c49b","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.3fa2c49b","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-MiD7wXDyUX/RGrmiCcjUo4qNsN4YK19z0xEAA7goFOA2ye6q5EmBXighARHcFOaYEqG1FozIlzUGKFmxZ1pmBw==","shasum":"d0af340dc852ea7ff991af000084c5589fce6605","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.3fa2c49b.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcLjNWCRA9TVsSAnZWagAAY7EP/i8hPYI0Dsnu2Oq9t1D2\nUpj+4JUBfj9PW1x80286VgAHAw6z2Q60MQTSvPX6dfiii3KRtmuaKi7ZHa84\nGbvpTUN34++l1K8DO/4rHCuHEGEd3bS83hNOvlqsygoiOEguxMpwkFpTzmTp\nrpV2e0L2p5nLIkS5amlX0lR8CLFA0Q42B8X3Awt9Fe91TMPF8TjvV6ykHBZ2\nu0xDaJww87VMlJul3W8SP1HwZEXwtqJ285vpuexuT0aeZiTBp+gEcELfMJ8W\nWmt3AZaacurFOKMSu7jPJCwTCkeFRFm+ImlqSMDpdKZVYllgNkA9fx4h4j/o\n7dz5sNBCIV3zLH3EKoOTHWQGctsXcAn3m4698FncjEXVSMScxKsLrpfFpZQL\nHOGZSlNfRsXejQr0ZDYuzuR+HKyom8ipMQvhFOPg40vWTDFmXsQhH+hpqt0I\nvaHJIDZQ9zPVr1PM0wZ+4Z/yrww34MIEPCwsdM6Rxnyyc9fccr5QFpvve7HM\nV99HZbU2XK/Sy4xXORCztgidzvQ5ChIP748Z1JPtG9BjFCVHR42vsc02ghKW\ni6XY+0paaQJSpyB5MOM7CfwaDzqQdxhrVklZutLJmJ5w6oegdbxxah7oXcOF\nclw1GNCfeYecLfc06hcc2XZAl4kFhimQH2aP0Jk3v2P9FNwbSYPdCQSTIuRB\nQAGf\r\n=1Ugh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA0p3LR0Sy8xFSxRlWiy+v2fOXpVEgrYCTbobVXtRTSFAiBfUUUe7p5AMeVDE6sDHJ8dLaMSpolBnz5aCP5VuU2NQA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.3fa2c49b_1546531669481_0.27067050254758707"},"_hasShrinkwrap":false},"0.16.0-alpha.01b78f3f":{"name":"@syncano/cli","version":"0.16.0-alpha.01b78f3f","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.01b78f3f","@syncano/template-project-empty":"0.16.0-alpha.01b78f3f","@syncano/template-project-hello":"0.16.0-alpha.01b78f3f","@syncano/template-socket-es6":"0.16.0-alpha.01b78f3f","@syncano/template-socket-es6-validate":"0.16.0-alpha.01b78f3f","@syncano/template-socket-vanilla":"0.16.0-alpha.01b78f3f","@syncano/validate":"0.16.0-alpha.01b78f3f","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.01b78f3f","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.01b78f3f","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-xk9cP44VRxNFq2TyA+8GWkBSVdzsJLsYkYanKqWG3CP5Z4thplmRIMgP8BnRCK4jGYZ2WayAMyWjPw5Hir0LrA==","shasum":"32e01bb4fea7cc323003c08329213f3da30d0ca1","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.01b78f3f.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJch7ybCRA9TVsSAnZWagAA8skQAIG47gR1vrvyIfElGWTn\nW09wFNjmyRjIlpbMrZWzHnoPP5hUe74vtTZIBjy9oEh15Jqg8oeqmO0K6PTp\noxvAZzLvcHWftUz5EdAmeHxTeFxWqGD2AUEnbZlowI+ntDR2mbnAKT86oKHr\nDavaSIh3i1FJJGD5DiZmSYE2qfK3zbYoAINBhFQUMNUN1jFdMJsRO5cxK/Jx\nwN6DuwETQgDZD/2+K5twcZw8HHDOvtqTIQ3pamQyKUCupBgKodd2flQsaXhY\nYa5OmZo3k11aGUPdpcjCqznVPylvzODnHECKdJ4cctXK9/w4jZN12zghNNck\nnkJMVWeyWpQN5XSvHxon5mDkwHhWAkKsyckzaRxX+v/zZH0Ru8KKxDcjrdtq\nJd/poPv9LdMrEkyvSXXKjEa8p4EPREFEsP4TOytPeQb2A/W4/HAFRopdkQvw\nYhqR1iP63NQ9MPxOTTV5GPphgZcJxuitrZ3wNPbDKOOL6V7pXmVO897XsGkZ\n3W4R0JTNc19nl3v3agvH3Cec4Z7GktCefjarNYbmq+Y2S0Ic9YbvJxJTfaar\nXaA3hAO4Nm1KrBlHpG5BocKD+ElcbfBZQ4dGdg8tjbUI2vBEWYNeQf+q+tB5\nLaSH0YjaOaGPD7z/e1mB2hzLDrbcqXDglyxXdwbvY/3CBeXi9mqDorSGKgIp\n5ysS\r\n=Qsq4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGdRcYODrBLD9YFzsocKJfbW4+cJtJk30hQgDDGGvphyAiAJMNCV6+exYy1PbdXhE09zZxxQcnhNE4GlgQEdIVhRQA=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.01b78f3f_1552399514596_0.9565004340591257"},"_hasShrinkwrap":false},"0.16.0-alpha.f1006ff8":{"name":"@syncano/cli","version":"0.16.0-alpha.f1006ff8","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.f1006ff8","@syncano/template-project-empty":"0.16.0-alpha.f1006ff8","@syncano/template-project-hello":"0.16.0-alpha.f1006ff8","@syncano/template-socket-es6":"0.16.0-alpha.f1006ff8","@syncano/template-socket-es6-validate":"0.16.0-alpha.f1006ff8","@syncano/template-socket-vanilla":"0.16.0-alpha.f1006ff8","@syncano/validate":"0.16.0-alpha.f1006ff8","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.f1006ff8","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.f1006ff8","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-DYh9GVLrplfX7bvwwVlvSBMdBPUWhiL+EfRjwi285bQrfV03HaYE+z40ch30QF4Ype7k1rUN9AkC/TYqIlY5pg==","shasum":"3c7ae495e103021b70bff0aa226c7014c5bc2f41","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.f1006ff8.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciQyYCRA9TVsSAnZWagAAiSwP/RVXh233hMbfFnuBKgNF\nu70XoPGHG8du1rPwl462LK2zxw6xOFwsuB/NiEvi+PzMpdPabXtwbKJOoicB\nI0pWOfr75OKk2S4f1wsrz5eLcN3CX8ETbVs+f9uM1ZswAxh3XcurFh0Ttwmh\nNJ72cMyuZUVmHHMEWR25tQDPRkPtMaOXatVAnaKlRn2PnxExIzd5hK/NsvwS\n6pVuLqH/fCUIdqJdvvu/mbBR1GxRl7hY54m+4rbazhK4nB0bSfcTXuJicgfZ\nvlU4JvLbsOOR9M+zVdnRZNVqPq3OrV2Geqtb8GXmDZY4TpajbFGpYmRXZh/v\nh3rD6dQr/0L1TWKPc1vYnB+O8GiDI7mBSBrE7lso1I8McmqkGN//kUSk8ep0\nrsJgdpaCbCRfOlDGAYTAT8OUQ65xNn2j6f3RO3fhWeTTL71xmp4J4Lwo4WS7\nDK3wOo0WggXTnaiiaAZinj1BcucxX/EaNa47sCL9e4RseoPLGhy9B0b5nomQ\nyD+iZf2/MzcO7Wg66YrL7xX6olGmiD107xag62XUdoTSFtH2sDQcXSmPIlTI\nOBtxy4lKatSQu5y7NNNOqH6IR7gZ6pW4twBizcnZlBgr0X6C+EXWF7oO8oOh\nwUuNGHHe2Nj1FBlK52QPWJ4AnltuBNyPVFAnjy7bZuUwEQvgIlaZPoU36d+2\n4TfH\r\n=PX45\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICgoySaEERMHznXk0ZkjHNPeRrAb6FZiaem3SMqcdlrQAiEA1mv/0z9uLZSSmzX0XuS5id3HB0DZwB62tjQZ6ve5YPc="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.f1006ff8_1552485527816_0.7178677734086405"},"_hasShrinkwrap":false},"0.16.0-alpha.0d85dd34":{"name":"@syncano/cli","version":"0.16.0-alpha.0d85dd34","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.16.0-alpha.0d85dd34","@syncano/template-project-empty":"0.16.0-alpha.0d85dd34","@syncano/template-project-hello":"0.16.0-alpha.0d85dd34","@syncano/template-socket-es6":"0.16.0-alpha.0d85dd34","@syncano/template-socket-es6-validate":"0.16.0-alpha.0d85dd34","@syncano/template-socket-vanilla":"0.16.0-alpha.0d85dd34","@syncano/validate":"0.16.0-alpha.0d85dd34","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.16.0-alpha.0d85dd34","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.16.0-alpha.0d85dd34","_npmVersion":"5.6.0","_nodeVersion":"9.11.1","_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"dist":{"integrity":"sha512-OMQbOjyps+tad4w+FW4pE+41tNFST5mKYYDXpIU7F6ltjEAyp2oOhdqwrqvfPRZ3vavE2LEYHHogaK2z1axizQ==","shasum":"4da33371ae367101e52e96d3bf4eedd6b0f2b137","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0-alpha.0d85dd34.tgz","fileCount":180,"unpackedSize":814735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwdLJCRA9TVsSAnZWagAAPR4QAIarGMWobXeKVWCLP6LW\nsFHNsVL5lVHCqzokEYQlT9Z/wWmvd6dUJdQ6MxKYiIe7FfCKi4/zgP2SVADW\nJiZZmTdofX9BaWFN6O+fZHui7X/g8UbVVNYV/yMbtCe7xCH4mj79W8Mcm9at\n/LiJkbLMsnt6h5W099PSMcy29wyAxR7+zoAaDPR2+P5QawsIfH3YOehPfcBN\nXilwfYm4LTgNfmWTrvf3Zq3xs22WAMls+085b9yyp6hDOYs7FKbCp6ULU2A9\n/NQByCLw5zQMNjsAk0RO2lGjJ93qymHn580A0xPTDY4wpg5LqWi4Vx9zMZ5m\nXajxKTCXGWZCKdnDM2IJCooKfHvsumZtaM86RbMcQYYG5vKSE+1LKao5BUnY\nn2MWjPSZVmro7j4298DbL5xPfkMAC+xZyEUZ2YvOPPz3Q1BgiXRqGAQ4yD+Y\nqrgSNoXs8JPW4RQRo7b8X9JPloiQzdKu9R9QUFvzpPIvBCc9KUgzq9mkouxa\nyR2Epe9sK5mUjVA94l4LlCJgiIl4djmyqbBt//t+Tc+nSJCPyb5jkGT+YZH0\nEiSaJPAXyVaKA8H+cvHn/g1ayw05JslcSJIAdnx881RtPnBLBAP8CJh41TEv\nBye6kpM/nyXSQSUlRlfB3pMV+OUTfE9wBDheu4/bytoHZy7x9YDQs9zNw8sd\ngDCR\r\n=+07H\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCv/Ac+B5CpzKb6W8seJpY/jjVQZhw08+7glZH++6yJugIgMu81RLVpVhX9+Xw8KtwiUiz3gkj9uU2U0uR/uEFtnZ0="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0-alpha.0d85dd34_1556206280703_0.48355862271328376"},"_hasShrinkwrap":false},"0.15.1-alpha.29":{"name":"@syncano/cli","version":"0.15.1-alpha.29","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.1-alpha.29+94463f9","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.1-alpha.29+94463f9","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.1-alpha.29+94463f9","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"94463f9758fc3b82d95ef0e92eae17157e463942","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.29","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-i+0Tkc8Yo8R6XH7W9rYN6JjaIxuP/li3iUTMT+qEGg3CwUE0woTArW95ouY3aQ54qfH0tdhbXrc2f9I4NdEB8Q==","shasum":"51507e7c661b595c1c6cb3296e6d6b6f757b0ea9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.29.tgz","fileCount":181,"unpackedSize":815789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsq1bCRA9TVsSAnZWagAA4p8QAJHXJjLe+a+YITS68Rv2\nx+GlCf7eIY/nBALh3dCk1Rh2NCywbJHTJB/gjV5p9IruIJaB/hsbmlGaxf7f\nq6G0pZxYyIYePqRC+p1WTbZPx8+KX/U7RJVEIxBI2qo8cR28H9MAIGYsHe8c\nvdbfoVdYQOkQm4bpQhYNH2c7UIHtE2znEYbEe8c/9mu6WiCApiXghdXfM6Ht\nIICG/evJ7lBIn+4loUdxNaj2FmwMeLT0rJjmLfzo2i70nmJGBgsz37pJrO+s\ncV2387H3/fYXoNaRbGJ9aH7z2zakHJYy+Lw6egK7Kr2q4uZSTT9MYbNLGw3w\nVIUUcSfODMMQPgBtZY4gMCT0iC5+nSXhabjzTNZ+Na603HcZLu3LaWzKkgXA\nFaeOxFlsqgEQBMtHP7n/id90qDpM+/7fJnH+CmD0Wghg5HCcosy7VzbwTiIJ\ng9H9ldMCwja1L6NU6+uZc8xffckTjeItb5SKegBdiSxrUjp5QxBiSP+b8F0k\nP+9UOD3pfDYxNLc2cOraal2CLzuw5V4yLD6YQLz44do0Y2IGcYkO5fpLY1t7\ntULI7J8uzgyqJQMNcZfSQoXPkQR2lk8pSZJLNsisk4gRqeJDC56jjcw94YRt\n0lM6pzifoDQ15CCU3oecE6lmb+KuC34405FXFxKIzgdpMdGfkR5Ww2mmAYMe\nKfVI\r\n=sS2R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHvSsCbA5BxQdGl5ed2OiCR/TSHtRcVcPYcP3i7qn3dwIgU4WF8qS89AMP7eQUGdELA8sFPrCX5ENaNLXsYIMu1fo="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.29_1571990875392_0.9998466035737532"},"_hasShrinkwrap":false},"0.15.1-alpha.32":{"name":"@syncano/cli","version":"0.15.1-alpha.32","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.1-alpha.32+4e11595","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.1-alpha.32+4e11595","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"4e11595ea3c6c7f70321b3b6b525d3c9cf3621e3","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.32","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-voDtnrXqh2d7J9WyiDDWXlXevRyft4WPfJPkiPf0T0+e9o5Z7mFqoDItmqQKLJslV1Pb8C90kWiaPExmhVMsNg==","shasum":"fa7bfd8c9b17705b8e776c87aa85775bcf2ffe62","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.32.tgz","fileCount":181,"unpackedSize":815772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdtu/2CRA9TVsSAnZWagAAGSEP/08ffSSB23aTpC1M1vvQ\n1ouzN2RzSA4viTz0rROWQ9GpmK4+sREmptxBclnAlMbrwDTdEds30Idyr2cA\nxyk+//Wyxfvkw2I5MPU7xmiEu5Mv3Pp33Ujh0pEroRGVE19aOZPY8eqjLeTL\nKbQCqGJNutrekHSxScIfiTyhdn4WFyCW8NLBldZS1y4JWY2ZVKCAimTUdE69\nlQSeca2JSKjk3ebCDWup19upUj93SDNZnsD64dntYQV1k8p5ZOPUGlqYtSLL\ntIhSI1RJevVL+4HEh/+o8M3iEvVlxtm4LJ0JVZuqaWpaf1y3tWzasAsdWAGp\n6H951pfGd0XNrSIPoXxgJC1y8yKzLwLMx/3N/F8c9aGb3W+6IB3zQCFMAgsF\ndiWUxarvM7Ulr/BYXN61/Uwe64lyrwDm15XlZlgZLK4MTX9kwVqUojeldhHS\nJ7ASh3nDsdxSQXbfWrljlxU0AFiSRexUmblXgkz46z6Ry9B4wPi5EmxYTKMy\nLfeuUa1uPBH945JDqSCA/8vntSP5vDI5wwc67M9dv+q8D1nU5ErmtUVVvo1J\nBBZ8RGpaA8rn5xlwQ4t3vSJw3VNdB0BRptUjrvA5kNgWjBV8ivDem08N22PG\nRXsGZJHhkw8LcU/nLWRV6tjb8+5XND6rFgVM3qm5oPyKjxdq0aqY9NCj7how\nCRPp\r\n=EgfY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCjMJ9t/DfI6cQYX2/kTmDZlftwyfSQEUndV38Rn3SM7AIgCBVMkWAxpU5MWaXD/6VkcFfOtYy31XxXq7/k9YPNR/U="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.32_1572270069654_0.053986502844837414"},"_hasShrinkwrap":false},"0.15.1-alpha.34":{"name":"@syncano/cli","version":"0.15.1-alpha.34","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"./lib/cli.js","syncano-cli":"./lib/cli.js","syncano-cli-hosting":"./lib/cli-hosting.js","syncano-cli-backup":"./lib/cli-backup.js","syncano-cli-instance":"./lib/cli-instance.js","s-hosting":"./lib/cli-hosting.js","s-backup":"./lib/cli-backup.js","s-instance":"./lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"a92b9c87cc75187c0a94953fcecfe11caf08524f","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.34","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-jyrrJK1K+ivqYqgof6PqYfzSh/3zgUmffIg94xLkenwDDixeBLkIKA1vVpekWzSygAbu86Ow5xkc7/INuHsjTg==","shasum":"eb40160e950596ae808d822f37cb5debabdf17ed","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.34.tgz","fileCount":181,"unpackedSize":815742,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdwW0KCRA9TVsSAnZWagAAQdYP/2uDsk2HOZECD26pILk0\nfPUUuP5bVEzXldcuSjczSouIm1rq+miLNnrBq1O/iza9R8FO/vTUhY/7vFH8\n4C5p+pjEixioJniAMl8+OtqAn3CQTOJiRCgxQWl5AiWgeT4DgLsmeWiJoy0i\nhsp6hl3wBENa21sxcWudVQYI8gm6z+p7UCDW6cGzZvKoQXWQn5DuJk3a/B2K\nxWQbwRDdBX6Q+QbEkreQLwDk16gobKIaPXInP028WHe6b1RBY5b1e2n73xAY\nJFB3tCm/EQ6kVDYtXDrs3ecJMN4SaXVuqkYZp+tI31TWczAzczhCt8lhY3Cd\n/IlJwcsxMlygmLF9Otes9wM1f9yMNDDRM8W622U20d2Pj7/t1aJ6TOXNHEDq\naXAw+sK+2LNXC5+RyXAzfKiBNdK21Qi8HVA4EL2zfVkt1jVaRWjPW0vQA3EX\nx5TVpE27QXU+yp7xPbSq6T5ySM1o4s+cvdSEtp2bH1UK3gOh79MqXAq+Zvc+\nw5IvDl2SO9XEdOKRl7sMa9ebjwqAcAQP7093QrCiOuEd4xLklhjkhIVz8LxJ\nv2anPTB+AC+JnJL5RqlSb3iQKTm/srjcOmfstQktRr6Hjuyk1NCI8hta8Cq6\nGSQeUm490M2nuZAu4NCwzNXrI2UAeJCxhBr2wjXj06wmdmgrwAbNoiRtZHEu\n6fwL\r\n=tYyG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEck5ylmglHQFsby3600AuJF1P1lSiD4bKUug+9xX4NIAiEAtxTYXDArLGixePbN8vQSsO8ut2shIxUFM4dc45RvR5M="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.34_1572957449773_0.9843388097480235"},"_hasShrinkwrap":false},"0.15.1-alpha.35":{"name":"@syncano/cli","version":"0.15.1-alpha.35","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"lib/cli.js","syncano-cli":"lib/cli.js","syncano-cli-hosting":"lib/cli-hosting.js","syncano-cli-backup":"lib/cli-backup.js","syncano-cli-instance":"lib/cli-instance.js","s-hosting":"lib/cli-hosting.js","s-backup":"lib/cli-backup.js","s-instance":"lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.1-alpha.35+71a45db","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.1-alpha.35+71a45db","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"71a45db7fbbd6eaf8d1632bee8188186d1d81286","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.35","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-JfoXTRTtmeWXn/F9uqrxWLd3dxVxOcaJoNDwpKqAspRRM2jfeI6f10swRAXfJPDCqoMwchkfue9pryS103d9Rw==","shasum":"67842ba84df2d558aa2510e6e126a5d02002ed82","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.35.tgz","fileCount":181,"unpackedSize":815776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKXckCRA9TVsSAnZWagAAXhAP+gOzmptcJuI40NWtp13w\namI4l2gt2qD1KO206Euf8Hvf+429O9Si+z1p+DlXK5qEKi43mTX7SdyUljtI\nhx+lqzPHHUCsjHRSVZhsuOhFLARC+FuPXC3eI1jsaTx5DxF21L+DNhjguoP7\nSZPWEeoZb0+Dq1EKRF62AR1tQa62YsGtYBGc5hRoCBxkzXspIIAFLSID7i+Z\njJ17/9uZ4svfoVhtz+3a2V21mlOuxVIsQmgOf6JWyfPSlBbP99N8VjuJZP2X\nE1H0Q9ik7F0yqB5AWDIZQ+L2ic+1NuHuqwLd/i20zXxnt7wkYkA/JGLNFUhh\nlvKAHLqj+fdS0f0Zx7PPRfTHcBB5mpf9nxMFwfnKNDqBpUCoJx6D5LCPy6wx\ncE4iyBNMsJuuwoQtjhphnqVAQ6W35Advvxwd3njQobBDdVtSsvTuL+um98VT\nv1iWThStYQJRhOX8BhkjxMSjGtDd74rendbxFuzOrxc1+jtSgssusFl/Yfog\nnXUfbw8ELaOqvd4Eco3K/d7khWSb793RWy0fCuFfwjMPDhGIj/uAwhDgcsVW\ntTQ4wAzZetYK1oCcJUzl/XTDfRLkTyeAtopCWN8M16vdZlpHJXzEacO/Z3nt\niVrJ49xN7DZwnpWvNsHGMTlVsngvDWzYx5NkQyegP2lePL5dS4NhmZP17a5G\nAzKB\r\n=eKfG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVCROZWjaADM8xJICRwG0rgxhDZMeiDrDgN6xWpAGQOAIgJvEH/xJ3WrZ6Sh9SdvctzwFJdsSXsf8olOIyNvbfTtM="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.35_1579775779582_0.8368322419254235"},"_hasShrinkwrap":false},"0.15.1-alpha.36":{"name":"@syncano/cli","version":"0.15.1-alpha.36","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"lib/cli.js","syncano-cli":"lib/cli.js","syncano-cli-hosting":"lib/cli-hosting.js","syncano-cli-backup":"lib/cli-backup.js","syncano-cli-instance":"lib/cli-instance.js","s-hosting":"lib/cli-hosting.js","s-backup":"lib/cli-backup.js","s-instance":"lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.1-alpha.36+cedd511","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"cedd5111ae937010ad95e55e677e935b68bd36b5","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.36","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-IKgCIfM5b7T3VfGiuszT00EiYoEb6+cin7/ks51p86vvqiHXpR0m/prEuDtVbOJg2LuOenBJA+P/oxacS3qm/Q==","shasum":"0cdea601a2863701bfb62f78cd5c5d8b230abe2b","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.36.tgz","fileCount":181,"unpackedSize":815759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKs0mCRA9TVsSAnZWagAAgj4QAJEFgGhVtiVOcB3ubkYk\nTJVKH0KppMSjJzTa/TTG4X3/NdHiwKk9nTbh9SOw4JSAyfcB7q+n0Ik19Kbo\nTRCenlksimZxsi02t7XYxR27dFbPVMbXTvHOjoyt9AM34BHNI0Dn7li19Fuv\nl2qMndPMi5WiV0QttaHrKbfq5Oxc+tPZP+BHZfCEDn+kBfYpb72z6K7Dfska\n2HeqeP79/5zGBHCryWzAZyh0Iug4OGIVABYJBTrp5pT/YALBIHfcy9Bk1Cgd\nsLe9NdW/1t17+im7hR0uYLFkyYWnwFGKNTwjBDTmxZ6GF4Hj4PmfRHwK31Du\nJmz/QofJl4wDWunVk3CQqtGB5qbD8FKzdYI4AbgIQVVeoaLEJ9jz7QzOefzW\nBgiF9g7KIIcRcBZmNLbxC4tKRI8b25hd/BWcJpH9k7IKifV2xyVvThAdIapT\n7WVTDDFLheIiKlvTuYFJZNgmVmRPt3TfTDVsFuVM0lGkiu+vrJMw4mA+X2y3\nWy6KkGy8KxIJknsrwUh8cxfmMdO8Njf0B/pTHND2dvPnIW1IlDVatOugKKBD\nvIBmTreIPDQ9grO6V4xPhQpu41y3GNG9RdtXKsGxLmTfcFMc9WnW6T6+SDtJ\nNny3HMAiX1/QXuk5C0C+0KAMyDTyS67735yTeo0M+wxmrjjPRhaGyG8fpnMZ\nI0B+\r\n=rsvg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQConMVM7ISLHw+IL8N2ATmWdDPtmM2QSfcP9T2pup8WEwIhAIQei+oA+uvJs7sKPHT5UjbnMOYBi5TN/F75X4pEsOeu"}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.36_1579863333752_0.4184549171233216"},"_hasShrinkwrap":false},"0.15.1-alpha.37":{"name":"@syncano/cli","version":"0.15.1-alpha.37","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"lib/cli.js","syncano-cli":"lib/cli.js","syncano-cli-hosting":"lib/cli-hosting.js","syncano-cli-backup":"lib/cli-backup.js","syncano-cli-instance":"lib/cli-instance.js","s-hosting":"lib/cli-hosting.js","s-backup":"lib/cli-backup.js","s-instance":"lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.0","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"565a2725c6a914bfbeb31efb781d7c9821916951","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.37","_nodeVersion":"9.11.1","_npmVersion":"lerna/3.8.5/node@v9.11.1+x64 (linux)","dist":{"integrity":"sha512-5ru02vRUZDzRPc//+vIg6Ln/BkjpL3pH4lBcS5S4HPPkGlpcsXnfyQVPzkQ9ZkFV1yGse6OK5tgfGxuqc2evcA==","shasum":"636a97d05d46f11b52432a6c2c173fb5f1633e44","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.37.tgz","fileCount":181,"unpackedSize":815283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOsnMCRA9TVsSAnZWagAA3nAP/jAb9xMscRGyM8IE4zKH\nU3JwnuTVlX2xQBnCBUUOKW74PPzhzuZW2FQzHO7zIcRif1sXQiFEarrhqSzN\nV8O9R4Ga0aGVWYtpumUXVhxJyaKhocd14N9/lQXCaf90vIaOo1UtE5m4YmcB\nWq06iL9CquyuirCYgc26rnM5/vK8jIzM21Dto3iU9ZvxAvJAc/5gAAvI2Xn+\n/hlVxgEYxiVZG+m5bti5Pdaj6b8jgr7eZfgDIskQGpsuGBUAaxvUGWQ9HRig\n7kk0YgttAS6W42OF66qG2Apvj+GayGRBLEpId2wRJSUCTBBwmQsIQmv4BnW4\nxmueS8JdnVfB1mbFWZKHFRn7ztQ+3PJUwEggCIhcqqZd8JcZAVWq/Oo4Nimb\nSvQ0VUY6EW0DQugDZgr877jznw8sJY3Ojsvk0eeSRe3u5obbVtfgc+BB1IgA\nCezt7m0tXjVxkJgJEzPN3kmfA2rl0tqv517yPJI4XXSDBiuCRLuGRLdRd26C\npgyc1JrUE22+yphdWZEPbEAqvZzOKRC2JZr+oZFXUjrmys1l8p3fHc3yeaZD\nN+7Azu/VuKOmr9vLwXxE3UtMGYl8vBmT+A87yYJwFR/IktmQjVJZJdm+b5hO\n6h713N7jaVDddskYbWN4Vz/RyL7ZRDlji22Nvt8DU8Y8E+XoiqI8Ckopx6Tb\nU9aI\r\n=4ldf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZByT7vdU4aCTAoLkBgj5/q/y5s7EpC2nAN7xvcBxAPQIgQDyAJuI05/u6P4tWR47U9GDnXk9yC1EzDGejcF9NbOo="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.37_1580911051597_0.40443655000116285"},"_hasShrinkwrap":false},"0.16.0":{"name":"@syncano/cli","version":"0.16.0","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 10"},"main":"./lib/cli.js","homepage":"http://syncano.io/","repository":{"type":"git","url":"https://github.com/Syncano/syncano-node.git"},"oclif":{"commands":"./lib/commands","bin":"syncano-cli","plugins":["@oclif/plugin-help"],"topics":{"socket":{"description":"Manage sockets"}}},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@oclif/command":"^1.5.8","@oclif/config":"^1.10.4","@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.3.0","archiver":"^3.0.0","axios":"^0.19.0","bluebird":"^3.5.3","chalk":"^2.4.1","chokidar":"^3.3.1","cli-table3":"^0.5.1","create-error":"^0.3.1","debug":"^4.1.1","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^8.0.1","glob":"^7.1.3","inquirer":"^6.3.1","js-yaml":"^3.13.1","klaw-sync":"^6.0.0","listr":"^0.14.2","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.15","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","oclif":"^1.12.8","ora":"^3.4.0","pretty-bytes":"^5.2.0","raven":"^2.6.4","readdirp":"^3.0.2","semver":"^6.1.1","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^5.2.0","tslib":"^1.9.3","validator":"^11.0.0","walkdir":"^0.4.0","ws":"^7.0.0","yargs-parser":"^17.0.0","yauzl":"^2.10.0"},"devDependencies":{"@oclif/dev-cli":"^1.21.0","@oclif/plugin-legacy":"^1.1.3","@oclif/test":"^1.2.2","@oclif/tslint":"^3.1.1","@syncano/test-tools":"0.15.0","@types/archiver":"^3.0.0","@types/bluebird":"^3.5.25","@types/debug":"4.1.4","@types/fs-extra":"^7.0.0","@types/inquirer":"6.0.3","@types/js-yaml":"^3.11.4","@types/klaw-sync":"^6.0.0","@types/lodash":"^4.14.119","@types/md5":"^2.1.33","@types/node":"^12.0.8","@types/ora":"^3.0.0","@types/pretty-bytes":"^5.1.0","@types/raven":"^2.5.1","@types/semver":"^6.0.0","@types/source-map-support":"^0.5.0","@types/strip-ansi":"^5.2.1","@types/validator":"^10.11.1","@types/ws":"^6.0.1","@types/yauzl":"^2.9.1","@types/form-data":"^2.2.1","@types/listr":"^0.14.0","@types/md5-file":"^4.0.0","@types/mkdirp":"^0.5.2","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^6.1.4","mock-fs":"^4.7.0","npm-cli-login":"^0.1.1","nyc":"^14.1.1","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^7.3.2","sinon-test":"^2.4.0","source-map-support":"^0.5.10","standard":"^12.0.1","ts-node":"^8.3.0","tslint":"^5.12.0","typescript":"^3.7.4"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"tsc","build:watch":"npm run build -- -w","clean":"rm -rf lib/","_unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit":"exit 0","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:commands":"nyc --extension .ts mocha --forbid-only \"test/commands/**/*.test.ts\" --slow 1000","test-selective:commands":"nyc --extension .ts mocha \"test/commands/**/*.test.ts\" --slow 1000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"readmeFilename":"readme.md","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s socket:deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s socket:list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n\n\n# CLI Usage\n<!-- usage -->\n```sh-session\n$ npm install -g @syncano/cli\n$ syncano-cli COMMAND\nrunning command...\n$ syncano-cli (-v|--version|version)\n@syncano/cli/0.15.0 darwin-x64 node-v11.3.0\n$ syncano-cli --help [COMMAND]\nUSAGE\n  $ syncano-cli COMMAND\n...\n```\n<!-- usagestop -->\n# Commands\n<!-- commands -->\n* [`syncano-cli attach`](#syncano-cli-attach)\n* [`syncano-cli backup:create`](#syncano-cli-backupcreate)\n* [`syncano-cli backup:delete [ID]`](#syncano-cli-backupdelete-id)\n* [`syncano-cli backup:last`](#syncano-cli-backuplast)\n* [`syncano-cli backup:list`](#syncano-cli-backuplist)\n* [`syncano-cli help [COMMAND]`](#syncano-cli-help-command)\n* [`syncano-cli hosting:add FOLDER`](#syncano-cli-hostingadd-folder)\n* [`syncano-cli hosting:config HOSTINGNAME`](#syncano-cli-hostingconfig-hostingname)\n* [`syncano-cli hosting:delete HOSTINGNAME`](#syncano-cli-hostingdelete-hostingname)\n* [`syncano-cli hosting:files HOSTINGNAME`](#syncano-cli-hostingfiles-hostingname)\n* [`syncano-cli hosting:list`](#syncano-cli-hostinglist)\n* [`syncano-cli hosting:sync HOSTINGNAME`](#syncano-cli-hostingsync-hostingname)\n* [`syncano-cli info`](#syncano-cli-info)\n* [`syncano-cli init [INSTANCE]`](#syncano-cli-init-instance)\n* [`syncano-cli instance:create INSTANCENAME [LOCATION]`](#syncano-cli-instancecreate-instancename-location)\n* [`syncano-cli instance:delete INSTANCENAME`](#syncano-cli-instancedelete-instancename)\n* [`syncano-cli instance:list`](#syncano-cli-instancelist)\n* [`syncano-cli login`](#syncano-cli-login)\n* [`syncano-cli logout`](#syncano-cli-logout)\n* [`syncano-cli socket:call FULLENDPOINTNAME`](#syncano-cli-socketcall-fullendpointname)\n* [`syncano-cli socket:compile SOCKETNAME`](#syncano-cli-socketcompile-socketname)\n* [`syncano-cli socket:config:config SOCKETNAME`](#syncano-cli-socketconfigconfig-socketname)\n* [`syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE`](#syncano-cli-socketconfigset-socketname-configoptionname-configoptionvalue)\n* [`syncano-cli socket:config:show SOCKETNAME`](#syncano-cli-socketconfigshow-socketname)\n* [`syncano-cli socket:create SOCKETNAME`](#syncano-cli-socketcreate-socketname)\n* [`syncano-cli socket:deploy [SOCKETNAME]`](#syncano-cli-socketdeploy-socketname)\n* [`syncano-cli socket:hot [SOCKETNAME]`](#syncano-cli-sockethot-socketname)\n* [`syncano-cli socket:list [SOCKETNAME]`](#syncano-cli-socketlist-socketname)\n* [`syncano-cli socket:trace INSTANCENAME`](#syncano-cli-sockettrace-instancename)\n* [`syncano-cli socket:uninstall SOCKETNAME`](#syncano-cli-socketuninstall-socketname)\n* [`syncano-cli sysinfo`](#syncano-cli-sysinfo)\n\n## `syncano-cli attach`\n\nInfo about current project/instance/user etc.\n\n```\nUSAGE\n  $ syncano-cli attach\n\nOPTIONS\n  --create-instance=create-instance\n  --instance=instance\n```\n\n_See code: [src/commands/attach.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/attach.ts)_\n\n## `syncano-cli backup:create`\n\nCreate backup\n\n```\nUSAGE\n  $ syncano-cli backup:create\n```\n\n_See code: [src/commands/backup/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/create.ts)_\n\n## `syncano-cli backup:delete [ID]`\n\nDelete backup\n\n```\nUSAGE\n  $ syncano-cli backup:delete [ID]\n\nARGUMENTS\n  ID  Backup ID.\n\nOPTIONS\n  --all\n```\n\n_See code: [src/commands/backup/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/delete.ts)_\n\n## `syncano-cli backup:last`\n\nList last backup\n\n```\nUSAGE\n  $ syncano-cli backup:last\n```\n\n_See code: [src/commands/backup/last.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/last.ts)_\n\n## `syncano-cli backup:list`\n\nList backups\n\n```\nUSAGE\n  $ syncano-cli backup:list\n```\n\n_See code: [src/commands/backup/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/list.ts)_\n\n## `syncano-cli help [COMMAND]`\n\ndisplay help for syncano-cli\n\n```\nUSAGE\n  $ syncano-cli help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v2.1.4/src/commands/help.ts)_\n\n## `syncano-cli hosting:add FOLDER`\n\nAdd hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:add FOLDER\n\nARGUMENTS\n  FOLDER  path to hosting folder\n\nOPTIONS\n  --browser-router-off\n  --browser-router-on\n  --cname=cname\n  --dont-sync\n  --name=name\n  --sync\n  --without-cname\n```\n\n_See code: [src/commands/hosting/add.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/add.ts)_\n\n## `syncano-cli hosting:config HOSTINGNAME`\n\nConfigure hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:config HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to list files from\n\nOPTIONS\n  -c, --cname=cname\n  --[no-]browser-router\n  --dont-sync\n  --remove-cname=remove-cname\n  --sync\n```\n\n_See code: [src/commands/hosting/config.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/config.ts)_\n\n## `syncano-cli hosting:delete HOSTINGNAME`\n\nDelete hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:delete HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to delete\n```\n\n_See code: [src/commands/hosting/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/delete.ts)_\n\n## `syncano-cli hosting:files HOSTINGNAME`\n\nList hostings files\n\n```\nUSAGE\n  $ syncano-cli hosting:files HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to list files from\n```\n\n_See code: [src/commands/hosting/files.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/files.ts)_\n\n## `syncano-cli hosting:list`\n\nList hostings\n\n```\nUSAGE\n  $ syncano-cli hosting:list\n```\n\n_See code: [src/commands/hosting/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/list.ts)_\n\n## `syncano-cli hosting:sync HOSTINGNAME`\n\nList hostings\n\n```\nUSAGE\n  $ syncano-cli hosting:sync HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to sync (all if not provided)\n\nOPTIONS\n  -d, --delete\n```\n\n_See code: [src/commands/hosting/sync.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/sync.ts)_\n\n## `syncano-cli info`\n\nInfo about current project/instance/user etc.\n\n```\nUSAGE\n  $ syncano-cli info\n```\n\n_See code: [src/commands/info.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/info.ts)_\n\n## `syncano-cli init [INSTANCE]`\n\nInit Syncano instance\n\n```\nUSAGE\n  $ syncano-cli init [INSTANCE]\n\nARGUMENTS\n  INSTANCE  Instance Name\n```\n\n_See code: [src/commands/init.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/init.ts)_\n\n## `syncano-cli instance:create INSTANCENAME [LOCATION]`\n\nCreate new instance\n\n```\nUSAGE\n  $ syncano-cli instance:create INSTANCENAME [LOCATION]\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n  LOCATION      [default: eu1] name of the location (possible options: us1, eu1)\n```\n\n_See code: [src/commands/instance/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/create.ts)_\n\n## `syncano-cli instance:delete INSTANCENAME`\n\nDelete an instance\n\n```\nUSAGE\n  $ syncano-cli instance:delete INSTANCENAME\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n```\n\n_See code: [src/commands/instance/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/delete.ts)_\n\n## `syncano-cli instance:list`\n\nDelete an instance\n\n```\nUSAGE\n  $ syncano-cli instance:list\n```\n\n_See code: [src/commands/instance/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/list.ts)_\n\n## `syncano-cli login`\n\nLogin to your account\n\n```\nUSAGE\n  $ syncano-cli login\n```\n\n_See code: [src/commands/login.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/login.ts)_\n\n## `syncano-cli logout`\n\nLogin to your account\n\n```\nUSAGE\n  $ syncano-cli logout\n```\n\n_See code: [src/commands/logout.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/logout.ts)_\n\n## `syncano-cli socket:call FULLENDPOINTNAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:call FULLENDPOINTNAME\n\nARGUMENTS\n  FULLENDPOINTNAME  full endpoint name in format: <socket_name>/<endpoint_name>\n\nOPTIONS\n  --body-only\n```\n\n_See code: [src/commands/socket/call.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/call.ts)_\n\n## `syncano-cli socket:compile SOCKETNAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:compile SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/compile.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/compile.ts)_\n\n## `syncano-cli socket:config:config SOCKETNAME`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:config SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n\nALIASES\n  $ syncano-cli socket:config\n```\n\n_See code: [src/commands/socket/config/config.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/config.ts)_\n\n## `syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE\n\nARGUMENTS\n  SOCKETNAME         name of the Socket\n  CONFIGOPTIONNAME   config option name\n  CONFIGOPTIONVALUE  config option value\n```\n\n_See code: [src/commands/socket/config/set.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/set.ts)_\n\n## `syncano-cli socket:config:show SOCKETNAME`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:show SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/config/show.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/show.ts)_\n\n## `syncano-cli socket:create SOCKETNAME`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:create SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  Socket name\n```\n\n_See code: [src/commands/socket/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/create.ts)_\n\n## `syncano-cli socket:deploy [SOCKETNAME]`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:deploy [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  Socket name\n\nOPTIONS\n  --bail\n  --create-instance=create-instance\n  --parallel\n```\n\n_See code: [src/commands/socket/deploy.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/deploy.ts)_\n\n## `syncano-cli socket:hot [SOCKETNAME]`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:hot [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  Socket name\n\nOPTIONS\n  --trace\n```\n\n_See code: [src/commands/socket/hot.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/hot.ts)_\n\n## `syncano-cli socket:list [SOCKETNAME]`\n\nList the installed Sockets\n\n```\nUSAGE\n  $ syncano-cli socket:list [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  name of the Socket (all if not provided)\n\nOPTIONS\n  -f, --full\n```\n\n_See code: [src/commands/socket/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/list.ts)_\n\n## `syncano-cli socket:trace INSTANCENAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:trace INSTANCENAME\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n```\n\n_See code: [src/commands/socket/trace.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/trace.ts)_\n\n## `syncano-cli socket:uninstall SOCKETNAME`\n\nUninstall Socket\n\n```\nUSAGE\n  $ syncano-cli socket:uninstall SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/uninstall.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/uninstall.ts)_\n\n## `syncano-cli sysinfo`\n\nSys info for debug purpose\n\n```\nUSAGE\n  $ syncano-cli sysinfo\n```\n\n_See code: [src/commands/sysinfo.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/sysinfo.ts)_\n<!-- commandsstop -->\n","_id":"@syncano/cli@0.16.0","dist":{"shasum":"bcbcf45115c14ae243c09b9bc474c9c07ac57b8a","integrity":"sha512-Hll+zht5Wrr6D04SLT7FT0JFKIVBG9ohRpSOkPlLBQ0fkNFsJfCZovxNm1T6Tiv9aPF6Bcd/5iME5wdNsLWjGw==","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.0.tgz","fileCount":223,"unpackedSize":517695,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ2fOCRA9TVsSAnZWagAAEJwP/R5poYPcAhfkU0H+ghAF\nSqlF+6sbHBSIc90EUSkyX8N0SguwzW3SqbqkOI96A/8ANFq0iQ9SwypWZDgU\nwxjKraVAVs5TJ0Kn4ZvhhEEYm2+sSw7nTDNeE5XJR0Zork/WR7z7dcLF3IeA\n3xnjDxS30JdVLzT5rG1CCYGmC2uL9V14+njulF1LiZN+m+4bcbd3s2Kikmpn\ntNi/15x/Oue9Fxy3RA7uclQOLe3mn4lhq/cJPjvE7bSxHYNKh20o9/2ohkll\njK5qwo9BP3GWlEkmWKDc0XL51zJhjsc2eudd5RJ/Gil/7zvJnpbxtsqU6Jga\nKx8dUN4uFc3X2j89vp73JjzN1gG9FTtsHK9gyqR3iicNTCZOXkkBt/s5tqUH\nLZjoVh33/LpTI74M3BaiAq8RYWYthOgfOy7rxrQ6q1Csi6YmQHEtKkmxYOHZ\nWi8LcSqbBhnDcdQQipmZxMSgqialtPueVAiADfIn3e5EVb3TS/54pW0Pg97q\nJHBfpgrHrmxH34NWOdtjbj3uiZirFb0NVQW7EYTvXwSED9EhI2Z2T4nf8omZ\n94b+4JSv0meEK5r/wTsmjBFcTw+AeIemWtKTqhOIw6BcfTD74t5s30AL9H3A\nLgXEX/SpApND+/5OtTgUvkby/3Vr0qiLnhyQhl6JE9rEkWDx5kUrKj3NyGLO\niPNQ\r\n=cxOh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiu664n44/ZeYeZGaF6NgJWegeIFFsFeWtwPKRVG1sYAIgGj5VbbXSKym9QV5AURzoDwKOU4EipbK2S+zO3Zu27Ig="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"idered","email":"ideredpl@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.0_1583835086018_0.3560853389415328"},"_hasShrinkwrap":false},"0.16.1":{"name":"@syncano/cli","version":"0.16.1","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 10"},"main":"./lib/cli.js","homepage":"http://syncano.io/","repository":{"type":"git","url":"https://github.com/Syncano/syncano-node.git"},"bin":{"syncano-cli":"bin/run","s":"bin/run"},"oclif":{"commands":"./lib/commands","bin":"syncano-cli","plugins":["@oclif/plugin-help"],"topics":{"socket":{"description":"Manage sockets"}}},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@oclif/command":"^1.5.8","@oclif/config":"^1.10.4","@syncano/core":"0.15.0","@syncano/template-project-empty":"0.13.0","@syncano/template-project-hello":"0.15.0","@syncano/template-socket-es6":"0.15.0","@syncano/template-socket-es6-validate":"0.15.0","@syncano/template-socket-vanilla":"0.15.0","@syncano/validate":"0.15.0","analytics-node":"^3.3.0","archiver":"^3.0.0","axios":"^0.19.0","bluebird":"^3.5.3","chalk":"^2.4.1","chokidar":"^3.3.1","cli-table3":"^0.5.1","create-error":"^0.3.1","debug":"^4.1.1","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.3.3","fs-extra":"^8.0.1","glob":"^7.1.3","inquirer":"^6.3.1","js-yaml":"^3.13.1","klaw-sync":"^6.0.0","listr":"^0.14.2","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.15","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","oclif":"^1.12.8","ora":"^3.4.0","pretty-bytes":"^5.2.0","raven":"^2.6.4","readdirp":"^3.0.2","semver":"^6.1.1","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^5.2.0","tslib":"^1.9.3","validator":"^11.0.0","walkdir":"^0.4.0","ws":"^7.0.0","yargs-parser":"^17.0.0","yauzl":"^2.10.0"},"devDependencies":{"@oclif/dev-cli":"^1.21.0","@oclif/plugin-legacy":"^1.1.3","@oclif/test":"^1.2.2","@oclif/tslint":"^3.1.1","@syncano/test-tools":"0.15.0","@types/archiver":"^3.0.0","@types/bluebird":"^3.5.25","@types/debug":"4.1.4","@types/fs-extra":"^7.0.0","@types/inquirer":"6.0.3","@types/js-yaml":"^3.11.4","@types/klaw-sync":"^6.0.0","@types/lodash":"^4.14.119","@types/md5":"^2.1.33","@types/node":"^12.0.8","@types/ora":"^3.0.0","@types/pretty-bytes":"^5.1.0","@types/raven":"^2.5.1","@types/semver":"^6.0.0","@types/source-map-support":"^0.5.0","@types/strip-ansi":"^5.2.1","@types/validator":"^10.11.1","@types/ws":"^6.0.1","@types/yauzl":"^2.9.1","@types/form-data":"^2.2.1","@types/listr":"^0.14.0","@types/md5-file":"^4.0.0","@types/mkdirp":"^0.5.2","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^6.1.4","mock-fs":"^4.7.0","npm-cli-login":"^0.1.1","nyc":"^14.1.1","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^7.3.2","sinon-test":"^2.4.0","source-map-support":"^0.5.10","standard":"^12.0.1","ts-node":"^8.3.0","tslint":"^5.12.0","typescript":"^3.7.4"},"scripts":{"prepare":"npm run build && yarn oclif-dev manifest","postinstall":"scripts/postinstall || exit 0","build":"tsc","build:watch":"npm run build -- -w","clean":"rm -rf lib/","_unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit":"exit 0","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:commands":"nyc --extension .ts mocha --forbid-only \"test/commands/**/*.test.ts\" --slow 1000","test-selective:commands":"nyc --extension .ts mocha \"test/commands/**/*.test.ts\" --slow 1000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"readmeFilename":"readme.md","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s socket:deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s socket:list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n\n\n# CLI Usage\n<!-- usage -->\n```sh-session\n$ npm install -g @syncano/cli\n$ syncano-cli COMMAND\nrunning command...\n$ syncano-cli (-v|--version|version)\n@syncano/cli/0.15.0 darwin-x64 node-v11.3.0\n$ syncano-cli --help [COMMAND]\nUSAGE\n  $ syncano-cli COMMAND\n...\n```\n<!-- usagestop -->\n# Commands\n<!-- commands -->\n* [`syncano-cli attach`](#syncano-cli-attach)\n* [`syncano-cli backup:create`](#syncano-cli-backupcreate)\n* [`syncano-cli backup:delete [ID]`](#syncano-cli-backupdelete-id)\n* [`syncano-cli backup:last`](#syncano-cli-backuplast)\n* [`syncano-cli backup:list`](#syncano-cli-backuplist)\n* [`syncano-cli help [COMMAND]`](#syncano-cli-help-command)\n* [`syncano-cli hosting:add FOLDER`](#syncano-cli-hostingadd-folder)\n* [`syncano-cli hosting:config HOSTINGNAME`](#syncano-cli-hostingconfig-hostingname)\n* [`syncano-cli hosting:delete HOSTINGNAME`](#syncano-cli-hostingdelete-hostingname)\n* [`syncano-cli hosting:files HOSTINGNAME`](#syncano-cli-hostingfiles-hostingname)\n* [`syncano-cli hosting:list`](#syncano-cli-hostinglist)\n* [`syncano-cli hosting:sync HOSTINGNAME`](#syncano-cli-hostingsync-hostingname)\n* [`syncano-cli info`](#syncano-cli-info)\n* [`syncano-cli init [INSTANCE]`](#syncano-cli-init-instance)\n* [`syncano-cli instance:create INSTANCENAME [LOCATION]`](#syncano-cli-instancecreate-instancename-location)\n* [`syncano-cli instance:delete INSTANCENAME`](#syncano-cli-instancedelete-instancename)\n* [`syncano-cli instance:list`](#syncano-cli-instancelist)\n* [`syncano-cli login`](#syncano-cli-login)\n* [`syncano-cli logout`](#syncano-cli-logout)\n* [`syncano-cli socket:call FULLENDPOINTNAME`](#syncano-cli-socketcall-fullendpointname)\n* [`syncano-cli socket:compile SOCKETNAME`](#syncano-cli-socketcompile-socketname)\n* [`syncano-cli socket:config:config SOCKETNAME`](#syncano-cli-socketconfigconfig-socketname)\n* [`syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE`](#syncano-cli-socketconfigset-socketname-configoptionname-configoptionvalue)\n* [`syncano-cli socket:config:show SOCKETNAME`](#syncano-cli-socketconfigshow-socketname)\n* [`syncano-cli socket:create SOCKETNAME`](#syncano-cli-socketcreate-socketname)\n* [`syncano-cli socket:deploy [SOCKETNAME]`](#syncano-cli-socketdeploy-socketname)\n* [`syncano-cli socket:hot [SOCKETNAME]`](#syncano-cli-sockethot-socketname)\n* [`syncano-cli socket:list [SOCKETNAME]`](#syncano-cli-socketlist-socketname)\n* [`syncano-cli socket:trace INSTANCENAME`](#syncano-cli-sockettrace-instancename)\n* [`syncano-cli socket:uninstall SOCKETNAME`](#syncano-cli-socketuninstall-socketname)\n* [`syncano-cli sysinfo`](#syncano-cli-sysinfo)\n\n## `syncano-cli attach`\n\nInfo about current project/instance/user etc.\n\n```\nUSAGE\n  $ syncano-cli attach\n\nOPTIONS\n  --create-instance=create-instance\n  --instance=instance\n```\n\n_See code: [src/commands/attach.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/attach.ts)_\n\n## `syncano-cli backup:create`\n\nCreate backup\n\n```\nUSAGE\n  $ syncano-cli backup:create\n```\n\n_See code: [src/commands/backup/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/create.ts)_\n\n## `syncano-cli backup:delete [ID]`\n\nDelete backup\n\n```\nUSAGE\n  $ syncano-cli backup:delete [ID]\n\nARGUMENTS\n  ID  Backup ID.\n\nOPTIONS\n  --all\n```\n\n_See code: [src/commands/backup/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/delete.ts)_\n\n## `syncano-cli backup:last`\n\nList last backup\n\n```\nUSAGE\n  $ syncano-cli backup:last\n```\n\n_See code: [src/commands/backup/last.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/last.ts)_\n\n## `syncano-cli backup:list`\n\nList backups\n\n```\nUSAGE\n  $ syncano-cli backup:list\n```\n\n_See code: [src/commands/backup/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/backup/list.ts)_\n\n## `syncano-cli help [COMMAND]`\n\ndisplay help for syncano-cli\n\n```\nUSAGE\n  $ syncano-cli help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v2.1.4/src/commands/help.ts)_\n\n## `syncano-cli hosting:add FOLDER`\n\nAdd hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:add FOLDER\n\nARGUMENTS\n  FOLDER  path to hosting folder\n\nOPTIONS\n  --browser-router-off\n  --browser-router-on\n  --cname=cname\n  --dont-sync\n  --name=name\n  --sync\n  --without-cname\n```\n\n_See code: [src/commands/hosting/add.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/add.ts)_\n\n## `syncano-cli hosting:config HOSTINGNAME`\n\nConfigure hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:config HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to list files from\n\nOPTIONS\n  -c, --cname=cname\n  --[no-]browser-router\n  --dont-sync\n  --remove-cname=remove-cname\n  --sync\n```\n\n_See code: [src/commands/hosting/config.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/config.ts)_\n\n## `syncano-cli hosting:delete HOSTINGNAME`\n\nDelete hosting\n\n```\nUSAGE\n  $ syncano-cli hosting:delete HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to delete\n```\n\n_See code: [src/commands/hosting/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/delete.ts)_\n\n## `syncano-cli hosting:files HOSTINGNAME`\n\nList hostings files\n\n```\nUSAGE\n  $ syncano-cli hosting:files HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to list files from\n```\n\n_See code: [src/commands/hosting/files.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/files.ts)_\n\n## `syncano-cli hosting:list`\n\nList hostings\n\n```\nUSAGE\n  $ syncano-cli hosting:list\n```\n\n_See code: [src/commands/hosting/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/list.ts)_\n\n## `syncano-cli hosting:sync HOSTINGNAME`\n\nList hostings\n\n```\nUSAGE\n  $ syncano-cli hosting:sync HOSTINGNAME\n\nARGUMENTS\n  HOSTINGNAME  name of the hosting to sync (all if not provided)\n\nOPTIONS\n  -d, --delete\n```\n\n_See code: [src/commands/hosting/sync.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/hosting/sync.ts)_\n\n## `syncano-cli info`\n\nInfo about current project/instance/user etc.\n\n```\nUSAGE\n  $ syncano-cli info\n```\n\n_See code: [src/commands/info.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/info.ts)_\n\n## `syncano-cli init [INSTANCE]`\n\nInit Syncano instance\n\n```\nUSAGE\n  $ syncano-cli init [INSTANCE]\n\nARGUMENTS\n  INSTANCE  Instance Name\n```\n\n_See code: [src/commands/init.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/init.ts)_\n\n## `syncano-cli instance:create INSTANCENAME [LOCATION]`\n\nCreate new instance\n\n```\nUSAGE\n  $ syncano-cli instance:create INSTANCENAME [LOCATION]\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n  LOCATION      [default: eu1] name of the location (possible options: us1, eu1)\n```\n\n_See code: [src/commands/instance/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/create.ts)_\n\n## `syncano-cli instance:delete INSTANCENAME`\n\nDelete an instance\n\n```\nUSAGE\n  $ syncano-cli instance:delete INSTANCENAME\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n```\n\n_See code: [src/commands/instance/delete.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/delete.ts)_\n\n## `syncano-cli instance:list`\n\nDelete an instance\n\n```\nUSAGE\n  $ syncano-cli instance:list\n```\n\n_See code: [src/commands/instance/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/instance/list.ts)_\n\n## `syncano-cli login`\n\nLogin to your account\n\n```\nUSAGE\n  $ syncano-cli login\n```\n\n_See code: [src/commands/login.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/login.ts)_\n\n## `syncano-cli logout`\n\nLogin to your account\n\n```\nUSAGE\n  $ syncano-cli logout\n```\n\n_See code: [src/commands/logout.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/logout.ts)_\n\n## `syncano-cli socket:call FULLENDPOINTNAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:call FULLENDPOINTNAME\n\nARGUMENTS\n  FULLENDPOINTNAME  full endpoint name in format: <socket_name>/<endpoint_name>\n\nOPTIONS\n  --body-only\n```\n\n_See code: [src/commands/socket/call.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/call.ts)_\n\n## `syncano-cli socket:compile SOCKETNAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:compile SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/compile.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/compile.ts)_\n\n## `syncano-cli socket:config:config SOCKETNAME`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:config SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n\nALIASES\n  $ syncano-cli socket:config\n```\n\n_See code: [src/commands/socket/config/config.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/config.ts)_\n\n## `syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:set SOCKETNAME CONFIGOPTIONNAME CONFIGOPTIONVALUE\n\nARGUMENTS\n  SOCKETNAME         name of the Socket\n  CONFIGOPTIONNAME   config option name\n  CONFIGOPTIONVALUE  config option value\n```\n\n_See code: [src/commands/socket/config/set.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/set.ts)_\n\n## `syncano-cli socket:config:show SOCKETNAME`\n\nConfigure Socket\n\n```\nUSAGE\n  $ syncano-cli socket:config:show SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/config/show.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/config/show.ts)_\n\n## `syncano-cli socket:create SOCKETNAME`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:create SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  Socket name\n```\n\n_See code: [src/commands/socket/create.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/create.ts)_\n\n## `syncano-cli socket:deploy [SOCKETNAME]`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:deploy [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  Socket name\n\nOPTIONS\n  --bail\n  --create-instance=create-instance\n  --parallel\n```\n\n_See code: [src/commands/socket/deploy.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/deploy.ts)_\n\n## `syncano-cli socket:hot [SOCKETNAME]`\n\nCreate Socket\n\n```\nUSAGE\n  $ syncano-cli socket:hot [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  Socket name\n\nOPTIONS\n  --trace\n```\n\n_See code: [src/commands/socket/hot.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/hot.ts)_\n\n## `syncano-cli socket:list [SOCKETNAME]`\n\nList the installed Sockets\n\n```\nUSAGE\n  $ syncano-cli socket:list [SOCKETNAME]\n\nARGUMENTS\n  SOCKETNAME  name of the Socket (all if not provided)\n\nOPTIONS\n  -f, --full\n```\n\n_See code: [src/commands/socket/list.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/list.ts)_\n\n## `syncano-cli socket:trace INSTANCENAME`\n\nTrace Socket calls\n\n```\nUSAGE\n  $ syncano-cli socket:trace INSTANCENAME\n\nARGUMENTS\n  INSTANCENAME  name of the instance\n```\n\n_See code: [src/commands/socket/trace.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/trace.ts)_\n\n## `syncano-cli socket:uninstall SOCKETNAME`\n\nUninstall Socket\n\n```\nUSAGE\n  $ syncano-cli socket:uninstall SOCKETNAME\n\nARGUMENTS\n  SOCKETNAME  name of the Socket\n```\n\n_See code: [src/commands/socket/uninstall.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/socket/uninstall.ts)_\n\n## `syncano-cli sysinfo`\n\nSys info for debug purpose\n\n```\nUSAGE\n  $ syncano-cli sysinfo\n```\n\n_See code: [src/commands/sysinfo.ts](https://github.com/Syncano/syncano-node/blob/v0.15.0/src/commands/sysinfo.ts)_\n<!-- commandsstop -->\n","_id":"@syncano/cli@0.16.1","dist":{"shasum":"a5a76c1ab0f12e4c16e6ecd0bc3e2e24f7055a83","integrity":"sha512-/I03QANp6md/EboIqstp0yKaN9nMUvrWMQMiYi/F4H68ABCTffbmrM5nXEy1FoCl/Pkjk5FJ+sm5JXUgGb0CjQ==","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.16.1.tgz","fileCount":303,"unpackedSize":932200,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecOSdCRA9TVsSAnZWagAA1zwP/2idaD3rNWmJKw/cQ8ub\nLHauCRKSLHlaLa8aCJJneu29zF20ZcOe1G+LWI+FXy/kPgsf5zycZNloPI8T\nEVF3TQn40HkGT5YG/2tdeeWF/MMMJAIseukh9cnjLVsbOU8RBd7iR60cFCL9\n+kVyKfgBTqhr/gn94f6gSxdB+wlwp2A8Tn23+tQ4k5BqVJj+ylOn8O8hsFBl\nf9A9txK+q+sjPHProZZcNed4C07sKI1C4VvMqKVwijslFB1WQWCf5mW77+J4\nT7xS2v7VMTMENbnVnRFRkS6Zq3COrwPkYwKmjd1Ym7kXR8cZE+cMXQOGNAtr\naZwtdEfHTj7gBqmBGUjMdS6dF7wyZ+MULNf+95/xGtMG32S6gJBmgk962Zot\nNyUuP4Vy8jEl9qorppBf4o4IWjnUJbkwlZ6SvOrxfO6IyXiUENDWa7+vgVw6\nBWJ+BxgHm8hUAIdQOMjeP5zkp4qAylEbaYWzizMfix+uFLJhu2RVhNVP3kut\nCIjMlrauH6wLlZDNY1B+txQxFjXOk5oeYNnOIiOc6NDz4Day130qvc9ALokG\nZx1bX14cGiXOqLZOAXE+RDS25lIRifMpzhxaxMMBbvFdrLpucy9ad+ubMPgK\nvjzbhEUnCodzrywQsYqkcnIXgacHkG1vrqgXT9w+OZc01aGpB1bq+05HK9Xj\nKUHw\r\n=6tzD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGLwtSt4426M+YUDUCHeT8HE88rWTkIgwBToS/MprOhWAiAgbktwg8OFI+gK3UvYyqKavbAEUSGU8H715pAqdLceLg=="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"idered","email":"ideredpl@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.16.1_1584456861148_0.19830154312895565"},"_hasShrinkwrap":false},"0.15.1-alpha.39":{"name":"@syncano/cli","version":"0.15.1-alpha.39","description":"Command Line Interface for Syncano","author":{"name":"Maciej Kucharz"},"license":"MIT","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"engines":{"node":">= 8.9.0"},"main":"./lib/cli.js","homepage":"http://syncano.io","repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"bin":{"s":"lib/cli.js","syncano-cli":"lib/cli.js","syncano-cli-hosting":"lib/cli-hosting.js","syncano-cli-backup":"lib/cli-backup.js","syncano-cli-instance":"lib/cli-instance.js","s-hosting":"lib/cli-hosting.js","s-backup":"lib/cli-backup.js","s-instance":"lib/cli-instance.js"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"dependencies":{"@syncano/core":"0.15.0","@syncano/template-project-empty":"0.15.1-alpha.39+340a896","@syncano/template-project-hello":"0.15.1-alpha.39+340a896","@syncano/template-socket-es6":"0.15.1-alpha.39+340a896","@syncano/template-socket-es6-validate":"0.15.1-alpha.39+340a896","@syncano/template-socket-vanilla":"0.15.1-alpha.39+340a896","@syncano/validate":"0.15.1-alpha.39+340a896","analytics-node":"^3.1.1","archiver":"^2.1.0","axios":"^0.18.0","bluebird":"^3.5.3","chalk":"^2.4.1","cli-table3":"^0.5.1","commander":"^2.19.0","create-error":"^0.3.1","debug":"^4.1.0","es6-template-strings":"^2.0.1","find-key":"^2.1.3","form-data":"^2.5.1","fs-extra":"^5.0.0","glob":"^7.1.3","inquirer":"^5.0.1","js-yaml":"^3.12.0","klaw-sync":"^3.0.2","listr":"^0.14.3","listr-verbose-renderer":"^0.5.0","lodash":"^4.17.11","md5":"^2.2.1","md5-file":"^4.0.0","mkdirp":"^0.5.1","node-dir":"^0.1.17","node-walkup":"^1.1.1","ora":"^1.3.0","pretty-bytes":"^4.0.2","raven":"^2.6.4","readdirp":"^2.2.1","semver":"^5.6.0","source-map":"^0.7.3","stack-trace":"0.0.10","strip-ansi":"^4.0.0","unzip2":"^0.2.5","validator":"^9.1.2","walkdir":"0.0.12","watchr":"^4.0.1","ws":"^4.0.0","yauzl":"^2.10.0"},"devDependencies":{"@syncano/test-tools":"0.15.1-alpha.39+340a896","babel-cli":"^6.26.0","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dynamic-import-node":"^1.0.2","babel-plugin-extensible-destructuring":"^4.1.0","babel-plugin-istanbul":"^4.1.5","babel-plugin-syntax-async-functions":"^6.13.0","babel-plugin-syntax-object-rest-spread":"^6.13.0","babel-plugin-transform-async-to-generator":"^6.24.1","babel-plugin-transform-class-properties":"^6.24.1","babel-plugin-transform-decorators-legacy":"^1.3.5","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","babel-plugin-transform-regenerator":"^6.26.0","babel-preset-env":"^1.7.0","babel-register":"^6.26.0","chai":"^4.2.0","chai-as-promised":"^7.1.1","console.mute":"^0.3.0","dirty-chai":"^2.0.1","mocha":"^5.2.0","mock-fs":"^4.7.0","npm-cli-login":"^0.0.10","prettier":"^1.15.2","replace":"^1.0.0","rimraf":"^2.6.2","sinon":"^4.1.3","sinon-test":"^2.4.0","standard":"^11.0.1"},"scripts":{"prepare":"npm run build","postinstall":"scripts/postinstall || exit 0","build":"npx babel src -d lib/ --copy-files --ignore *.test.js,*.test-e2e.js --source-maps","build:watch":"npm run build -- -w","clean":"rm -rf lib/","unit":"mocha 'tests/unit/*.test.js' --require babel-register","unit:watch":"npm run unit -- -w","test":"concurrently \"npm:test:unit\" \"npm:test:e2e:group:*\"","test:e2e:init":"npm run test:e2e-single tests/e2e/init.test-e2e.js","test:e2e:anonymous":"npm run test:e2e-single tests/e2e/anonymous.test-e2e.js","test:e2e:deploy":"npm run test:e2e-single tests/e2e/deploy.test-e2e.js","test:e2e:config":"npm run test:e2e-single tests/e2e/config.test-e2e.js","test:e2e:registry":"npm run test:e2e-single tests/e2e/registry.test-e2e.js","test:e2e:hosting":"npm run test:e2e-single tests/e2e/hosting.test-e2e.js","test:e2e:socket":"npm run test:e2e-single tests/e2e/socket.test-e2e.js","test:e2e:instance":"npm run test:e2e-single tests/e2e/instance.test-e2e.js","test:e2e-single":"mocha --require babel-register --timeout 100000 --slow 8000","test:unit":"npm run unit","lint":"standard --fix --env mocha","format":"prettier --write --single-quote --no-semi --no-bracket-spacing *.js {src,test}/**/*.js"},"publishConfig":{"access":"public"},"babel":{"plugins":["add-module-exports","transform-async-to-generator","transform-object-rest-spread"],"presets":[["env",{"targets":{"node":"8"}}]]},"gitHead":"340a8963a6aa7b3fbdf0e0378d890e0e359082a5","readme":"# Installation\n\nTo start using Syncano with your project follow the steps:\n\n## Install the Syncano CLI in your project\n\nThe `syncano-cli` is the main tool for setting up and managing your projects on the Syncano Platform. To install it, run:\n\n```sh\n$ npm install @syncano/cli --save-dev\n```\n\n## Sign up and create a project\nOnce the Syncano CLI is installed you need to sign up for an account. Run the following command in the root directory of your project:\n\n```sh\n$ npx s init\n```\n\n> `s` is an alias to `syncano-cli` - you can simply type `syncano-cli`\n> e.g. `npx syncano-cli init`\n\nYou'll be asked for an `email` and `password` so that we can create an account for you.\nYou'll also be prompted for a project template. Choose the recommended `Hello World` template and press enter.\n\n## Deploy your project\n\nNow it's time to deploy your app to the cloud. To do this, run the following command:\n\n```sh\nnpx s deploy\n```\n\n## Ok, but What has just happened!?\n\nYou've just deployed you first Syncano backend. Now you can verify what kind of endpoints you can reach on the backend side:\n\n```sh\nnpx s list\n```\n\nTry to call endpoints using browser or any HTTP Client.\n\nThat's `it`! If you have any questions, join our [Spectrum community space](https://spectrum.chat/syncano). Happy coding!\n","readmeFilename":"readme.md","_id":"@syncano/cli@0.15.1-alpha.39","_nodeVersion":"12.16.2","_npmVersion":"lerna/3.8.5/node@v12.16.2+x64 (linux)","dist":{"integrity":"sha512-jvL8H629gniFRgYqSGarWZ/3NrKsEvNb0uG65XKK+9UWkiuHJ3i6vuwhwzp4qI215A7Yizxd2WLJy4JZzwvO4w==","shasum":"b82bd2d0627d5006013ba6567f4e391b2b2a91b9","tarball":"https://registry.npmjs.org/@syncano/cli/-/cli-0.15.1-alpha.39.tgz","fileCount":181,"unpackedSize":815402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqoyrCRA9TVsSAnZWagAA/30P/AuntqgdMKaWaTnNOopU\ns23uzFotNG+ssLtbTg5MSn8Y2XRdq9WH/hRIAdLIkVBgCuHetY/qaE0HJy+X\nZIG3qr+Jd0tfaarNy49Y6YS3u5XvRid2TPftiMhsN+5EJOQzIz09+78rFgYP\nkkYWOGDIR0SndapvyFeqc3pQk+fMKqyKYms8TQco/J2JZcuCxRGCZiNzOnwA\nfZC4615dth+ijL5Y7Iyp9A64m81pQGKXBw4MGUmt/Umyl/e24NvEXi6uDWwQ\nCkjp8uKFecZWWvpJ6EhfoaA+ANH6weK3SPo3BnwWRjb4P7q80OtkMMVWBv02\n+GM3dUi22YWTLKNbyuCEzwGw8+WMOjbn/nP8OWTYZ8skSH/eJQMk4PlmLFBp\nyn5/FimkWxg2oznk4SVn9Ot/YJ8f19mkT5UkVj+I1J/yPmfaKb7nPEn/ynB/\nFMpXZklx58m6ZUuXJiN8RDbAFicnDVTQNaplvKMC9LTd0HXzr6wmSJqH3yHM\nxRW7sIQ+v7GC2O2rMGeq2LKsFWHYZTcijsJQVuOfbajTk+n/IQYQQdGKPbkH\nbET6i2W8dKJlB8ZvueobnVyR5erExHamxx0kkwvG93Y+JwfBCmcq0Vl9ESRf\nrd8jS+BYAZuJY0RjNaTWRoGrrZN5pnMO0do/TuH6YLJ+/tNU8ztwIL9geg40\n78Dw\r\n=V3hX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTg3BozYTXgla0Ssrr4mGSgPhlabIsouAkUQP4YE4zBQIgHBdJLC2TNT9ktePQvxfQrGDb2MZF6nUQMuK6y18UbWs="}]},"maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"_npmUser":{"name":"syncano-devops","email":"devops@syncano.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cli_0.15.1-alpha.39_1588235434726_0.8222106652757624"},"_hasShrinkwrap":false}},"readme":"","maintainers":[{"email":"ideredpl@gmail.com","name":"idered"},{"email":"maciejkorsan@gmail.com","name":"maciejkorsan"},{"email":"maciej@kucharz.net","name":"qk"},{"email":"devops@syncano.com","name":"syncano-devops"}],"time":{"modified":"2022-04-07T03:43:09.788Z","created":"2017-11-02T15:49:01.136Z","0.4.1":"2017-11-02T15:49:01.136Z","0.5.0-beta.50b44371":"2017-11-02T15:54:37.550Z","0.5.0-beta.c378b7ec":"2017-11-02T16:00:29.425Z","0.5.0-beta.a7521869":"2017-11-02T16:07:42.889Z","0.5.0-beta.03f8df92":"2017-11-02T16:09:27.753Z","0.5.0-alpha.03f8df92":"2017-11-02T16:14:27.138Z","0.5.0-alpha.39e94358":"2017-11-30T19:38:40.493Z","0.5.0-alpha.79ba762e":"2017-11-30T20:45:44.180Z","0.5.0-alpha.d182f18f":"2017-11-30T21:04:07.459Z","0.4.2":"2017-11-30T21:14:38.389Z","0.5.0-alpha.a076ec11":"2017-12-06T12:38:18.046Z","0.5.0-alpha.cde14fe6":"2017-12-18T13:19:12.511Z","0.5.0-alpha.48b44a0c":"2017-12-18T13:21:40.286Z","0.5.0-alpha.c2539f93":"2017-12-18T13:25:23.572Z","0.5.0-alpha.41f044b5":"2017-12-18T13:31:47.259Z","0.5.0-alpha.722d28f8":"2017-12-18T13:39:03.236Z","0.5.0-alpha.e8bf6933":"2017-12-18T13:43:17.261Z","0.5.0-alpha.5e1fbdcb":"2017-12-18T13:45:29.137Z","0.5.0-alpha.2e9f9015":"2017-12-18T13:50:06.856Z","0.5.0-alpha.933b4fdc":"2017-12-18T13:58:44.867Z","0.5.0-alpha.53318990":"2017-12-18T14:04:08.144Z","0.5.0-alpha.3330c546":"2017-12-18T14:07:59.914Z","0.5.0-alpha.60575c35":"2017-12-18T14:26:15.933Z","0.5.0-alpha.965f41b0":"2017-12-18T14:39:44.098Z","0.5.0-alpha.ee20c323":"2017-12-18T14:44:33.497Z","0.5.0-alpha.6956f85e":"2017-12-18T15:41:19.711Z","0.5.0-alpha.48815720":"2017-12-18T15:46:54.697Z","0.5.0-alpha.709a18ec":"2017-12-21T10:06:23.399Z","0.5.0-alpha.c072c957":"2017-12-21T13:01:41.541Z","0.5.0-alpha.2f99aafc":"2017-12-21T16:24:04.744Z","0.5.0-alpha.3826181c":"2017-12-22T16:34:05.784Z","0.5.0-alpha.33f0bc17":"2017-12-22T18:52:55.504Z","0.5.0-alpha.3f3e36c6":"2017-12-22T19:04:21.615Z","0.5.0-alpha.1220deec":"2017-12-22T19:41:18.234Z","0.5.0-alpha.53f9fe8b":"2017-12-22T20:04:06.337Z","0.5.0-alpha.2330b486":"2017-12-22T20:14:36.491Z","0.5.0-alpha.72732d8e":"2017-12-23T23:14:13.737Z","0.5.0-alpha.152552e2":"2017-12-24T00:57:02.621Z","0.5.0-alpha.1716b815":"2017-12-24T01:04:40.281Z","0.5.0-alpha.ddcf593d":"2017-12-24T01:22:24.330Z","0.5.0-alpha.a8256861":"2017-12-24T01:29:15.468Z","0.5.0-alpha.bdff585d":"2017-12-24T01:45:22.687Z","0.5.0-alpha.1da7caf5":"2017-12-24T01:56:54.963Z","0.5.0-alpha.9f09613a":"2017-12-24T02:03:54.655Z","0.5.0-alpha.baa9dfc8":"2017-12-24T02:22:12.195Z","0.5.0-alpha.335842e9":"2017-12-24T12:10:14.604Z","0.5.0-alpha.a5462749":"2017-12-24T13:18:01.685Z","0.5.0-alpha.4816133a":"2017-12-24T13:28:58.864Z","0.5.0-alpha.ba656860":"2017-12-27T14:31:22.619Z","0.5.0-alpha.66f17ee7":"2017-12-27T14:53:33.584Z","0.5.0-alpha.258e41bd":"2017-12-27T18:16:49.529Z","0.5.0-alpha.9d274a2e":"2017-12-29T16:11:01.995Z","0.5.0-alpha.aa26f0db":"2017-12-29T16:32:26.411Z","0.5.0-alpha.4581c2fd":"2018-01-03T00:03:58.411Z","0.5.0-alpha.8f8b83d9":"2018-01-16T09:51:09.919Z","0.5.0-alpha.9276fe1d":"2018-01-16T11:00:30.813Z","0.6.0":"2018-01-16T16:01:02.271Z","0.7.0-alpha.429764c6":"2018-01-16T16:02:08.498Z","0.5.0-alpha.f1d42f54":"2018-01-19T15:41:38.078Z","0.7.0-alpha.01ce9261":"2018-01-20T17:22:49.445Z","0.7.0-alpha.6546cb36":"2018-01-20T17:37:15.075Z","0.7.0-alpha.f88dffb0":"2018-01-20T18:21:58.400Z","0.7.0-alpha.f410f5a7":"2018-01-20T18:50:30.650Z","0.7.0-alpha.042cee04":"2018-01-20T19:14:29.173Z","0.7.0-alpha.27fbd033":"2018-01-20T19:28:48.252Z","0.7.0-alpha.16507787":"2018-01-21T10:53:24.268Z","0.7.0-alpha.6b8806c0":"2018-01-21T18:58:53.007Z","0.7.0-alpha.4c80f042":"2018-01-21T19:04:30.169Z","0.7.0-alpha.0ab3e67a":"2018-01-23T08:42:06.985Z","0.7.0-alpha.da13b802":"2018-01-23T21:41:33.676Z","0.7.0-alpha.267fa910":"2018-01-23T23:30:45.607Z","0.7.0-alpha.498bff4f":"2018-01-23T23:31:37.330Z","0.7.0-alpha.b96f0eef":"2018-01-24T15:36:08.208Z","0.7.0":"2018-01-24T15:47:20.073Z","0.8.0-alpha.d2bc3ba5":"2018-01-28T00:43:40.272Z","0.8.0-alpha.e064d02b":"2018-01-28T01:01:48.771Z","0.7.1":"2018-01-28T09:40:29.672Z","0.8.0-alpha.b0899865":"2018-01-28T13:53:46.927Z","0.8.0-alpha.7947c09f":"2018-01-28T17:19:34.390Z","0.8.0-alpha.15429c2e":"2018-01-28T19:22:45.877Z","0.8.0-alpha.c2a71d2f":"2018-01-28T23:12:07.901Z","0.8.0-alpha.9ce6c5a0":"2018-01-29T00:34:31.292Z","0.8.0-alpha.9ec7c4f0":"2018-01-30T08:23:20.816Z","0.8.0-alpha.9ba61165":"2018-01-30T10:32:33.484Z","0.8.0-alpha.946ac619":"2018-01-31T09:16:46.161Z","0.8.0-alpha.9c1feacb":"2018-01-31T10:44:42.922Z","0.8.0-alpha.2209de52":"2018-01-31T10:52:37.186Z","0.8.0-alpha.617377ac":"2018-01-31T11:45:23.557Z","0.8.0-alpha.e3718bbd":"2018-02-02T09:11:38.302Z","0.8.0-alpha.70ad5b82":"2018-02-02T09:12:25.131Z","0.8.0-alpha.b301bf3d":"2018-02-02T11:16:59.105Z","0.8.0-alpha.d78b1ca5":"2018-02-04T14:18:10.744Z","0.8.0-alpha.8d8efab4":"2018-02-06T09:22:43.650Z","0.8.0-alpha.b8d4214e":"2018-02-09T11:27:34.523Z","0.8.0-alpha.57263ee7":"2018-02-09T11:56:26.878Z","0.8.0-alpha.cacb2c22":"2018-02-09T12:08:11.401Z","0.8.0-alpha.c4ff73db":"2018-02-09T12:14:28.001Z","0.8.0-alpha.53482fd9":"2018-02-09T12:42:55.815Z","0.8.0":"2018-02-09T13:00:03.905Z","0.9.0-alpha.775dff2c":"2018-02-12T13:36:52.760Z","0.9.0-alpha.eec5256b":"2018-02-13T00:16:58.400Z","0.9.0-alpha.c0295527":"2018-02-13T07:30:36.405Z","0.9.0-alpha.0c8678bb":"2018-02-13T23:20:29.903Z","0.9.0-alpha.83c48293":"2018-02-14T09:06:09.621Z","0.9.0-alpha.ad9d0189":"2018-02-14T09:46:00.189Z","0.9.0-alpha.7454cfea":"2018-02-14T10:04:31.840Z","0.9.0-alpha.3df664f0":"2018-02-14T10:59:14.798Z","0.9.0-alpha.136f03a2":"2018-02-14T11:27:18.220Z","0.9.0-alpha.0cb54944":"2018-02-14T11:55:23.343Z","0.9.0-alpha.e6a8aae4":"2018-02-14T14:14:24.575Z","0.9.0-alpha.a6cfda17":"2018-02-14T15:33:51.234Z","0.9.0-alpha.726c0aa1":"2018-02-15T21:12:30.706Z","0.9.0-alpha.b41abc92":"2018-02-15T21:22:12.862Z","0.9.0-alpha.0b472417":"2018-02-15T21:45:21.926Z","0.9.0-alpha.0134f64c":"2018-02-16T00:23:15.067Z","0.9.0-alpha.c35a41ac":"2018-02-16T00:31:54.229Z","0.9.0-alpha.85a10c7b":"2018-02-16T13:29:20.142Z","0.9.0-alpha.2029cd35":"2018-02-16T17:44:01.462Z","0.9.0-alpha.ba067380":"2018-02-17T09:23:03.158Z","0.9.0-alpha.21374650":"2018-02-18T12:04:04.325Z","0.9.3":"2018-02-19T15:59:47.613Z","0.10.0-alpha.2119ed73":"2018-02-19T16:00:04.122Z","0.10.0-alpha.07e04ec6":"2018-02-19T16:07:57.280Z","0.10.0-alpha.d7d1aa81":"2018-02-19T17:25:45.744Z","0.10.0-alpha.f21aa8b8":"2018-02-19T18:20:16.025Z","0.10.0-alpha.a070e6d0":"2018-02-26T13:17:45.425Z","0.10.0-alpha.a802431a":"2018-02-26T13:42:04.497Z","0.10.0-alpha.ada8c669":"2018-02-26T20:59:57.065Z","0.10.0-alpha.cf8ad30e":"2018-03-08T12:52:15.259Z","0.10.0-alpha.6f499666":"2018-03-08T15:35:40.788Z","0.10.0":"2018-03-08T18:48:54.843Z","0.11.0-alpha.2a1bf79e":"2018-03-08T19:43:44.477Z","0.11.0-alpha.341516bc":"2018-03-08T23:18:25.357Z","0.11.0-alpha.370a2ccf":"2018-03-08T23:44:29.087Z","0.11.0-alpha.154d2634":"2018-03-09T10:08:36.805Z","0.11.0-alpha.e3741f53":"2018-03-09T19:32:18.737Z","0.11.0-alpha.4f8885a3":"2018-03-11T21:15:14.746Z","0.11.0-alpha.8d01cc73":"2018-03-16T21:11:45.815Z","0.11.0-alpha.0bde1d63":"2018-03-16T21:33:43.609Z","0.11.0":"2018-03-17T08:06:25.837Z","0.12.0-alpha.19aefbd7":"2018-03-17T08:31:37.917Z","0.12.0-alpha.0e863359":"2018-03-17T14:04:31.097Z","0.12.0-alpha.000fcc90":"2018-03-17T15:21:51.067Z","0.12.0-alpha.a517577a":"2018-03-20T12:21:42.766Z","0.12.0-alpha.cb34c83f":"2018-03-23T15:33:22.447Z","0.12.0-alpha.7c8a6d7f":"2018-03-30T11:55:05.024Z","0.12.0-alpha.03ec3e0b":"2018-04-01T19:31:32.221Z","0.12.0-alpha.2a64d24d":"2018-04-07T11:00:36.643Z","0.11.1":"2018-04-07T18:44:46.693Z","0.12.0-alpha.09bf62a4":"2018-04-07T18:59:05.381Z","0.12.0-alpha.a5ba8348":"2018-04-08T00:16:55.829Z","0.12.0":"2018-04-08T08:18:32.618Z","0.13.0-alpha.07ffc634":"2018-04-08T08:23:33.818Z","0.13.0-alpha.6ff10785":"2018-04-08T08:42:23.818Z","0.12.1":"2018-04-08T08:48:03.160Z","0.13.0-alpha.25c0126d":"2018-04-08T08:52:11.121Z","0.13.0-alpha.55234bd3":"2018-04-09T10:59:41.765Z","0.13.0-alpha.bf870b44":"2018-04-16T17:40:13.115Z","0.13.0-alpha.28a27a7f":"2018-04-19T04:47:47.264Z","0.13.0-alpha.565727d1":"2018-04-27T12:24:24.863Z","0.13.0-alpha.8370376d":"2018-04-27T13:14:45.347Z","0.13.0-alpha.8749f817":"2018-04-27T13:50:25.175Z","0.13.0-alpha.915742d5":"2018-04-27T13:57:12.030Z","0.13.0-alpha.eab41488":"2018-05-08T12:34:08.193Z","0.13.0-alpha.38bab7cc":"2018-05-09T09:47:50.470Z","0.13.0-alpha.629048f0":"2018-05-09T12:33:13.600Z","0.13.0-alpha.f7fbe757":"2018-05-25T18:22:19.761Z","0.13.0-alpha.f6ea95d4":"2018-05-25T19:50:49.910Z","0.13.0-alpha.1858e543":"2018-06-19T08:07:08.682Z","0.13.0-alpha.e30b9db3":"2018-06-20T08:33:18.373Z","0.13.0-alpha.f522e067":"2018-07-20T13:53:03.593Z","0.13.0-alpha.47de14f2":"2018-07-20T14:18:38.002Z","0.13.0-alpha.644bdedd":"2018-07-20T15:00:31.509Z","0.13.0-alpha.b1bef4c8":"2018-07-20T15:07:37.420Z","0.13.0-alpha.366a5b98":"2018-07-23T20:36:34.764Z","0.13.0-alpha.1366cb77":"2018-07-27T08:39:36.331Z","0.13.0-alpha.e625a06e":"2018-07-30T18:07:15.268Z","0.13.0-alpha.4d352111":"2018-08-04T14:29:04.849Z","0.13.0-alpha.a6dc7535":"2018-08-14T12:50:28.552Z","0.13.0-alpha.21599727":"2018-08-20T21:24:53.788Z","0.13.0-alpha.a1ad49a3":"2018-08-20T21:40:51.383Z","0.13.0-alpha.2ca5a68a":"2018-08-21T09:32:07.324Z","0.13.0-alpha.a7f34cdb":"2018-08-22T07:57:28.346Z","0.13.0-alpha.e00ac5d0":"2018-08-22T09:01:47.524Z","0.13.0-alpha.d88959a4":"2018-08-31T09:18:15.541Z","0.13.0-alpha.cad2ab63":"2018-08-31T09:44:06.511Z","0.13.0-alpha.f4705a94":"2018-08-31T12:08:56.666Z","0.13.0-alpha.876ee104":"2018-09-01T17:17:40.343Z","0.13.0-alpha.951da2cd":"2018-09-03T19:54:24.076Z","0.13.0-alpha.19e3d1e4":"2018-09-06T12:33:05.545Z","0.13.0":"2018-09-06T14:36:33.255Z","0.14.0-alpha.aa5b01a0":"2018-09-06T14:41:58.465Z","0.14.0-alpha.5d7d2343":"2018-09-11T05:21:01.158Z","0.14.0-alpha.f1f17e3c":"2018-09-11T14:57:28.930Z","0.14.0-alpha.3ca5bdd5":"2018-09-17T12:19:48.846Z","0.14.0-alpha.4e206253":"2018-09-20T13:02:17.104Z","0.14.0-alpha.55265cbc":"2018-09-22T21:50:29.429Z","0.14.0-alpha.77beab3c":"2018-10-01T21:25:30.349Z","0.14.0-alpha.ee70f092":"2018-10-11T19:39:02.268Z","0.14.0-alpha.724de65b":"2018-10-13T22:31:59.989Z","0.14.0-alpha.c588fc04":"2018-10-14T15:18:29.532Z","0.14.0-alpha.ec29ed61":"2018-10-14T16:53:50.019Z","0.14.0-alpha.08c691ab":"2018-10-14T17:06:30.757Z","0.14.0-alpha.138edcee":"2018-10-24T14:12:00.215Z","0.14.0-alpha.3d64ebcf":"2018-10-25T07:12:20.305Z","0.14.0-alpha.a439aaed":"2018-10-25T08:03:46.681Z","0.14.0-alpha.80e949e7":"2018-10-25T08:26:57.028Z","0.14.0-alpha.49c4ac2a":"2018-10-25T08:27:04.357Z","0.14.0-alpha.fd376596":"2018-10-25T08:28:04.520Z","0.14.0-alpha.59c5946e":"2018-10-25T14:00:04.307Z","0.14.0-alpha.64bd75a9":"2018-10-25T14:06:22.753Z","0.14.0-alpha.0365b401":"2018-10-25T14:13:43.234Z","0.14.0-alpha.93743b60":"2018-10-25T14:20:52.737Z","0.14.0-alpha.0b43a6dd":"2018-10-25T14:21:22.556Z","0.14.0-alpha.715db1c5":"2018-10-25T18:15:10.078Z","0.14.0-alpha.21070c90":"2018-10-25T18:55:13.259Z","0.14.0-alpha.388c37af":"2018-10-25T18:57:47.695Z","0.14.0-alpha.c413291f":"2018-10-25T21:39:24.068Z","0.14.0-alpha.ad38f177":"2018-10-26T08:08:39.278Z","0.14.0-alpha.44f130b9":"2018-10-26T08:24:46.454Z","0.14.0-alpha.02d355a3":"2018-10-26T08:28:22.298Z","0.14.0-alpha.374c2694":"2018-10-26T08:51:17.516Z","0.14.0-alpha.18dcf303":"2018-10-26T10:44:01.365Z","0.14.0-alpha.68bd63a6":"2018-10-27T20:49:56.166Z","0.14.0-alpha.39a50714":"2018-10-27T21:09:25.809Z","0.14.0":"2018-10-27T21:17:13.133Z","0.15.0-alpha.3caaaeb7":"2018-10-27T21:29:13.862Z","0.15.0-alpha.cacefa6d":"2018-10-30T09:48:14.572Z","0.15.0-alpha.0623427a":"2018-10-30T12:09:29.651Z","0.15.0-alpha.9ff9a2c0":"2018-10-31T08:33:17.661Z","0.15.0-alpha.eb87735c":"2018-10-31T09:03:29.453Z","0.15.0-alpha.00549f11":"2018-11-02T09:39:10.368Z","0.15.0-alpha.871d9f11":"2018-11-02T10:08:40.295Z","0.15.0-alpha.59d56d06":"2018-11-05T10:08:23.492Z","0.15.0-alpha.0727a17e":"2018-11-05T10:17:25.378Z","0.15.0-alpha.0d3f4b82":"2018-11-06T11:25:22.100Z","0.15.0-alpha.72f83bba":"2018-11-08T09:05:53.543Z","0.15.0-alpha.95270cec":"2018-11-15T11:36:51.482Z","0.15.0-alpha.a4339471":"2018-11-16T14:15:40.908Z","0.15.0-alpha.3040ae7c":"2018-11-16T15:51:31.982Z","0.15.0-alpha.2efe58d4":"2018-11-17T22:28:27.251Z","0.15.0-alpha.ca690862":"2018-11-17T22:29:28.508Z","0.15.0-alpha.dbe50f90":"2018-11-19T20:16:16.740Z","0.15.0-alpha.d78b5d4f":"2018-11-20T23:00:47.757Z","0.15.0-alpha.69bfd854":"2018-11-20T23:14:56.791Z","0.15.0-alpha.27be2902":"2018-11-20T23:24:42.665Z","0.15.0-alpha.63afc4df":"2018-11-20T23:58:43.432Z","0.15.0-alpha.d433e023":"2018-11-20T23:59:55.078Z","0.15.0-alpha.ac22ddfc":"2018-11-21T00:23:42.770Z","0.15.0-alpha.48d0a1e1":"2018-11-21T00:34:31.942Z","0.15.0-alpha.cc288a4b":"2018-11-21T00:58:07.633Z","0.15.0-alpha.9c3b0a84":"2018-11-26T14:38:10.035Z","0.15.0-alpha.03ca347a":"2018-11-27T17:44:20.638Z","0.15.0-alpha.e76e6594":"2018-11-27T23:54:51.400Z","0.15.0-alpha.9ed71f12":"2018-11-28T08:49:30.884Z","0.15.0-alpha.2dc429e1":"2018-11-30T08:47:23.112Z","0.15.0":"2018-11-30T08:50:06.150Z","0.16.0-alpha.9187aacd":"2018-11-30T08:54:24.906Z","0.16.0-alpha.712d58c9":"2018-11-30T09:28:49.340Z","0.16.0-alpha.d11174bb":"2018-11-30T09:33:38.182Z","0.16.0-alpha.d218f2c5":"2018-11-30T09:34:16.848Z","0.16.0-alpha.502a643c":"2018-12-05T20:26:48.921Z","0.16.0-alpha.170f6390":"2018-12-05T22:29:25.585Z","0.16.0-alpha.e59ea94f":"2018-12-11T10:06:37.944Z","0.16.0-alpha.5b416f2a":"2018-12-13T10:52:05.199Z","0.16.0-alpha.5bf8c834":"2018-12-13T10:57:58.615Z","0.16.0-alpha.c8054e23":"2018-12-13T14:20:12.972Z","0.16.0-alpha.757cc82f":"2018-12-14T14:52:06.665Z","0.16.0-alpha.347df5d9":"2018-12-14T15:23:25.955Z","0.16.0-alpha.1b061bb0":"2018-12-17T20:09:10.530Z","0.16.0-alpha.489881ea":"2018-12-18T13:09:16.152Z","0.16.0-alpha.597338dc":"2018-12-18T13:35:55.103Z","0.16.0-alpha.51021336":"2018-12-18T14:37:13.171Z","0.16.0-alpha.53baf816":"2018-12-20T09:11:26.582Z","0.16.0-alpha.6f9c2368":"2018-12-21T15:37:14.847Z","0.16.0-alpha.09656f7d":"2018-12-27T14:39:41.086Z","0.16.0-alpha.063ae9fd":"2018-12-29T18:28:07.519Z","0.16.0-alpha.7e24cb04":"2018-12-29T21:31:27.915Z","0.16.0-alpha.4f0fcbf6":"2018-12-31T13:29:33.690Z","0.16.0-alpha.820349fa":"2019-01-02T15:07:16.991Z","0.16.0-alpha.9825315b":"2019-01-02T15:39:15.774Z","0.16.0-alpha.3fa2c49b":"2019-01-03T16:07:49.661Z","0.16.0-alpha.01b78f3f":"2019-03-12T14:05:14.781Z","0.16.0-alpha.f1006ff8":"2019-03-13T13:58:48.029Z","0.16.0-alpha.0d85dd34":"2019-04-25T15:31:20.898Z","0.15.1-alpha.29":"2019-10-25T08:07:55.687Z","0.15.1-alpha.32":"2019-10-28T13:41:09.813Z","0.15.1-alpha.34":"2019-11-05T12:37:29.975Z","0.15.1-alpha.35":"2020-01-23T10:36:19.813Z","0.15.1-alpha.36":"2020-01-24T10:55:33.975Z","0.15.1-alpha.37":"2020-02-05T13:57:31.783Z","0.16.0":"2020-03-10T10:11:26.175Z","0.16.1":"2020-03-17T14:54:21.378Z","0.15.1-alpha.39":"2020-04-30T08:30:34.941Z"},"homepage":"http://syncano.io","keywords":["syncano","baas","frontend","backend for react","javascript backend","backend as a service","serverless","serverless framework","serverless applications","serverless solutions"],"repository":{"type":"git","url":"git+https://github.com/Syncano/syncano-node.git"},"author":{"name":"Maciej Kucharz"},"bugs":{"url":"https://github.com/Syncano/syncano-node/issues"},"license":"MIT","readmeFilename":""}