If you're interested in helping us develop Discourse, please start with our **[Discourse Developer Install Guide](https://github.com/discourse/discourse/blob/master/DEVELOPMENT.md)**, which includes instructions to get up and running in a development environment.
This is the **Civilized Discourse Construction Kit**, a fully open-source package of forum software that is free to use and contribute to. Discourse embraces the changes that are necessary to evolve forum software, namely:
* A **flattened discussion**, which avoids the pains of threaded forums, and delivers a more robust, intuitive interface to join a conversation at any point.
* A **self-learning system**, capable of examining the behavior of the community, and adapting to budding moderators and forum trolls alike.
* A **seamless web-only** interface that delivers usability on both the desktop and the tablet, without the need for a native app.
* A **contemporary, robust technology stack**, so that both users and administrators alike have another choice BESIDES php.
The Discourse team wishes to **foster an active community of contributors**, all of whom commit to delivering this continued vision, and ensure that online discussions can grow and thrive in an Internet age dominated by micro-blogging and diminishing attention spans.
This vision translates to the following functional commitments:
1. Support all contemporary browsers on the desktop:
* Internet Explorer 9.0, 10.0+
* Firefox 16+
* Google Chrome *infinite*
2. Supporting the latest generation of tablets:
* iPad 2+
* Android 4.1+ on 7" and 10"
* Windows 8
3. Deliver support for mobile/smartphones *as soon as possible*:
* Windows Phone 8
* iPhone 4+
* Android 4.0+
## Contributing
Discourse is **100% free** and **open-source**. We encourage and support an active, healthy community that
accepts contributions from the public, and we'd like you to be a part of that community.
In order to be prepared for contributing to Discourse, please:
1. Review the **VISION** section above, which will help you understand the needs of the team, and the focus of the project,
2. Read & sign the **[Electronic Discourse Forums Contribution License Agreement](https://docs.google.com/a/discourse.org/spreadsheet/viewform?formkey=dGUwejFfbDhDYXR4bVFMRG1TUENqLWc6MQ)**, to confirm you've read and acknowledged the legal aspects of your contributions, and
* step you through the entire process of preparing your code for a Pull Request.
**We look forward to seeing your cool stuff!**
## Expertise
Discourse implements a variety of open source tech. You may wish to familiarize yourself with the various components that Discourse is built on, in order to be an effective contributor:
### Languages/Frameworks
1. [Ruby on Rails](https://github.com/rails/rails) - Our back end API is a Rails app. It responds to requests RESTfully and responds in JSON.
2. [Ember.js](https://github.com/emberjs/ember.js) - Our front end interface is an Ember.js app that communicates the Rails API.
### Databases
1. [PostgreSQL](http://www.postgresql.org/) - Our main data store is Postgres.
2. [Redis](http://redis.io/) - We use Redis for our job queue, rate limiting, as a cache and for transient data.
The Discourse code contributors can be found in [AUTHORS.MD](https://github.com/discourse/discourse/blob/master/AUTHORS.md). For a complete list of the many individuals that contributed to the design and implementation of Discourse, please refer to the official website.