Django Hackathon Starter ------------------------ A boilerplate application for Django web applications. If you've attented hackathons, you already know how much time can be wasted figuring out what language to pick, which web framework to choose, which APIs to incorporate, and figuring out OAuth authentication. Django Hackathon Starter aims to provide these features out of the box, allowing the team to save hours of time getting these pieces together. Even if you are not using this for a hackathon, Django Hackathon Starter is sure to save any developer hours or even days of development time and can serve as a learning guide for web developers.
1. Register an account on [Yelp.com](http://www.yelp.com/)
2. Visit the [Yelp for developers page](https://www.yelp.com/developers/manage_api_keys)
3. You will obtain the following: `CONSUMER KEY`, `CONSUMER SECRET`, `TOKEN`, `TOKEN_SECRET`
4. Within `settings.py`, add the following:
* `YELP_CONSUMER_KEY` = `Yelp Consumer Key`
* `YELP_CONSUMER_SECRET` = `Yelp Consumer Secret`
* `YELP_TOKEN` = `Yelp Token`
* `YELP_TOKEN_SECRET` = `Yelp Token Secret`
1. Register an account on [Twilio.com](https://www.twilio.com/)
2. Get your [Twilio Number](https://www.twilio.com/user/account/phone-numbers/incoming)
3. [Setup the numbers](https://www.twilio.com/user/account/phone-numbers/incoming) you want to be able to send messages to
4. Grab your `account_sid` and `auth_token` [here](https://www.twilio.com/user/account/voice-messaging)
5. Within `scripts/twilioapi.py`:
* Replace `account_sid` with your own Twilio `account_sid`
* Replace `auth_token` with your own Twilio `auth_token`
1. Register an account on [Github.com](http://www.github.com/).
2. Visit [Github developer applications page](https://github.com/settings/developers)
3. Click on **Register new application**.
* Enter `Application name` and `Homepage URL` field
* For `redirect url` field, enter: `http://127.0.0.1:8000/hackathon/`
4. Click **Register application**.
5. Within `settings.py`, add the following:
* `GITHUB_CLIENT_ID` = `Github-client-id`
* `GITHUB_CLIENT_SECRET` = `Github-client-secret`
1. Register an account on [Twitter.com](http://www.twitter.com/)
2. Visit [Twitter application management page](https://apps.twitter.com/)
3. Click on **Create New App**
* Enter `Application name`, `Description`, and `Website` field
* For `Callback URL` field, enter: `http://127.0.0.1:8000/hackathon/`
4. Click **Create your Twitter application**
5. Go to the **Permissions** tab
6. Under *Access*, select **Read and Write** type
7. Go to **Keys and Access Tokens** tab
8. Under *Your Access Token*, click on **Create my access token** to generate access tokens
9. Within `settings.py`, add the following:
* `TWITTER_CONSUMER_KEY` = `Twitter-consumer-key`
* `TWITTER_CONSUMER_SECRET` = `Twitter-consumer-secret`
* `TWITTER_ACCESS_TOKEN` = `Twitter-access-token`
* `TWITTER_ACCESS_TOKEN_SECRET` = `Twitter-access-token-secret`
1. Register an account on [Instagram.com](http://www.instagram.com/).
2. Visit [Instagram manage clients page](https://instagram.com/developer/clients/manage/)
3. Click on **Register a New Client**
* Enter `Application name`, `Description`, and `Website URL` field
* For `Redirect URI` field, enter: `http://127.0.0.1:8000/hackathon/`
4. Within `settings.py`, add the following:
* `INSTAGRAM_CLIENT_ID` = `Instagram-client-id`
* `INSTAGRAM_CLIENT_SECRET` = `Instagram-client-secret`
1. Register an account on [Linkedin.com](http://www.linkedin.com/).
2. Visit [Linkedin developer Network page](https://www.linkedin.com/secure/developer)
3. Click on **Add New Application**
* Enter `Company Info`, `Application Info`, and `Contact Info` section
* Under `OAuth User Agreement` section, select scopes needed
* For `OAuth 2.0 Redirect URLs` field, enter: `http://127.0.0.1:8000/hackathon/`
4. Click **Add Application**
5. Within `settings.py`, add the following:
* `LINKEDIN_CLIENT_ID` = `Linkedin-client-id`
* `LINKEDIN_CLIENT_SECRET` = `Linkedin-client-secret`
1. Register an account on [Facebook.com](http://www.facebook.com.com/)
2. Visit [Facebook Developers page](https://developers.facebook.com/)
3. After logging in, Click on **My Apps** and then on **Add a New App**
* Choose W**ebsite** as the platform and add the **name** for your project
* Give your app a name.
* Choose the category your app falls into.
* Click **Create App ID**
* Skip the quickstart process and you will be redirected to the app dashboard.
4. Copy the **app ID** and the **app secret**.
5. From the left menu choose the **Settings** option.
6. Click on **Add Platform** and choose **Website** once again.
7. Under **site URL**, specift the URL to be redirected after authentication is complete.
8. Click save.
9. In ```settings.py``` change the following values:
* ```FACEBOOK_APP_ID = your_app_id```
* ```FACEBOOK_APP_SECRET = your_app_secret```
1. Register an account on [Google.com](https://accounts.google.com/signup).
2. Navigate to [Google Developer Console](https://console.developers.google.com/project).
3. Click on **Create Project**, give your app a name and click **Create** (this might take a few sceonds).
4. You will be redirected to the project dashboard. From the left menu choose **APIs & auth** and then choose **APIs**.
5. Choose the API you would like to use (the built in example uses **Google+ API**).
6. Click on **Enable API**.
7. From the side menu, under **APIs & auth** select **consent screen**.
* Fill your app name under **Product Name**.
* Hit **save** button on the bottom.
8. From the side menu, under **APIs & auth** select credentials:
* Click on **Create new Client ID**.
* Under **Authorized JavaScript origins** specify you app base address (e.g ```http://localhost:8000```).
* Under **Authorized redirect URIs** specify the URL to be redirected after authentication is complete.
* Hit **Create Client ID** button (this might also take a few seconds).
9. Copy your new generated ```client_id``` and ```client_secret```:
10. Under ```settings.py``` change the following values:
* ```GOOGLE_PLUS_APP_ID = your_client_id```
* ```GOOGLE_PLUS_APP_SECRET = your_client_secret```
1. Register an account on Tumblr.com.
2. Visit Tumblr applications page.
3. Click on Register Application.
* Enter your application information.
* For Default callback URL field, enter: http://127.0.0.1:8000/hackathon/.
4. Click Register.
5. Within settings.py, add the following:
* TUMBLR_CONSUMER_KEY = `Tumblr-consumer-key`
* TUMBLR_CONSUMER_SECRET = `Tumblr-consumer-secret`
1. Register an account on [Steam](https://store.steampowered.com/join/)
2. Visit [Steam Community developers page](https://steamcommunity.com/login/home/?goto=%2Fdev%2Fapikey)
3. After logging in, add the **Domain Name** as the name of your application and **key** is shown
4. Within your `views.py` add the **Key** in `key` underneath the view for your steam application
1. Register an account on [NY Times Developer Network](http://developer.nytimes.com/docs)
2. Click on [Register](https://myaccount.nytimes.com/register)
3. After logging in, click on **APIs** (http://developer.nytimes.com/apps/register)
Write in the **Name** of your application and click each **sub-API** that you will use
* Agree to the **Terms of Service** and click on **Register Application**
4. Within your `settings.py` add the following:
* `POPAPIKEY` = `Most Popular API`
* `TOPAPIKEY` = `Top Stories API`
1. Register an account on [Quandl](https://www.quandl.com/)
2. After logging in, click on **Me** and then **Account settings** to find the API key
3. Within your `settings.py`add `QUANDLAPIKEY` = `Key`