When starting an application, it is very rare that developers start from scratch. All software applications, regardless of the language or build automation tool require developers to follow a standard directory layout. This article takes a deep dive into five of the core components of a software application.