vasil-cardano
TypeScript icon, indicating that this package has built-in type declarations

0.3.5 • Public • Published

Lucid

Lucid is a library, which allows you to create Cardano transactions and off-chain code for your Plutus contracts in JavaScript, Deno and Node.js.

Get started

NPM

npm install lucid-cardano@vasil

Deno 🦕

For JavaScript and TypeScript

import { Lucid } from "https://deno.land/x/lucid@0.5.0/mod.ts";

Web

<script type="module">
import { Lucid } from "https://unpkg.com/lucid-cardano@0.5.0/web/mod.js"
// ...
</script>

Build from source

Build NPM and Web target

deno task build

Outputs a dist folder

Examples

View examples

See sample-ada-transfer for end-to-end browser integration usage.

Basic usage

import { Blockfrost, Lucid } from "lucid-cardano"; // NPM
// import { Blockfrost, Lucid } from "https://deno.land/x/lucid@0.5.0/mod.ts"; Deno

const lucid = await Lucid.new(
  new Blockfrost("https://cardano-testnet.blockfrost.io/api/v0", "<projectId>"),
  "Testnet",
);

// Assumes you are in a browser environment
const api = await window.cardano.nami.enable();
lucid.selectWallet(api);

const tx = await lucid.newTx()
  .payToAddress("addr...", { lovelace: 5000000n })
  .complete();

const signedTx = await tx.sign().complete();

const txHash = await signedTx.submit();

console.log(txHash);

Test

deno task test

Docs

View docs 📖

You can generate documentation with:

deno doc

Compatibilty

Lucid is an ES Module, so to run it in the browser any bundler which allows for top level await and WebAssembly is recommended. If you use Webpack 5 enable in the webpack.config.js:

experiments: {
    asyncWebAssembly: true,
    topLevelAwait: true,
    layers: true // optional, with some bundlers/frameworks it doesn't work without
  }

To run the library in Node.js you need to set {"type" : "module"} in your project's package.json. Otherwise you will get import issues.


This library is built on top of a customized version of the serialization-lib (cardano-multiplatform-lib).

Link: https://github.com/Berry-Pool/cardano-multiplatform-lib/tree/vasil

Branch: vasil

Commit hash: 9891966de6cbd82ff509c80e6440586af64a2278

Readme

Keywords

none

Package Sidebar

Install

npm i vasil-cardano

Weekly Downloads

0

Version

0.3.5

License

MIT

Unpacked Size

7.06 MB

Total Files

44

Last publish

Collaborators

  • judeebene