Skip to content

Commit

Permalink
Simple data-based rendering of desktop client list
Browse files Browse the repository at this point in the history
  • Loading branch information
luke-jr committed Apr 10, 2012
1 parent 08da958 commit 8d01072
Show file tree
Hide file tree
Showing 5 changed files with 199 additions and 0 deletions.
2 changes: 2 additions & 0 deletions _config.yml
Expand Up @@ -48,6 +48,8 @@ navigation:
section: news
- text: About
url: /about.html
- text: Clients
url: /clients.html

aliases:
s_nakamoto: Satoshi Nakamoto
Expand Down
3 changes: 3 additions & 0 deletions _less/bootstrap.less
Expand Up @@ -22,3 +22,6 @@
@import "tables.less";
@import "patterns.less";
@import "bitcoin.less";

// Clients
@import "clients.less";
15 changes: 15 additions & 0 deletions _less/clients.less
@@ -0,0 +1,15 @@
/* Clients.less
* Styles used on the Clients page
* ---------------------------------------------------------------------------- */

.best {
background-color: #ddffdd;
}

.good {
background-color: #ddffff;
}

.ugly {
background-color: #ffdddd;
}
35 changes: 35 additions & 0 deletions _plugins/clients.rb
@@ -0,0 +1,35 @@
module Jekyll

class Clients < Liquid::Tag
def render(context)
page = context.environments.first['page']
r = ''
for h in page['client_info']
r += '<tr>'
r += '<th>' + h['text'] + '</th>'
hid = h['id']
td = h.fetch('td', 'td')
for c in page['clients']
ci = c[hid]
curi = c.fetch(hid + '_uri', nil)
r += '<' + td
if h.has_key?(ci)
r += ' class="' + h[ci] + '"'
end
r += '>'
if curi
r += "<a href='" + curi + "'>" + ci + "</a>"
elsif ci
r += ci
end
r += "</" + td + ">"
end
r += '</tr>'
end
r
end
end

end

Liquid::Template.register_tag('clients', Jekyll::Clients)
144 changes: 144 additions & 0 deletions clients.html
@@ -0,0 +1,144 @@
---
layout: simple
section: clients

client_info:
- id: name
text: Client
td: th
Bitcoin-Qt: best
- id: start
text: Get Started
- id: audience
text: Audience
Everyone: best
End-users: good
- id: security
text: Wallet Security
Multisig: best
Encryption: good
- id: nodetype
text: Network Security
Full: best
- id: backups
text: Backups
One-time local: best
Automatic remote: good
Manual local: ugly
- id: setuptime
text: Setup Time
Hours: ugly
- id: disk
text: Disk Space
2+ GB: ugly
- id: maturity
text: Maturity
Aug 2009: best
May 2011: good
- id: license
text: License
- id: multiuser
text: Multi-user

clients:
- name: Armory
name_uri: http://bitcoinarmory.com/
start_uri: http://bitcoinarmory.com/index.php/get-armory
start: Download
audience: Everyone
security: Encryption
nodetype:
backups: One-time local
setuptime:
disk:
maturity: Jul 2011
license: AGPLv3
multiuser: Multi-wallet
- name: Bitcoin-Qt
name_uri:
start_uri: http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.6.0/
start: Download
audience: End-users
security: Encryption
nodetype: Full
backups: Manual local
setuptime: Hours
disk: 2+ GB
maturity: May 2011
license: MIT
multiuser: No
- name: bitcoind
name_uri:
start_uri: http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.6.0/
start: Download
audience: Developers
security: Encryption
nodetype: Full
backups: Manual local
setuptime: Hours
disk: 2+ GB
maturity: Aug 2009
license: MIT
multiuser: No
- name: MultiBit
name_uri: http://multibit.org/
start_uri: http://multibit.org/releases.html
start: Download
audience:
security:
nodetype:
backups:
setuptime:
disk:
maturity: Jul 2011
license:
multiuser:
- name: My Wallet
name_uri: https://blockchain.info/wallet
start_uri: https://blockchain.info/wallet/new
start: eWallet
audience: End-users
security: Encryption
nodetype:
backups: Automatic remote
setuptime:
disk:
maturity: Dec 2011
license:
multiuser:
- name: StrongCoin
name_uri: https://strongcoin.com/
start_uri: https://strongcoin.com/users/sign_up
start: eWallet
audience:
security: Encryption
nodetype:
backups: Automatic remote
setuptime:
disk:
maturity: Sep 2011
license:
multiuser:
---
<div class="container">
<section id="clients">
<h1>Bitcoin Clients</h1>
<!-- yes, this is an abuse of tables, but really CSS doesn't provide any sane way to do the same thing :( -->
<table><tr>
<td style="border-right: 1px solid black; vertical-align: top">
<ul style="list-style-type: none">
<li>Android</li>
<li>Linux</li>
<li>Mac</li>
<li>Ubuntu</li>
<li>Windows</li>
</ul>
</td>
<td>
<table>
{% clients %}
</table>
</td>
</tr></table>
</section>
</div>

0 comments on commit 8d01072

Please sign in to comment.