git ssb

3+

ev / sdash



Tree: 809c5f5ccaa65e969f8cba0b0a6c0d687fde9ff5

Files: 809c5f5ccaa65e969f8cba0b0a6c0d687fde9ff5 / index.js

1671 bytesRaw
1var client = require('ssb-client');
2var pull = require('pull-stream');
3var avatar = require('ssb-avatar');
4var moment = require('moment');
5var markdown = require('marked');
6var app = require('koa')();
7var router = require('koa-router')();
8var serve = require('koa-static');
9var views = require('co-views');
10
11const me = '@8Qee0I/DwI5DHSCi3p5fsl6FyLGArrnDz3ox9qZr5Qc=.ed25519';
12const site = 'Evbogue.com';
13
14app.use(router.routes())
15app.use(serve(__dirname + '/static'))
16app.use(serve(__dirname + './../books/build'))
17app.use(serve(__dirname + './../site/build'))
18app.use(serve(__dirname + './../site/static'))
19app.use(serve(__dirname + './../boot/'))
20
21var render = views(__dirname, { ext: 'jade'});
22
23router.get('/', function *(next) {
24 client(function (err, sbot) {
25 if (err) {
26 throw err;
27 }
28 avatar(sbot, me, me, function (err, avatar){
29 if (err) {
30 throw err;
31 }
32 name = avatar.name;
33 image = avatar.image;
34 })
35 pull(
36 sbot.query.read({query: [{$filter: { value: { author: me, content: {type: 'post'}}}}], limit: 1, reverse: true}),
37 pull.drain(function (data) {
38 post = data;
39 })
40 )
41 pull(
42 sbot.query.read({query: [{$filter: { value: { author: me, content: {type: 'vote'}}}}], limit: 1, reverse: true}),
43 pull.drain(function (data) {
44 vote = data;
45 })
46 )
47 pull(
48 sbot.query.read({query: [{$filter: { value: { author: me, content: {type: 'git-update'}}}}], limit: 1, reverse: true}),
49 pull.drain(function (data) {
50 gits = data;
51 })
52 )
53 });
54 this.body = yield render('index', {title: site, moment, markdown});
55});
56
57app.listen('7000')
58
59

Built with git-ssb-web