commit 414f9b79dc8200729b2afca7d437eee8812fb043
Author: root <root@hub.scroll.pub> Date: 2024-12-27 16:50:58 +0000 Subject: Initial commit diff --git a/body.html b/body.html new file mode 100644 index 0000000..80c016e --- /dev/null +++ b/body.html @@ -0,0 +1,48 @@ +<header> + <h1>Find Your Email Marketing Level</h1> + <p>Take this quick quiz to discover the perfect email marketing solution for your needs.</p> +</header> + +<main> + <section id="quiz"> + <div class="question active" id="q1"> + <h2>How many subscribers do you have?</h2> + <div class="options"> + <button data-value="basic">Less than 500</button> + <button data-value="intermediate">500 - 5,000</button> + <button data-value="advanced">More than 5,000</button> + </div> + </div> + + <div class="question" id="q2"> + <h2>How often do you send emails?</h2> + <div class="options"> + <button data-value="basic">Monthly or less</button> + <button data-value="intermediate">Weekly</button> + <button data-value="advanced">Daily or multiple times per week</button> + </div> + </div> + + <div class="question" id="q3"> + <h2>What's your email marketing goal?</h2> + <div class="options"> + <button data-value="basic">Simple newsletters</button> + <button data-value="intermediate">Promotions and sales</button> + <button data-value="advanced">Automated campaigns and segmentation</button> + </div> + </div> + </section> + + <section id="result" class="hidden"> + <h2>Your Recommended Level:</h2> + <div class="level-card"> + <h3 id="level-title"></h3> + <p id="level-description"></p> + </div> + <button id="retake">Retake Quiz</button> + </section> +</main> + +<footer> + <p>EmailQuiz - Helping you find the right email marketing solution</p> +</footer> \ No newline at end of file diff --git a/index.scroll b/index.scroll new file mode 100644 index 0000000..e42377f --- /dev/null +++ b/index.scroll @@ -0,0 +1,8 @@ +buildHtml +baseUrl https://emailquiz.scroll.pub +metaTags +editButton /edit.html +title Find Your Email Marketing Level - EmailQuiz +style.css +body.html +script.js \ No newline at end of file diff --git a/prompt.json b/prompt.json new file mode 100644 index 0000000..24c9780 --- /dev/null +++ b/prompt.json @@ -0,0 +1,25 @@ +{ + "id": "2bc60c9e-2c25-4fc0-bb33-070acb098189", + "object": "chat.completion", + "created": 1735318233, + "model": "deepseek-chat", + "choices": [ + { + "index": 0, + "message": { + "role": "assistant", + "content": "---domain---\nemailquiz.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://emailquiz.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Find Your Email Marketing Level - EmailQuiz\nstyle.css\nbody.html\nscript.js\n---body.html---\n<header>\n <h1>Find Your Email Marketing Level</h1>\n <p>Take this quick quiz to discover the perfect email marketing solution for your needs.</p>\n</header>\n\n<main>\n <section id=\"quiz\">\n <div class=\"question active\" id=\"q1\">\n <h2>How many subscribers do you have?</h2>\n <div class=\"options\">\n <button data-value=\"basic\">Less than 500</button>\n <button data-value=\"intermediate\">500 - 5,000</button>\n <button data-value=\"advanced\">More than 5,000</button>\n </div>\n </div>\n\n <div class=\"question\" id=\"q2\">\n <h2>How often do you send emails?</h2>\n <div class=\"options\">\n <button data-value=\"basic\">Monthly or less</button>\n <button data-value=\"intermediate\">Weekly</button>\n <button data-value=\"advanced\">Daily or multiple times per week</button>\n </div>\n </div>\n\n <div class=\"question\" id=\"q3\">\n <h2>What's your email marketing goal?</h2>\n <div class=\"options\">\n <button data-value=\"basic\">Simple newsletters</button>\n <button data-value=\"intermediate\">Promotions and sales</button>\n <button data-value=\"advanced\">Automated campaigns and segmentation</button>\n </div>\n </div>\n </section>\n\n <section id=\"result\" class=\"hidden\">\n <h2>Your Recommended Level:</h2>\n <div class=\"level-card\">\n <h3 id=\"level-title\"></h3>\n <p id=\"level-description\"></p>\n </div>\n <button id=\"retake\">Retake Quiz</button>\n </section>\n</main>\n\n<footer>\n <p>EmailQuiz - Helping you find the right email marketing solution</p>\n</footer>\n---style.css---\n:root {\n --primary: #2563eb;\n --primary-hover: #1d4ed8;\n --background: #f8fafc;\n --text: #1e293b;\n --card-bg: #ffffff;\n --shadow: 0 1px 3px rgba(0,0,0,0.1);\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;\n line-height: 1.6;\n color: var(--text);\n background: var(--background);\n padding: 2rem;\n min-height: 100vh;\n}\n\nheader {\n text-align: center;\n margin-bottom: 2rem;\n}\n\nh1 {\n font-size: 2.5rem;\n color: var(--primary);\n margin-bottom: 1rem;\n}\n\nh2 {\n font-size: 1.8rem;\n margin-bottom: 1.5rem;\n}\n\nmain {\n max-width: 800px;\n margin: 0 auto;\n}\n\n.question {\n background: var(--card-bg);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: var(--shadow);\n margin-bottom: 1rem;\n display: none;\n}\n\n.question.active {\n display: block;\n}\n\n.options {\n display: grid;\n gap: 1rem;\n}\n\nbutton {\n background: var(--primary);\n color: white;\n border: none;\n padding: 1rem;\n border-radius: 4px;\n font-size: 1rem;\n cursor: pointer;\n transition: background 0.3s ease;\n}\n\nbutton:hover {\n background: var(--primary-hover);\n}\n\n#result {\n text-align: center;\n margin-top: 2rem;\n}\n\n.level-card {\n background: var(--card-bg);\n padding: 2rem;\n border-radius: 8px;\n box-shadow: var(--shadow);\n margin: 2rem auto;\n max-width: 500px;\n}\n\n.hidden {\n display: none;\n}\n\nfooter {\n text-align: center;\n margin-top: 3rem;\n color: #64748b;\n}\n\n@media (max-width: 600px) {\n body {\n padding: 1rem;\n }\n \n h1 {\n font-size: 2rem;\n }\n \n h2 {\n font-size: 1.5rem;\n }\n \n .question {\n padding: 1.5rem;\n }\n}\n---script.js---\nconst questions = document.querySelectorAll('.question');\nconst resultSection = document.getElementById('result');\nconst levelTitle = document.getElementById('level-title');\nconst levelDescription = document.getElementById('level-description');\nconst retakeButton = document.getElementById('retake');\n\nlet currentQuestion = 0;\nlet results = [];\n\nconst levels = {\n basic: {\n title: \"Basic\",\n description: \"Start with a simple email marketing tool. Focus on building your list and creating consistent content.\"\n },\n intermediate: {\n title: \"Intermediate\",\n description: \"Use a more advanced platform with automation features. Start segmenting your audience and tracking performance.\"\n },\n advanced: {\n title: \"Advanced\",\n description: \"Invest in a comprehensive email marketing solution with advanced automation, segmentation, and analytics.\"\n }\n};\n\nfunction showQuestion(index) {\n questions.forEach((question, i) => {\n question.classList.toggle('active', i === index);\n });\n}\n\nfunction nextQuestion() {\n currentQuestion++;\n if (currentQuestion < questions.length) {\n showQuestion(currentQuestion);\n } else {\n showResult();\n }\n}\n\nfunction showResult() {\n const levelCounts = {\n basic: 0,\n intermediate: 0,\n advanced: 0\n };\n\n results.forEach(result => {\n levelCounts[result]++;\n });\n\n const finalLevel = Object.keys(levelCounts).reduce((a, b) => \n levelCounts[a] > levelCounts[b] ? a : b\n );\n\n levelTitle.textContent = levels[finalLevel].title;\n levelDescription.textContent = levels[finalLevel].description;\n resultSection.classList.remove('hidden');\n}\n\nfunction resetQuiz() {\n currentQuestion = 0;\n results = [];\n showQuestion(currentQuestion);\n resultSection.classList.add('hidden');\n}\n\ndocument.querySelectorAll('.options button').forEach(button => {\n button.addEventListener('click', (e) => {\n results.push(e.target.dataset.value);\n nextQuestion();\n });\n});\n\nretakeButton.addEventListener('click', resetQuiz);\n\n// Initialize first question\nshowQuestion(currentQuestion);\n---end---" + }, + "logprobs": null, + "finish_reason": "stop" + } + ], + "usage": { + "prompt_tokens": 250, + "completion_tokens": 1532, + "total_tokens": 1782, + "prompt_cache_hit_tokens": 0, + "prompt_cache_miss_tokens": 250 + }, + "system_fingerprint": "fp_f1afce2943" +} \ No newline at end of file diff --git a/readme.scroll b/readme.scroll new file mode 100644 index 0000000..66a2d05 --- /dev/null +++ b/readme.scroll @@ -0,0 +1,2 @@ +# emailquiz.scroll.pub +Website generated by DeepSeek from prompt: I want a quiz website that helps a person choose their level of email marketing needs. \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..ad6f1a2 --- /dev/null +++ b/script.js @@ -0,0 +1,77 @@ +const questions = document.querySelectorAll('.question'); +const resultSection = document.getElementById('result'); +const levelTitle = document.getElementById('level-title'); +const levelDescription = document.getElementById('level-description'); +const retakeButton = document.getElementById('retake'); + +let currentQuestion = 0; +let results = []; + +const levels = { + basic: { + title: "Basic", + description: "Start with a simple email marketing tool. Focus on building your list and creating consistent content." + }, + intermediate: { + title: "Intermediate", + description: "Use a more advanced platform with automation features. Start segmenting your audience and tracking performance." + }, + advanced: { + title: "Advanced", + description: "Invest in a comprehensive email marketing solution with advanced automation, segmentation, and analytics." + } +}; + +function showQuestion(index) { + questions.forEach((question, i) => { + question.classList.toggle('active', i === index); + }); +} + +function nextQuestion() { + currentQuestion++; + if (currentQuestion < questions.length) { + showQuestion(currentQuestion); + } else { + showResult(); + } +} + +function showResult() { + const levelCounts = { + basic: 0, + intermediate: 0, + advanced: 0 + }; + + results.forEach(result => { + levelCounts[result]++; + }); + + const finalLevel = Object.keys(levelCounts).reduce((a, b) => + levelCounts[a] > levelCounts[b] ? a : b + ); + + levelTitle.textContent = levels[finalLevel].title; + levelDescription.textContent = levels[finalLevel].description; + resultSection.classList.remove('hidden'); +} + +function resetQuiz() { + currentQuestion = 0; + results = []; + showQuestion(currentQuestion); + resultSection.classList.add('hidden'); +} + +document.querySelectorAll('.options button').forEach(button => { + button.addEventListener('click', (e) => { + results.push(e.target.dataset.value); + nextQuestion(); + }); +}); + +retakeButton.addEventListener('click', resetQuiz); + +// Initialize first question +showQuestion(currentQuestion); \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..9108072 --- /dev/null +++ b/style.css @@ -0,0 +1,119 @@ +:root { + --primary: #2563eb; + --primary-hover: #1d4ed8; + --background: #f8fafc; + --text: #1e293b; + --card-bg: #ffffff; + --shadow: 0 1px 3px rgba(0,0,0,0.1); +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; + line-height: 1.6; + color: var(--text); + background: var(--background); + padding: 2rem; + min-height: 100vh; +} + +header { + text-align: center; + margin-bottom: 2rem; +} + +h1 { + font-size: 2.5rem; + color: var(--primary); + margin-bottom: 1rem; +} + +h2 { + font-size: 1.8rem; + margin-bottom: 1.5rem; +} + +main { + max-width: 800px; + margin: 0 auto; +} + +.question { + background: var(--card-bg); + padding: 2rem; + border-radius: 8px; + box-shadow: var(--shadow); + margin-bottom: 1rem; + display: none; +} + +.question.active { + display: block; +} + +.options { + display: grid; + gap: 1rem; +} + +button { + background: var(--primary); + color: white; + border: none; + padding: 1rem; + border-radius: 4px; + font-size: 1rem; + cursor: pointer; + transition: background 0.3s ease; +} + +button:hover { + background: var(--primary-hover); +} + +#result { + text-align: center; + margin-top: 2rem; +} + +.level-card { + background: var(--card-bg); + padding: 2rem; + border-radius: 8px; + box-shadow: var(--shadow); + margin: 2rem auto; + max-width: 500px; +} + +.hidden { + display: none; +} + +footer { + text-align: center; + margin-top: 3rem; + color: #64748b; +} + +@media (max-width: 600px) { + body { + padding: 1rem; + } + + h1 { + font-size: 2rem; + } + + h2 { + font-size: 1.5rem; + } + + .question { + padding: 1.5rem; + } +} \ No newline at end of file