I am looking for a Haskell alternative to the cardano-serialization-lib, which can work in conjunction with blockfrost-haskell. So ideally, it should be able to easily create wallet keys, transactions, etc., without having to use Javascript (and also not running cardano-node). What's the best way to go about this?

1 Answer 1


I think you want the cardano-api, part of the cardano-node repo. Most things that can be done, it can do. At the very least its the place to start.

The cardano-cli provides a set of examples of how to use the api to, say, make keys or build txs.

  • Thanks for the answer! So I could build just the api directory and add it as a dependency to my cabal.project file right? Also, I was unable to find the examples for the api in the cli directory, could you link them? Thanks again!
    – Sean Ishan
    May 19, 2022 at 20:46
  • I tried this and it works for creating addresses! But it throws an error when I try to build transactions because it requires CARDANO_NODE_SOCKET_PATH
    – Sean Ishan
    May 19, 2022 at 22:59
  • 1
    Ah. You'll have to dig in to the code (its intimidating but doable) to see what its using the node for. It might just need the env variable set (some initial catch-all condition to prevent the user getting down stream errors that make no sense, but this particular call doesn't actually use the node service) or it might need to protocol params... at which point this won't be an off-the-shelf solution. Still you could extract the function can provide the params yourself.
    – waalge
    May 20, 2022 at 10:06
  • Oh okay, will try to do this! Thanks again
    – Sean Ishan
    May 21, 2022 at 11:48
  • Yeah, I think that this requires a running node, which is why CARDANO_NODE_SOCKET_PATH is required.
    – Attilah
    Jul 31, 2022 at 17:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.