QA is a question & answer application
Ruby HTML CSS JavaScript Gherkin CoffeeScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
db
features
lib
log
public
script
spec
ui
vendor/assets
.babelrc
.env.sample
.eslintrc.js
.gitignore
.rspec
.rubocop.yml
.rubocop_todo.yml
.scss-lint.yml
Gemfile
Gemfile.lock
Guardfile
LICENSE
Procfile
README.md
Rakefile
TODO.md
circle.yml
config.ru
package.json
webpack.js
yarn.lock

README.md

QA

Build Status

Code Climate Coverage Status

QA is the best way to get your own instance of an internal question and answer site.

Installation

  1. Ensure you have both PostgreSQL 9.3+ and Redis 2.8.9+ installed
  2. Install Ruby 2.2.x
  3. git clone git://github.com/thomas-mcdonald/qa.git && cd qa
  4. bundle install
  5. Check settings in config/database.yml and config/redis.yml
  6. Copy .env.sample to .env and fill in environment settings as required
  7. bundle exec rake db:create db:schema:load

Seed Data

There are a couple of options for seed data:

  • bundle exec rake db:seed:development will give you a few example questions
  • You can import a Stack Exchange data dump for development purposes. Download a dump from here and extract to lib/import/data. rake import:se will import this data.

The SE import process is memory-intensive and will take some time - even for smaller Stack Exchange sites. The importer queues a significant number of background jobs which will take time to process - so initial performance may be slower.

Running the application

The application processes are defined in the Procfile, which can be managed by Foreman.

Install it with gem install foreman, and start the application and job queues with foreman start.

Stack

  • Rails 4.2
  • Postgres
  • Redis