Hey thanks! I wouldn't say it's a hard dependency, in fact it can work with other things that are API-compatible with DynamoDB, like Scylla for example if you wanted to self-host everything:
And in terms of using something like Firestore, the storage needs of this are very simple so it wouldn't be very hard to add that in. I tried to keep all the persistence-related functionality separated off, so it is swappable:
While you can run Scylla Open Source self-hosted for free, we also have a fully-managed version of our enterprise software on Scylla Cloud.
https://www.scylladb.com/product/scylla-cloud/