fix: Rename 'Product' to 'Item'
diff --git a/erpnext/public/js/hub/PageContainer.vue b/erpnext/public/js/hub/PageContainer.vue
index ab270b9..cec4c8d 100644
--- a/erpnext/public/js/hub/PageContainer.vue
+++ b/erpnext/public/js/hub/PageContainer.vue
@@ -9,8 +9,8 @@
 import Home from './pages/Home.vue';
 import Search from './pages/Search.vue';
 import Category from './pages/Category.vue';
-import SavedProducts from './pages/SavedProducts.vue';
-import PublishedProducts from './pages/PublishedProducts.vue';
+import SavedItems from './pages/SavedItems.vue';
+import PublishedItems from './pages/PublishedItems.vue';
 import Item from './pages/Item.vue';
 import Seller from './pages/Seller.vue';
 import Publish from './pages/Publish.vue';
@@ -30,9 +30,9 @@
 
 	// Registered seller routes
 	'marketplace/profile': Profile,
-	'marketplace/saved-products': SavedProducts,
+	'marketplace/saved-items': SavedItems,
 	'marketplace/publish': Publish,
-	'marketplace/my-products': PublishedProducts,
+	'marketplace/published-items': PublishedItems,
 	'marketplace/buying': Buying,
 	'marketplace/buying/:item': Messages,
 	'marketplace/selling': Selling,
diff --git a/erpnext/public/js/hub/Sidebar.vue b/erpnext/public/js/hub/Sidebar.vue
index 7cb436e..cff580e 100644
--- a/erpnext/public/js/hub/Sidebar.vue
+++ b/erpnext/public/js/hub/Sidebar.vue
@@ -26,8 +26,8 @@
 					route: 'marketplace/home'
 				},
 				{
-					label: __('Saved Products'),
-					route: 'marketplace/saved-products',
+					label: __('Saved Items'),
+					route: 'marketplace/saved-items',
 					condition: () => this.hub_registered
 				},
 				{
@@ -36,12 +36,12 @@
 					condition: () => this.hub_registered
 				},
 				{
-					label: __('Your Products'),
-					route: 'marketplace/my-products',
+					label: __('Your Items'),
+					route: 'marketplace/published-items',
 					condition: () => this.hub_registered
 				},
 				{
-					label: __('Publish Products'),
+					label: __('Publish Items'),
 					route: 'marketplace/publish',
 					condition: () => this.hub_registered
 				},
diff --git a/erpnext/public/js/hub/components/TimelineItem.vue b/erpnext/public/js/hub/components/TimelineItem.vue
index 97b5a0d..d13c842 100644
--- a/erpnext/public/js/hub/components/TimelineItem.vue
+++ b/erpnext/public/js/hub/components/TimelineItem.vue
@@ -3,7 +3,7 @@
 	<div class="media timeline-item  notification-content">
 		<div class="small">
 			<i class="octicon octicon-bookmark fa-fw"></i>
-			<span title="Administrator"><b>4 weeks ago</b> Published 1 product to Marketplace</span>
+			<span title="Administrator"><b>4 weeks ago</b> Published 1 item to Marketplace</span>
 		</div>
 	</div>
 </template>
diff --git a/erpnext/public/js/hub/components/detail_view.js b/erpnext/public/js/hub/components/detail_view.js
index fca6a56..d80720c 100644
--- a/erpnext/public/js/hub/components/detail_view.js
+++ b/erpnext/public/js/hub/components/detail_view.js
@@ -94,7 +94,7 @@
 			</div>
 			<div class="row hub-item-description">
 				<h6 class="col-md-12 margin-top">
-					<b class="text-muted">Product Description</b>
+					<b class="text-muted">Item Description</b>
 				</h6>
 				<p class="col-md-12">
 					${description ? description : __('No details')}
