Git Product home page Git Product logo

nodejs-cantas's Introduction

Cantas

Cantas is a real-time collaborative Web application built upon Node.js and Socket.IO.

Build Status

Thanks for all Contributors

project screenshot

Getting started

Demo Site - Deployed on OpenShift

http://cantas-onepiecejs.rhcloud.com/

Login with your Google account.

Deploy to OpenShift.

rhc domain create <yournamespace>
rhc app create cantas nodejs-0.10 -s
cd cantas/
rhc cartridge add mongodb-2.4 -a cantas
rhc cartridge add "http://cartreflect-claytondev.rhcloud.com/reflect?github=smarterclayton/openshift-redis-cart" -a cantas
git remote add upstream -m master [email protected]:onepiecejs/nodejs-cantas.git
git pull -s recursive -X theirs upstream master
git push
rhc env set NODE_ENV=production -a cantas
# Caution: please input your variabes in .openshift/lib/init_settings
rhc app restart -a cantas

Note: Openshift instructions need updating Please update your settings value in .openshift/lib/init_settings before push to Openshift Online service.

Setup development environment with one-click.

Installing Vagrant with your package manager,

sudo yum install vagrant

Then run the up command in the root of the project's directory,

vagrant up

Note: If you are on Fedora 22, you will need to install the "libvirt" lib's to run Vagrant from the "vagrantfile" supplied in the root of the Cantas app directory. dnf install libvirt vagrant-libvirt

Setup development environment manually.

  • install Nodejs, npm, MongoDB, Redis.

    # nodejs & npm
    wget http://nodejs.org/dist/v0.10.22/node-v0.10.22.tar.gz
    tar -xvf node-v0.10.22.tar.gz
    cd node-v0.10.22
    ./configure && make
    sudo make install
    
    # mongo
    sudo yum install mongodb mongodb-server
    # redis
    sudo yum install redis
    
    #Fedora 22
    dnf install nodejs
    
    #Ubuntu 14+ (Only tested against 14)
    sudo apt-get install nodejs build-essential
    
    #Red Hat 6+ and Centos 6+
    yum install epel-release
    yum install nodejs
    
    #Run Cantas on a MAC
    [MAC OSX Dev Install](https://github.com/onepiecejs/nodejs-cantas/wiki/Setup-development-environment-in-Mac-OS-X)
    
    #NPM
    NPM should be installed as part of the nodejs packages for Fedora, Red Hat, Centos and Ubuntu.

Note: If you got g++: command not found while installing nodejs, you can install it by sudo yum install gcc-c++.

  • Kerberos requirements:

Note: If you plan to use Kerberos authentication install the relevant kerberos libraries for your distro.

sudo yum install -y krb5-devel krb5-libs krb5-workstation
  • checkout cantas source code and update node packages via npm

    git clone [email protected]:onepiecejs/nodejs-cantas.git
    cd nodejs-cantas
    npm install
  • start redis server and mongodb server

    # if you have installed them as services, do
    sudo systemctl start redis
    sudo systemctl start mongod
    # or
    sudo service redis start
    sudo service mongod start
    # otherwise,
    redis-server &
    && mongod --dbpath=/tmp &
  • start the app

    # update 'settings.json' file
    cp settings.json.example settings.json
    
    # setup initalize data
    node scripts/migrations/initLabelMetadata.js
    
    # start the app
    NODE_ENV=development node app.js
  • for development convenience the following steps will make logging in easy while you are developing

    Edit settings.json and change auth.default to local, then add a user. If local doesn't work try dummy as the auth.default strategy and then add a user.

    node scripts/addUser.js cantas cantas
    

Note: Make sure the mongod deamon is running before starting the app. To enable Google signin you will need to create a Client ID in the Google Developer Console.

That's it. Open your browser at http://localhost:3000 and log into Cantas.

Resources

Integration && Test Environment

Dependencies

Template engine

nodejs-cantas's People

Contributors

cdkr avatar dmison avatar dotcom900825 avatar ianneilsen avatar jzb avatar loklaan avatar lybkf avatar ncoghlan avatar smilledge avatar tante avatar tkdchen avatar xiaods 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.