commit 30dcb8e76b2916fd656908c7a65a00ad3dcc1b4f
Author: root <root@hub.scroll.pub> Date: 2024-12-27 11:18:21 +0000 Subject: Initial commit diff --git a/body.html b/body.html new file mode 100644 index 0000000..65db152 --- /dev/null +++ b/body.html @@ -0,0 +1,24 @@ +<header> + <h1>Math Maze Creator</h1> + <p>Fun and educational mazes to practice math skills!</p> +</header> +<main> + <section> + <label for="age">Select Age:</label> + <select id="age"> + <option value="5">5 years</option> + <option value="6">6 years</option> + <option value="7">7 years</option> + <option value="8">8 years</option> + <option value="9">9 years</option> + <option value="10">10 years</option> + </select> + <button id="createMaze">Create Maze</button> + </section> + <section id="mazeContainer" aria-live="polite"> + <!-- Maze will be generated here --> + </section> +</main> +<footer> + <p>Made with ❤️ for young learners</p> +</footer> \ No newline at end of file diff --git a/index.scroll b/index.scroll new file mode 100644 index 0000000..d2d2470 --- /dev/null +++ b/index.scroll @@ -0,0 +1,8 @@ +buildHtml +baseUrl https://mathmaze.scroll.pub +metaTags +editButton /edit.html +title Math Maze Creator for Kids +style.css +body.html +script.js \ No newline at end of file diff --git a/readme.scroll b/readme.scroll new file mode 100644 index 0000000..a81144e --- /dev/null +++ b/readme.scroll @@ -0,0 +1,2 @@ +# mathmaze.scroll.pub +Website generated by DeepSeek from prompt: simple math maze creator for kids to train on math - allow multiple ages selection so it can create something per age. \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..ca2e245 --- /dev/null +++ b/script.js @@ -0,0 +1,24 @@ +document.getElementById('createMaze').addEventListener('click', function() { + const age = document.getElementById('age').value; + const mazeContainer = document.getElementById('mazeContainer'); + mazeContainer.innerHTML = ''; + + const mazeSize = Math.min(Math.max(age - 4, 3), 8); // Adjust maze size based on age + const gridSize = mazeSize * mazeSize; + + mazeContainer.style.gridTemplateColumns = `repeat(${mazeSize}, 1fr)`; + + for (let i = 0; i < gridSize; i++) { + const cell = document.createElement('div'); + cell.className = 'maze-cell'; + + // Generate simple math problems based on age + const num1 = Math.floor(Math.random() * age) + 1; + const num2 = Math.floor(Math.random() * age) + 1; + const operator = ['+', '-'][Math.floor(Math.random() * 2)]; + const problem = `${num1}${operator}${num2}`; + + cell.textContent = problem; + mazeContainer.appendChild(cell); + } +}); \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..53f7bb8 --- /dev/null +++ b/style.css @@ -0,0 +1,95 @@ +:root { + --primary-color: #4CAF50; + --secondary-color: #45a049; + --background-color: #f4f4f4; + --text-color: #333; +} + +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +body { + font-family: 'Segoe UI', sans-serif; + line-height: 1.6; + color: var(--text-color); + background-color: var(--background-color); + padding: 20px; + max-width: 800px; + margin: 0 auto; +} + +header { + text-align: center; + padding: 2rem 0; +} + +h1 { + color: var(--primary-color); + font-size: 2.5rem; + margin-bottom: 0.5rem; +} + +section { + background: white; + padding: 1.5rem; + border-radius: 8px; + box-shadow: 0 2px 5px rgba(0,0,0,0.1); + margin-bottom: 1.5rem; +} + +label { + display: block; + margin-bottom: 0.5rem; + font-weight: bold; +} + +select, button { + width: 100%; + padding: 0.8rem; + margin-bottom: 1rem; + border: 1px solid #ddd; + border-radius: 4px; + font-size: 1rem; +} + +button { + background-color: var(--primary-color); + color: white; + border: none; + cursor: pointer; + transition: background-color 0.3s ease; +} + +button:hover { + background-color: var(--secondary-color); +} + +#mazeContainer { + display: grid; + gap: 5px; + padding: 1rem; + background: #e8f5e9; + border-radius: 8px; +} + +.maze-cell { + width: 30px; + height: 30px; + background: white; + border: 1px solid #ddd; + display: flex; + align-items: center; + justify-content: center; + font-weight: bold; +} + +@media (min-width: 600px) { + select, button { + width: auto; + display: inline-block; + margin-right: 1rem; + } +} \ No newline at end of file