diff --git a/erpnext/public/js/hub/pages/Category.vue b/erpnext/public/js/hub/pages/Category.vue
index 2ffbcf3..3a0e6bf 100644
--- a/erpnext/public/js/hub/pages/Category.vue
+++ b/erpnext/public/js/hub/pages/Category.vue
@@ -18,7 +18,6 @@
 
 <script>
 export default {
-	name: 'saved-products-page',
 	data() {
 		return {
 			page_name: frappe.get_route()[1],
@@ -27,7 +26,7 @@
 			item_id_fieldname: 'name',
 
 			// Constants
-			empty_state_message: __(`No products in this category yet.`)
+			empty_state_message: __(`No items in this category yet.`)
 		};
 	},
 	computed: {
diff --git a/erpnext/public/js/hub/pages/Item.vue b/erpnext/public/js/hub/pages/Item.vue
index 5ce0bcf..d8e397d 100644
--- a/erpnext/public/js/hub/pages/Item.vue
+++ b/erpnext/public/js/hub/pages/Item.vue
@@ -60,7 +60,7 @@
 					action: this.add_to_saved_items
 				},
 				{
-					label: __('Report this Product'),
+					label: __('Report this Item'),
 					condition: !this.is_own_item,
 					action: this.report_item
 				},
@@ -70,7 +70,7 @@
 					action: this.report_item
 				},
 				{
-					label: __('Unpublish Product'),
+					label: __('Unpublish Item'),
 					condition: this.is_own_item,
 					action: this.report_item
 				}
@@ -170,7 +170,7 @@
 
 			this.sections = [
 				{
-					title: __('Product Description'),
+					title: __('Item Description'),
 					content: this.item.description
 						? __(this.item.description)
 						: __('No description')
@@ -192,7 +192,7 @@
 				hub_seller: hub.settings.company_email
 			})
 			.then(() => {
-				const saved_items_link = `<b><a href="#marketplace/saved-products">${__('Saved')}</a></b>`
+				const saved_items_link = `<b><a href="#marketplace/saved-items">${__('Saved')}</a></b>`
 				frappe.show_alert(saved_items_link);
 				erpnext.hub.trigger('action:item_save');
 			})
diff --git a/erpnext/public/js/hub/pages/Publish.vue b/erpnext/public/js/hub/pages/Publish.vue
index 0219fc9..b05f12a 100644
--- a/erpnext/public/js/hub/pages/Publish.vue
+++ b/erpnext/public/js/hub/pages/Publish.vue
@@ -34,7 +34,7 @@
 		>
 		</item-cards-container>
 
-		<p class="text-muted">{{ valid_products_instruction }}</p>
+		<p class="text-muted">{{ valid_items_instruction }}</p>
 
 		<search-input
 			:placeholder="search_placeholder"
@@ -73,16 +73,16 @@
 
 			// Constants
 			// TODO: multiline translations don't work
-			page_title: __('Publish Products'),
+			page_title: __('Publish Items'),
 			search_placeholder: __('Search Items ...'),
-			empty_state_message: __(`No Items selected yet. Browse and click on products below to publish.`),
-			valid_products_instruction: __(`Only products with an image and description can be published. Please update them if an item in your inventory does not appear.`),
+			empty_state_message: __(`No Items selected yet. Browse and click on items below to publish.`),
+			valid_items_instruction: __(`Only items with an image and description can be published. Please update them if an item in your inventory does not appear.`),
 			last_sync_message: (hub.settings.last_sync_datetime)
 				? __(`Last sync was
 				<a href="#marketplace/profile">
 					${comment_when(hub.settings.last_sync_datetime)}</a>.
-				<a href="#marketplace/my-products">
-					See your Published Products</a>.`)
+				<a href="#marketplace/published-items">
+					See your Published Items</a>.`)
 				: ''
 		};
 	},
@@ -93,14 +93,14 @@
 
 		publish_button_text() {
 			const number = this.selected_items.length;
-			let text = 'Publish';
+			let text = __('Publish');
 			if(number === 1) {
-				text = 'Publish 1 Product';
+				text = __('Publish 1 Item');
 			}
 			if(number > 1) {
-				text = `Publish ${number} Products`;
+				text = __('Publish {0} Items', [number]);
 			}
-			return __(text);
+			return text;
 		},
 
 		items_dict() {
@@ -150,8 +150,8 @@
 			this.last_sync_message = __(`Last sync was
 				<a href="#marketplace/profile">
 					${comment_when(hub.settings.last_sync_datetime)}</a>.
