{"id":13756686,"url":"https://github.com/onepiecejs/nodejs-cantas","last_synced_at":"2025-05-10T04:30:57.318Z","repository":{"id":12037374,"uuid":"14622577","full_name":"onepiecejs/nodejs-cantas","owner":"onepiecejs","description":"Cantas is a real-time collaborative web application. Official repository","archived":true,"fork":false,"pushed_at":"2017-02-17T05:32:10.000Z","size":5518,"stargazers_count":203,"open_issues_count":42,"forks_count":88,"subscribers_count":32,"default_branch":"master","last_synced_at":"2024-11-16T12:34:19.184Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/onepiecejs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-11-22T16:19:33.000Z","updated_at":"2024-09-21T07:26:24.000Z","dependencies_parsed_at":"2022-09-23T03:32:42.217Z","dependency_job_id":null,"html_url":"https://github.com/onepiecejs/nodejs-cantas","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onepiecejs%2Fnodejs-cantas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onepiecejs%2Fnodejs-cantas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onepiecejs%2Fnodejs-cantas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onepiecejs%2Fnodejs-cantas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/onepiecejs","download_url":"https://codeload.github.com/onepiecejs/nodejs-cantas/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253365183,"owners_count":21897180,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T11:00:51.394Z","updated_at":"2025-05-10T04:30:54.301Z","avatar_url":"https://github.com/onepiecejs.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# Cantas\n\nCantas is a real-time collaborative Web application built upon [Node.js][nodejs] and [Socket.IO][socketio].\n\n[![Build Status](https://travis-ci.org/onepiecejs/nodejs-cantas.svg?branch=master)](http://travis-ci.org/onepiecejs/nodejs-cantas)\n\nThanks for [all Contributors](AUTHORS.md)\n\n![project screenshot](./public/images/cantas-help-list.gif)\n\n# Getting started\n\n## Demo Site - Deployed on OpenShift\n\nhttp://cantas-onepiecejs.rhcloud.com/\n\nLogin with your Google account.\n\n## Deploy to OpenShift.\n\n```bash\nrhc domain create \u003cyournamespace\u003e\nrhc app create cantas nodejs-0.10 -s\ncd cantas/\nrhc cartridge add mongodb-2.4 -a cantas\nrhc cartridge add \"http://cartreflect-claytondev.rhcloud.com/reflect?github=smarterclayton/openshift-redis-cart\" -a cantas\ngit remote add upstream -m master git@github.com:onepiecejs/nodejs-cantas.git\ngit pull -s recursive -X theirs upstream master\ngit push\nrhc env set NODE_ENV=production -a cantas\n# Caution: please input your variabes in .openshift/lib/init_settings\nrhc app restart -a cantas\n```\n\n\u003e ***Note:***\n\u003e Openshift instructions need updating\n\u003e Please update your settings value in .openshift/lib/init_settings before push\n\u003e to Openshift Online service.\n\n## Setup development environment with one-click.\n\nInstalling [Vagrant](https://www.vagrantup.com) with your package manager,\n\n    sudo yum install vagrant\n\nThen run the **up** command in the root of the project's directory,\n\n    vagrant up\n\n\u003e ***Note:***\n\u003e 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.\n\u003e `dnf install libvirt vagrant-libvirt`\n\n\n## Setup development environment manually.\n\n- install [Nodejs][nodejs], [npm][npm], [MongoDB][MongoDB], [Redis][Redis].\n\n    ```bash\n    # nodejs \u0026 npm\n    wget http://nodejs.org/dist/v0.10.22/node-v0.10.22.tar.gz\n    tar -xvf node-v0.10.22.tar.gz\n    cd node-v0.10.22\n    ./configure \u0026\u0026 make\n    sudo make install\n    \n    # mongo\n    sudo yum install mongodb mongodb-server\n    # redis\n    sudo yum install redis\n\n    #Fedora 22\n    dnf install nodejs\n\n    #Ubuntu 14+ (Only tested against 14)\n    sudo apt-get install nodejs build-essential\n\n    #Red Hat 6+ and Centos 6+\n    yum install epel-release\n    yum install nodejs\n\n    #Run Cantas on a MAC\n    [MAC OSX Dev Install](https://github.com/onepiecejs/nodejs-cantas/wiki/Setup-development-environment-in-Mac-OS-X)\n\n    #NPM\n    NPM should be installed as part of the nodejs packages for Fedora, Red Hat, Centos and Ubuntu.\n    ```\n\n\u003e ***Note:***\n\u003e If you got `g++: command not found` while installing nodejs,\n\u003e you can install it by `sudo yum install gcc-c++`.\n\n\n\n- Kerberos requirements:\n\n\u003e ***Note:***\n\u003e If you plan to use Kerberos authentication install the relevant kerberos libraries for your distro.\n\n    sudo yum install -y krb5-devel krb5-libs krb5-workstation\n\n\n- checkout cantas source code and update node packages via npm\n\n    ```bash\n    git clone git@github.com:onepiecejs/nodejs-cantas.git\n    cd nodejs-cantas\n    npm install\n    ```\n\n- start redis server and mongodb server\n\n    ```bash\n    # if you have installed them as services, do\n    sudo systemctl start redis\n    sudo systemctl start mongod\n    # or\n    sudo service redis start\n    sudo service mongod start\n    ```\n    ```bash\n    # otherwise,\n    redis-server \u0026\n    \u0026\u0026 mongod --dbpath=/tmp \u0026\n    ```\n\n- start the app\n\n    ```bash\n    # update 'settings.json' file\n    cp settings.json.example settings.json\n\n    # setup initalize data\n    node scripts/migrations/initLabelMetadata.js\n\n    # start the app\n    NODE_ENV=development node app.js\n    ```\n\n- for development convenience the following steps will make logging in easy while you are developing\n\n    Edit `settings.json` and change `auth.default` to `local`, then add a user.\n    If `local` doesn't work try `dummy` as the `auth.default` strategy and then add a user.\n\n    ```\n    node scripts/addUser.js cantas cantas\n    ```\n\n\u003e ***Note:***\n\u003e Make sure the `mongod` deamon is running before starting the app.\n\u003e To enable Google signin you will need to create a Client ID in the [Google Developer Console](https://console.developers.google.com).\n\n\nThat's it. Open your browser at `http://localhost:3000` and log into Cantas.\n\n\n## Resources\n\n- [HTML5 pushState](http://diveintohtml5.info/history.html)\n\n## Integration \u0026\u0026 Test Environment\n\n- [Grunt task to run jasmine unit tests through phantomjs](https://github.com/jasmine-contrib/grunt-jasmine-runner)\n\n### Dependencies\n\n- [Node.js][nodejs]\n- [npm][npm]\n- [Backbone.js](http://backbonejs.org/)\n- [Socket.IO][socketio]\n- [Redis][Redis]\n- [Mongo][MongoDB]\n\n### Template engine\n\n- [Jade](https://github.com/visionmedia/jade)\n\n  [nodejs]:http://nodejs.org/    \"Nodejs\"\n  [npm]:http://npmjs.org/    \"npm\"\n  [Redis]:http://redis.io/ \"Redis\"\n  [MongoDB]:http://www.mongodb.org/ \"MongoDB\"\n  [socketio]:http://socket.io/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonepiecejs%2Fnodejs-cantas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fonepiecejs%2Fnodejs-cantas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonepiecejs%2Fnodejs-cantas/lists"}