From eb362903c56768b58a4ead773b5a3cca4f5a03c6 Mon Sep 17 00:00:00 2001 From: jainiksha Date: Thu, 13 Aug 2026 15:22:57 +0530 Subject: [PATCH 1/2] feat: add AI technical signal analyzer --- ...InterviewAnswerTechnicalSignalAnalyzer.jsx | 245 ++++++++++++++++++ 1 file changed, 245 insertions(+) create mode 100644 frontend/src/pages/AIInterviewAnswerTechnicalSignalAnalyzer.jsx diff --git a/frontend/src/pages/AIInterviewAnswerTechnicalSignalAnalyzer.jsx b/frontend/src/pages/AIInterviewAnswerTechnicalSignalAnalyzer.jsx new file mode 100644 index 00000000..4bbf8c02 --- /dev/null +++ b/frontend/src/pages/AIInterviewAnswerTechnicalSignalAnalyzer.jsx @@ -0,0 +1,245 @@ +import React, { useState } from "react"; +import { + Brain, + Target, + CheckCircle2, + AlertTriangle, + TrendingUp, +} from "lucide-react"; + +const signals = [ + { + title: "Technical Decision", + description: "Explains why caching was selected.", + score: 92, + status: "Strong", + }, + { + title: "Performance Awareness", + description: "Connects caching with reduced database load.", + score: 86, + status: "Strong", + }, + { + title: "Scalability Evidence", + description: "Does not clearly explain how the solution scales.", + score: 54, + status: "Weak", + }, + { + title: "Trade-off Explanation", + description: "Mentions consistency concerns but lacks depth.", + score: 61, + status: "Needs Improvement", + }, +]; + +export default function AIInterviewAnswerTechnicalSignalAnalyzer() { + const [answer, setAnswer] = useState(""); + const [analyzed, setAnalyzed] = useState(false); + + return ( +
+ + {/* Header */} +
+ +
+ +
+ +
+

+ AI Technical Signal Analyzer +

+ +

+ Identify the technical signals your answer communicates to an + interviewer. +

+
+ +
+ + {/* Question */} +
+ +

+ Interview Question +

+ +

+ How would you improve the performance of a high-traffic API? +

+ +
+ + {/* Answer */} +
+ +

+ Your Answer +

+ +