Introduction
Understanding eUTxOs
Changelog
1.
Helios language
❱
1.1.
Comments
1.2.
Variables
1.3.
Primitive types
1.4.
Container types
1.5.
Branching
1.6.
Print, error, assert
1.7.
Functions
❱
1.7.1.
Multiple return values
1.7.2.
Void functions
1.7.3.
Anonymous functions
1.7.4.
Unused arguments
1.7.5.
Optional arguments
1.7.6.
Named arguments
1.7.7.
Function values
1.7.8.
Example: Collatz sequence
1.8.
Operators
1.9.
Structs
1.10.
Enums
1.11.
Destructuring
1.12.
Methods
❱
1.12.1.
Associated functions and constants
1.12.2.
Automatic methods
1.12.3.
Example: Rational
1.13.
Generics
1.14.
Structure of a script
❱
1.14.1.
Example: always_succeeds
1.14.2.
Contract Parameters
1.15.
Modules
1.16.
Builtins
❱
1.16.1.
Address
1.16.2.
Any
1.16.3.
AssetClass
1.16.4.
Bool
1.16.5.
ByteArray
1.16.6.
Credential
1.16.7.
Data
1.16.8.
DatumHash
1.16.9.
DCert
1.16.10.
Duration
1.16.11.
Int
1.16.12.
List
1.16.13.
Map
1.16.14.
MintingPolicyHash
1.16.15.
Option
1.16.16.
OutputDatum
1.16.17.
PubKey
1.16.18.
PubKeyHash
1.16.19.
Real
1.16.20.
ScriptContext
1.16.21.
ScriptHash
1.16.22.
ScriptPurpose
1.16.23.
StakeKeyHash
1.16.24.
StakingCredential
1.16.25.
StakingHash
1.16.26.
StakingPurpose
1.16.27.
StakingValidatorHash
1.16.28.
String
1.16.29.
Time
1.16.30.
TimeRange
1.16.31.
Tx
1.16.32.
TxId
1.16.33.
TxInput
1.16.34.
TxOutput
1.16.35.
TxOutputId
1.16.36.
ValidatorHash
1.16.37.
Valuable
1.16.38.
Value
2.
Helios API
❱
2.1.
Setup
❱
2.1.1.
Deno
2.2.
Compiling Helios sources
2.3.
Generating datums and redeemers
2.4.
Building transactions
❱
2.4.1.
Transaction inputs
2.4.2.
Transaction outputs
2.4.3.
Collateral
2.4.4.
Explicit signers
2.4.5.
Minting
2.4.6.
Finalizing
2.4.7.
Signing and submitting
2.5.
Example: PicoSwap
❱
2.5.1.
Main script
2.5.2.
Generating datums
2.5.3.
Contract helper class
2.5.4.
Creating a new sale
2.5.5.
Canceling a sale
2.5.6.
Buying for-sale assets
2.6.
API Reference
❱
2.6.1.
Globals
2.6.2.
Functions
2.6.3.
Address
2.6.4.
AssetClass
2.6.5.
Assets
2.6.6.
BlockfrostV0
2.6.7.
ByteArrayData
2.6.8.
CborData
2.6.9.
Cip30Handle
2.6.10.
Cip30Wallet
2.6.11.
CoinSelection
2.6.12.
ConstrData
2.6.13.
Crypto
2.6.14.
Datum
2.6.15.
DatumHash
2.6.16.
FuzzyTest
2.6.17.
HeliosData
2.6.18.
IntData
2.6.19.
ListData
2.6.20.
MapData
2.6.21.
MintingPolicyHash
2.6.22.
NativeScript
2.6.23.
Network
2.6.24.
NetworkEmulator
2.6.25.
NetworkParams
2.6.26.
PrivateKey
2.6.27.
Program
2.6.28.
PubKey
2.6.29.
PubKeyHash
2.6.30.
Signature
2.6.31.
StakeAddress
2.6.32.
StakeKeyHash
2.6.33.
StakingValidatorHash
2.6.34.
Tx
2.6.35.
TxId
2.6.36.
TxOutput
2.6.37.
TxRefInput
2.6.38.
TxWitnesses
2.6.39.
UplcBool
2.6.40.
UplcByteArray
2.6.41.
UplcData
2.6.42.
UplcDataValue
2.6.43.
UplcInt
2.6.44.
UplcPair
2.6.45.
UplcProgram
2.6.46.
UplcString
2.6.47.
UplcUnit
2.6.48.
UplcValue
2.6.49.
UserError
2.6.50.
UTxO
2.6.51.
ValidatorHash
2.6.52.
Value
2.6.53.
Wallet
2.6.54.
WalletEmulator
2.6.55.
WalletHelper
3.
Helios CLI
❱
3.1.
Setup
❱
3.1.1.
Install helios-cli
3.1.2.
Setup cardano-node
3.1.3.
Wallet setup
3.2.
Using helios-cli
3.3.
Example: Always succeeds
3.4.
Example: Time lock
4.
Integrations
❱
4.1.
Different versions of Helios
4.2.
VSCode
4.3.
Webpack
5.
Advanced concepts
❱
5.1.
Exploits
5.2.
Intermediate representation
5.3.
Simplification
5.4.
Minting native assets
❱
5.4.1.
Signature based minting
5.4.2.
Unique minting
5.5.
Vesting contract
5.6.
English auction
5.7.
Oracle pools
5.8.
dApp recommendations
5.9.
Tx finalization
Light
Rust
Coal
Navy
Ayu
The Helios Smart Contract Language
Integrations
Different versions of Helios for on-chain vs. off-chain
VSCode plugin
Webpack loader