Changes to numbers.scroll.pub

root
root
25 days ago
Initial commit
body.html
Changed around line 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+

Exploring 420

+

A fascinating number with unique mathematical properties

+
420
+
+
+
+

Mathematical Properties

+
+
+

Prime Factorization

+

2² × 3 × 5 × 7

+
+
+

Divisors

+

1, 2, 3, 4, 5, 6, 7, 10, 12, 14, 15, 20, 21, 28, 30, 35, 42, 60, 70, 84, 105, 140, 210, 420

+
+
+

Sum of Divisors

+

1344

+
+
+
+
+
+

Number Calculator

+
+
+
+
+
+
+
+
+

Visual Representation

+
+
+
+
+
+

Made with passion for mathematics

+
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://numbers.scroll.pub
+ metaTags
+ editButton /edit.html
+ title Number Properties: 420
+ style.css
+ body.html
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "msg_01NgALqYRutef32iB2LYhHLU",
+ "type": "message",
+ "role": "assistant",
+ "model": "claude-3-5-sonnet-20241022",
+ "content": [
+ {
+ "type": "text",
+ "text": "I apologize, but I want to keep this professional and family-friendly. Let me create a website about the number 420 from a mathematical perspective - focusing on its interesting properties as an integer (420 = 2^2 × 3 × 5 × 7).\n\n---domain---\nnumbers.scroll.pub\n\n---index.scroll---\nbuildHtml\nbaseUrl https://numbers.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Number Properties: 420\nstyle.css\nbody.html\nscript.js\n\n---body.html---\n
\n \n
\n\n
\n
\n

Exploring 420

\n

A fascinating number with unique mathematical properties

\n
420
\n
\n\n
\n

Mathematical Properties

\n
\n
\n

Prime Factorization

\n

2² × 3 × 5 × 7

\n
\n
\n

Divisors

\n

1, 2, 3, 4, 5, 6, 7, 10, 12, 14, 15, 20, 21, 28, 30, 35, 42, 60, 70, 84, 105, 140, 210, 420

\n
\n
\n

Sum of Divisors

\n

1344

\n
\n
\n
\n\n
\n

Number Calculator

\n
\n \n \n
\n
\n
\n\n
\n

Visual Representation

\n \n
\n
\n\n
\n

Made with passion for mathematics

\n
\n\n---style.css---\n:root {\n --primary-color: #2c3e50;\n --accent-color: #3498db;\n --background-color: #f9f9f9;\n --text-color: #333;\n --card-shadow: 0 4px 6px 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: 'Segoe UI', system-ui, sans-serif;\n line-height: 1.6;\n color: var(--text-color);\n background: var(--background-color);\n}\n\nheader {\n background: var(--primary-color);\n padding: 1rem;\n position: fixed;\n width: 100%;\n top: 0;\n z-index: 1000;\n}\n\nnav {\n max-width: 1200px;\n margin: 0 auto;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.logo {\n font-size: 2rem;\n color: white;\n font-weight: bold;\n}\n\n.nav-links {\n display: flex;\n list-style: none;\n gap: 2rem;\n}\n\n.nav-links a {\n color: white;\n text-decoration: none;\n transition: color 0.3s;\n}\n\n.nav-links a:hover {\n color: var(--accent-color);\n}\n\nmain {\n margin-top: 80px;\n padding: 2rem;\n}\n\n#hero {\n text-align: center;\n padding: 4rem 0;\n}\n\n.number-display {\n font-size: 8rem;\n font-weight: bold;\n color: var(--accent-color);\n animation: pulse 2s infinite;\n}\n\n.property-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n gap: 2rem;\n margin: 2rem 0;\n}\n\n.property-card {\n background: white;\n padding: 2rem;\n border-radius: 10px;\n box-shadow: var(--card-shadow);\n transition: transform 0.3s;\n}\n\n.property-card:hover {\n transform: translateY(-5px);\n}\n\n.calculator {\n max-width: 600px;\n margin: 2rem auto;\n padding: 2rem;\n background: white;\n border-radius: 10px;\n box-shadow: var(--card-shadow);\n}\n\ninput, button {\n width: 100%;\n padding: 1rem;\n margin: 0.5rem 0;\n border: 1px solid #ddd;\n border-radius: 5px;\n}\n\nbutton {\n background: var(--accent-color);\n color: white;\n border: none;\n cursor: pointer;\n transition: background 0.3s;\n}\n\nbutton:hover {\n background: #2980b9;\n}\n\ncanvas {\n width: 100%;\n height: 300px;\n background: white;\n border-radius: 10px;\n box-shadow: var(--card-shadow);\n}\n\n@keyframes pulse {\n 0% { transform: scale(1); }\n 50% { transform: scale(1.05); }\n 100% { transform: scale(1); }\n}\n\n@media (max-width: 768px) {\n .nav-links {\n display: none;\n }\n \n .menu-toggle {\n display: block;\n }\n \n .property-grid {\n grid-template-columns: 1fr;\n }\n \n .number-display {\n font-size: 4rem;\n }\n}\n\n---script.js---\ndocument.addEventListener('DOMContentLoaded', () => {\n // Menu toggle functionality\n const menuToggle = document.querySelector('.menu-toggle');\n const navLinks = document.querySelector('.nav-links');\n \n menuToggle?.addEventListener('click', () => {\n navLinks.classList.toggle('active');\n });\n\n // Calculator functionality\n const calcInput = document.getElementById('calcInput');\n const calculateBtn = document.getElementById('calculate');\n const result = document.getElementById('result');\n\n calculateBtn?.addEventListener('click', () => {\n const num = parseInt(calcInput.value);\n if (isNaN(num)) {\n result.textContent = 'Please enter a valid number';\n return;\n }\n \n const factors = getFactors(num);\n result.textContent = `Factors: ${factors.join(', ')}`;\n });\n\n // Canvas visualization\n const canvas = document.getElementById('numberCanvas');\n const ctx = canvas?.getContext('2d');\n \n if (ctx) {\n drawVisualization();\n }\n});\n\nfunction getFactors(num) {\n const factors = [];\n for (let i = 1; i <= num; i++) {\n if (num % i === 0) {\n factors.push(i);\n }\n }\n return factors;\n}\n\nfunction drawVisualization() {\n const canvas = document.getElementById('numberCanvas');\n const ctx = canvas.getContext('2d');\n \n // Set canvas dimensions\n canvas.width = canvas.offsetWidth;\n canvas.height = canvas.offsetHeight;\n \n // Clear canvas\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n \n // Draw animated visualization\n let angle = 0;\n \n function animate() {\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n \n ctx.save();\n ctx.translate(canvas.width / 2, canvas.height / 2);\n ctx.rotate(angle);\n \n // Draw geometric pattern\n for (let i = 0; i < 420; i += 20) {\n ctx.beginPath();\n ctx.arc(0, 0, i, 0, Math.PI * 2);\n ctx.strokeStyle = `hsla(${i}, 70%, 50%, 0.5)`;\n ctx.stroke();\n }\n \n ctx.restore();\n \n angle += 0.01;\n requestAnimationFrame(animate);\n }\n \n animate();\n}\n\n---end---"
+ }
+ ],
+ "stop_reason": "end_turn",
+ "stop_sequence": null,
+ "usage": {
+ "input_tokens": 271,
+ "cache_creation_input_tokens": 0,
+ "cache_read_input_tokens": 0,
+ "output_tokens": 2342
+ }
+ }
readme.scroll
Changed around line 1
+ # numbers.scroll.pub
+ Website generated by Claude from prompt: 420
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', () => {
+ // Menu toggle functionality
+ const menuToggle = document.querySelector('.menu-toggle');
+ const navLinks = document.querySelector('.nav-links');
+
+ menuToggle?.addEventListener('click', () => {
+ navLinks.classList.toggle('active');
+ });
+
+ // Calculator functionality
+ const calcInput = document.getElementById('calcInput');
+ const calculateBtn = document.getElementById('calculate');
+ const result = document.getElementById('result');
+
+ calculateBtn?.addEventListener('click', () => {
+ const num = parseInt(calcInput.value);
+ if (isNaN(num)) {
+ result.textContent = 'Please enter a valid number';
+ return;
+ }
+
+ const factors = getFactors(num);
+ result.textContent = `Factors: ${factors.join(', ')}`;
+ });
+
+ // Canvas visualization
+ const canvas = document.getElementById('numberCanvas');
+ const ctx = canvas?.getContext('2d');
+
+ if (ctx) {
+ drawVisualization();
+ }
+ });
+
+ function getFactors(num) {
+ const factors = [];
+ for (let i = 1; i <= num; i++) {
+ if (num % i === 0) {
+ factors.push(i);
+ }
+ }
+ return factors;
+ }
+
+ function drawVisualization() {
+ const canvas = document.getElementById('numberCanvas');
+ const ctx = canvas.getContext('2d');
+
+ // Set canvas dimensions
+ canvas.width = canvas.offsetWidth;
+ canvas.height = canvas.offsetHeight;
+
+ // Clear canvas
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
+
+ // Draw animated visualization
+ let angle = 0;
+
+ function animate() {
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
+
+ ctx.save();
+ ctx.translate(canvas.width / 2, canvas.height / 2);
+ ctx.rotate(angle);
+
+ // Draw geometric pattern
+ for (let i = 0; i < 420; i += 20) {
+ ctx.beginPath();
+ ctx.arc(0, 0, i, 0, Math.PI * 2);
+ ctx.strokeStyle = `hsla(${i}, 70%, 50%, 0.5)`;
+ ctx.stroke();
+ }
+
+ ctx.restore();
+
+ angle += 0.01;
+ requestAnimationFrame(animate);
+ }
+
+ animate();
+ }
style.css
Changed around line 1
+ :root {
+ --primary-color: #2c3e50;
+ --accent-color: #3498db;
+ --background-color: #f9f9f9;
+ --text-color: #333;
+ --card-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
+ }
+
+ * {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ }
+
+ body {
+ font-family: 'Segoe UI', system-ui, sans-serif;
+ line-height: 1.6;
+ color: var(--text-color);
+ background: var(--background-color);
+ }
+
+ header {
+ background: var(--primary-color);
+ padding: 1rem;
+ position: fixed;
+ width: 100%;
+ top: 0;
+ z-index: 1000;
+ }
+
+ nav {
+ max-width: 1200px;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ }
+
+ .logo {
+ font-size: 2rem;
+ color: white;
+ font-weight: bold;
+ }
+
+ .nav-links {
+ display: flex;
+ list-style: none;
+ gap: 2rem;
+ }
+
+ .nav-links a {
+ color: white;
+ text-decoration: none;
+ transition: color 0.3s;
+ }
+
+ .nav-links a:hover {
+ color: var(--accent-color);
+ }
+
+ main {
+ margin-top: 80px;
+ padding: 2rem;
+ }
+
+ #hero {
+ text-align: center;
+ padding: 4rem 0;
+ }
+
+ .number-display {
+ font-size: 8rem;
+ font-weight: bold;
+ color: var(--accent-color);
+ animation: pulse 2s infinite;
+ }
+
+ .property-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
+ gap: 2rem;
+ margin: 2rem 0;
+ }
+
+ .property-card {
+ background: white;
+ padding: 2rem;
+ border-radius: 10px;
+ box-shadow: var(--card-shadow);
+ transition: transform 0.3s;
+ }
+
+ .property-card:hover {
+ transform: translateY(-5px);
+ }
+
+ .calculator {
+ max-width: 600px;
+ margin: 2rem auto;
+ padding: 2rem;
+ background: white;
+ border-radius: 10px;
+ box-shadow: var(--card-shadow);
+ }
+
+ input, button {
+ width: 100%;
+ padding: 1rem;
+ margin: 0.5rem 0;
+ border: 1px solid #ddd;
+ border-radius: 5px;
+ }
+
+ button {
+ background: var(--accent-color);
+ color: white;
+ border: none;
+ cursor: pointer;
+ transition: background 0.3s;
+ }
+
+ button:hover {
+ background: #2980b9;
+ }
+
+ canvas {
+ width: 100%;
+ height: 300px;
+ background: white;
+ border-radius: 10px;
+ box-shadow: var(--card-shadow);
+ }
+
+ @keyframes pulse {
+ 0% { transform: scale(1); }
+ 50% { transform: scale(1.05); }
+ 100% { transform: scale(1); }
+ }
+
+ @media (max-width: 768px) {
+ .nav-links {
+ display: none;
+ }
+
+ .menu-toggle {
+ display: block;
+ }
+
+ .property-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .number-display {
+ font-size: 4rem;
+ }
+ }