Skip to content
This repository

Twitter API client library for node.js

This branch is 0 commits ahead and 0 commits behind master

Update timeline resources

Add getRetweetedToUser() and getRetweetedByUser(), deprecated
getPublicTimeline() and getFriendsTimeline()
latest commit 5fa1af0d15
Jeff Waugh authored
Octocat-spinner-32 lib Update timeline resources
Octocat-spinner-32 test update memory.txt output to compare node 0.2.5 and 0.3.2
Octocat-spinner-32 .gitignore Ignore vim swap files
Octocat-spinner-32 .npmignore Ignore vim swap files
Octocat-spinner-32 LICENSE The big shift from twitter-node to node-twitter.
Octocat-spinner-32 README.md Nicer links for @technoweenie
Octocat-spinner-32 index.js move more firmly away from node-twitter as npm/lib name
Octocat-spinner-32 package.json Tidy up readme
README.md

Twitter API client library for node.js

node-twitter aims to provide a complete, asynchronous client library for the Twitter API, including the REST, search and streaming endpoints. It was inspired by, and uses some code from, @technoweenie's twitter-node.

Requirements

You can install node-twitter and its dependencies with npm: npm install twitter.

Getting started

It's early days for node-twitter, so I'm going to assume a fair amount of knowledge for the moment. Better documentation to come as we head towards a stable release.

Setup API (stable)

var util = require('util'),
    twitter = require('twitter');
var twit = new twitter({
    consumer_key: 'STATE YOUR NAME',
    consumer_secret: 'STATE YOUR NAME',
    access_token_key: 'STATE YOUR NAME',
    access_token_secret: 'STATE YOUR NAME'
});

Basic OAuth-enticated GET/POST API (stable)

The convenience APIs aren't finished, but you can get started with the basics:

twit.get('/statuses/show/27593302936.json', {include_entities:true}, function(data) {
    console.log(util.inspect(data));
});

REST API (unstable, may change)

Note that all functions may be chained:

twit
    .verifyCredentials(function(data) {
        console.log(util.inspect(data));
    })
    .updateStatus('Test tweet from node-twitter/' + twitter.VERSION,
        function(data) {
            console.log(util.inspect(data));
        }
    );

Search API (unstable, may change)

twit.search('nodejs OR #node', function(data) {
    console.log(util.inspect(data));
});

Streaming API (stable)

The stream() callback receives a Stream-like EventEmitter:

twit.stream('statuses/sample', function(stream) {
    stream.on('data', function(data) {
        console.log(util.inspect(data));
    });
});

node-twitter also supports user and site streams:

twit.stream('user', {track:'nodejs'}, function(stream) {
    stream.on('data', function(data) {
        console.log(util.inspect(data));
    });
    // Disconnect stream after five seconds
    setTimeout(stream.destroy, 5000);
});

Contributors

TODO

  • Complete the convenience functions, preferably generated
  • Fix ALL THE THINGS! on the GitHub issues list
Something went wrong with that request. Please try again.