{"id":50979522,"url":"https://github.com/jayemscript/nestjs-mailer-worker","last_synced_at":"2026-06-19T12:34:27.687Z","repository":{"id":362884325,"uuid":"1261165658","full_name":"jayemscript/nestjs-mailer-worker","owner":"jayemscript","description":"A standalone NestJS email microservice with multi-provider support, template management, email logging, queue processing, and delivery tracking.","archived":false,"fork":false,"pushed_at":"2026-06-06T10:25:56.000Z","size":3,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-06T12:13:48.333Z","etag":null,"topics":["bullmq","email-logging","email-templates","google-workspace","mailer","microservice","microsoft365","nestjs","postgresql","queue","redis","smtp","typeorm","typescript"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jayemscript.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-06T10:23:14.000Z","updated_at":"2026-06-06T10:29:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/jayemscript/nestjs-mailer-worker","commit_stats":null,"previous_names":["jayemscript/nestjs-mailer-worker"],"tags_count":null,"template":true,"template_full_name":null,"purl":"pkg:github/jayemscript/nestjs-mailer-worker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayemscript%2Fnestjs-mailer-worker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayemscript%2Fnestjs-mailer-worker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayemscript%2Fnestjs-mailer-worker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayemscript%2Fnestjs-mailer-worker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jayemscript","download_url":"https://codeload.github.com/jayemscript/nestjs-mailer-worker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayemscript%2Fnestjs-mailer-worker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34532256,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bullmq","email-logging","email-templates","google-workspace","mailer","microservice","microsoft365","nestjs","postgresql","queue","redis","smtp","typeorm","typescript"],"created_at":"2026-06-19T12:34:27.030Z","updated_at":"2026-06-19T12:34:27.679Z","avatar_url":"https://github.com/jayemscript.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# NestJS Mailer Worker\n\nA standalone email microservice built with **NestJS**, **TypeORM**, and **PostgreSQL**.\n\nDesigned for applications that need a centralized email infrastructure with support for multiple email providers, custom templates, email logging, queue processing, and future extensibility.\n\n## Overview\n\nNestJS Mailer Worker is a dedicated email service that can be deployed independently from your main application.\n\nInstead of sending emails directly from your API, applications can publish email jobs to this service, allowing reliable, scalable, and observable email delivery.\n\n---\n\n## Features\n\n### Multi-Provider Support\n\nSend emails using different providers:\n\n* SMTP\n* Gmail\n* Google Workspace\n* Microsoft 365\n* Outlook\n* Custom SMTP Providers\n* Future provider integrations\n\n---\n\n### Custom Email Templates\n\nCreate and manage:\n\n* HTML emails\n* Plain text emails\n* Dynamic variables\n* Reusable templates\n* Provider-independent templates\n\nExample:\n\n```html\n\u003ch1\u003eWelcome {{name}}\u003c/h1\u003e\n\u003cp\u003eYour account has been created successfully.\u003c/p\u003e\n```\n\n---\n\n### Email Queue Processing\n\nBackground email processing using queues.\n\nBenefits:\n\n* Faster API responses\n* Retry support\n* Failure handling\n* High-volume email delivery\n\n---\n\n### Email Logging\n\nTrack every email sent.\n\nStore:\n\n* Recipient\n* Subject\n* Provider\n* Status\n* Error messages\n* Timestamp\n\n---\n\n### Delivery Tracking\n\nMonitor email lifecycle:\n\n* Pending\n* Processing\n* Sent\n* Failed\n* Retried\n\n---\n\n### REST API Support\n\nTrigger emails via HTTP endpoints.\n\nExample:\n\n```http\nPOST /emails/send\n```\n\n---\n\n### Database Persistence\n\nPowered by PostgreSQL and TypeORM.\n\nStore:\n\n* Templates\n* Provider configurations\n* Email logs\n* Delivery history\n\n---\n\n### Modular Architecture\n\nBuilt with NestJS modules.\n\nEasy to extend:\n\n* Add new providers\n* Add webhooks\n* Add analytics\n* Add dashboards\n* Add notification channels\n\n---\n\n## Technology Stack\n\n* NestJS\n* TypeScript\n* TypeORM\n* PostgreSQL\n* BullMQ (optional)\n* Redis (optional)\n\n---\n\n## Use Cases\n\n* User registration emails\n* Password reset emails\n* Verification emails\n* Notifications\n* Marketing campaigns\n* Transactional emails\n* Internal system alerts\n\n---\n\n## Future Roadmap\n\n* [ ] Provider failover support\n* [ ] Email analytics\n* [ ] Open tracking\n* [ ] Click tracking\n* [ ] Webhook integrations\n* [ ] Template editor\n* [ ] Admin dashboard\n* [ ] Multi-tenant support\n* [ ] Rate limiting\n* [ ] Scheduled emails\n\n---\n\n## Why Use This?\n\nMany applications need email capabilities but don't want email logic mixed into the main API.\n\nNestJS Mailer Worker provides a dedicated service responsible for:\n\n* Email delivery\n* Provider management\n* Logging\n* Monitoring\n* Reliability\n\nThis keeps your core application clean while providing a scalable email infrastructure.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjayemscript%2Fnestjs-mailer-worker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjayemscript%2Fnestjs-mailer-worker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjayemscript%2Fnestjs-mailer-worker/lists"}