plu-ts
Built with ❤️ by Harmonic Laboratories
This documentation is for plu-ts
v0.2.0^, if you are using a previous version check for changes in the changelog.
Introduction
plu-ts
is a library designed for building Cardano dApps in an efficient and developer friendly way.
It is composed of two main parts:
plu-ts/onchain
: an eDSL (embedded Doamin Specific Language) that leverages Typescript as the host language; designed to generate efficient Smart Contracts.plu-ts/offchain
: a set of classes and functions that allow reuse of onchain types.
Getting started
see Getting Started to begin your jurney in plu-ts
Design principles
plu-ts
was designed with the following goals in mind, in order of importance:
- Smart Contract efficiency
- reduced script size
- developer experience
- readability
Roadmap
- v0.1.* :
- key syntax to build
plu-ts
expressions - compilation of smart contracts to valid UPLC
- standard API data structures (
PScriptContext
, etc... ) for PlutusV1 and PlutusV2 contracts - standard library
- Terms with utility methods to simplify the developer experience (
TermInt
,TermBool
, etc... )
- key syntax to build
- v0.2.* :
-
plu-ts/offchain
- ledger types implementaiton
-
TxBuilder
API
-
- v0.3.* :
- onchain optimizations
- introduction of an IR
- static AST analysis
- improved developer experience
- deprecate
extract
in favor of plain dot notaion - deprecate
plet( value ).in( myVar => {...} )
- in favor of
const myVar = plet( value )
- in favor of
- deprecate
- onchain optimizations