169 lines
5.5 KiB
JSON
169 lines
5.5 KiB
JSON
{
|
|
"name": "pinafore",
|
|
"description": "Alternative web client for Mastodon",
|
|
"version": "0.5.0",
|
|
"scripts": {
|
|
"lint": "standard && standard --plugin html 'routes/**/*.html'",
|
|
"lint-fix": "standard --fix && standard --fix --plugin html 'routes/**/*.html'",
|
|
"dev": "run-s build-svg build-inline-script serve-dev",
|
|
"serve-dev": "run-p --race build-sass-watch serve",
|
|
"serve": "node server.js",
|
|
"build": "cross-env NODE_ENV=production run-s globalize-css build-sass build-svg build-inline-script sapper-build deglobalize-css",
|
|
"sapper-build": "cross-env NODE_ENV=production sapper build",
|
|
"start": "cross-env NODE_ENV=production node server.js",
|
|
"build-and-start": "run-s build start",
|
|
"build-svg": "node ./bin/build-svg.js",
|
|
"build-inline-script": "node ./bin/build-inline-script.js",
|
|
"build-sass": "node ./bin/build-sass.js",
|
|
"build-sass-watch": "node ./bin/build-sass.js --watch",
|
|
"run-mastodon": "node -r esm ./bin/run-mastodon.js",
|
|
"run-testcafe": "cross-env-shell testcafe --hostname localhost --skip-js-errors $BROWSER tests/spec",
|
|
"test": "cross-env BROWSER=chrome:headless npm run test-browser",
|
|
"test-browser": "run-p --race run-mastodon dev test-mastodon",
|
|
"test-mastodon": "run-s wait-for-mastodon-to-start wait-for-mastodon-data run-testcafe",
|
|
"wait-for-mastodon-to-start": "node -r esm bin/wait-for-mastodon-to-start.js",
|
|
"wait-for-mastodon-data": "node -r esm bin/wait-for-mastodon-data.js",
|
|
"globalize-css": "node ./bin/globalize-css.js",
|
|
"deglobalize-css": "node ./bin/globalize-css.js --reverse",
|
|
"stage-dev": "printf 'User-agent: *\nDisallow: /' > assets/robots.txt",
|
|
"stage-prod": "rm -f assets/robots.txt",
|
|
"launch": "now -e SAPPER_TIMESTAMP=$(date +%s%3N) --team nolanlawson && sleep 60",
|
|
"launch-travis": "now -e SAPPER_TIMESTAMP=$(date +%s%3N) --team nolanlawson --token $NOW_TOKEN && sleep 60",
|
|
"alias-prod": "now alias pinafore.social --team nolanlawson",
|
|
"alias-dev": "now alias dev.pinafore.social --team nolanlawson",
|
|
"alias-dev-travis": "now alias dev.pinafore.social --team nolanlawson --token $NOW_TOKEN",
|
|
"cleanup": "now rm pinafore --safe --yes --team nolanlawson",
|
|
"cleanup-travis": "now rm pinafore --safe --yes --team nolanlawson --token $NOW_TOKEN",
|
|
"deploy-prod": "run-s stage-prod launch alias-prod cleanup",
|
|
"deploy-dev": "run-s stage-dev launch alias-dev cleanup",
|
|
"deploy-dev-travis": "if [ $TRAVIS_BRANCH = master -a $TRAVIS_PULL_REQUEST = false ]; then run-s stage-dev launch-travis alias-dev-travis cleanup-travis; fi",
|
|
"backup-mastodon-data": "pg_dump -Fc mastodon_development > fixtures/dump.sql && cd mastodon/public/system && tar -czf ../../../fixtures/system.tgz ."
|
|
},
|
|
"dependencies": {
|
|
"@gamestdio/websocket": "0.2.5",
|
|
"a11y-dialog": "4.0.1",
|
|
"cheerio": "1.0.0-rc.2",
|
|
"child-process-promise": "2.2.1",
|
|
"chokidar": "2.0.3",
|
|
"cross-env": "5.1.6",
|
|
"css-loader": "0.28.11",
|
|
"escape-html": "1.0.3",
|
|
"esm": "3.0.37",
|
|
"events": "2.0.0",
|
|
"express": "4.16.3",
|
|
"fg-loadcss": "2.0.1",
|
|
"file-api": "0.10.4",
|
|
"font-awesome-svg-png": "1.2.2",
|
|
"form-data": "2.3.2",
|
|
"glob": "7.1.2",
|
|
"helmet": "3.12.1",
|
|
"indexeddb-getall-shim": "1.3.3",
|
|
"intersection-observer": "0.5.0",
|
|
"lodash-es": "4.17.10",
|
|
"lodash-webpack-plugin": "0.11.5",
|
|
"mini-css-extract-plugin": "0.4.0",
|
|
"mkdirp": "0.5.1",
|
|
"node-fetch": "2.1.2",
|
|
"node-sass": "4.9.0",
|
|
"npm-run-all": "4.1.3",
|
|
"optimize-css-assets-webpack-plugin": "4.0.1",
|
|
"p-any": "1.1.0",
|
|
"performance-now": "2.1.0",
|
|
"pify": "3.0.0",
|
|
"quick-lru": "1.1.0",
|
|
"requestidlecallback": "0.3.0",
|
|
"sapper": "github:nolanlawson/sapper#for-pinafore-7",
|
|
"serve-static": "1.13.2",
|
|
"shrink-ray-current": "2.1.0",
|
|
"stringz": "1.0.0",
|
|
"style-loader": "0.21.0",
|
|
"svelte": "2.6.4",
|
|
"svelte-extras": "2.0.2",
|
|
"svelte-loader": "2.9.1",
|
|
"svelte-transitions": "1.2.0",
|
|
"svgo": "1.0.5",
|
|
"timeago.js": "3.0.2",
|
|
"tiny-queue": "0.2.1",
|
|
"uglifyjs-webpack-plugin": "1.2.5",
|
|
"web-animations-js": "2.3.1",
|
|
"webpack": "4.9.1",
|
|
"webpack-bundle-analyzer": "2.13.1",
|
|
"yargs": "11.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"eslint-plugin-html": "4.0.3",
|
|
"now": "11.1.14",
|
|
"standard": "11.0.1",
|
|
"testcafe": "0.19.1"
|
|
},
|
|
"engines": {
|
|
"node": ">= 8"
|
|
},
|
|
"standard": {
|
|
"globals": [
|
|
"fetch",
|
|
"IDBKeyRange",
|
|
"IDBObjectStore",
|
|
"indexedDB",
|
|
"requestAnimationFrame",
|
|
"requestIdleCallback",
|
|
"location",
|
|
"localStorage",
|
|
"IntersectionObserver",
|
|
"URL",
|
|
"Event",
|
|
"history",
|
|
"performance",
|
|
"self",
|
|
"caches",
|
|
"__routes__",
|
|
"__shell__",
|
|
"__assets__",
|
|
"test",
|
|
"fixture",
|
|
"Element",
|
|
"FormData",
|
|
"atob",
|
|
"btoa",
|
|
"Blob",
|
|
"Element",
|
|
"Image"
|
|
],
|
|
"ignore": [
|
|
"dist",
|
|
"routes/_utils/asyncModules.js",
|
|
"routes/_components/dialog/asyncDialogs.js"
|
|
]
|
|
},
|
|
"esm": {
|
|
"mode": "auto",
|
|
"cjs": "vars"
|
|
},
|
|
"now": {
|
|
"type": "npm",
|
|
"env": {
|
|
"NODE_ENV": "production"
|
|
},
|
|
"files": [
|
|
"assets",
|
|
"bin",
|
|
"original-assets",
|
|
"routes",
|
|
"scss",
|
|
"templates",
|
|
"package.json",
|
|
"package-lock.json",
|
|
"server.js",
|
|
"inline-script.js",
|
|
"webpack.client.config.js",
|
|
"webpack.server.config.js"
|
|
]
|
|
},
|
|
"greenkeeper": {
|
|
"ignore": [
|
|
"sapper",
|
|
"a11y-dialog"
|
|
]
|
|
}
|
|
}
|