Giter Club home page Giter Club logo

second-state / buidl Goto Github PK

View Code? Open in Web Editor NEW
363.0 9.0 9.0 52.5 MB

A browser-based IDE for creating, deploying, and sharing blockchain apps (DApps, or decentralized apps). Publish your first blockchain DApps in 5 minutes! Here is how: https://docs.secondstate.io/buidl-developer-tool/getting-started

Home Page: https://buidl.secondstate.io

License: GNU General Public License v3.0

JavaScript 25.49% HTML 3.99% Vue 53.59% TypeScript 14.66% Stylus 2.27%
ethereum smart-contracts solidity dapp development ide developer blockchain

buidl's Introduction

buidl

What is BUIDL?

BUIDL is a browser-based IDE that enables developers to create and deploy Decentralized Applications (DApps) on blockchains with ease.

  • Very fast underlying blockchain with 1s confirmation time.
  • Support all Ethereum compatible blockchains .
  • Lity (http://www.litylang.org/) language extension to Solidity (e.g., Rule-based smart contracts (https://www.litylang.org/business_rules/)) .
  • Built-in real-time smart contract search engine based on ElasticSearch.

Developers

If you are a developer, click https://www.secondstate.io/buidl/ to see tutorials and other information.

Make contributions

If you want to make contributions to BUIDL, follow the following steps to run BUIDL locally.

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your tests

npm run test

Lints and fixes files

npm run lint

Run your end-to-end tests

npm run test:e2e

Run your unit tests

npm run test:unit

Customize configuration

See Configuration Reference.

Demo

The example dapp is a web application where people can vote thumb up or thumb down on a statement. All the votes are recorded on the blockchain.

Contact

buidl's People

Contributors

alabulei1 avatar juntao avatar tpmccallum avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

buidl's Issues

Support Solidity >= 0.6.0

Can't convert an ETH contract because the compiler is too outdated in which Solidity is supported.

Import Accounts Broken

image

Metamask does not provide private keys for individual accounts (anymore?), only a mnemonic phrase that covers all possible generated accounts.

Regardless, it did not recognize a secret key generated in MEW when I tried importing. Directions should be included to add 0x to it.

Deploying contract on Ropsten TestNet

It appears that we will need to provide a gas value in the sendTransaction() method when pointing BUIDL to Ethereum networks (Ropsten TestNet included).

The simple storage contract compiles successfully in BUIDL but when it is deployed to Ropsten the following error is displayed in the BUIDL log output

Error: exceeds block gas limit

If we alter the sendTransaction code which executes at [1] then this contract may successfully deploy on the Ropsten TestNet.

There is a section of BUIDL code which has the potential to add the appropriate Ethereum gas parameters to the raw BUIDL transaction [2].

To ensure that this is not hard coded, perhaps we could have a button/switch in the BUIDL web console which allows us to toggle ETH gas on and off.

[1]

this.lity.sendTransaction = (transactionObject: any, callback?: Function) => {

[2]
const rawTx = {

Clearly label txhash in log

Screen Shot 2019-07-18 at 6 50 39 PM

The 0x... string in the log is supposed to be txhash. We need to clearly label it.

Also, the "success" message should be "pending" while we are waiting. Thanks.

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.