Allura is an open source implementation of a software "forge", a web site that manages source code repositories, bug reports, discussions, mailing lists, wiki pages, blogs and more for any number of individual projects.
Allura is written in Python and leverages a great many existing Python packages (see requirements.txt and friends). It comes with tests which we run with nose. It is extensible in several ways, most importantly via the notion of "tools" based on
allura.app.Application; but also with themes, authentication, and various other pluggable-APIs.
Before hacking on Allura, you’ll need to get an Allura instance up and running so you can see and test the changes you make. You can install Allura from scratch, or by using our Docker container images. Instructions for these approaches can be found here:
To install Allura, see
Allura/docs/getting_started/installation.rst or https://forge-allura.apache.org/docs/getting_started/installation.html.
You can learn about using Allura, configuring neighborhoods, managing projects and it's tools see
Allura/docs/getting_started/using.rst or https://forge-allura.apache.org/docs/getting_started/using.html
Apache Allura is an effort for the community: an open source platform for sharing development. We think it should be of the community as well. We want to encourage community involvement in development, testing and design. We do that with a public git repo, a bug tracker, a discussion list and an IRC channel.
Developers interested in hacking on Allura or its components should see
Allura/docs/docs/development/contributing.rst or https://forge-allura.apache.org/docs/development/contributing.html.
To find more documentation, ask a question, file a bug, or contribute a patch, see the links on our website(https://allura.apache.org/). If you're not sure where to start, join the mailing list and ask.