I am much familiar with Rails but new in the Ethereum. But base on my understanding, if I am going to build a Dapp.

The web stack should not include the back-end system like Rails. But why there's so many projects like ethereum.rb, web3.py, etc.

By using this, if an end-user wants to send a request (ex: voting), he must send it to the back-end (ex: Rails server), and then call API request to the real Ethereum system by using the above plugin, right?

Sounds wired to me, is it violating the original decentralized design? I am super confused about this part.

2 Answers 2


there should be a software library that builds dApps like how rails does. rails should make an ethereum gem that uses ethereum instead of a centralized postgres db and active record should be able to run on any etherum vm. front end layer would be whatever html gets served by the dapp. that's my goal for unlimit3d. a truly free society. rails is a good framework because it ships with easy to use platform constructs such as all users being equal by default etc. a gem to interact with solidity or the ethereum vm and run rails style commands to develop would be amazing.

lets call it 'dapps'

you would have commands like dapps new mydapp or dapps g scaffold MODELNAME attribute:type

lol a bash script would be

dapps new distributedblog

cd distributedblog

dapps g scaffold user fullname:encrypted penname:string:uniq email:encrypted password:encrypted bio:text

#or some devise-like system adapted to dapp structure

dapps g scaffold entry title:string content:text user:references

and you'd have a basic blog dapp. MVC structure would still be there and its available to anyone.

now the question is what types of things should we make into dApps? perhaps we could try making a drivercoin dApp? taxicoin? pay drivers more and use proof of gps sensors on phone/'miner' from both the driver and client to verify.

i also wrote about energycoin a while back at www.azeemhussein.com/energycoin but that needs national and infrastructural planning to execute.

energycoin will free our nation from oil and pollution. it will also make renewable energy generation the most profitable thing in the world. we have a climate clock to race against.


Indeed it is violation of decentralisation. If multiple users are sending transactions to a single server then this makes it a centralised system. Ethereum.rb is a client written in ruby. Just like we have geth written in go. These clients though are written in back-end languages but are meant to serve webpages, they actually make p2p connections, store keys and Blockchain. To create a dapp, you only need front end technologies. Ethereum smart contracts make up the back-end.

The front end sends a request (transaction) to a node which validates it and broadcasts it to the rest of the network. And the rest of the network does the same and also executes the transactions. After 10-15 seconds a new block is added to the chain.

  • "Ethereum.rb is a client written in ruby". Does it mean the client can execute it by themselves? How does that suppose to do? I mean the browser normally can't execute it, right?
    – rj487
    Feb 20, 2019 at 21:03
  • whats "it"? Smart contracts? then yes. Browser is not an ethereum client, it can only be a wallet. Mar 1, 2019 at 3:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.