diff --git a/.env.example b/.env.example
index 692878963..f2d66eebb 100644
--- a/.env.example
+++ b/.env.example
@@ -8,30 +8,30 @@ DATABASE_URL="postgresql://root:mysecretpassword@localhost:5432/local"
BETTER_AUTH_SECRET=""
# Stripe
-NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=""
-STRIPE_SECRET_KEY=""
-STRIPE_SECRET_WEBHOOK_KEY=""
+NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="asdasdasdasdasdasd"
+STRIPE_SECRET_KEY="asdasdasdasdasdasdasd"
+STRIPE_SECRET_WEBHOOK_KEY="asdasdasdasdasdasdasd"
# Discord
-DISCORD_BOT_TOKEN=""
-DISCORD_CLIENT_ID=""
+DISCORD_BOT_TOKEN="asdasdasdasdasdasd"
+DISCORD_CLIENT_ID="asdasdasdasdasdasd"
DISCORD_CLIENT_SECRET=""
-DISCORD_DAILY_ANIMAL_WEBHOOK_URL=""
-DISCORD_LEETCODE_DAILY_WEBHOOK_URL=""
-DISCORD_DAILY_REMINDERS_WEBHOOK_URL=""
-DISCORD_PRE_DAILY_REMINDERS_WEBHOOK_URL=""
-DISCORD_WEATHER_API_KEY=""
+DISCORD_DAILY_ANIMAL_WEBHOOK_URL="asdasdasdasdasdasd"
+DISCORD_LEETCODE_DAILY_WEBHOOK_URL="asdasdasdasdasdasd"
+DISCORD_DAILY_REMINDERS_WEBHOOK_URL="asdasdasdasdasdasd"
+DISCORD_PRE_DAILY_REMINDERS_WEBHOOK_URL="asdasdasdasdasdasd"
+DISCORD_WEATHER_API_KEY="asdasdasdasdasdasd"
# Google
-GOOGLE_PRIVATE_KEY_B64=""
-GOOGLE_CLIENT_EMAIL=""
+GOOGLE_PRIVATE_KEY_B64="asdasdasdasdasdasd"
+GOOGLE_CLIENT_EMAIL="stevie@gmail.com"
# Minio
-MINIO_ENDPOINT=""
-MINIO_ACCESS_KEY=""
-MINIO_SECRET_KEY=""
+MINIO_ENDPOINT="asdasdasdasdasdasd"
+MINIO_ACCESS_KEY="asdasdasdasdasdasd"
+MINIO_SECRET_KEY="asdasdasdasdasdasd"
#can I get a cheese burger
-BLADE_URL=""
+BLADE_URL="asdasdasdasdasdasd"
# Passkit
WWDR_CERT_BASE64=
@@ -42,5 +42,5 @@ PASS_TYPE_IDENTIFIER=
TEAM_IDENTIFIER=
#Resend
-RESEND_API_KEY=""
-RESEND_FROM_EMAIL=""
+RESEND_API_KEY="asdasdasdasdasdasdasd"
+RESEND_FROM_EMAIL="asdasdasdasdasdasdasd"
diff --git a/apps/blade/package.json b/apps/blade/package.json
index d7ffbd00a..d950c3d96 100644
--- a/apps/blade/package.json
+++ b/apps/blade/package.json
@@ -39,6 +39,7 @@
"canvas-confetti": "^1.9.3",
"csv-parse": "^6.1.0",
"csv-stringify": "^6.6.0",
+ "framer-motion": "^12.0.1",
"geist": "^1.3.1",
"google-auth-library": "^9.15.0",
"googleapis": "^144.0.0",
diff --git a/apps/blade/public/noah_img/city.svg b/apps/blade/public/noah_img/city.svg
new file mode 100644
index 000000000..01cc4a79d
--- /dev/null
+++ b/apps/blade/public/noah_img/city.svg
@@ -0,0 +1 @@
+
diff --git a/apps/blade/public/noah_img/github.svg b/apps/blade/public/noah_img/github.svg
new file mode 100644
index 000000000..25a4403fd
--- /dev/null
+++ b/apps/blade/public/noah_img/github.svg
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/apps/blade/public/noah_img/linkedin.svg b/apps/blade/public/noah_img/linkedin.svg
new file mode 100644
index 000000000..902724e5c
--- /dev/null
+++ b/apps/blade/public/noah_img/linkedin.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/apps/blade/public/noah_img/mahoraga.png b/apps/blade/public/noah_img/mahoraga.png
new file mode 100644
index 000000000..483528667
Binary files /dev/null and b/apps/blade/public/noah_img/mahoraga.png differ
diff --git a/apps/blade/public/noah_img/megumi.png b/apps/blade/public/noah_img/megumi.png
new file mode 100644
index 000000000..80748c390
Binary files /dev/null and b/apps/blade/public/noah_img/megumi.png differ
diff --git a/apps/blade/public/noah_img/moon.png b/apps/blade/public/noah_img/moon.png
new file mode 100644
index 000000000..e500fe07d
Binary files /dev/null and b/apps/blade/public/noah_img/moon.png differ
diff --git a/apps/blade/public/noah_img/myGoat.png b/apps/blade/public/noah_img/myGoat.png
new file mode 100644
index 000000000..59723897e
Binary files /dev/null and b/apps/blade/public/noah_img/myGoat.png differ
diff --git a/apps/blade/public/noah_img/name.png b/apps/blade/public/noah_img/name.png
new file mode 100644
index 000000000..6b524d16b
Binary files /dev/null and b/apps/blade/public/noah_img/name.png differ
diff --git a/apps/blade/public/noah_img/portfolio.svg b/apps/blade/public/noah_img/portfolio.svg
new file mode 100644
index 000000000..ae3af13fc
--- /dev/null
+++ b/apps/blade/public/noah_img/portfolio.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/apps/blade/public/noah_img/resume.svg b/apps/blade/public/noah_img/resume.svg
new file mode 100644
index 000000000..076f006d8
--- /dev/null
+++ b/apps/blade/public/noah_img/resume.svg
@@ -0,0 +1,15 @@
+
+
+
+
\ No newline at end of file
diff --git a/apps/blade/public/noah_img/wave.svg b/apps/blade/public/noah_img/wave.svg
new file mode 100644
index 000000000..c42ac88ef
--- /dev/null
+++ b/apps/blade/public/noah_img/wave.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/blade/public/resume.pdf b/apps/blade/public/resume.pdf
new file mode 100644
index 000000000..d6f6bd455
Binary files /dev/null and b/apps/blade/public/resume.pdf differ
diff --git a/apps/blade/src/app/components/AnimatedInfo.tsx b/apps/blade/src/app/components/AnimatedInfo.tsx
new file mode 100644
index 000000000..50f9f014e
--- /dev/null
+++ b/apps/blade/src/app/components/AnimatedInfo.tsx
@@ -0,0 +1,165 @@
+"use client";
+
+import { useRef } from "react";
+import Image from "next/image";
+import { motion, useInView } from "framer-motion";
+
+const AnimatedInfo = () => {
+ const ref = useRef(null);
+ const isInView = useInView(ref, { once: true });
+
+ const outerDivVariants = {
+ hidden: {},
+ show: {
+ transition: {
+ staggerChildren: 0.4,
+ delayChildren: 0.5,
+ },
+ },
+ };
+
+ const textBoxVariants = {
+ hidden: {
+ x: 100,
+ opacity: 0,
+ },
+ show: {
+ opacity: 1,
+ x: 0,
+ transition: {
+ duration: 1,
+ },
+ },
+ };
+
+ return (
+
+
+
+
+ Hi, I'm Noah!
+
+
+ I'm a first year Computer Science Major at UCF and an active
+ KnightHacks Member/former kickstart mentee. Click the buttons on the
+ right to see my resume, LinkedIn, Github, and Portfolio!
+
+ Though I have only been a club member for a short time, the
+ hackathons, club meetings, and mentor/mentee sessions I've attended
+ have endlessly inspired me and fueled my motivation to learn. If
+ selected, I will approach every task with curiosity and focused
+ effort, applying the skills I have gained so far while learning new
+ ones whenever necessary.
+
+
+
+
+ About AI Use
+
+
+ Unlike the graphic, I WON'T use AI to center divs or write for loops.
+ I see LLMs as a tool rather than a crutch and treat their responses
+ like any other potentially unreliable source of information. When I'm
+ inevitably confronted with a problem that I do not know how to handle,
+ I'll only use AI to supplement my learning, not to replace it.
+