Project & Repository Layout


By Greg Gibeling

Naming

Projects are generally named semi-whimsically based on their subject matter, which due consideration given to the searchability of the names. The goal of this naming is to differentiate them from each other and other projects on the Internet. Creativity and humor are not the point, but they are helpful tools in coming up with a good name.

Repositories are always named after the project they contain. Within a repository sub-project directories are then given names based on a 2-4 letter abbreviation of the repository name, a - and a repository specific and technically descriptive name.

Structure

  • Root README.md and LICENSE explicitly stating the license of the project.
  • Root pom.xml file for the overall project and repository.
  • The xx-project sub-project exists to set up the basic maven configuration, and should be the parent of all other POMs.
  • Documentation in the doc directory
    • doc/plan/<version> for release planning documents
    • doc/design for design and feature documentation