Starting point

None of this code is final - indeed, most of it is just gubbins -
but it shows the path I mean to take with the code, I hope.

Much more to come.
This commit is contained in:
Nicholas Thomas
2011-05-15 00:36:57 +01:00
commit 5554ff2dbe
17 changed files with 321 additions and 0 deletions

41
doc/AIMS Normal file
View File

@@ -0,0 +1,41 @@
=== To produce a bitcoin application ===
This will be a web application, written in ruby (using appropriate technologies)
that can be run standalone, for a single user on their home machine, or on a web
server for many users.
Needs to be feature-complete by comparison to the official bitcoin client, with
the exception of block generation - we're not bothering with that aspect at all
right now. Also needs feature parity with mybitcoin.com
List:
- Multiple users
- Each user has a wallet
- Ability to receive payments
- Transaction history
- Ability to make payments, specify fee per-payment
- Able to take part in the global bitcoin network as a full member.
- Shopping cart integration
- On-the-fly currency comparison
- Payment forwarding
- API access via the JSON-RPC specification to control the account
Also needs *extra* features
- Only one block chain for all users in the cluster (faster startup time)
- (mybitcoin) : open-source, run it for yourself if you want to!
- britcoin, bitmarket, mtgox integration
- Address book
- Support for sending payments to email addresses - use webfinger to resolve
- Simpler REST API
=== Technology ===
Runtime: Ruby 1.9.2-p180
Web server: Thin
Templating: haml, sass, coffeescript
ORM: ActiveRecord
Live action: SSE (depends: thin-async)
Key generation: OpenSSL
Database: standalone: SQLite3/SQLCipher. All-in: postgres/mysql
Bitcoin network peer: event-machine, bit-struct