This gem wraps the omniauth gem to make it simple to authenticate with multiple services.


Add muck-auth to your Gemfile:

gem 'muck-auth'

After installing muck-auth be sure to sync the gem:

rake muck:sync:auth

or to sync everything from the muck framework:

rake muck:sync


Add services by including the proper credentials in secrets.yml:

  twitter: # Twitter api access: 
    key: '{get a key}'
    secret: '{it comes with a secret}'
    valid_signin: true   # include if you want to use this service to let your users signin/register for your site

OAuth Services

Here's a list of common oauth services. For a complete list of all available services please consult the omniauth documentation as the available services are constantly changing:

Google:  (domains are managed on:
Linked In:


Render a full list of all services with links to authorize the service and icons:

<%= render :partial => 'authentications/available_services', :locals => { :include_icons => true } %>

Render a list of all services that the current_user has authorized:

<%= render :partial => 'authentications/current_services', :locals => { :include_icons => true, :authentications => current_user.authentications } %>

Let users sign in and/or register on your site via oauth. Just remember to set valid_signin to true in your secrets.yml file:

<%= render :partial => 'users/signup_services' %>

There is a default template ('authentications/signup') that will be rendered if the sign up fails. Override that template if you want to provide the user with a custom experience:

Copyright © 2009-2011 See LICENSE for details.