New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@terra-money/houston

Package Overview
Dependencies
Maintainers
5
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@terra-money/houston

Core module for Houston smart contract framework

  • 0.2.8
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
86
increased by168.75%
Maintainers
5
Weekly downloads
 
Created
Source

Houston 🚀




npm npm bundle size

Houston is a development environment, testing framework and smart contract pipeline for Terra, aiming to make life as a Terra developer easier.

Features

  • Built-in smart contract compilation, linking, deployment and wasm binary management.
  • Automated contract testing with Mocha and Chai.
  • Configurable build pipeline with support for custom build processes.
  • Scriptable deployment & migrations framework.
  • Network management for deploying to Terra's public & private networks.
  • Interactive console for direct contract communication.
  • Instant rebuilding of wasm binaries during development.

Installation

Houston will gracefully setup a stable version of rust compiler and wasm target to develop smart contracts on Terra blockchain.

Grab the latest version of NPM:

npm install -g houston

Documentation

To get more information on Houston, check out the documentation.

Kickstart

Houston has five commands to help smart contract development:

init: for project initialization

compile: for compiling contracts

deploy: for deploying contracts to blockchain

add: for adding or downloading contract cargo projects

test: for executing test scripts with Mocha and Chai

To get help on each command, run houston help <command>.

Initialize project

mkdir myProject
cd myProject
houston init

Once this operation is completed, you'll now have a project structure with the following items:

myProject/
  |- contracts
  | |- starter
  |- wasm
  |- schema
  |- test
  |- houston-config.js

contracts: contract directory for cosmwasm contract cargos

wasm: wasm binary directory for compiled contracts

schema: generated schema for compiled contracts

test: test script directory for contract interaction

starter: a starter cosmwasm project

Compile contracts

Set current working directory inside of the project directory

houston compile --contracts [contractName]

All contract cargos in the contracts directory will be compiled as default.

[contractName] is an optional parameter to specify which cargo to compile with the command.

Once this operation is initiated, you'll see the event in the console as below:

Compiling your contracts...
===========================

After comilation of each contract, you'll get the directories for compiled results as below:

> WASM written to /Users/terraformlabs/myProject/wasm
> Schemas written to /Users/terraformlabs/myProject/schemas/starter_schemas

Compiled WASM binaries will be placed in wasm directory as <cargo name>.wasm. Generated collection of schema json files will be placed as a directory with the name <cargo name>-schema in schema directory.

You will have the new project structure with the following items:

myProject/
  |- contracts
  | |- starter
  |- wasm
  | |- starter.wasm
  |- schema
  | |- starter-schema
  |   |- config.json
  |   |- ....
  |- test
  |- houston-config.js

Contributions

Contributions are welcome to this project for helping Terra developers to build their dapps. To contribute to this project, you can check CONTRIBUTING.md for the detail.

Or you can join the Terra's official discord channel and discuss new ideas or addition.


License

This software is licensed under the Apache 2.0 license. See LICENSE for full disclosure.

© 2020 Terraform Labs, PTE.


 

Powering the innovation of money.

Keywords

FAQs

Package last updated on 12 Oct 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc