Giter VIP home page Giter VIP logo

collab's Introduction

Collab

CircleCI

Web-based collaboration tool to help small teams do big things.

Setting Up Development Environment

For OSX Users, It is highly recommended to install brew before following this guide.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Clone project repository

git clone [email protected]:collab-tools/collab.git

Install MySQL and Node.js

MariaDB is highly recommended but feel free to use any mySQL variants.

  • Linux

    sudo apt-get install software-properties-common
    sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
    sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://sgp1.mirrors.digitalocean.com/mariadb/repo/10.2/ubuntu xenial main'
    sudo apt-get update
    sudo apt-get install mariadb-server
    
  • OSX

    brew install mariadb
    

Create database

mysql -u root -p <password>
> CREATE DATABASE collab;
> CREATE DATABASE collab_logging;

Install dependencies

  • Linux

    sudo apt-get install g++
    
  • OSX

    brew install python
    sudo npm i -g node-gyp && node-gyp clean
    npm install`

(see section 5 to resolve NPM local dependencies in Deployment Guide)

Configure local environment

cd <project-root>/config
cp _local-template.json local-dev.json

Fill in local-dev.json with your server information (secret keys, database authentication).

Run the development server

Server will be accessible at localhost:8080

npm run dev

Deployment

Dependencies

  1. Install Flightplan globally with npm install -g flightplan

  2. Add your SSH public key to the collab user on the production server.

    You can generate a new SSH key using ssh-keygen. To use a different key from your personal one (you should!), add the following to ~/.ssh/config:

    Host nuscollab-i.comp.nus.edu.sg
        IdentityFile ~/.ssh/my_nuscollab_private_key
    

    Add your public key to /home/collab/.ssh/authorized_keys on production.

Deployment

To deploy to production:

fly production

To deploy a specific branch to production:

fly production --branch="origin/my_branch_name"

Setting Up Production Environment

WIP - Section to include information on how to deploy the application in its production state (w/ SSL, HTTP2, etc.) to any Ubuntu machine.

Find details in Deployment Guide

Testing Framework and Implementation

Build Status

WIP - Revision in Progress

Documentation

Presentation slides on this project can be found here

collab's People

Contributors

aheader avatar anushaanandan avatar azraelos avatar benjaminheng avatar ccristina avatar jarrettyeap avatar javanhuang avatar jizhang27 avatar seowyanyi avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.