Short answer: keep the weekly schedule, report data, and HTML-to-PDF rendering behind three separate contracts, then let one idempotent job compose them. The deciding constraint is template ownership. If developers own the HTML template, a Node.

Source: [Dev.to](https://dev.to/elibennett128/weekly-report-pdf-pipeline-3-boundaries-between-html-templates-and-cron-jobs-4lkf)

Sponsored