This gem wraps oauth and oauth-plugin to make it simple to get tokens for services that muck can interact with various services.

For more documentation see:


Add the following to environment.rb

config.gem "oauth"
config.gem "oauth-plugin"
config.gem "muck-oauth"

Add the following to your user model:



Add the following to global_config.yml. Be sure to get keys from each service that you want to interact with.

# Oauth
# Twitter api access: 
twitter_oauth_key: ''
twitter_oauth_secret: ''

# Google api access:
google_oauth_key: ""
google_oauth_secret: ""

# Yahoo api access:
yahoo_oauth_key: ""
yahoo_oauth_secret: ""

# Flick api access:
# flickr_oauth_key: 
# flickr_oauth_secret: 

# Linked In api access:
# linkedin_oauth_key: ""
# linkedin_oauth_secret: ""
linkedin_oauth_key: ""
linkedin_oauth_secret: ""

# Friendfeed api access:
# Production
friendfeed_oauth_key: ''
friendfeed_oauth_secret: ''  
# Test
friendfeed_oauth_key: ''
friendfeed_oauth_secret: ''


Add configuration for services to:


Link to each service like this:

<a href="/oauth_consumers/twitter">Twitter</a>
<a href="/oauth_consumers/google">Google</a>

Each service provides methods that enable communication with the service's api via popular gems. For example, the twitter service uses the twitter gem and so you can call methods against a user's twitter account like this:


Please see each gem's documentation for more information: Twitter Docs: Twitter Examples: i.e.


Linked In Docs: i.e.


Google Docs: i.e.

Fire Eagle Docs: i.e.


Friend Feed Docs: None yet

Yahoo Docs: None yet

Flickr None yet

Tips and Help

If you get an error like this:

uninitialized constant User::TwitterToken

it means you need to setup your global_config.yml with the values specified above.

Copyright © 2009 See LICENSE for details.