Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
This branch is 22 commits ahead of akutakustik:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


This app allows you to distribute a free SoundCloud track download in exchange for a social interaction, such as Sharing on Facebook and Tweeting on Twitter. Effectively creating a "Tweet/Share for Download" campaign. The default application has many customization options, but feel free to adjust and fork as needed. You can see an example of the default app running here.


1. Install Ruby, RubyGems, & Rails

Mac OS X: Ruby and Rails comes pre-installed on Mac OS X, but you'll want to upgrade it by following these instructions.

Windows: Follow these instructions to install Ruby and Rails on Windows.

2. Install Git & Generate SSH Key

Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

  1. Install Git: On a Mac, Windows, or UNIX/Linux
  2. Sign up for Github
  3. Follow these instructions to generate an SSH key & add the key to your Github account.
  4. Set user name and email globally on git by following these instructions

3. Register a new SoundCloud application

  1. Make sure you're signed up for SoundCloud and logged in.
  2. Go here, name your app, and click Register
  3. Copy the Key and Secret to a text file for later

Register Social Apps

You'll need to create applications for each of the social services you wish to use on your promotion and copy the given keys and secrets for later. Current services are: Twitter, Facebook, MySpace, and Digg

1. Register a new Twitter application

  1. Go here
  2. Name your application and give it a Description
  3. Input your Application Website (url where your app will live)
  4. Add your artist name as Organization and your artist website url as Website
  5. Make sure Browser is selected on Application Type
  6. Input your Callback URL (url where your app will live)
  7. Select Read & Write for Default Access type
  8. Click Save
  9. Finally, copy the Key and Secret to a text file for later

2. Register a new Facebook application

  1. Go here, name your app, agree to terms, and click Create Application
  2. Click Connect in the left column and add your Connect URL (url where your app will live), then click Save Changes
  3. Copy the Application ID and Secret to a text file for later

3. Register a new MySpace application

  1. Go here and click Create MySpaceID App
  2. Give your application a Title, agree to the terms, and click Next
  3. Add a short Description to your app and scroll down to External Site Settings
  4. Input your External URL (url where your app will live)
  5. Then input your External Callback Validation (url to your app + '/oauth_callback/myspace')
  6. Agree to the terms and click Save
  7. Scroll down to OAuth Settings and copy the Key and Secret to a text file for later

4. Register a new Digg application

  1. Login to Digg
  2. Go here and click My Apps
  3. Click Create New App
  4. Give your application a Name and Description
  5. Copy the Key and Secret to a text file for later.
  6. Click Save App


Clone the application on your local computer by running the following command in your Terminal emulator. (Terminal on Mac, Console on Windows)

 git clone git:// project_name

Now you're ready to do some configuring.


Configuring the application is simply done by editing the following files auth.yml settings.yml in the config folder.

If you're looking for a decent text editor, try TextMate

1. Update Authentication File

  1. Input the following into config/auth.yml
  2. SoundCloud Key and Secret into production > soundcloud > prokey & prosecret
  3. Twitter Key* and Secret into production > twitter > prokey & prosecret
  4. Facebook Application ID and Secret into production > facebook > proappid & prosecret
  5. MySpace Key and Secret into production > myspace > prokey & prosecret
  6. Digg Key and Secret into production > digg > prokey & prosecret

2. Update Settings File

  1. Input the following into config/settings.yml
  2. Your promotion title, description, and track url
  3. Customize the player params as needed (You can view a full list of parameters here)
  4. You can also set your player type, height, and width
  5. Next input the promotion header and instructions
  6. Would you like to allow email submission as an alternative? true or false
  7. Adjust the comma separated list of services to reflect which 3rd party sites you'll be using.
  8. Adjust the default social language such as button, header, and status for each service being used.

Customize CSS & Images

Replace default images

Replace the following images within the public/images folder with something that relates to your competition.

  • bg.jpg: background image
  • logo.png: logo that appears in the top center of your app. Replace with another transparent png of your choosing.
  • artwork.jpg: a square 425 x 425 pixel image used for sharing. This should be the image associated with your track (album cover, single cover, etc).

Adjust default CSS

You can further customize the aesthetics of your application by adjusting application.css found within public/stylesheets. Here's a few ideas:

  • Change the color and font of text in the body selector
  • Change the color of links and their hover effect in the a selector
  • Change the color of headlines in the h1, h2 selector
  • Change the background gradient and color of the button in the button selector


Deploying on Heroku

  1. Create a Heroku Account
  2. Install the Heroku Gem
  3. And finally, deploy it to Heroku

Connect the App to Your SoundCloud Account

You must connect the app to the SoundCloud account which owns the track you are offering for download.

To do this, visit and login with the appropriate SoundCloud account.

Submit URL to Digg

If you're using Digg, be sure to submit your campaign's url to so the app has something to Digg.

Export Submitted Emails

  1. Visit and login with the SoundCloud account that owns the track you are offering for download.
  2. Visit and you'll get a CSV dump of all submitted emails.

Tips and Tricks

  • Visit to get a list of all default SoundCloud embed widgets. You can use this page when marketing your campaign: 'Go here to grab an embed code of the track being offered for social download.'
  • Visit to get the basic code needed to create an FBML tab application used to market your promotion. For more info on creating FBML tab apps, go here.
  • A "Free Download" button is added to the player embed via a customized 'buy' button which directs people to your campaign. More on that hack here.


SoundCloud-Social-Download is Copyright (c) 2010 Lee Martin and SoundCloud, released under the MIT License.


Give a SoundCloud download in exchange for a social interaction, such as Share on Facebook.






No releases published


No packages published


  • Ruby 63.0%
  • JavaScript 37.0%