惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
雷峰网
雷峰网
Recent Announcements
Recent Announcements
月光博客
月光博客
G
Google Developers Blog
腾讯CDC
S
Secure Thoughts
大猫的无限游戏
大猫的无限游戏
T
Tenable Blog
云风的 BLOG
云风的 BLOG
W
WeLiveSecurity
博客园 - 【当耐特】
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
博客园 - 聂微东
The Cloudflare Blog
阮一峰的网络日志
阮一峰的网络日志
人人都是产品经理
人人都是产品经理
P
Privacy International News Feed
MyScale Blog
MyScale Blog
K
Kaspersky official blog
T
The Blog of Author Tim Ferriss
Attack and Defense Labs
Attack and Defense Labs
Spread Privacy
Spread Privacy
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
aimingoo的专栏
aimingoo的专栏
I
Intezer
Vercel News
Vercel News
小众软件
小众软件
Simon Willison's Weblog
Simon Willison's Weblog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
Latest news
Latest news
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tor Project blog
S
Security Affairs
P
Proofpoint News Feed
博客园 - 三生石上(FineUI控件)
博客园 - Franky
C
Cyber Attacks, Cyber Crime and Cyber Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
美团技术团队
Recent Commits to openclaw:main
Recent Commits to openclaw:main
S
Security @ Cisco Blogs
L
LINUX DO - 热门话题
Know Your Adversary
Know Your Adversary
Project Zero
Project Zero
D
Docker
L
Lohrmann on Cybersecurity
F
Full Disclosure

remy sharp's l:inks

Deno Style Guide Easy 6502 by skilldrick Profiling React.js Performance BEM Naming Cheat Sheet by 9elements Visual 6502 Remix Elijah Manor (@elijahmanor) on X All – Tiny Helpers AST explorer Insecure How to Authenticate with Next.js and Auth0: A Guide for Every Deployment Model Revealed: quarter of all tweets about climate crisis produced by bots I Add 3-25 Seconds of Latency to Every Page I Visit GitHub - ericchiang/pup: Parsing HTML at the command line Browserling – Online cross-browser testing Error Handling with GraphQL and Apollo Schwerkraftprojektionsgerät How To Turn Off Catalina Update Notifications (Prompts & Badges) • macReports Maskable.app It’s 2020 and you’re in the future Emulators written in JavaScript | Frederic Cambus The Size of Space systemfontstack JavaScript isn’t always available and it’s not the user’s fault Programming Fonts - Test Drive Screen Size Map GitHub - Yonet/MixedRealityResources: Mixed Reality related resources The Lines of Code That Changed Everything Notes from the Internet Health Report 2019 CopyPalette Generative Artistry Profile a React App for Performance nanoSQL 2 Moving Your JavaScript Development To Bash On Windows — Smashing Magazine Startup Playbook How to Release a Custom React Component, Hook or Effect as an npm Package React Suite - Enterprise React UI Component Library Use VSCode Dimmer to Highlight Code when Teaching 3 simple rules for effectively handling dates and timezones Large collection of how to animate pixelart Accessible React component libraries mineral-ui.com Australian Government Design System Reakit – Toolkit for building accessible UIs Chakra UI Curl Cookbook The problem with tooltips and what to do instead GitHub - trimstray/the-book-of-secret-knowledge: A collection of inspiring lists, manuals, cheatsheets, blogs, hacks, one-liners, cli/web tools and more. It Form design: from zero to hero all in one blog post Brussels changes its mind AGAIN on .EU domains: Euro citizens in post-Brexit Britain can keep them after all Improve Your Email Campaigns with These Fantastic Tools Ethical Web Principles Old Typewriter Text Effect Bruce Lawson Google open sources standardized code in bid to become Mr Robots.txt Preferreds-color-scheme:你好,黑暗,我的老朋友  |  Articles  |  web.dev Free for Developers Startup idea checklist Developing a Robust Font Loading Strategy for CSS-Tricks—zachleat.com How I use Slack—alone—to get more done Upcoming proposals in JavaScript 🦄 VueJS is dead, long live VueJS! Bruce Lawson Answers for young people - Tim Berners-Lee Finally, an AI that can reliably catch and undo Photoshop airbrushing. Who made it? Er, Photoshop maker Adobe Qubyte Codes - How I schedule posts using GitHub Actions Games and Graphics in Popup URL bars 58 bytes of css to look great nearly everywhere The reduce ({...spread}) anti-pattern - RichSnapp.com The Online Disassembler CSS Gradient – Generator, Maker, and Background Chrome DevTools  |  Chrome for Developers HB88 | Đăng Nhập HB88 Cá Cược Nhanh Chóng Không Bị Chăn #1 Introducing React Apollo 2.1 - Apollo GraphQL Blog Color Palettes Generator and Color Gradient Tool Clément Chastagnol ~ Moving efficiently in the CLI Testing Async Components · Issue #346 · enzymejs/enzyme Game Platforms recent news | Game Developer Professional Sound Effects - Royalty-Free SFX | Unlimited Downloads entr(1) Learn React From The Comfort Of Your Browser Axe Rules | Deque University Record and share your terminal sessions, the simple way Web Design Museum Powerful New Additions to the CSS Grid Inspector in Firefox Nightly – Mozilla Hacks - the Web developer blog Latency | Apex Software HackerNoon Signals and Sine Waves (Learn Web Audio from the Ground Up, Part 1) JavaScript Systems Music Vintage bits on cassettes Microsoft Design Legal Documents & Contract Templates | Simply Docs create-graphql-server — instantly scaffold a GraphQL server GraphQL and MongoDB — a quick example Using GraphQL with MongoDB Your First GraphQL Server Build a GraphQL server from scratch Practical Redux, Part 3: Project Planning and Setup 架构标记测试工具 | Google 搜索中心  |  Search Central  |  Google for Developers Freesound
Stack
2019-06-15 · via remy sharp's l:inks