-				<a href="#marketplace/my-products">
-					See your Published Products</a>.`);
+				<a href="#marketplace/published-items">
+					See your Published Items</a>.`);
 		},
 
 		clear_last_sync_message() {
diff --git a/erpnext/public/js/hub/pages/PublishedProducts.vue b/erpnext/public/js/hub/pages/PublishedItems.vue
similarity index 93%
rename from erpnext/public/js/hub/pages/PublishedProducts.vue
rename to erpnext/public/js/hub/pages/PublishedItems.vue
index 1da5ffb..114259b 100644
--- a/erpnext/public/js/hub/pages/PublishedProducts.vue
+++ b/erpnext/public/js/hub/pages/PublishedItems.vue
@@ -35,7 +35,6 @@
 
 <script>
 export default {
-	name: 'saved-products-page',
 	data() {
 		return {
 			page_name: frappe.get_route()[1],
@@ -54,7 +53,7 @@
 			publish_button_text: __('Publish More Items'),
 			published_items_message: __('You can publish upto 200 items.'),
 			// TODO: Add empty state action
-			empty_state_message: __(`You haven't published any products yet. Publish.`)
+			empty_state_message: __('You haven\'t published any items yet.')
 		};
 	},
 	created() {
diff --git a/erpnext/public/js/hub/pages/SavedProducts.vue b/erpnext/public/js/hub/pages/SavedItems.vue
similarity index 88%
rename from erpnext/public/js/hub/pages/SavedProducts.vue
rename to erpnext/public/js/hub/pages/SavedItems.vue
index ddcbcdc..e5d21cd 100644
--- a/erpnext/public/js/hub/pages/SavedProducts.vue
+++ b/erpnext/public/js/hub/pages/SavedItems.vue
@@ -20,7 +20,7 @@
 
 <script>
 export default {
-	name: 'saved-products-page',
+	name: 'saved-items-page',
 	data() {
 		return {
 			page_name: frappe.get_route()[1],
@@ -28,8 +28,8 @@
 			item_id_fieldname: 'name',
 
 			// Constants
-			page_title: __('Saved Products'),
-			empty_state_message: __(`You haven't favourited any items yet.`)
+			page_title: __('Saved Items'),
+			empty_state_message: __(`You haven't saved any items yet.`)
 		};
 	},
 	created() {
@@ -76,12 +76,12 @@
 
 			setTimeout(() => {
 				if(!reverted) {
-					this.remove_item_from_saved_products(hub_item_name);
+					this.remove_item_from_saved_items(hub_item_name);
 				}
 			}, grace_period);
 		},
 
-		remove_item_from_saved_products(hub_item_name) {
+		remove_item_from_saved_items(hub_item_name) {
 			erpnext.hub.trigger('action:item_save');
 			hub.call('remove_item_from_seller_saved_items', {
 				hub_item_name,
diff --git a/erpnext/public/js/hub/pages/Search.vue b/erpnext/public/js/hub/pages/Search.vue
index 809f8c2..5118a81 100644
--- a/erpnext/public/js/hub/pages/Search.vue
+++ b/erpnext/public/js/hub/pages/Search.vue
@@ -25,7 +25,6 @@
 
 <script>
 export default {
-	name: 'saved-products-page',
 	data() {
 		return {
 			page_name: frappe.get_route()[1],
@@ -42,7 +41,7 @@
 		page_title() {
 			return this.items.length
 				? __(`Results for "${this.search_value}"`)
-				: __(`No Products found.`);
+				: __('No Items found.');
 		}
 	},
 	created() {
diff --git a/erpnext/public/js/hub/pages/Seller.vue b/erpnext/public/js/hub/pages/Seller.vue
index 86d75b8..c80865b 100644
--- a/erpnext/public/js/hub/pages/Seller.vue
+++ b/erpnext/public/js/hub/pages/Seller.vue
@@ -61,7 +61,7 @@
 	},
 	computed: {
 		item_container_heading() {
-			return __('Products by ' + this.seller_company);
+			return __('Items by ' + this.seller_company);
 		}
 	},
 	methods: {
diff --git a/erpnext/public/js/hub/pages/item.js b/erpnext/public/js/hub/pages/item.js
index cbbdfcf..50b04b8 100644
--- a/erpnext/public/js/hub/pages/item.js
+++ b/erpnext/public/js/hub/pages/item.js
@@ -48,7 +48,7 @@
 	edit_details() {
 		if (!this.edit_dialog) {
 			this.edit_dialog = new frappe.ui.Dialog({
-				title: "Edit Your Product",
+				title: "Edit Your Item",
 				fields: []
 			});
 		}
@@ -59,7 +59,7 @@
 	unpublish_item() {
 		if (!this.unpublish_dialog) {
 			this.unpublish_dialog = new frappe.ui.Dialog({
-				title: "Edit Your Product",
+				title: "Edit Your Item",
 				fields: []
 			});
 		}