Setup DApp Environment

GoLang

Go, also known as Golang, is a statically typed, compiled programming language designed at Google. Go is syntactically similar to C, but with memory safety, garbage collection, structural typing, and CSP-style concurrency. Ledgerium Blockchain's Geth client is written in Golang.

Node.js

Node.js® is an open-source, cross-platform JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js executes JavaScript code outside of a browser. Node.js lets developers use JavaScript to write command-line tools and for server-side scripting—running scripts server-side. Many of the software written and adopted by Ledgerium Blockchain is written in Node.js.

Yarn

Yarn is a Javascript dependency manager and its main features that make Yarn very popular are the speed with which it processes dependencies, its security, and flexibility.

Solidity

Solidity is an object-oriented, high-level language for implementing smart contracts. Smart contracts are programs which govern the behaviour of accounts within the Ledgerium state. Solidity was influenced by C++, Python and JavaScript and is designed to target the Ethereum Virtual Machine (EVM). Solidity is statically typed, supports inheritance, libraries and complex user-defined types among other features.

With Solidity, you can create contracts for uses such as voting, crowdfunding, blind auctions, and multi-signature wallets. Detailed working is available @ Solidity

Web3.js

web3.js is a collection of libraries which allow you to interact with a local or remote Ledgerium node, using an HTTP or IPC connection. However, Ledgerium Blockchain uses XLG as its underlying currency equivalent to ether. In order to Ledgerium JavaScript API to work with XLG denomination, Web3JS library has to be extended to use with ethjs-unit-ledgerium.js library.

ethjs-unit-ledgerium.js

A simple module for handling Ledgerium units. LedgeriumWeb3.js uses this library to deal with Ledgerium Blockchain units.

Truffle

Truffle is a development environment, testing framework and asset pipeline for Ethereum & Ledgerium, aiming to make life as a Ledgerium developer easier. With Truffle, developer get

  • Built-in smart contract compilation, linking, deployment and 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 many public & private networks.

  • Interactive console for direct contract communication.

  • The instant rebuilding of assets during development.

  • External script runner that executes scripts within a Truffle environment.

Remix

Remix is a powerful, open-source tool that helps you write Solidity contracts straight from the browser. Written in JavaScript, Remix supports both usage in the browser and locally. Remix also supports testing, debugging and deploying of smart contracts and much more.