No team can do it alone. Here's every tool, service, and open-source project that powers Buttondown — and what we give back.

Open Source

Buttondown, like all software companies, sits on the shoulders of giants. We're committed to donating 10% of all profits to open source technologies that power our software, and we're proud members of FOSS Funders and signatories of the Open Source Pledge.

We also maintain a number of our own open-source packages, born out of needs we encountered building Buttondown and released for the community to use and contribute to.

Frequently asked questions

Why do you use so many services?

The most important resource I have is my energy, and being able to trade X dollars (where X is any number less than a hundred) for even trivial amounts of energy is an absolute no-brainer.

Why so many ESPs?

When I launched Buttondown, AWS Simple Email Service was notoriously low-quality and Postmark did not support broadcast emails. Mailgun was the choice I went with, and there are still many customers using Mailgun's rails who have custom domain records set up that I don't have the heart (or incentive) to migrate.

I like having redundancy — if one provider were to go down or drastically change rates it would be trivial for me to migrate — but if I were starting Buttondown from scratch I would likely just have everything run through Postmark.

Why don't you use something for X?

Some specific choices I made to roll my own:

  • Auth: I know it's increasingly trendy to outsource auth to a paid vendor but I'm not a fan of the lock-in and I like having full control over the experience.
  • Feature flags: rolled my own for performance reasons. Plan on open sourcing it at some point.

Addenda

  • In addition to the open-source commitments listed above, we donate $250/year to Adam Johnson, whose projects are too granular and numerous to list individually.
  • Stripe's cost is redacted because it scales with revenue and would be tantamount to disclosing our financials.

Changelog

DateChange
2026-06-19

Removed UptimeRobot — TLS monitoring now run off our in-house checker framework.

2026-06-12

Added ClickHouse ($5/mo) for archival storage.

2026-06-05

Added UptimeRobot (Solo plan) for uptime monitoring.

2026-06-02

Removed Goto — still a great tool, but we've replaced it with individual usage. Also dropped Sender Score, which never gave us useful feedback.

2026-05-22

Removed Redis Enterprise Cloud; caching and rate limiting now run off Postgres.

2026-05-14

Stopped using Blacksmith for CI; moved all GitHub Actions workflows to self-hosted runners.

2026-04-03

Added Proximo ($5/mo) for outbound HTTP proxying.

2026-03-21

Removed Anymail in favor of bespoke SMTP backends. We've moved sufficiently far away from it that it no longer makes sense, but we'd still recommend it.

2026-03-21

Added disposable-email-domains to the stack; donating $10/mo.

2026-03-19

Churned from S3 in favor of Cloudflare R2.

2026-03-18

Churned from Better Stack in favor of using Sentry's logging + uptime monitoring.

2026-03-04

Downgraded Pulumi Cloud from paid to free tier.

2026-03-01

Churned from Better Stack to incident.io for incident management.

2026-02-20

Stopped using Tailscale. Great service, we just didn't need it.

2026-02-16

Stopped using HEX for data notebooks.

2026-02-13

Stopped using Obsidian for internal documentation.

2026-01-31

Stopped using DNSimple for DNS management.

2026-01-25

Stopped using ImprovMX for email forwarding.

2026-01-22

Migrated from Amazon RDS to Planetscale. Removed Iframely and Granola.

2025-12-26

Replaced Vista Social with Buffer for social media management.

2025-12-23

Replaced Vercel Analytics with Seline for website analytics.

2025-12-19

Added StopForumSpam for spam detection (free!).

2025-12-08

Published our year-end stack roundup.

2025-12-04

Removed Vista Social, Quickbooks, and Valtown from the stack.

2025-12-01

Stopped using Mimestream for email.

2025-11-24

Stopped using Groove for customer support.

2025-11-01

Added Pulumi for infrastructure as code.

2025-10-21

Added Have I Been Pwned for breach detection (removed 2026-04).

2025-08-01

Added Bunny (DNS), CleanShot (screenshots), Granola (notetaking), and Sendgrid (SMTP) over the summer.

2025-05-14

Started using Vista Social to manage social media accounts and Tailscale to manage the server storing internal docs. Stopped using Trotto (in favor of Tailscale's own OSS version).

2025-04-01

Replaced Depot with Blacksmith (faster, cheaper)

2025-01-09
2024-07-10

Started using Depot to speed up GitHub Actions

2024-07-09

Started using Fivetran and Metabase to analyze data and construct a (janky, but useful!) WBR

2024-04-03

Started using Mercury as a banking solution

2024-03-28

Added Pika, Cloudflare, and a handful of other tools; churned from Texts, Sketch, Bear, and Imgix.

2024-03-14

Added Audiogest to the stack. It's a nice little tool!

2023-10-13

Had to bump up my Imgix plan from $75 to $200/mo because of traffic. Time to find something cheaper!

2023-08-22

Added val.town

2023-08-01

Add PopSQL (which technically I've been using for a while but forgot about)

2023-07-25

Migrated off of Heroku Redis and onto Redis Enterprise Cloud, which means saving $70/mo for five minutes of switching environment variables.

2023-07-24

Onboarded to Calibre.

2023-07-23

Purchased a reserved instance for my big ol' RDS database, saving $110/mo.

2023-07-20

Initial launch of this page.