Remix.run Logo
jopsen 4 hours ago

The alluring thing is storing the repository on S3 (or similar). Recall early docker registries making requests so complicated that backing image storage with S3 was unfeasible, without a proxy service.

The thing that scales is dumb HTTP that can be backed by something like S3.

You don't have to use a cloud, just go with a big single server. And if you become popular, find a sponsor and move to cloud.

If money and sponsor independence is a huge concern the alternative would be: peer-to-peer.

I haven't seen many package managers do it, but it feels like a huge missed opportunity. You don't need that many volunteers to peer inorder to have a lot of bandwidth available.

Granted, the real problem that'll drive up hosting cost is CI. Or rather careless CI without caching. Unless you require a user login, or limit downloads for IPs without a login, caching is hard to enforce.

For popular package repositories you'll likely see extremely degenerate CI systems eating bandwidth as if it was free.

Disclaimer: opinions are my own.