funded
HLabs: plu-ts - ts framework for Cardano smart contracts
Current Project Status
In Progress
Amount
Received
₳64,000
Amount
Requested
₳200,000
Percentage
Received
32.00%
Solution

plu-ts is an eDSL for Typescript and Javascript developers. It targets respectively the 5th and the first most used languages between professional developers according to stackoverflow.

Problem

We need more adoption of languages already in use between developer to help with the onboarding process.

Impact Alignment
Feasibility
Value for money

Team

1 member

HLabs: plu-ts - ts framework for Cardano smart contracts

Please describe your proposed solution.

plu-ts is a project that has been active for more than a year now.

The goal of the project is to allow typescript and javascript developer to write entire decentralized applicaitions with only their favorite language.

In particular it allows for the creation of smart contracts and creation of transactions only using typescript.

The main obstacle a new developer that wants to adopt the library are the (occasional but still blocking) errors.

For plu-ts to be a real asset to the cardano community and protocol there is some more work to do.

Please define the positive impact your project will have on the wider Cardano community.

With this proposal we can help the development of the language, ultimately benefiting:

  • developers that are familiar wit typescript and javascritp
  • end users which will spend a lot less in contract execution transactions
  • the protocol (and the node) which will have to deal with much smaller scripts
  • PS. even if the script was stored on a reference utxo it still impacts the nodes of the network wich will have (currently) to keep the script in memory (LedgerState)

What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?

Michele Nuzzi has been part of the Cardano ecosystem at the beginnign as a single stake pool operator and later as developer. In this time he wrote and still maintains numerous dependecy free typescript libraries that require a low level understanding of the Cardano protocol.

A non-exhaustive list list of some of the projects would be:

  • plu-ts: a typescript framework for the creation of Cardano Smart contracts
  • plutus-machine: typescript library for the evaluation of contracts off-chain
  • cardano-ledger-ts: collection of classes and functions for Cardano specific data types and respective serialization and deserialization in CBOR format.
  • ouroboros-miniprotocols-ts: library for low level interactions with the cardano-node based on the ouroboros mini protocols specificaiton.

What are the key milestones you need to achieve in order to complete your project successfully?

Contaract compilation error fixes; release of v0.6.0

>off-chain tx creation fixes (v0.7.0):

  • Plutus execution units calculation fixes (plutus-machine)

>contract compilation optimizations (v0.8.0)

>plu-ts v0.8.0

Who is in the project team and what are their roles?

1) Michele Nuzzi

In the event multiple proposals will be approved qualified personale will be hired to guarantee the successful delivery of all of the approved proposals.

The profile required for such postion will be of a Senior Typescript developer with solid understanding of the different Javascript runtimes and relative main APIs (Web Workers, WebSockets, etc. for Browsers and worker_threads, os, fs, etc. for Node as well as other possible runtimes such as Bun.js or Deno)

Please provide a cost breakdown of the proposed work and resources.

At a price of 0.3828 USD per ADA the estimated cost corresponds to roughly 225705,33 ADA, so we round down to 200'000 ADA to meet the challenge requirement.

The expected time to completion of the project is of 6 months considering 1 engineer for 8 hours per day for 30 days per month

60 $/h x 8h/d x 30d/mo x 6mo = 86400 $

that converted to ADA is roughly 225705,33 ADA (rounded down to meet the challenge requirements)

How does the cost of the project represent value for money for the Cardano ecosystem?

plu-ts has the potential to attract many developers both from the web2 world and other web3 ecosystems.

The proposal goal is to remove some pain points of the language that is still in development.

The skills and knowledge required for the realization of this project are highly specialized hence the value for money should be fair.

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00