Modularise the app components