1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31const Twitter = require('node-tweet-stream'); const twitter = new Twitter({ consumer_key: process.env.TWITTER_CONSUMER_KEY, consumer_secret: process.env.TWITTER_CONSUMER_SECRET, token: process.env.TWITTER_TOKEN, token_secret: process.env.TWITTER_TOKEN_SECRET }); const io = require('socket.io')(process.env.PORT || 3000); twitter.track('socket.io'); twitter.track('javascript'); let tweets = []; const MAX_TWEETS = 10; io.on('connect', socket => { socket.emit('buffer', tweets); }); twitter.on('tweet', tweet => { io.emit('tweet', tweet); tweets.unshift(tweet); tweets = tweets.slice(0, MAX_TWEETS); }); twitter.on('error', err => { console.error(err); });