git ssb

3+

ev / sdash



Tree: 17b07347cac60d6c6ad5588e2408644c177b2c9c

Files: 17b07347cac60d6c6ad5588e2408644c177b2c9c / index.js

1533 bytesRaw
1var client = require('ssb-client');
2var pull = require('pull-stream');
3var avatar = require('ssb-avatar');
4var moment = require('moment');
5var app = require('koa')();
6var router = require('koa-router')();
7var views = require('co-views');
8
9var me = '@8Qee0I/DwI5DHSCi3p5fsl6FyLGArrnDz3ox9qZr5Qc=.ed25519';
10
11app.use(router.routes())
12
13var render = views(__dirname, { ext: 'jade'});
14
15router.get('/', function *(next) {
16 client(function (err, sbot) {
17 if (err) {
18 throw err;
19 }
20 avatar(sbot, me, me, function (err, avatar){
21 if (err) {
22 throw err;
23 }
24 name = avatar.name;
25 image = avatar.image;
26 })
27 pull(sbot.createUserStream({
28 id: me,
29 limit: 1,
30 reverse: true
31 }),
32 pull.drain(function (msg) {
33 date = moment(msg.value.timestamp).fromNow()
34 if (msg.value.content.type === 'post') {
35 message = (msg.value.content.text)
36 }
37 else if (msg.value.content.type === 'vote') {
38 message = (' dug ' + msg.value.content.vote.link)
39 }
40 else if (msg.value.content.type === 'about') {
41 message = (' identified ' + msg.value.content.about + ' as ' + msg.value.content.name)
42 }
43 else if (msg.value.content.type === 'git-update') {
44 message = (' pushed a git commit ')
45 }
46 else {
47 message = (' sent a private message ')
48 }
49 gotMessage();
50 }));
51 });
52 function gotMessage() {}
53 this.body = yield render('index', {title: 'sdash', message, date, name, image});
54});
55app.listen(4000);
56
57

Built with git-ssb-web