{ "name": "outreach-engine", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node index.js", "start:dev": "NODE_ENV=development node index.js", "start:prod": "NODE_ENV=production node index.js", "test-email": "EMAIL_TEST_LIMIT=1 NODE_ENV=development node index.js", "test-campaigns": "EMAIL_TEST_MODE=true CAMPAIGN_TEST_MODE=true NODE_ENV=development node scripts/run-campaigns.js", "migrate": "node scripts/migrate-to-database.js", "test": "jest --config tests/jest.config.js", "test:watch": "jest --config tests/jest.config.js --watch", "test:coverage": "jest --config tests/jest.config.js --coverage", "validate-json": "node -e \"try { JSON.parse(require('fs').readFileSync('firm.json', 'utf8')); console.log('✅ JSON is valid'); } catch(e) { console.log('❌ JSON error:', e.message); }\"", "test-config": "node -e \"const config = require('./config'); console.log('Environment:', config.env); console.log('EMAIL_USER:', config.email.user ? 'Set' : 'Missing'); console.log('EMAIL_PASS:', config.email.pass ? 'Set' : 'Missing'); console.log('Test Mode:', config.email.testMode);\"" }, "keywords": [], "author": "", "license": "ISC", "type": "commonjs", "dependencies": { "delay": "^6.0.0", "dotenv": "^17.2.0", "handlebars": "^4.7.8", "nodemailer": "^7.0.5", "sqlite": "^5.1.1", "sqlite3": "^5.1.7", "winston": "^3.17.0" }, "devDependencies": { "@jest/globals": "^30.0.4", "jest": "^30.0.4" } }