Install
$ agentstack add skill-edfenton-claude-skills-nean-deploy ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Purpose
Prepare a NEAN project for production deployment with proper configuration, security hardening, and monitoring setup.
Arguments
--target— Deployment target (default:docker)docker— Docker Compose (self-hosted, simplest)aws— AWS (ECS, RDS, ALB)k8s— Kubernetes (Helm charts)--check-only— Run pre-deployment checklist without creating files
Pre-deployment checklist (always runs)
Environment
- [ ] All env vars documented in
.env.example - [ ] Production env vars set in deployment platform
- [ ]
JWT_SECRETis unique 64+ char string - [ ]
NODE_ENV=productionin production - [ ] No secrets in code or committed files
Database
- [ ] PostgreSQL instance provisioned
- [ ] Connection string configured
- [ ] Migrations tested and ready
- [ ] Database user has minimal required permissions
- [ ] Backups configured
Security
- [ ] Helmet middleware configured
- [ ] CORS configured for production domain
- [ ] Rate limiting enabled
- [ ] Auth secrets rotated from development
- [ ] CSP headers configured
- [ ] HTTPS enforced
Performance
- [ ] Build succeeds:
npm run build - [ ] No TypeScript errors
- [ ] Angular bundle size reasonable (check with
npm run build -- --stats-json) - [ ] API response times acceptable
- [ ] Database indexes in place
Monitoring
- [ ] Error tracking configured (Sentry, etc.)
- [ ] Logging configured for production (structured JSON)
- [ ] Health check endpoints working:
/api/health,/api/health/ready - [ ] Metrics collection configured (optional)
What gets created (per target)
Docker
docker/
├── Dockerfile.api # Multi-stage NestJS build
├── Dockerfile.web # Multi-stage Angular build + Nginx
├── docker-compose.yml # Full stack
├── docker-compose.prod.yml # Production overrides
└── nginx.conf # Nginx configuration
AWS
infrastructure/
├── terraform/ # Infrastructure as code
│ ├── main.tf
│ ├── variables.tf
│ └── outputs.tf
├── ecs/
│ └── task-definition.json
└── scripts/
└── deploy.sh # Deployment script
Kubernetes
k8s/
├── helm/
│ └── myapp/
│ ├── Chart.yaml
│ ├── values.yaml
│ ├── values.prod.yaml
│ └── templates/
│ ├── api-deployment.yaml
│ ├── web-deployment.yaml
│ ├── service.yaml
│ ├── ingress.yaml
│ ├── configmap.yaml
│ └── secrets.yaml
└── skaffold.yaml # Local development
Docker deployment (recommended for self-hosted)
Build and run
# Build images
docker compose -f docker/docker-compose.yml build
# Run locally
docker compose -f docker/docker-compose.yml up -d
# Production with overrides
docker compose -f docker/docker-compose.yml -f docker/docker-compose.prod.yml up -d
Production docker-compose.prod.yml
version: '3.8'
services:
api:
environment:
- NODE_ENV=production
deploy:
replicas: 2
resources:
limits:
memory: 512M
restart: always
web:
deploy:
replicas: 2
restart: always
db:
volumes:
- /data/postgres:/var/lib/postgresql/data
restart: always
Environment-specific configuration
API environment
# Production .env for API
NODE_ENV=production
DATABASE_HOST=db
DATABASE_PORT=5432
DATABASE_USERNAME=myapp
DATABASE_PASSWORD=${DB_PASSWORD} # From secrets
DATABASE_NAME=myapp_prod
JWT_SECRET=${JWT_SECRET} # From secrets
JWT_EXPIRES_IN=15m
JWT_REFRESH_EXPIRES_IN=7d
CORS_ORIGINS=https://myapp.com
API_PORT=3000
LOG_LEVEL=info
Angular environment
// environment.prod.ts
export const environment = {
production: true,
apiUrl: '/api', // Relative, goes through Nginx
};
Workflow
- Run pre-deployment checklist
- Fix any blockers found
- Create deployment configuration for target
- Verify builds succeed
- Test in staging environment
- Document deployment steps
- Set up monitoring and alerts
Output
- Checklist results (pass/fail)
- Files created
- Next steps for deployment
- Environment variables needed in production
- Monitoring setup instructions
Reference
For platform-specific configurations, see reference/nean-deploy-reference.md
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: edfenton
- Source: edfenton/claude-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.