Index: database/drizzle/queries/components.ts
===================================================================
--- database/drizzle/queries/components.ts	(revision 41a2f81c85a6b12ebd6aff2f621dce1c8af277da)
+++ database/drizzle/queries/components.ts	(revision b0685a8a59fe7808efb0fea93b4fdaad4d6b44d9)
@@ -959,17 +959,4 @@
         if(!build || build.isApproved) return null;
 
-        const existing = await tx
-            .select()
-            .from(buildComponentsTable)
-            .where(
-                and(
-                    eq(buildComponentsTable.buildId, buildId),
-                    eq(buildComponentsTable.componentId, componentId)
-                )
-            )
-            .limit(1);
-
-        if (existing.length) return null;
-
         await tx
             .insert(buildComponentsTable)
Index: database/drizzle/schema/builds.ts
===================================================================
--- database/drizzle/schema/builds.ts	(revision 41a2f81c85a6b12ebd6aff2f621dce1c8af277da)
+++ database/drizzle/schema/builds.ts	(revision b0685a8a59fe7808efb0fea93b4fdaad4d6b44d9)
@@ -17,4 +17,5 @@
 
 export const buildComponentsTable = pgTable("build_component", {
+        id: serial("id").primaryKey(),
         buildId: integer("build_id")
             .notNull()
@@ -24,7 +25,4 @@
             .references(() => componentsTable.id, { onDelete: "cascade", onUpdate: "cascade" }),
     },
-    (t) => ({
-        pk: primaryKey({ columns: [t.buildId, t.componentId] }),
-    }),
 );
 
