Our bulk email loop runs in the browser, 100 at a time, and there is no campaign log on purpose
Munchable sends service email: a terms change, a billing problem, something about how scans work. There is no marketing list and nothing promotional, which is written down on munchable.app/privacy under "Email we send you", so the audience is not a question the product has to answer. There is exactly one audience, account holders, and the composer has no audience picker at all. What it does have…
Munchable sends service emails such as terms change or billing problems, but there is no marketing list or promotional content. The audience is limited to account holders, with no audience picker for the composer. The email sending process is designed to avoid problems associated with serverless functions, which can be limited in duration.
Instead of a traditional loop that reads every recipient and sends to them, the loop is moved to the client. The client sends batches of up to 100 recipients at a time, returning a cursor for each batch. The client re-invokes the function with the cursor until all recipients have been sent to. This approach allows for progress to be monitored by an operator, and the cursor serves as the only state needed for resuming the process.
The cursor advances based on the keyset, ensuring that recipients are not skipped or sent twice. There is no campaign log, as the product prioritizes minimal data storage. Instead, the composer requires explicit confirmation before sending a bulk email, displaying the count of recipients to be sent. The preview of the email in the composer is a direct representation of the message that will be sent.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.