behind the scenes

What a successful SaaS uses to run its business in 2024

Every piece of for-profit software that Buttondown relies on

Note that some links may be affiliate links, and kudos to Cushion for the inspiration behind this page. (All costs are monthly; I list one-time purchases as having an ongoing cost of "$0".)

(Interested in the open source software we use and maintain? Check out the open-source software page.)

Biome
genre
Frontend
year
2024
sponsoring
Brid.gy
genre
Backend
year
2024
sponsoring
C3
genre
Frontend
year
2020
sponsoring
CodeMirror
genre
Frontend
year
2021
sponsoring
Core JS
genre
Frontend
year
2019
Cspell
genre
Productivity
year
2024
sponsoring
Django
genre
Backend
year
2018
Django Ninja
genre
Backend
year
2023
sponsoring
ESLint
genre
Frontend
year
2020
HAProxy
genre
Backend
year
2022
sponsoring
Homebrew
genre
Productivity
year
2018
iTerm 2
genre
Productivity
year
2018
Just
genre
Productivity
year
2022
sponsoring
Keystatic
genre
Frontend
year
2023
sponsoring
Localias
genre
Productivity
year
2023
sponsoring
NextJS
genre
Frontend
year
2022
sponsoring
OpenSheet
genre
Frontend
year
2024
sponsoring
Overmind
genre
Productivity
year
2023
sponsoring
Postgres
genre
Backend
year
2018
sponsoring
Pre-commit
genre
Productivity
year
2020
sponsoring
Prettier
genre
Frontend
year
2020
sponsoring
Pytest
genre
Backend
year
2022
sponsoring
Python
genre
Backend
year
2018
React Email
genre
Frontend
year
2023
sponsoring
RQ
genre
Backend
year
2019
sponsoring
Ruff
genre
Backend
year
2023
sponsoring
Structlog
genre
Backend
year
2022
sponsoring
Tailwind
genre
Frontend
year
2021
sponsoring
Tiptap
genre
Frontend
year
2021
sponsoring
Typescript
genre
Frontend
year
2021
sponsoring
Vite
genre
Frontend
year
2023
sponsoring
Vue
genre
Frontend
year
2018

Packages

FAQs

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.

No credit card required. Only pay for what you use. Cancel anytime.