Free and open source Q&A software, open source stackoverflow style app written in ruby, rails, mongoid and mongodb. This web application is targeted for a company's internal use. Uses LDAP for authentication.
License: GNU Affero General Public License v3.0
JavaScript 15.83%Shell 0.02%Ruby 84.15%
qna's Introduction
== Dependencies
- git >= 1.5
- ruby >= 1.9.2
- rubygems >= 1.3.7
- mongodb >= 1.7
- ruby on rails 3
== Install Dependencies
sudo gem install bundler
== Getting Started
1. Download the sources:
git clone git://github.com/appriss/qna.git
cd qna/
2. Configure the application
cp config/qna.sample.yml config/qna.yml
cp config/mongoid.sample.yml config/mongoid.yml
cp config/auth_providers.sample.yml config/auth_providers.yml
edit qna.yml and auth_providers.yml
Go to https://rpm.newrelic.com/ and create an account, then:
cp config/newrelic.yml.sample config/newrelic.yml
If you don't want to use newrelic, just comment it out in the Gemfile.
3. Install dependencies
bundle install
4. Make sure MongoDB is running
5. Load default data
rake bootstrap RAILS_ENV=development
6. Add default subdomain to /etc/hosts, for example:
"0.0.0.0 localhost.lan group1.localhost.lan group2.localhost.lan"
7. Start the server
rails server -e development
8. Start support services
bundle exec rackup xapit.ru # Full Text Search engine http interface
bundle exec script/websocket # Websocket: communicate with client-side javascript
bundle exec rake magent:start # Execute background jobs stored in mongodb
9. When running qna in production, you need to run:
bundle exec rake assets:precompile
== Postfix config
add the following text to /etc/aliases
qna: "|/usr/local/rvm/bin/rvm 1.9.2 exec PATH/to/qna/script/handle_email"
in /etc/postfix/main.cf
default_privs = qna
then type
sudo newaliases
Talk to us at cttools \aT/ appriss d0t com
Report bugs at https://github.com/appriss/qna/issues
Happy hacking!