Index: database/drizzle/queries/builds.ts
===================================================================
--- database/drizzle/queries/builds.ts	(revision 387083452a874472599c1fd728bdeea99bf1c966)
+++ database/drizzle/queries/builds.ts	(revision 1b5c18bef56f1e5c7c01819c2ef8e8ec2b99b219)
@@ -200,5 +200,6 @@
             .select({
                 componentId: buildComponentsTable.componentId,
-                component: componentsTable
+                component: componentsTable,
+                quantity: buildComponentsTable.numComponents
             })
             .from(buildComponentsTable)
@@ -292,5 +293,8 @@
         return {
             ...buildDetails,
-            components: components.map(c => c.component),
+            components: components.map(c => ({
+                    ...c.component,
+                    quantity: c.quantity
+            })),
             reviews: reviews.map(r => ({
                 username: r.username,
@@ -419,5 +423,8 @@
 
         const existing = await tx
-            .select({ componentId: buildComponentsTable.componentId })
+            .select({
+                componentId: buildComponentsTable.componentId,
+                numComponents: buildComponentsTable.numComponents
+            })
             .from(buildComponentsTable)
             .where(eq(buildComponentsTable.buildId, buildId));
@@ -428,4 +435,5 @@
                     buildId: newBuild.id,
                     componentId: r.componentId,
+                    numComponents: r.numComponents
                 })),
             );
@@ -545,5 +553,6 @@
         const components = await tx
             .select({
-                componentId: buildComponentsTable.componentId
+                componentId: buildComponentsTable.componentId,
+                quantity: buildComponentsTable.numComponents
             })
             .from(buildComponentsTable)
@@ -554,5 +563,8 @@
         return {
             build,
-            componentIds: components.map(c => c.componentId)
+            components: components.map(c => ({
+                id: c.componentId,
+                quantity: c.quantity
+            }))
         };
     });
