Can I create a local blockchain with Ruby on Rails or Node.js instead of Ethereum+Geth?
Asked Answered
S

1

9

The Question:

Does anyone know a stable framework which can be used to create a blockchain application, creating a server/node, creating a miner, a wallet, a blockchain inspector, etc?

Such a framework does not have to be in Node.js nor Ruby on Rails, but those are the two technologies I am most familiar with.

Some Background:

I have to craft an internship project based on blockchain technology.

I have been looking at Ethereum which seems nice. Ethereum's GETH command line interface allows me to create a blockchain and also mine that blockchain.

However, I need to be able to use a web-capable development platform such as Ruby on Rails, Node.js, or similar so I can have interns craft a UI to go along with a local blockchain.

I have looked at Toshi(RoR) and BitCoin.js(Node), but will need something that has better documentation.

Thanks for any and all your suggestions!

Sail answered 16/5, 2016 at 13:31 Comment(2)
github.com/ethereum/ethereumjs-lib ? or this github.com/ethereum/node-ethereum maybe ?Pasticcio
Check out Ethereum and Rails Tutorials or How can I connect to geth by IPC in rails?; also meteor-js is very popular to integrate blockchain projects, see 108 questions tagged with web3js on Ethereum Stack Exchange.Edgardo
N
5

When I built Etheria, I chose the following:

Development techs:

  • Ubuntu Linux 14.04
  • Eclipse Mars 2 (get from web, not repo) (javascript formatting works well, you can tell eclipse to format .sol files as javascript)
  • Solidity + chriseth's Solidity compiler at https://ethereum.github.io/browser-solidity

And for deployment:

  • Digital Ocean
  • Ubuntu 14.04
  • geth (stable, not development)
  • node + async + express

Notes on choices:

Ubuntu 14.04 for development - As it is the Linux standard, many Ethereum docs assume it which streamlines things. Easy to install geth and keep it upgraded.

Eclipse Mars 2 - Ubuntu's packaged Eclipse is old.

Solidity - Was once (is possibly still) billed as the "official" ethereum language and is easy to learn. chriseth is the man.

Digital Ocean - cheap, easy hosting. My security needs were nil as I didn't need a wallet on the machine. If you plan on keeping wallets on your machine, your risk profile may be different and necessitate other options.

Ubuntu 14.04 for deployment - Easy to install geth and keep it upgraded.

geth - I'm sure pyeth and eth are equally valid. geth is more widely used

node - Seamless interaction with the indispensable and awesome web3.js library which is used to interact with your geth instance (which should be running with local-access-allowed IPC). Async for easy async calls, express for endpoint creation and organization.

My code:

Etheria contract: https://github.com/fivedogit/etheria

Etheria node: https://github.com/fivedogit/etheria_node

Nightshirt answered 16/6, 2016 at 19:7 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.