From 59c6326cf06d0756b694f3714771e28dc1d98a8b Mon Sep 17 00:00:00 2001 From: Suvodip Date: Thu, 25 Jul 2024 21:42:48 +0530 Subject: [PATCH] s1 --- app/routes/ai-quiz.tsx | 43 +++++--- app/routes/quiz.tsx | 206 ++++++++++++++++++++++++++++++++++++++ app/routes/start-quiz.tsx | 28 ++++++ public/assets/ai-quiz.css | 0 public/assets/image1.png | Bin 0 -> 27099 bytes 5 files changed, 264 insertions(+), 13 deletions(-) create mode 100644 app/routes/quiz.tsx create mode 100644 app/routes/start-quiz.tsx create mode 100644 public/assets/ai-quiz.css create mode 100644 public/assets/image1.png diff --git a/app/routes/ai-quiz.tsx b/app/routes/ai-quiz.tsx index dafbf8b..3ef826d 100644 --- a/app/routes/ai-quiz.tsx +++ b/app/routes/ai-quiz.tsx @@ -1,6 +1,5 @@ import React, { useEffect, useState } from 'react'; import { Progress } from 'antd'; - function letterCount() { const element = document.getElementById('queryMessage') as HTMLInputElement | null; if (element) { @@ -15,9 +14,30 @@ function letterCount() { } } +function toggleSection() { + let loadingSection = document.getElementById('loadingSection'); + let generateQuiz = document.getElementById('generateQuiz'); + + if (loadingSection && generateQuiz) { + // Check the current state and toggle + if (getComputedStyle(loadingSection).display === 'none') { + // Show loadingSection and hide generateQuiz + loadingSection.style.display = 'block'; + generateQuiz.style.display = 'none'; + } else { + // Hide loadingSection and show generateQuiz + loadingSection.style.display = 'none'; + generateQuiz.style.display = 'block'; + } + } else { + console.error('One or both of the elements are missing.'); + } +} + + export default function Index() { const [percent, setPercent] = useState(0); - const [secondsLeft, setSecondsLeft] = useState(30); + const [secondsLeft, setSecondsLeft] = useState(5); useEffect(() => { const interval = setInterval(() => { @@ -26,9 +46,8 @@ export default function Index() { clearInterval(interval); return 100; } - return Math.round(prevPercent + (100 / 30)); // Round percentage + return Math.round(prevPercent + (100 / 5)); // Round percentage }); - setSecondsLeft((prevSeconds) => { if (prevSeconds <= 1) { clearInterval(interval); @@ -40,7 +59,6 @@ export default function Index() { return () => clearInterval(interval); }, []); - return ( <>
@@ -52,8 +70,8 @@ export default function Index() {
- -
+ +
@@ -118,17 +136,16 @@ export default function Index() {
- +
-
-
+
+

Generating Quiz

This usually takes {secondsLeft} seconds

- -
- +
+
diff --git a/app/routes/quiz.tsx b/app/routes/quiz.tsx new file mode 100644 index 0000000..2a899b4 --- /dev/null +++ b/app/routes/quiz.tsx @@ -0,0 +1,206 @@ +import { useState, useEffect } from 'react'; + +// Sample questions JSON data +const questionsData = [ + { + "id": 1, + "question": "What is the capital of France?", + "options": ["Berlin", "Madrid", "Paris", "Rome"], + "answer": "Paris" + }, + { + "id": 2, + "question": "Which planet is known as the Red Planet?", + "options": ["Earth", "Mars", "Jupiter", "Saturn"], + "answer": "Mars" + }, + { + "id": 3, + "question": "What is the chemical symbol for gold?", + "options": ["Au", "Ag", "Pb", "Fe"], + "answer": "Au" + }, + { + "id": 4, + "question": "Who wrote 'To Kill a Mockingbird'?", + "options": ["Harper Lee", "Mark Twain", "Ernest Hemingway", "J.K. Rowling"], + "answer": "Harper Lee" + }, + { + "id": 5, + "question": "What is the largest ocean on Earth?", + "options": ["Atlantic Ocean", "Indian Ocean", "Arctic Ocean", "Pacific Ocean"], + "answer": "Pacific Ocean" + }, + { + "id": 6, + "question": "Which element has the atomic number 1?", + "options": ["Helium", "Hydrogen", "Oxygen", "Carbon"], + "answer": "Hydrogen" + }, + { + "id": 7, + "question": "In which year did the Titanic sink?", + "options": ["1912", "1905", "1898", "1923"], + "answer": "1912" + }, + { + "id": 8, + "question": "Who is the author of '1984'?", + "options": ["George Orwell", "Aldous Huxley", "Ray Bradbury", "J.D. Salinger"], + "answer": "George Orwell" + }, + { + "id": 9, + "question": "What is the hardest natural substance on Earth?", + "options": ["Gold", "Platinum", "Diamond", "Iron"], + "answer": "Diamond" + }, + { + "id": 10, + "question": "What is the largest planet in our solar system?", + "options": ["Earth", "Saturn", "Neptune", "Jupiter"], + "answer": "Jupiter" + }, + { + "id": 11, + "question": "What is the main ingredient in guacamole?", + "options": ["Tomato", "Avocado", "Pepper", "Onion"], + "answer": "Avocado" + }, + { + "id": 12, + "question": "Which country is known as the Land of the Rising Sun?", + "options": ["China", "Japan", "Thailand", "South Korea"], + "answer": "Japan" + }, + { + "id": 13, + "question": "What is the smallest prime number?", + "options": ["1", "2", "3", "5"], + "answer": "2" + }, + { + "id": 14, + "question": "Who painted the Mona Lisa?", + "options": ["Vincent van Gogh", "Leonardo da Vinci", "Pablo Picasso", "Claude Monet"], + "answer": "Leonardo da Vinci" + }, + { + "id": 15, + "question": "What is the capital city of Australia?", + "options": ["Sydney", "Melbourne", "Canberra", "Brisbane"], + "answer": "Canberra" + }, + { + "id": 16, + "question": "Which gas do plants primarily use for photosynthesis?", + "options": ["Oxygen", "Nitrogen", "Carbon Dioxide", "Hydrogen"], + "answer": "Carbon Dioxide" + }, + { + "id": 17, + "question": "What is the boiling point of water in Celsius?", + "options": ["90°C", "100°C", "110°C", "120°C"], + "answer": "100°C" + }, + { + "id": 18, + "question": "Which language is primarily spoken in Brazil?", + "options": ["Spanish", "Portuguese", "French", "English"], + "answer": "Portuguese" + }, + { + "id": 19, + "question": "What is the smallest unit of life?", + "options": ["Tissue", "Organ", "Cell", "Organism"], + "answer": "Cell" + }, + { + "id": 20, + "question": "Who developed the theory of relativity?", + "options": ["Isaac Newton", "Galileo Galilei", "Albert Einstein", "Niels Bohr"], + "answer": "Albert Einstein" + }, + { + "id": 21, + "question": "In what year did World War II end?", + "options": ["1945", "1944", "1946", "1943"], + "answer": "1945" + } +]; + + + +export default function Index() { + const [currentQuestionIndex, setCurrentQuestionIndex] = useState(0); + const [timeRemaining, setTimeRemaining] = useState(60); // 60 seconds countdown + const [intervalId, setIntervalId] = useState(null); + + useEffect(() => { + // Start the countdown timer + const id = setInterval(() => { + setTimeRemaining(prevTime => { + if (prevTime <= 1) { + clearInterval(id); + return 0; + } + return prevTime - 1; + }); + }, 1000); + + setIntervalId(id); + + // Clear interval on component unmount + return () => { + if (intervalId) { + clearInterval(intervalId); + } + }; + }, [intervalId]); + + const handleNextQuestion = () => { + setCurrentQuestionIndex(prevIndex => (prevIndex + 1) % questionsData.length); + }; + + const currentQuestion = questionsData[currentQuestionIndex]; + + return ( + <> +
+
+

+
+

Take an AI Generative Quiz

+

Convert any text into an interactive quiz session

+
+
+
+
+ {/* this div for margin top */} +
+
+

Time remaining: {timeRemaining} seconds

+
+ +
+
+

{`Q${currentQuestion.id}. ${currentQuestion.question}`}

+
+ {currentQuestion.options.map((option, index) => ( +
+ +
+ ))} +
+
+ +
+
+
+ + ); + } \ No newline at end of file diff --git a/app/routes/start-quiz.tsx b/app/routes/start-quiz.tsx new file mode 100644 index 0000000..633bf35 --- /dev/null +++ b/app/routes/start-quiz.tsx @@ -0,0 +1,28 @@ +export default function Index(){ + return( + <> +
+
+

+
+

Take an AI Generative Quiz

+

Convert any text into an interactive quiz session

+
+
+
+ + +
+
+ +

Are You Ready to take this Quiz?

+

Test Yourself and earn points for what you already know.

+

10 Questions30 minutes

+
+ +
+
+
+ + ) +} \ No newline at end of file diff --git a/public/assets/ai-quiz.css b/public/assets/ai-quiz.css new file mode 100644 index 0000000..e69de29 diff --git a/public/assets/image1.png b/public/assets/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..8508e1ee31b5768ff43345940f1a7c465a6100c5 GIT binary patch literal 27099 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