1. A non-transitory machine-readable medium storing instructions which, when executed by one or more processors on a data processing system, cause the data processing system to perform operations to form associations between files, the operations comprising: annotating a first file in a set of files with a tag received through a user input of text that define the tag, wherein the tag is independent of a file type of the first file, and wherein the tag is independent of a file name of the first file, and wherein annotating the first file with the tag associates the file with the tag, and each other file in the set of files having one or more tags; searching for files in the set of files that are each annotated with the tag, responsive to receiving an indication to display the set of files that are associated with the tag via a graphical user interface (GUI) wherein the indication comprises a selection of the tag from a list of tags displayed in a side bar portion of the GUI; and displaying the set of files via the GUI responsive to searching for files in the set of files associated with the tag, wherein each of the files in the set of files annotated with the tag is in a set of related files having a common tag.