II.
StackProfile JSON
Structured · livestack-profile:pdf-generation-service
PDF Generation Service (Node.js, Puppeteer, Boto3, Redis, Docker, TypeScript) json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "stack-profile:pdf-generation-service",
"_kind": "StackProfile",
"_file": "domain/stack-profiles/deep-stacks-6.yaml",
"_cluster": "domain",
"attributes": {
"displayName": "PDF Generation Service (Node.js, Puppeteer, Boto3, Redis, Docker, TypeScript)",
"description": "A scalable document generation service that renders HTML templates into\npixel-perfect PDF documents for invoices, reports, certificates, and\nregulatory filings. Puppeteer drives headless Chromium instances to\nrender complex layouts with CSS grid, web fonts, and SVG charts that\nmatch print-quality expectations. TypeScript powers the template engine\nwith type-safe data binding and Handlebars-based layout composition.\nBoto3 stores generated PDFs in cloud object storage with presigned\ndownload URLs and configurable retention policies. Redis manages the\njob queue for asynchronous generation requests, deduplication of\nidentical renders, and caching of recently generated documents.\nDocker containers provide isolated Chromium sandboxes with memory\nlimits to prevent runaway rendering. The tradeoff is Chromium memory\nconsumption per concurrent render and ensuring consistent font\nrendering across container environments.\n",
"composes": [
"language:typescript",
"library:puppeteer",
"library:boto3",
"library:ioredis",
"tool:docker",
"library:express",
"library:handlebars",
"library:bullmq"
]
},
"outgoingEdges": [
{
"from": "stack-profile:pdf-generation-service",
"to": "language:typescript",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:puppeteer",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:boto3",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:ioredis",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "tool:docker",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:express",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:handlebars",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "library:bullmq",
"kind": "composed_of"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "role:backend-engineer",
"kind": "used_by_role"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "role:fullstack-engineer",
"kind": "used_by_role"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "workflow:production-readiness-review",
"kind": "follows_workflow"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "workflow:load-testing-cycle",
"kind": "follows_workflow"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "domain:backend",
"kind": "applies_to"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "domain:software-engineering",
"kind": "applies_to"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "skill-area:backend-async-processing",
"kind": "requires_skill_area"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "skill-area:containerization",
"kind": "requires_skill_area"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "skill-area:api-design",
"kind": "requires_skill_area"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "skill-area:caching-strategies",
"kind": "requires_skill_area"
},
{
"from": "stack-profile:pdf-generation-service",
"to": "skill-area:document-processing",
"kind": "requires_skill_area"
}
],
"incomingEdges": []
}