Index: tabase/migrations/0000_fancy_mojo.sql
===================================================================
--- database/migrations/0000_fancy_mojo.sql	(revision 41a2f81c85a6b12ebd6aff2f621dce1c8af277da)
+++ 	(revision )
@@ -1,242 +1,0 @@
-CREATE TABLE "build_component" (
-	"build_id" integer NOT NULL,
-	"component_id" integer NOT NULL,
-	CONSTRAINT "build_component_build_id_component_id_pk" PRIMARY KEY("build_id","component_id")
-);
---> statement-breakpoint
-CREATE TABLE "build" (
-	"id" serial PRIMARY KEY NOT NULL,
-	"user_id" integer NOT NULL,
-	"name" text NOT NULL,
-	"created_at" date NOT NULL,
-	"description" text,
-	"total_price" numeric NOT NULL,
-	"is_approved" boolean NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "favorite_build" (
-	"build_id" integer NOT NULL,
-	"user_id" integer NOT NULL,
-	CONSTRAINT "favorite_build_build_id_user_id_pk" PRIMARY KEY("build_id","user_id")
-);
---> statement-breakpoint
-CREATE TABLE "rating_build" (
-	"build_id" integer NOT NULL,
-	"user_id" integer NOT NULL,
-	"value" numeric NOT NULL,
-	CONSTRAINT "rating_build_build_id_user_id_pk" PRIMARY KEY("build_id","user_id"),
-	CONSTRAINT "check_value" CHECK ("rating_build"."value" BETWEEN 1 AND 5)
-);
---> statement-breakpoint
-CREATE TABLE "review" (
-	"id" serial PRIMARY KEY NOT NULL,
-	"build_id" integer NOT NULL,
-	"user_id" integer NOT NULL,
-	"content" text NOT NULL,
-	"created_at" date NOT NULL,
-	CONSTRAINT "review_build_id_user_id_unique" UNIQUE("build_id","user_id")
-);
---> statement-breakpoint
-CREATE TABLE "cpu" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"socket" text NOT NULL,
-	"cores" integer NOT NULL,
-	"threads" integer NOT NULL,
-	"base_clock" numeric NOT NULL,
-	"boost_clock" numeric,
-	"tdp" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "gpu" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"vram" numeric NOT NULL,
-	"tdp" numeric NOT NULL,
-	"base_clock" numeric,
-	"boost_clock" numeric,
-	"chipset" text NOT NULL,
-	"length" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "cables" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"length_cm" numeric NOT NULL,
-	"type" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "case_mobo_form_factors" (
-	"case_id" integer NOT NULL,
-	"form_factor" text NOT NULL,
-	CONSTRAINT "case_mobo_form_factors_case_id_form_factor_pk" PRIMARY KEY("case_id","form_factor")
-);
---> statement-breakpoint
-CREATE TABLE "case_ps_form_factors" (
-	"case_id" integer NOT NULL,
-	"form_factor" text NOT NULL,
-	CONSTRAINT "case_ps_form_factors_case_id_form_factor_pk" PRIMARY KEY("case_id","form_factor")
-);
---> statement-breakpoint
-CREATE TABLE "case_storage_form_factors" (
-	"case_id" integer NOT NULL,
-	"form_factor" text NOT NULL,
-	"num_slots" integer NOT NULL,
-	CONSTRAINT "case_storage_form_factors_case_id_form_factor_pk" PRIMARY KEY("case_id","form_factor")
-);
---> statement-breakpoint
-CREATE TABLE "components" (
-	"id" serial PRIMARY KEY NOT NULL,
-	"name" text NOT NULL,
-	"brand" text NOT NULL,
-	"price" numeric NOT NULL,
-	"img_url" text,
-	"type" text NOT NULL,
-	CONSTRAINT "check_type" CHECK ("components"."type" in 
-      ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card'))
-);
---> statement-breakpoint
-CREATE TABLE "cooler_cpu_sockets" (
-	"cooler_id" integer NOT NULL,
-	"socket" text NOT NULL,
-	CONSTRAINT "cooler_cpu_sockets_cooler_id_socket_pk" PRIMARY KEY("cooler_id","socket")
-);
---> statement-breakpoint
-CREATE TABLE "cooler" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"type" text NOT NULL,
-	"height" numeric NOT NULL,
-	"max_tdp_supported" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "memory_card" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"num_slots" integer NOT NULL,
-	"interface" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "memory" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"type" text NOT NULL,
-	"speed" numeric NOT NULL,
-	"capacity" numeric NOT NULL,
-	"modules" integer NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "motherboard" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"socket" text NOT NULL,
-	"chipset" text NOT NULL,
-	"form_factor" text NOT NULL,
-	"ram_type" text NOT NULL,
-	"num_ram_slots" integer NOT NULL,
-	"max_ram_capacity" numeric NOT NULL,
-	"pci_express_slots" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "network_adapter" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"wifi_version" text NOT NULL,
-	"interface" text NOT NULL,
-	"num_antennas" integer NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "network_card" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"num_ports" integer NOT NULL,
-	"speed" numeric NOT NULL,
-	"interface" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "optical_drive" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"form_factor" text NOT NULL,
-	"type" text NOT NULL,
-	"interface" text NOT NULL,
-	"write_speed" numeric NOT NULL,
-	"read_speed" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "pc_case" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"cooler_max_height" numeric NOT NULL,
-	"gpu_max_length" numeric NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "power_supply" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"type" text NOT NULL,
-	"wattage" numeric NOT NULL,
-	"form_factor" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "sound_card" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"sample_rate" numeric NOT NULL,
-	"bit_depth" numeric NOT NULL,
-	"chipset" text NOT NULL,
-	"interface" text NOT NULL,
-	"channel" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "storage" (
-	"component_id" integer PRIMARY KEY NOT NULL,
-	"type" text NOT NULL,
-	"capacity" numeric NOT NULL,
-	"form_factor" text NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "admins" (
-	"user_id" integer PRIMARY KEY NOT NULL
-);
---> statement-breakpoint
-CREATE TABLE "suggestions" (
-	"id" serial PRIMARY KEY NOT NULL,
-	"user_id" integer NOT NULL,
-	"admin_id" integer,
-	"link" text NOT NULL,
-	"admin_comment" text,
-	"description" text,
-	"status" text DEFAULT 'pending' NOT NULL,
-	"component_type" text NOT NULL,
-	CONSTRAINT "check_status" CHECK ("suggestions"."status" in ('pending', 'approved', 'rejected')),
-	CONSTRAINT "check_type" CHECK ("suggestions"."component_type" in 
-      ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card'))
-);
---> statement-breakpoint
-CREATE TABLE "users" (
-	"id" serial PRIMARY KEY NOT NULL,
-	"username" text NOT NULL,
-	"password" text NOT NULL,
-	"email" text NOT NULL,
-	CONSTRAINT "users_username_unique" UNIQUE("username"),
-	CONSTRAINT "users_email_unique" UNIQUE("email")
-);
---> statement-breakpoint
-ALTER TABLE "build_component" ADD CONSTRAINT "build_component_build_id_build_id_fk" FOREIGN KEY ("build_id") REFERENCES "public"."build"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "build_component" ADD CONSTRAINT "build_component_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "build" ADD CONSTRAINT "build_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "favorite_build" ADD CONSTRAINT "favorite_build_build_id_build_id_fk" FOREIGN KEY ("build_id") REFERENCES "public"."build"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "favorite_build" ADD CONSTRAINT "favorite_build_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "rating_build" ADD CONSTRAINT "rating_build_build_id_build_id_fk" FOREIGN KEY ("build_id") REFERENCES "public"."build"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "rating_build" ADD CONSTRAINT "rating_build_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "review" ADD CONSTRAINT "review_build_id_build_id_fk" FOREIGN KEY ("build_id") REFERENCES "public"."build"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "review" ADD CONSTRAINT "review_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "cpu" ADD CONSTRAINT "cpu_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "gpu" ADD CONSTRAINT "gpu_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "cables" ADD CONSTRAINT "cables_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "case_mobo_form_factors" ADD CONSTRAINT "case_mobo_form_factors_case_id_pc_case_component_id_fk" FOREIGN KEY ("case_id") REFERENCES "public"."pc_case"("component_id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "case_ps_form_factors" ADD CONSTRAINT "case_ps_form_factors_case_id_pc_case_component_id_fk" FOREIGN KEY ("case_id") REFERENCES "public"."pc_case"("component_id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "case_storage_form_factors" ADD CONSTRAINT "case_storage_form_factors_case_id_pc_case_component_id_fk" FOREIGN KEY ("case_id") REFERENCES "public"."pc_case"("component_id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "cooler_cpu_sockets" ADD CONSTRAINT "cooler_cpu_sockets_cooler_id_cooler_component_id_fk" FOREIGN KEY ("cooler_id") REFERENCES "public"."cooler"("component_id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "cooler" ADD CONSTRAINT "cooler_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "memory_card" ADD CONSTRAINT "memory_card_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "memory" ADD CONSTRAINT "memory_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "motherboard" ADD CONSTRAINT "motherboard_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "network_adapter" ADD CONSTRAINT "network_adapter_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "network_card" ADD CONSTRAINT "network_card_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "optical_drive" ADD CONSTRAINT "optical_drive_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "pc_case" ADD CONSTRAINT "pc_case_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "power_supply" ADD CONSTRAINT "power_supply_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "sound_card" ADD CONSTRAINT "sound_card_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "storage" ADD CONSTRAINT "storage_component_id_components_id_fk" FOREIGN KEY ("component_id") REFERENCES "public"."components"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "admins" ADD CONSTRAINT "admins_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "suggestions" ADD CONSTRAINT "suggestions_user_id_users_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE cascade;--> statement-breakpoint
-ALTER TABLE "suggestions" ADD CONSTRAINT "suggestions_admin_id_admins_user_id_fk" FOREIGN KEY ("admin_id") REFERENCES "public"."admins"("user_id") ON DELETE set null ON UPDATE cascade;
Index: tabase/migrations/meta/0000_snapshot.json
===================================================================
--- database/migrations/meta/0000_snapshot.json	(revision 41a2f81c85a6b12ebd6aff2f621dce1c8af277da)
+++ 	(revision )
@@ -1,1575 +1,0 @@
-{
-  "id": "294407f5-3396-43fc-ace1-814badc53535",
-  "prevId": "00000000-0000-0000-0000-000000000000",
-  "version": "7",
-  "dialect": "postgresql",
-  "tables": {
-    "public.build_component": {
-      "name": "build_component",
-      "schema": "",
-      "columns": {
-        "build_id": {
-          "name": "build_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "build_component_build_id_build_id_fk": {
-          "name": "build_component_build_id_build_id_fk",
-          "tableFrom": "build_component",
-          "tableTo": "build",
-          "columnsFrom": [
-            "build_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        },
-        "build_component_component_id_components_id_fk": {
-          "name": "build_component_component_id_components_id_fk",
-          "tableFrom": "build_component",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "build_component_build_id_component_id_pk": {
-          "name": "build_component_build_id_component_id_pk",
-          "columns": [
-            "build_id",
-            "component_id"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.build": {
-      "name": "build",
-      "schema": "",
-      "columns": {
-        "id": {
-          "name": "id",
-          "type": "serial",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "name": {
-          "name": "name",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "created_at": {
-          "name": "created_at",
-          "type": "date",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "description": {
-          "name": "description",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "total_price": {
-          "name": "total_price",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "is_approved": {
-          "name": "is_approved",
-          "type": "boolean",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "build_user_id_users_id_fk": {
-          "name": "build_user_id_users_id_fk",
-          "tableFrom": "build",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.favorite_build": {
-      "name": "favorite_build",
-      "schema": "",
-      "columns": {
-        "build_id": {
-          "name": "build_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "favorite_build_build_id_build_id_fk": {
-          "name": "favorite_build_build_id_build_id_fk",
-          "tableFrom": "favorite_build",
-          "tableTo": "build",
-          "columnsFrom": [
-            "build_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        },
-        "favorite_build_user_id_users_id_fk": {
-          "name": "favorite_build_user_id_users_id_fk",
-          "tableFrom": "favorite_build",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "favorite_build_build_id_user_id_pk": {
-          "name": "favorite_build_build_id_user_id_pk",
-          "columns": [
-            "build_id",
-            "user_id"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.rating_build": {
-      "name": "rating_build",
-      "schema": "",
-      "columns": {
-        "build_id": {
-          "name": "build_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "value": {
-          "name": "value",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "rating_build_build_id_build_id_fk": {
-          "name": "rating_build_build_id_build_id_fk",
-          "tableFrom": "rating_build",
-          "tableTo": "build",
-          "columnsFrom": [
-            "build_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        },
-        "rating_build_user_id_users_id_fk": {
-          "name": "rating_build_user_id_users_id_fk",
-          "tableFrom": "rating_build",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "rating_build_build_id_user_id_pk": {
-          "name": "rating_build_build_id_user_id_pk",
-          "columns": [
-            "build_id",
-            "user_id"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {
-        "check_value": {
-          "name": "check_value",
-          "value": "\"rating_build\".\"value\" BETWEEN 1 AND 5"
-        }
-      },
-      "isRLSEnabled": false
-    },
-    "public.review": {
-      "name": "review",
-      "schema": "",
-      "columns": {
-        "id": {
-          "name": "id",
-          "type": "serial",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "build_id": {
-          "name": "build_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "content": {
-          "name": "content",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "created_at": {
-          "name": "created_at",
-          "type": "date",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "review_build_id_build_id_fk": {
-          "name": "review_build_id_build_id_fk",
-          "tableFrom": "review",
-          "tableTo": "build",
-          "columnsFrom": [
-            "build_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        },
-        "review_user_id_users_id_fk": {
-          "name": "review_user_id_users_id_fk",
-          "tableFrom": "review",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {
-        "review_build_id_user_id_unique": {
-          "name": "review_build_id_user_id_unique",
-          "nullsNotDistinct": false,
-          "columns": [
-            "build_id",
-            "user_id"
-          ]
-        }
-      },
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.cpu": {
-      "name": "cpu",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "socket": {
-          "name": "socket",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "cores": {
-          "name": "cores",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "threads": {
-          "name": "threads",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "base_clock": {
-          "name": "base_clock",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "boost_clock": {
-          "name": "boost_clock",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "tdp": {
-          "name": "tdp",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "cpu_component_id_components_id_fk": {
-          "name": "cpu_component_id_components_id_fk",
-          "tableFrom": "cpu",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.gpu": {
-      "name": "gpu",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "vram": {
-          "name": "vram",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "tdp": {
-          "name": "tdp",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "base_clock": {
-          "name": "base_clock",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "boost_clock": {
-          "name": "boost_clock",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "chipset": {
-          "name": "chipset",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "length": {
-          "name": "length",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "gpu_component_id_components_id_fk": {
-          "name": "gpu_component_id_components_id_fk",
-          "tableFrom": "gpu",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.cables": {
-      "name": "cables",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "length_cm": {
-          "name": "length_cm",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "cables_component_id_components_id_fk": {
-          "name": "cables_component_id_components_id_fk",
-          "tableFrom": "cables",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.case_mobo_form_factors": {
-      "name": "case_mobo_form_factors",
-      "schema": "",
-      "columns": {
-        "case_id": {
-          "name": "case_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "case_mobo_form_factors_case_id_pc_case_component_id_fk": {
-          "name": "case_mobo_form_factors_case_id_pc_case_component_id_fk",
-          "tableFrom": "case_mobo_form_factors",
-          "tableTo": "pc_case",
-          "columnsFrom": [
-            "case_id"
-          ],
-          "columnsTo": [
-            "component_id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "case_mobo_form_factors_case_id_form_factor_pk": {
-          "name": "case_mobo_form_factors_case_id_form_factor_pk",
-          "columns": [
-            "case_id",
-            "form_factor"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.case_ps_form_factors": {
-      "name": "case_ps_form_factors",
-      "schema": "",
-      "columns": {
-        "case_id": {
-          "name": "case_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "case_ps_form_factors_case_id_pc_case_component_id_fk": {
-          "name": "case_ps_form_factors_case_id_pc_case_component_id_fk",
-          "tableFrom": "case_ps_form_factors",
-          "tableTo": "pc_case",
-          "columnsFrom": [
-            "case_id"
-          ],
-          "columnsTo": [
-            "component_id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "case_ps_form_factors_case_id_form_factor_pk": {
-          "name": "case_ps_form_factors_case_id_form_factor_pk",
-          "columns": [
-            "case_id",
-            "form_factor"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.case_storage_form_factors": {
-      "name": "case_storage_form_factors",
-      "schema": "",
-      "columns": {
-        "case_id": {
-          "name": "case_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "num_slots": {
-          "name": "num_slots",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "case_storage_form_factors_case_id_pc_case_component_id_fk": {
-          "name": "case_storage_form_factors_case_id_pc_case_component_id_fk",
-          "tableFrom": "case_storage_form_factors",
-          "tableTo": "pc_case",
-          "columnsFrom": [
-            "case_id"
-          ],
-          "columnsTo": [
-            "component_id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "case_storage_form_factors_case_id_form_factor_pk": {
-          "name": "case_storage_form_factors_case_id_form_factor_pk",
-          "columns": [
-            "case_id",
-            "form_factor"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.components": {
-      "name": "components",
-      "schema": "",
-      "columns": {
-        "id": {
-          "name": "id",
-          "type": "serial",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "name": {
-          "name": "name",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "brand": {
-          "name": "brand",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "price": {
-          "name": "price",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "img_url": {
-          "name": "img_url",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {},
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {
-        "check_type": {
-          "name": "check_type",
-          "value": "\"components\".\"type\" in \n      ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card')"
-        }
-      },
-      "isRLSEnabled": false
-    },
-    "public.cooler_cpu_sockets": {
-      "name": "cooler_cpu_sockets",
-      "schema": "",
-      "columns": {
-        "cooler_id": {
-          "name": "cooler_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "socket": {
-          "name": "socket",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "cooler_cpu_sockets_cooler_id_cooler_component_id_fk": {
-          "name": "cooler_cpu_sockets_cooler_id_cooler_component_id_fk",
-          "tableFrom": "cooler_cpu_sockets",
-          "tableTo": "cooler",
-          "columnsFrom": [
-            "cooler_id"
-          ],
-          "columnsTo": [
-            "component_id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {
-        "cooler_cpu_sockets_cooler_id_socket_pk": {
-          "name": "cooler_cpu_sockets_cooler_id_socket_pk",
-          "columns": [
-            "cooler_id",
-            "socket"
-          ]
-        }
-      },
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.cooler": {
-      "name": "cooler",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "height": {
-          "name": "height",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "max_tdp_supported": {
-          "name": "max_tdp_supported",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "cooler_component_id_components_id_fk": {
-          "name": "cooler_component_id_components_id_fk",
-          "tableFrom": "cooler",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.memory_card": {
-      "name": "memory_card",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "num_slots": {
-          "name": "num_slots",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "interface": {
-          "name": "interface",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "memory_card_component_id_components_id_fk": {
-          "name": "memory_card_component_id_components_id_fk",
-          "tableFrom": "memory_card",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.memory": {
-      "name": "memory",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "speed": {
-          "name": "speed",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "capacity": {
-          "name": "capacity",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "modules": {
-          "name": "modules",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "memory_component_id_components_id_fk": {
-          "name": "memory_component_id_components_id_fk",
-          "tableFrom": "memory",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.motherboard": {
-      "name": "motherboard",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "socket": {
-          "name": "socket",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "chipset": {
-          "name": "chipset",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "ram_type": {
-          "name": "ram_type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "num_ram_slots": {
-          "name": "num_ram_slots",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "max_ram_capacity": {
-          "name": "max_ram_capacity",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "pci_express_slots": {
-          "name": "pci_express_slots",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "motherboard_component_id_components_id_fk": {
-          "name": "motherboard_component_id_components_id_fk",
-          "tableFrom": "motherboard",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.network_adapter": {
-      "name": "network_adapter",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "wifi_version": {
-          "name": "wifi_version",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "interface": {
-          "name": "interface",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "num_antennas": {
-          "name": "num_antennas",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "network_adapter_component_id_components_id_fk": {
-          "name": "network_adapter_component_id_components_id_fk",
-          "tableFrom": "network_adapter",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.network_card": {
-      "name": "network_card",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "num_ports": {
-          "name": "num_ports",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "speed": {
-          "name": "speed",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "interface": {
-          "name": "interface",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "network_card_component_id_components_id_fk": {
-          "name": "network_card_component_id_components_id_fk",
-          "tableFrom": "network_card",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.optical_drive": {
-      "name": "optical_drive",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "interface": {
-          "name": "interface",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "write_speed": {
-          "name": "write_speed",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "read_speed": {
-          "name": "read_speed",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "optical_drive_component_id_components_id_fk": {
-          "name": "optical_drive_component_id_components_id_fk",
-          "tableFrom": "optical_drive",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.pc_case": {
-      "name": "pc_case",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "cooler_max_height": {
-          "name": "cooler_max_height",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "gpu_max_length": {
-          "name": "gpu_max_length",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "pc_case_component_id_components_id_fk": {
-          "name": "pc_case_component_id_components_id_fk",
-          "tableFrom": "pc_case",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.power_supply": {
-      "name": "power_supply",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "wattage": {
-          "name": "wattage",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "power_supply_component_id_components_id_fk": {
-          "name": "power_supply_component_id_components_id_fk",
-          "tableFrom": "power_supply",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.sound_card": {
-      "name": "sound_card",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "sample_rate": {
-          "name": "sample_rate",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "bit_depth": {
-          "name": "bit_depth",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "chipset": {
-          "name": "chipset",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "interface": {
-          "name": "interface",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "channel": {
-          "name": "channel",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "sound_card_component_id_components_id_fk": {
-          "name": "sound_card_component_id_components_id_fk",
-          "tableFrom": "sound_card",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.storage": {
-      "name": "storage",
-      "schema": "",
-      "columns": {
-        "component_id": {
-          "name": "component_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "type": {
-          "name": "type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "capacity": {
-          "name": "capacity",
-          "type": "numeric",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "form_factor": {
-          "name": "form_factor",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "storage_component_id_components_id_fk": {
-          "name": "storage_component_id_components_id_fk",
-          "tableFrom": "storage",
-          "tableTo": "components",
-          "columnsFrom": [
-            "component_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.admins": {
-      "name": "admins",
-      "schema": "",
-      "columns": {
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": true,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "admins_user_id_users_id_fk": {
-          "name": "admins_user_id_users_id_fk",
-          "tableFrom": "admins",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    },
-    "public.suggestions": {
-      "name": "suggestions",
-      "schema": "",
-      "columns": {
-        "id": {
-          "name": "id",
-          "type": "serial",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "user_id": {
-          "name": "user_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "admin_id": {
-          "name": "admin_id",
-          "type": "integer",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "link": {
-          "name": "link",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "admin_comment": {
-          "name": "admin_comment",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "description": {
-          "name": "description",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": false
-        },
-        "status": {
-          "name": "status",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true,
-          "default": "'pending'"
-        },
-        "component_type": {
-          "name": "component_type",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {
-        "suggestions_user_id_users_id_fk": {
-          "name": "suggestions_user_id_users_id_fk",
-          "tableFrom": "suggestions",
-          "tableTo": "users",
-          "columnsFrom": [
-            "user_id"
-          ],
-          "columnsTo": [
-            "id"
-          ],
-          "onDelete": "cascade",
-          "onUpdate": "cascade"
-        },
-        "suggestions_admin_id_admins_user_id_fk": {
-          "name": "suggestions_admin_id_admins_user_id_fk",
-          "tableFrom": "suggestions",
-          "tableTo": "admins",
-          "columnsFrom": [
-            "admin_id"
-          ],
-          "columnsTo": [
-            "user_id"
-          ],
-          "onDelete": "set null",
-          "onUpdate": "cascade"
-        }
-      },
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {},
-      "policies": {},
-      "checkConstraints": {
-        "check_status": {
-          "name": "check_status",
-          "value": "\"suggestions\".\"status\" in ('pending', 'approved', 'rejected')"
-        },
-        "check_type": {
-          "name": "check_type",
-          "value": "\"suggestions\".\"component_type\" in \n      ('cpu', 'gpu', 'memory', 'storage', 'power_supply', 'motherboard', 'case', 'cooler', 'memory_card', 'optical_drive', 'sound_card', 'cables', 'network_adapter', 'network_card')"
-        }
-      },
-      "isRLSEnabled": false
-    },
-    "public.users": {
-      "name": "users",
-      "schema": "",
-      "columns": {
-        "id": {
-          "name": "id",
-          "type": "serial",
-          "primaryKey": true,
-          "notNull": true
-        },
-        "username": {
-          "name": "username",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "password": {
-          "name": "password",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        },
-        "email": {
-          "name": "email",
-          "type": "text",
-          "primaryKey": false,
-          "notNull": true
-        }
-      },
-      "indexes": {},
-      "foreignKeys": {},
-      "compositePrimaryKeys": {},
-      "uniqueConstraints": {
-        "users_username_unique": {
-          "name": "users_username_unique",
-          "nullsNotDistinct": false,
-          "columns": [
-            "username"
-          ]
-        },
-        "users_email_unique": {
-          "name": "users_email_unique",
-          "nullsNotDistinct": false,
-          "columns": [
-            "email"
-          ]
-        }
-      },
-      "policies": {},
-      "checkConstraints": {},
-      "isRLSEnabled": false
-    }
-  },
-  "enums": {},
-  "schemas": {},
-  "sequences": {},
-  "roles": {},
-  "policies": {},
-  "views": {},
-  "_meta": {
-    "columns": {},
-    "schemas": {},
-    "tables": {}
-  }
-}
Index: tabase/migrations/meta/_journal.json
===================================================================
--- database/migrations/meta/_journal.json	(revision 41a2f81c85a6b12ebd6aff2f621dce1c8af277da)
+++ 	(revision )
@@ -1,13 +1,0 @@
-{
-  "version": "7",
-  "dialect": "postgresql",
-  "entries": [
-    {
-      "idx": 0,
-      "version": "7",
-      "when": 1766862496340,
-      "tag": "0000_fancy_mojo",
-      "breakpoints": true
-    }
-  ]
-}
