diff --git a/frontend/bun.lockb b/frontend/bun.lockb
index 08a46ef..89e3ba5 100755
Binary files a/frontend/bun.lockb and b/frontend/bun.lockb differ
diff --git a/frontend/package.json b/frontend/package.json
index 3a806de..b324d48 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -10,13 +10,17 @@
},
"dependencies": {
"@radix-ui/react-slot": "^1.1.0",
+ "@react-email/components": "^0.0.22",
+ "@react-email/tailwind": "^0.0.19",
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
+ "dotenv": "^16.4.5",
"lucide-react": "^0.427.0",
"next": "14.1.4",
"nodemailer": "^6.9.14",
"react": "^18.3.1",
"react-dom": "^18.3.1",
+ "resend": "^3.5.0",
"sharp": "^0.33.4",
"tailwind-merge": "^2.5.2",
"tailwindcss-animate": "^1.0.7"
diff --git a/frontend/public/batch1/10-01.png b/frontend/public/batch1/10-01.png
deleted file mode 100644
index 3387d26..0000000
Binary files a/frontend/public/batch1/10-01.png and /dev/null differ
diff --git a/frontend/public/batch1/design 4-01.png b/frontend/public/batch1/design 4-01.png
deleted file mode 100644
index 00ef35d..0000000
Binary files a/frontend/public/batch1/design 4-01.png and /dev/null differ
diff --git a/frontend/public/batch1/design 6 update-01.png b/frontend/public/batch1/design 6 update-01.png
deleted file mode 100644
index a58d7bb..0000000
Binary files a/frontend/public/batch1/design 6 update-01.png and /dev/null differ
diff --git a/frontend/public/batch1/design 7 update-01.png b/frontend/public/batch1/design 7 update-01.png
deleted file mode 100644
index b55a2a0..0000000
Binary files a/frontend/public/batch1/design 7 update-01.png and /dev/null differ
diff --git a/frontend/public/batch1/design 8 update-01.png b/frontend/public/batch1/design 8 update-01.png
deleted file mode 100644
index d814c11..0000000
Binary files a/frontend/public/batch1/design 8 update-01.png and /dev/null differ
diff --git a/frontend/public/batch1/design update.png b/frontend/public/batch1/design update.png
deleted file mode 100644
index a8af868..0000000
Binary files a/frontend/public/batch1/design update.png and /dev/null differ
diff --git a/frontend/public/batch1/files_list.json b/frontend/public/batch1/files_list.json
index 8dbe018..6ef1706 100644
--- a/frontend/public/batch1/files_list.json
+++ b/frontend/public/batch1/files_list.json
@@ -2,7 +2,7 @@
{
"id": 1,
"name": "design update",
- "photo": "batch1/design update.png",
+ "photo": "batch1/t shirt mockup 3.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
@@ -42,7 +42,7 @@
{
"id": 5,
"name": "design 6 update-01",
- "photo": "batch1/design 6 update-01.png",
+ "photo": "batch1/t shirt mockup 6.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
@@ -72,7 +72,7 @@
{
"id": 9,
"name": "design 4-01",
- "photo": "batch1/design 4-01.png",
+ "photo": "batch1/t shirt mockup 4.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
@@ -99,16 +99,6 @@
"favorite": "no",
"description": "It's not an option.."
},
- {
- "id": 12,
- "name": "75-01",
- "photo": "batch1/75-01.png",
- "price": 25,
- "size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
- "inStock": "yes",
- "favorite": "no",
- "description": "It's not an option.."
- },
{
"id": 13,
"name": "Mockup 119",
@@ -132,7 +122,7 @@
{
"id": 15,
"name": "10-01",
- "photo": "batch1/10-01.png",
+ "photo": "batch1/t shirt mockup 10.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
@@ -142,7 +132,7 @@
{
"id": 16,
"name": "design 7 update-01",
- "photo": "batch1/design 7 update-01.png",
+ "photo": "batch1/t shirt mockup 7.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
@@ -182,7 +172,7 @@
{
"id": 20,
"name": "design 8 update-01",
- "photo": "batch1/design 8 update-01.png",
+ "photo": "batch1/t shirt mockup 8.jpg",
"price": 25,
"size": "Youth-S/M/L/2XL | Adult-S/M/L/2XL",
"inStock": "yes",
diff --git a/frontend/public/batch1/t shirt mockup 10.jpg b/frontend/public/batch1/t shirt mockup 10.jpg
new file mode 100644
index 0000000..48fe8f2
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 10.jpg differ
diff --git a/frontend/public/batch1/t shirt mockup 3.jpg b/frontend/public/batch1/t shirt mockup 3.jpg
new file mode 100644
index 0000000..cb6eb62
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 3.jpg differ
diff --git a/frontend/public/batch1/t shirt mockup 4.jpg b/frontend/public/batch1/t shirt mockup 4.jpg
new file mode 100644
index 0000000..e50d1ac
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 4.jpg differ
diff --git a/frontend/public/batch1/t shirt mockup 6.jpg b/frontend/public/batch1/t shirt mockup 6.jpg
new file mode 100644
index 0000000..6fae246
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 6.jpg differ
diff --git a/frontend/public/batch1/t shirt mockup 7.jpg b/frontend/public/batch1/t shirt mockup 7.jpg
new file mode 100644
index 0000000..8593ee6
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 7.jpg differ
diff --git a/frontend/public/batch1/t shirt mockup 8.jpg b/frontend/public/batch1/t shirt mockup 8.jpg
new file mode 100644
index 0000000..1c17c3c
Binary files /dev/null and b/frontend/public/batch1/t shirt mockup 8.jpg differ
diff --git a/frontend/src/app/actions/sendEmail.ts b/frontend/src/app/actions/sendEmail.ts
new file mode 100644
index 0000000..98daa03
--- /dev/null
+++ b/frontend/src/app/actions/sendEmail.ts
@@ -0,0 +1,44 @@
+"use server"
+
+import { Resend } from "resend"
+import { validateString } from "@/lib/utils";
+import OrderFormEmail from "../emailTemplates/order-form-email";
+import React from "react";
+import 'dotenv/config';
+
+
+const resend = new Resend(process.env.RESEND_API_KEY);
+
+
+export const sendEmail = async (formData: FormData) => {
+ //rate limit
+
+ //only allow authenticated user as well
+
+ const senderEmail = formData.get('senderEmail');
+ const message = formData.get('message');
+
+ if (!validateString(senderEmail, 500)){
+ return{ error: "Invalid sender Email",};
+ }
+ if (!validateString(message, 5000)){
+ return{ error: "Invalid message",};
+ }
+
+ // console.log("Running on sever");
+ // console.log(formData.get("senderEmail"));
+ // console.log(formData.get("message"));
+
+ try {
+ await resend.emails.send({
+ from:"Order Form
+