Skip to content

Latest commit

 

History

History
60 lines (44 loc) · 2.59 KB

CONTRIBUTING.md

File metadata and controls

60 lines (44 loc) · 2.59 KB

How to contribute

Quick Overview

  • Create a new issue with clear description and steps to reproduce in case of a bug
  • Fork repository
  • Clone your fork
  • Make your change, make sure each commit is atomaric and has meaningful message
  • Push you commits to your forked repository
  • Create pull request

Dependencies

SugoiOverflow is built on nodejs You can install it from official download page or use your operating system's package manager to get it:

Mac OS X (brew)

brew install nodejs

Debian/Ubuntu/Mint/ElementaryOS/...(apt-get)

sudo apt-get install nodejs

Windows(chocolatey)

choco install nodejs

In order to build all packages you will need to have:

In order to downscale avatars SugoiOverflow uses GraphicsMagick utility which you can easily install:

Mac OS X (brew)

brew install graphicsmagick

Debian/Ubuntu/Mint/ElementaryOS/...(apt-get)

sudo apt-get install graphicsmagick

Windows(chocolatey)

choco install graphicsmagick

Install

git clone <your fork url>
cd <your fork folder>
npm install [don't forget --msvs_version=<vs version> if you use windows]

You are now all set and can start working.

##Structure The whole app is divided on server and client parts. Server runs on node.js, uses express as REST framework, mongoDB for storing data and mongoose to make data management even easier.

##Sublime Text users

There are three sublime projects:

  • server: ./server/server.sublime-project
  • client: ./client/client.sublime-project
  • everything else: ./util.sublime-project

Gulp tasks

SugoiOverflow uses gulp as task runner. To use it you need to run npm install gulp -g prior to running any command. After just by typing "gulp" in terminal you run default task gulp run which compiles client-side code, runs node process with entry point at ./server/index.js and adds watch on all files in project.