EthTweetUi - a web client for EthTweet

EthTweetUI

One friend recently asked me if I can help him in Building a Web interface for his Blockchain based EthTweet system.

The Ethereum blockchain seems to be a promissing approach for futur decentralized webapplications. The Ethereum-Blockchain is a simmilar to the Bitcoin currency but includes the ability to include code – or in this case Tweets.

So every running instance of the Ethereum will contain and sync all „content“ of itslf. This will make consorship impossible as everyone can set up his own instance.

Getting started

Getting deeper into the misterious Blockchain stuff found Web3 a javascript based Ethereum API and cam to the conclusion that this will be a good project to start with Angular2 and build an Standalone App for eth tweet, which potenially can become a WebService or a mobile App.

I ran into Angular JS more often recently. There seems a high demand on the Frontend developer market and I heared some Sessions about Angular on FROSCON. It's a new approach to tackle Web- especially App development, which requires to rethink all the way how to produce „frontend“.

Actually I didn't really like the results I've seen from some Angular Apps, they seem to enable a lot of people with no ideas about user interaction to make Websites, which results in very bad user interfaces. This seems to be trendy and annoying. Looking closer I found a lot of stuff which is between impossible and hard to do with traditionall webbuilding, which seems very promissing.

So after learning and some dumped versions I found a good way ti implement Web3 API as a Angular 2 Service and extend it with the EthTweet functionality. Packed it all together with Webpack using a Yo Generator for Angular 2 and Webpack as boilerplate.

EthTweet as Webservice?

Currently you can only read tweets if you have a running ethereum Instance running and be able to access it over any web connection. The main drawback using Web3 by now is tha the Personal API (The functions you need to unlock a account) is not available.

Functions to register or unlock an account in order to send out a tweet, can only be used if you connect to Ethereum by IPC Pipe, which counters the Idea of a webservice.

You can find the EthTweet-Ui on github.