DynamoDB scales to basically infinity and costs pennies to start. But if you've built on it with TypeScript, you know the day-to-day is rough:
- You build partition/sort key strings by hand (
USER#${username}) and typo them. - You marshal and unmarshal every attribute (
{ S: ... },{ N: ... }). - You get zero type safety — the SDK returns
Record<string, AttributeValue> | undefinedand wishes you luck.
Single-table design — the thing you're supposed to do — is all in your head.
I got tired of it, so I built If you've ever hand-written a What would you want a DynamoDB library to handle for you? Let me know in the comments.
USER#${id} key at 2am, give it a try — and if it saves you some pain, a ⭐ on GitHub genuinely helps.
SOCIAL SHARE CARD GENERATOR