Giter VIP home page Giter VIP logo

2qx / unspent Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 2.0 112.57 MB

₿∙ϕ - Unspent Phi (an app, library, cli & db) for executing a set of anyone-can-spend contracts on Bitcoin Cash.

Home Page: https://unspent.app

License: The Unlicense

JavaScript 2.28% Shell 0.06% TypeScript 18.63% HTML 0.17% Svelte 9.07% CSS 69.60% SCSS 0.19%
annuity automata bitcoin-cash cashscript faucet introspection mining-software perpetuity bch

unspent's Introduction

This is a monorepo for a collection of tools related to anyone-can-spend autotomata bitcoin cash contracts.

More information can be found here

package Description
@unspent/app A webapp for creating and interacting with contracts.
@unspent/chi A simple webapp for creating (or calling) a perpetuity.
@unspent/cli unspent command line interface for calling or calculating unspent contracts.
@unspent/phi A library with a set of anyone-can-spend automata contracts, used in the above.
@unspent/psi Persistent storage IndexedDB wrapper for unspent contract data.

unspent's People

Contributors

2qx avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

malwareking

unspent's Issues

Re: Units

Two unrelated tasks:

  • Enable specifying terrestrial time based units instead of blocks
  • Enable inputing a random amount into the example UTXO for unfunded transactions (A/P).

Error: Transaction failed with reason: Failover Broadcast Network Providers exhausted, bailing

Error: Transaction failed with reason: Failover Broadcast Network Providers exhausted, bailing
meep debug --tx=0200000001609fb0df164b47503ef7a7d0557b65e728331caa1f5f05d9f24ff5960549a00d01000000624c6002a00102dc051976a914b690a67edcf49dd1b7ca3b7a7d4966ffa5bf6a3b88ac0164c252a269b275c3519dc0c676547a9600cd537a887602e803a06300cc78a2696e9453799451cdc0c78851cc78a26975677853799400cc78a26975686d7551640000000224040000000000001976a914b690a67edcf49dd1b7ca3b7a7d4966ffa5bf6a3b88ac6daf06000000000023aa20a2850bd698ed0e77ffd014f891884e8c66cdfcd5dcae959ce121ecc85f6ffa068713870c00 --idx=0 --amt=440683 --pkscript=a91408bbd5adccd493ae54c0b7de3a71b9cc4af5f06c87

Consolidate FAQ

Integrate some of Toms questions into the broader FAQ,

  • who executes transactions.
  • if not executed, what happens.

Debugger link package/cli, upstream.

Create a standalone package to output debugger information as a Bitauth IDE template from either a failed transaction, or as an alternative to submitting the transaction.

Problem

With the advent of introspection, and the upcoming CashToken upgrade, debugging modern contracts has become increasingly difficult.

The meep debugger command, output by CashScript, displays, but does not process ,contracts relying on input data.

See: gcash/meep#13 and discussion here: gcash/meep#11

Proposed solution

An alternate format for links currently output from CashScript that could act as a better bridge toward a more robust debugger, i.e. bitauth IDE.

This would involve a simple function to "translate" an encoded transaction and inputs to a template, enhanced for CashScript artifacts, that is also accessible outside of CashScript, via the command line.

The command would take an encoded transaction, with extra data, and output:

  • A link to import a Bitauth IDE template, or
  • Write the template as a json file.

Package Home

CashScript is currently a monorepo project with a separate package for the cashc compiler cli. With it's solidity style language, CashScript may act as a landing zone for developers coming from more EVM style projects. A simple package integrated into CashScript could make this functionality "owned" by CashScript, and easily available to all users down stream.

In addition, bitauth is it's own cli project, although a WIP. It may also be useful as a small package within the bitauth org.

Unspent is also a monorepo, but is downstream of both CashScript and libauth.

See also:

see: https://github.com/bitauth/bitauth-ide/blob/2fe743dd8426fd6c3f0bfee013ee0f085ceaa4e2/src/editor/dialogs/import-export-dialog/ImportExportDialog.tsx#L193

v2

All updated contracts (A,D,P,F,R)

  • All contracts must leave a clean lock (exhausting funds) when completed.
  • All contracts must run per input
  • All contracts must require transactions of v2 or higher.

API Feature:

  • API library should seamlessly handle selecting a single UTXO for v2 contracts.
  • API should silently handle repeated unfunded calls.

New usability features:

  • Links to bitauth debug template instead of meep.

Make BIP68 timelock errors less cryptic.

Catch the validation error for timelock contracts and report some error to make them more intelligible to humans.

Or get the blocktime and put a warning of when the UTXO will be spendable.

Unspent Cash links

Add links to bitauth debugger

Add the link on the "<>" tab unser the "Redeem Script Hex"

There is already code and image assets for BitAuth in the phi app.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.