Author

Topic: A Better bitcoind Frontend (Read 1287 times)

member
Activity: 114
Merit: 10
January 01, 2013, 03:47:21 AM
#12
Sounds like a good idea. I hope you find a great project to contribute your skills to.

-DJohnston
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
January 01, 2013, 02:58:15 AM
#11
Thanks, appreciated!
legendary
Activity: 1092
Merit: 1016
760930
January 01, 2013, 02:46:34 AM
#10
So I run it like this:
Code:
electrum --server my.server.com:8332:h
But I get an error:

HTTP 401 Authorization Required

Well, of course. bitcoind uses HTTP Basic Auth. But the documentation is confusing. I guess I need to set up bitcoin-abe and electrum-server? Is there a guide somewhere?

Edit: I found https://github.com/spesmilo/electrum-server - this looks useful!

Indeed that's the codebase repository for the server.

For starters, I'd suggest to run a pruning server: easier to setup (but you still feel a sense of achievement once you've done that), less resource-hungry, more stable, and you don't need to install ABE for that.  Here's a great tutorial to do this: https://bitcointalksearch.org/topic/tutorial-electrum-server-on-amazon-ec2-step-by-step-130533

If you need additional support for that, you will most often find experts willing to help on #electrum (IRC).

While you get this done, you can of course just connect to a public Electrum server from your client. In fact, as you can see by reviewing the source code, the client-server protocol doesn't allow servers to do anything particularly malicious, so most regular users just choose to connect to one of the available servers and never bother to install one themselves.  The only downside in that case (with the current implementation, at least) is that you sacrifice a tiny bit of privacy.
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
December 31, 2012, 08:51:13 PM
#9
So I run it like this:
Code:
electrum --server my.server.com:8332:h
But I get an error:

HTTP 401 Authorization Required

Well, of course. bitcoind uses HTTP Basic Auth. But the documentation is confusing. I guess I need to set up bitcoin-abe and electrum-server? Is there a guide somewhere?

Edit: I found https://github.com/spesmilo/electrum-server - this looks useful!
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
December 31, 2012, 08:42:25 PM
#8
Actually, Electrum is almost exactly what you're describing...

You set up bitcoind to run on a server (+ electrum server script), to which you connect
from the client. It is lightweight, uses Qt, comes for Linux, Windows, Mac and Android, and
even has a TUI (curses) version!

It all is quite stable now, and has a active community (including on IRC). I would say its
main weakness is the lack of adequate documentation for all these things (so far.)
Great! This is what I was looking for!

I missed that Electrum could work this way. Yeah, I guess I have a lot to learn!
vip
Activity: 1386
Merit: 1140
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
December 31, 2012, 07:30:00 PM
#7
I'd like the same thing but would prefer to call it something inverse:

Bitcoind needs to be broken down so it becomes a "bitcoin knowledge center" server, sort of like blockchain.info.  Then front end apps can be written with the assumption that the knowledge center either is trustworthy, or that it can prove everything that matters.

One discrete portion of the "knowledge center" should be dedicated simply to determining the hash of the latest valid block in the chain.  Right now, we strictly use proof of work.  But I'd feel better if that could be expanded to accept a few backup factors, like the user's own opinion, or a party they trust.  (Clearly this is bound to be a controversial subject, but it won't be controversial anymore the first time somebody tries a 51% attack)

Another major function of the knowledge center should be getting the balances of arbitrary wallets.
legendary
Activity: 1092
Merit: 1016
760930
December 31, 2012, 07:23:12 PM
#6
Actually, Electrum is almost exactly what you're describing...

You set up bitcoind to run on a server (+ electrum server script), to which you connect
from the client. It is lightweight, uses Qt, comes for Linux, Windows, Mac and Android, and
even has a TUI (curses) version!

It all is quite stable now, and has a active community (including on IRC). I would say its
main weakness is the lack of adequate documentation for all these things (so far.)
legendary
Activity: 1148
Merit: 1008
If you want to walk on water, get out of the boat
December 31, 2012, 06:49:07 PM
#5
Try Armory.

Or Multibit (lightweight client, so you don't have to download the whole blockchain)
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
December 31, 2012, 06:07:27 PM
#4
Well... in the last 30 minutes I've created a curses TUI app that links with libcurl to hit up the json RPC.
member
Activity: 84
Merit: 10
December 31, 2012, 06:01:25 PM
#3
How's your project currently going?
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
December 31, 2012, 05:29:40 PM
#2
Hah! Funny, that post was what put me over the top, now I've leveled up to 2 coins, so I should really move this to the Development forum.
full member
Activity: 140
Merit: 100
1221iZanNi5igK7oAA7AWmYjpsyjsRbLLZ
December 31, 2012, 05:28:11 PM
#1
Since I'm still a newbie, I'll put this thread in the newbies section. Mods: please feel free to move this to the development section.

I'm new to bitcoins. Too bad, right? Smiley I missed out on all the fun! The ASICpocalypse is here and bitcoins have lost all their value. Heh, nevermind: it didn't happen.

Hey, one thing a newcomer might notice that everyone else has gotten used to: it takes forever to bootstrap a bitcoin client and it has to stay connected all the time!

Now, I don't trust anyone so I'll never be putting my wallet in the cloud. So I'll run bitcoind on an always-on machine I have in a locked cage somewhere, that's easy! And as soon as I started up bitcoind it hit me:

This needs a better frontend.

Ok, I admit, I only looked at a few and really only tried bitcoin-js-remote before I decided this isn't going to work.

Anyone want to help me write a better frontend? I'm currently unemployed but here are the apps I'd like to make, sorted from quick and easy (get my feet wet) to hard:

1. Linux Terminal App (bitcoind TUI frontend)

2. Qt App for my linux laptop. I don't like having to leave my laptop connected all the time just to keep my block chain up to date!

3. Android app

4. Mac OS native app

5. Windows native app

6. iOS app (I might never get around to this one. They can just use bitcoin-js-remote, right?) :-}
Jump to: