VueX Modules: is important for large scale project as it make developer more easier to separate store state as module for example moduleOne and moduleTwo. Each module has its own state, getters, actions, mutations and namespace . However, namespace is optional. Nevertheless, it is best practice to have it to prevent some conflicts among modules state, actions, getters, mutations. Example: I have two modules with namespace inside. moduleOne const moduleOne = { namespaced: true , state: { products: [ { id: 1 , name: 'pizza' , price: 10 }, { id: 2 , name: 'fan' , price: 20 }, { id: 3 , name: 'headset' , price: 30 }, { id: 4 , name: 'phone' , price: 1004 } ] }, mutations: { deductPrice ( state ) { return state . products . map ( item => item . price -= 1 ) }, multPrice ( state , payload ) { return state . products . map ( item => i...