GithubHelp home page GithubHelp logo

miguelramosfdz / glazier Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yapplabs/glazier

0.0 2.0 0.0 4.76 MB

Dashboard for Github projects using Conductor.js and Oasis.js

License: MIT License

Ruby 0.23% JavaScript 75.10% HTML 5.40% CSS 19.27%

glazier's Introduction

glazier

Build Status

Dashboard for Github projects using Conductor.js and Oasis.js.

Setup

Install Dependencies

For the proxy:

Grunt

npm install -g grunt-cli

For the Glazier server:

Ruby 1.9.3

Postgres 9.2.x

Get the project

git clone git://github.com/yapplabs/glazier
cd glazier
git submodule update --init

There are two components to set up: the Glazier proxy and the back-end rails server (Glazier server).

Glazier server is a submodule. The project is here

Set up Githup API credentials

Create a Github app for your Glazier app at http://github.com/settings/applications/new

In the form enter:

Application Name: anything you like (e.g. "glazier-dev")
Main URL:         http://localhost:8000
Callback URL:     http://localhost:8000/api/oauth/github/callback

When you submit the form you will get a client id and client secret. Set the following environment variables:

GLAZIER_GITHUB_CLIENT_ID=<git client id>
GLAZIER_GITHUB_CLIENT_SECRET=<git client secret>
#these are needed in the windows running both the proxy and the server

Setup the database and prepare the server

cd glazier-server
bundle install
rake db:create
rake db:migrate

Run npm install

# from the top glazier directory
npm install

Clone card repositories and symlink them into the glazier/cards directory

# from the top glazier directory
grunt cloneCards
ls -al ./cards/ # to see where the symlinks point

Install the Glazier proxy dependencies and start the proxy

# navigate to the top glazier directory
# make sure client id and client secret are set in this window
bundle install
grunt              //interrupt this task when it reaches the Waiting state
grunt ingest
grunt ingestCards
grunt

Start the server

grunt server   //from the top glazier directory

Navigate to the app in your browser

http://localhost:8000/

Adding Node Packages

Glazier uses npm shrinkwrapping to prevent dependency version problems. If you add or change dependencies in the package.json files (either container or cards), make sure to run npm shrinkwrap in the appropriate place.

Running specs

Start the grunt server with grunt, then visit:

http://localhost:8000/test/index.html

QUnit tests that are able to be run in Phantom (see yapplabs#1) will run as you make changes or you can run them with grunt qunit:all

glazier-server uses RSpec for unit tests. To run them:

bundle exec rake

To automatically execute glazier-server specs as you update code and specs:

bundle exec guard

Default Cards

grunt cloneCards clones and symlinks the following repositories into the glazier/cards folder:

Troubleshooting

500 Internal Server Error

If this occurs immediately after you update the project, its possible the database structure has changed and you haven't migrated. Run:

#in glazier/glazier-server directory
rake db:migrate

NPM, Grunt Errors

If you're using Glazier for the first time and get errors running npm install, make sure your version of npm is current. Outdated versions will give errors such as telling you npm can't find a certain module which it subsequently lists as installed (nice!).

If grunt commands just won't run, sometimes its because node modules have gotten out of sync. Try deleting the /node_modules subdirectory and re-running npm install

glazier's People

Contributors

cyril-sf avatar gmmapowell avatar hjdivad avatar izhan avatar joliss avatar kagemusha avatar krisselden avatar lukemelia avatar machty avatar raycohen avatar stefanpenner avatar vineet-sinha 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.