This is a FileSystem I built as a means to learn java with practice. In the program I used LinkedList structure to build the file system and stack data structure to deal with the traversals. I used Swing to deal with the gui and java's builtin standard library , i.e. File to retrive files and directories. All classes are called from The MainSurface.java file . So the program can be run by using the following commands on terminal(linux): javac MainSurface.java java MainSurface