There are a few services you'll need (all free) in order to run the development server and access the app locally. Here are the instructions for getting them:

Algolia

Choose OAuth or Email Sign Up

Algolia: OAuth Sign Up

  1. Click this link and sign up for an account with either GitHub or Google. screen shot 2018-05-02 at 3 06 05 pm
  2. Select your region, and then hit "Let's get started!" screen shot 2018-05-01 at 2 30 52 pm
  3. Skip the tutorial (or don't) and go to your dashboard. screen shot 2018-05-01 at 12 59 06 pm
  4. Click "Go to your dashboard".

screen shot 2018-05-02 at 3 45 34 pm

  1. Agree to Terms and Conditions. screen shot 2018-05-02 at 3 45 49 pm

  2. Click "API Keys" on the left navbar.

screen shot 2018-05-02 at 4 24 30 pm

  1. Change your keys accordingly (name of Algolia key -> name of our application key):
Application ID -> ALGOLIASEARCH_APPLICATION_ID
Search-Only API Key -> ALGOLIASEARCH_SEARCH_ONLY_KEY
Admin API KEY -> ALGOLIASEARCH_API_KEY

screen shot 2018-05-02 at 4 26 27 pm

  1. Done!



Algolia Email Sign Up

  1. Click this link and sign up for an account with your email address. screen shot 2018-05-02 at 4 30 52 pm

  2. Fill out your name and what describes you the most. screen shot 2018-05-01 at 12 57 03 pm

  3. Choose your datacenter/region closest to you. screen shot 2018-05-01 at 12 58 36 pm

  4. Skip the step asking about your project. screen shot 2018-05-01 at 12 58 12 pm

  5. Complete the onboarding flow and click "Go to dashboard". screen shot 2018-05-01 at 12 58 48 pm

  6. Click "API Keys" on the left navbar.

screen shot 2018-05-02 at 4 24 30 pm

  1. Change your keys accordingly (name of Algolia key -> name of our application key):
Application ID -> ALGOLIASEARCH_APPLICATION_ID
Search-Only API Key -> ALGOLIASEARCH_SEARCH_ONLY_KEY
Admin API KEY -> ALGOLIASEARCH_API_KEY

screen shot 2018-05-02 at 4 26 27 pm

  1. Done!

That's it! You should try logging in with development, it should work. If it doesn't, let us know via an issue or in the contributors channel!

The following are optional, but are probably things you'll run into. That said, if you're working on tests and other things, you shouldn't need these.

For authentication, you can choose Twitter, GitHub, or both.

Twitter App

  1. Click this link and sign in/sign up for a Twitter account. Note that your Twitter account will need a phone number linked to it in order to create an app.
  2. Create a new app, and fill out the form, like the following example image:

The only important field is the "Callback URL" http://localhost:3000/users/auth/twitter/callback, which redirects you properly to localhost:3000 when signing in.

  1. Once done, go to your app's settings, and fill in the terms of service http://dev.to/terms and privacy policy URL http://dev.to/privacy:

  1. Once done, go to your app's permissions, and check the "Request email addresses from users" box. screen shot 2018-05-02 at 5 02 48 pm

  2. Change your keys accordingly: (name of Twitter key -> name of our application key):

Access Token -> TWITTER_KEY
Access Token Secret -> TWITTER_SECRET
  1. Done!

GitHub

  1. Click this link and sign in/sign up for a GitHub account.
  2. Once signed in, create a new OAuth app. Here's an example; the URLs must match the example: screen shot 2018-04-26 at 4 08 01 pm
  3. Change your keys accordingly; (name of GitHub key -> name of our application key):
Client ID -> GITHUB_KEY
Client Secret -> GITHUB_SECRET
  1. Done!

Stream

  1. Sign up for an account with this link, using either your email or GitHub.

stream step 1

  1. Click "View Dashboard" at the top right corner.

stream step 2

  1. In the next page, click "Add New Feed Group".

stream step 3


  1. Add a new feed group with the type "Notification" and name it notifications (case sensitive).

stream step 4

  1. Make sure you have a feed group with the type "Flat" and named user (case sensitive). You probably do, but if you don't, create one like you did with the notifications feed group.

  2. Change your keys accordingly: (name of Stream key -> name of our application key):

Key -> STREAM_RAILS_KEY
Secret -> STREAM_RAILS_SECRET
"https://us-east-api.stream-io-api.com/api/v1.0/" -> STREAM_URL
  1. Done!

Pusher

  1. Sign up for a free account with this link.

    screen shot 2018-10-03 at 5 48 09 pm

  2. Once signed in, fill out the prompt to create a new Pusher Channels app. Only an app name is required.

    screen shot 2018-10-03 at 5 35 14 pm

  3. In your new Pusher Channels app, click the "App Keys" tab.

    screen shot 2018-10-03 at 5 41 43 pm

  4. Change your keys accordingly (name of Pusher key -> name of our application key):

app_id -> PUSHER_APP_ID
key -> PUSHER_KEY
secret -> PUSHER_SECRET
cluster -> PUSHER_CLUSTER
  1. Done!