RSS Amplifier

Think in 4D · Aug 13, 2026

Fix your inbox: Design engineer your own newsletter digest email

0
Sign in to vote or save

Erica Heinz · Think in 4D

Are you willing to admit your inbox has become unmanageable? Here’s how I turned mine into a single daily digest of newsletters. And you can too. Here’s what it looks like:

(Yes, I could turn this into a startup, meco.app is already doing that, but let’s build our own!)

  1. Newsletter arrives in new Gmail → filter applies category label

  2. Input script runs every 30 min → saves posts to Firebase with category

  3. Output script runs daily → reads Firebase → calls Claude to write summary → sends digest email

Sound good?

Start a new Claude session and tell it:

I want to set up a personal newsletter digest called 4D Daily Digest. I have two Google Apps Script files (input.gs and output.gs) that I’ll paste in when you ask for them.

The system works like this: input.gs runs every 30 minutes as a Google Apps Script in a dedicated Gmail account, watches the inbox for newsletters, and saves them to a Firebase Realtime Database. output.gs runs once a day, reads those posts from Firebase, (optionally) calls the Claude API to write a short summary of what’s trending across all my newsletters, and emails me a digest.

Please help me: 1. Set up a Firebase project and get the database URL 2. Create a Google Apps Script project called Digest with two files, paste in the scripts, and fill in my Firebase URL and Gmail address 3. Set up Gmail labels for my newsletter categories and filters to apply them automatically 4. Authorize and test the scripts 5. Set up triggers to run them automatically

Here are the two scripts to paste when it asks for them:

  1. input.gs

  2. output.gs

8/16/26 note: both scripts updated to add icons indicating if the link will take you to a web page or an email page. Still fussing with link destinations.

Want more details?

Create a new Gmail account just for newsletters — this keeps your personal inbox clean and gives the scripts a dedicated inbox to watch.

Emails appear in the “uncategorized” section of the digest until you get around to creating the categorization filters (see step 3).

In your newsletter Gmail account, create labels for each category you want. I like to do them by purpose, for example:

  • Get Techy

  • Build a Biz

  • Get Cultured

  • Have Fun

Then, for each newsletter you subscribe to, create a filter that applies the right label:

  1. In Gmail’s search, type from:domain.com (e.g. from:platformer.com) and hit enter

  2. Click the filters/options button at the right edge of the search bar

  3. Click Create filter

  4. Check Apply the label and choose the category label

  5. Check Skip the Inbox (Archive it) if you want to keep this inbox clear

  6. Click Create filter

Bonus: You can quit here, and still have a nice RSS-style browseable inbox:

Want to keep going and get that digest?

Firebase is a free database to store and serve the emails.

  1. Go to console.firebase.google.com

  2. Create a new project, name it Digest or whatever (on the following screens, you can enable AI and analytics if you want, but it’s not required)

  3. In the left nav, go to DatabasesRealtime Database

  4. Click Create Database, and then any location, and then start in test mode

  5. Your database will open. Click over to the Rules tab, and paste the following so the scripts can access the database (NOTE: this is open access, but for personal use that’s fine):

{
  "rules": {
    ".read": true,
    ".write": true
  }
}
  1. Go back to the Data tab. Notice your database URL at the top (it looks like https://your-project-default-rtdb.firebaseio.com), you’ll need that in a minute

Now we just need to paste things into Google Apps Script, a simple place to write and run JavaScript from the cloud.

  1. Log into script.google.com as your newsletter Gmail account

  2. Create a new project, call it Digest

  1. You’ll see a default file called Code.gs — rename it to input.gs

  2. Paste in the contents of input.gs

  3. Update FIREBASE_URL → paste your Firebase database URL

  1. Add a second file: click + next to Files → Script → name it output.gs

  2. Paste in the contents of output.gs and update these values at the top:

    • FEEDER_BASE_URL → your Firebase database URL

    • BRIEFING_FROM → your newsletter Gmail address

    • BRIEFING_TO → your personal email address

  3. Run the script for the first time to authorize it:

    • In input.gs, select processNewEmails from the function dropdown at the top of the editor

    • Click the Run button (▶)

    • A popup will ask you to review permissions — click Review permissions, choose your newsletter Gmail account, then click Allow

    • Check View → Logs to confirm it ran without errors

Now just set up two triggers to run the scripts automatically:

  1. Click the clock icon (Triggers) in the left sidebar

  2. Click + Add Trigger (bottom right) for the input trigger

    1. function: processNewEmails

    2. Time-driven

    3. Hour timer

    4. Every 30 minutes

    5. Save!

  3. Click + Add Trigger for the second trigger:

    1. function: sendDailyBriefings

    2. Time-driven

    3. Day timer

    4. your preferred time

    5. Save!

  4. You may be asked to authorize again — click Allow

You’ll need an Anthropic API key and some cash in the account. If you skip this, the summaries just won’t appear, the rest of the digest works fine.

  1. Go to console.anthropic.com and create an account

  2. Add a credit card and purchase some credits (~$5 should last months)

  3. Go to API Keys and create a new key

  4. Paste it into ANTHROPIC_KEY at the top of output.gs

  1. In output.gs, make sure TEST_MODE = true

  2. Run sendDailyBriefings manually

    1. Make sure the function dropdown says sendDailyBriefings

    2. Click the Run button

    3. Check your inbox: everything looks good? If not, ask Claude how to revise the scripts to appear how you’d like

  1. Set TEST_MODE = false and save the script

  2. You’ll get the digest tomorrow at your preferred time

  • Where do the links go?

    • To the original article or post on the web. For newsletters that don’t publish a web version, the link goes to the Gmail thread — you’ll need to be logged into your newsletter Gmail account to open those.

  • Want to change a newsletter’s category?

    • Go to Settings → See all settings → Filters and Blocked Addresses, find the filter for that sender, click Edit, and change the label it applies.

    • You can also add or rename categories at any time under Settings → See all settings → Labels.

  • Want to remove a source?

    • Just unsubscribe from the newsletter, if it’s not coming to your inbox it won’t be in the digest

  • Want to pause a source but not unsubscribe?

    • Set active: false on the feed entry in Firebase

  • Not seeing a source?

    • Gmail will occasionally flag the digest as spam. Mark it as not spam once and it should stop

Other questions? Let me know!

Thanks for reading Think in 4D! This post is public so feel free to share it.

Share

No posts

Read the original on thinkin4d.substack.com

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.