Better developer experience with cardano/leger-api packages
Currently there are no functions to map from blockfrost to cardano/ledger-api types (or I didn't find them). In my specific use-case I needed to query blockfrost for ProtocolParams and then use the cardano-api to construct the transaction. Problem is there is no way to map from blockfrost ProtocolParams to cardano-api ProtocolParameters (Or ledger PParams) so I need to do the mapping myself.
It would be very convenient to provide a way to easily use cardano or the ledger-api packages with blockfrost types. I am aware that it is inconvenient to track the downstream changes and make this conversion always possible but at the same time it provides much better developer experience. As a workaround I think it would be enough to make sure the ToJSON instance for a blockfrost type can be decoded to some cardano/ledger api type but not sure if this is less hassle.
Sounds reasonable, the library isn't using cardano types by design, so it can be light on deps and published on Hackage but I've considered a compatibility layer before so I might just roll one at this point. Something like blockfrost-cardano-compat package that would be available via CHaP.
Since we use dbsync on the server side, this is perfectly doable. In ideal world we would already have this and our backend would be based on dbsync + aeson just like smash server, but I've joined Blockfrost way too late and failed to convince the rest of the team that this would be a cool solution (and they would all need to learn Haskell 😸 ).