Skip to content

getcorgi/corgi

Repository files navigation

corgi

Build Status Coverage Status Dependency status Netlify Status

Free and secure video hangouts for everyone.

Prerequisites

Installation

Clone repository:

$ git clone https://github.com/getcorgi/corgi.git

Install dependencies:

$ yarn

Setup Firebase

This app uses Firebase as a database to persist some basic user and group information. Create an account and setup the following database rules:

{
  "rules": {
    "peers": {
      "$uid": {
        "$id": {
          ".read": "auth != null && auth.uid == $uid",
          ".write": "auth != null && auth.uid == $uid",
          "$otherUid": {
            "$otherId": {
              ".read": "auth != null && auth.uid == $otherUid",
              ".write": "auth != null && auth.uid == $otherUid",
              "sdp": {
                ".validate": "newData.isString() && newData.val().length < 4000"
              },
              "type": {
                ".validate": "newData.val() == 'offer' || newData.val() == 'answer' || newData.val() == 'error'"
              },
              "$other": { ".validate": false }
            }
          }
        }
      }
    }
  }
}

Setup environment variables

In the root directory create a .env.local file with the following variables: These can be found settings -> general in the firebase console.

REACT_APP_API_KEY=<firebaseApiKey>
REACT_APP_AUTH_DOMAIN=<firebaseAuthDomain>
REACT_APP_DATABASE_URL=<firebaseDatabaseUrl>
REACT_APP_PROJECT_ID=<firebaseProjectId>
REACT_APP_STORAGE_BUCKET=<firebaseStorageBucket>
REACT_APP_MESSAGING_SENDER_ID=<firebaseMessagingSenderId>
REACT_APP_ID=<firebaseAppId>
REACT_APP_MEASUREMENT_ID=<firebaseMeasurementId>
REACT_APP_SOCKET_SERVER="http://localhost:8080"
REACT_APP_GIPHY_API_KEY=<giphyAPIKey>

Available Scripts

yarn start

Runs the app in the development mode. Open http://localhost:3000 to view it in the browser.

yarn lint

Lints the files.

yarn test

Launches the test runner in the interactive watch mode.

yarn build

Builds the app for production to the build folder.

yarn storybook

Runs storybook on http://localhost:9009.