kill-the-newsletter/package.json

78 lines
2.4 KiB
JSON

{
"scripts": {
"start": "concurrently \"tsc --watch\" \"nodemon lib\"",
"test": "tsc && jest && prettier --check src"
},
"dependencies": {
"caddy-npm": "^2.0.0-beta.20",
"crypto-random-string": "^3.2.0",
"express": "^4.17.1",
"mailparser": "^2.7.7",
"pm2": "^4.2.3",
"react": "^16.13.0",
"react-dom": "^16.13.0",
"smtp-server": "^3.6.0",
"write-file-atomic": "^3.0.3",
"xmlbuilder2": "^2.1.0"
},
"devDependencies": {
"@types/express": "^4.17.3",
"@types/jest": "^25.1.4",
"@types/mailparser": "^2.7.2",
"@types/node": "^13.9.8",
"@types/nodemailer": "^6.4.0",
"@types/qs": "^6.9.1",
"@types/react": "^16.9.29",
"@types/react-dom": "^16.9.5",
"@types/smtp-server": "^3.5.4",
"@types/write-file-atomic": "^3.0.0",
"axios": "^0.19.2",
"concurrently": "^5.1.0",
"jest": "^25.2.4",
"nodemailer": "^6.4.6",
"nodemon": "^2.0.2",
"prettier": "^2.0.2",
"qs": "^6.9.3",
"typescript": "^3.8.3"
},
"jest": {
"rootDir": "lib",
"testEnvironment": "node"
},
"apps": [
{
"name": "kill-the-newsletter",
"script": "lib",
"env": {
"NODE_ENV": "production",
"WEB_PORT": "8000",
"EMAIL_PORT": "25",
"BASE_URL": "https://www.kill-the-newsletter.com",
"EMAIL_DOMAIN": "kill-the-newsletter.com",
"ISSUE_REPORT": "mailto:kill-the-newsletter@leafac.com"
}
},
{
"name": "caddy",
"script": "caddy run"
}
],
"deploy": {
"production": {
"user": "root",
"host": "kill-the-newsletter.com",
"ref": "origin/master",
"repo": "git@github.com:leafac/www.kill-the-newsletter.com.git",
"path": "/root/www.kill-the-newsletter.com",
"pre-setup": "(curl -sL https://deb.nodesource.com/setup_13.x | bash -) && apt install -y nodejs build-essential && (ssh -o StrictHostKeyChecking=no git@github.com || true)",
"post-setup": "env NODE_ENV=production npm ci && npx pm2 startup",
"pre-deploy-local": "(ssh -o StrictHostKeyChecking=no root@kill-the-newsletter.com || true) && rsync -av --delete lib/ root@kill-the-newsletter.com:www.kill-the-newsletter.com/current/lib/",
"post-deploy": "env NODE_ENV=production npm ci && npx pm2 startOrRestart package.json && npx pm2 save",
"ssh_options": [
"ForwardAgent=yes",
"StrictHostKeyChecking=no"
]
}
}
}