Changes to budgetwise2.scroll.pub

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

BudgetWise

+

Your Detailed Budget Calculator

+
+
+
+
+

Income & Expenses

+
+
+
+
+
+
+

Monthly Expenses

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

Your Budget Breakdown

+
+
+ Total Income
+ $0.00
+
+
+ Total Expenses
+ $0.00
+
+
+ Net Balance
+ $0.00
+
+
+ Savings Rate
+ 0%
+
+
+
+
+
+
+
+
+
+
+

BudgetWise - Take control of your finances

+
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://budgetwise.scroll.pub
+ metaTags
+ editButton /edit.html
+ title BudgetWise - Detailed Budget Calculator
+ style.css
+ body.html
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "b1a325d3-55e4-4937-96b7-f8a558f36d0b",
+ "object": "chat.completion",
+ "created": 1735349528,
+ "model": "deepseek-chat",
+ "choices": [
+ {
+ "index": 0,
+ "message": {
+ "role": "assistant",
+ "content": "---domain---\nbudgetwise.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://budgetwise.scroll.pub\nmetaTags\neditButton /edit.html\ntitle BudgetWise - Detailed Budget Calculator\nstyle.css\nbody.html\nscript.js\n---body.html---\n
\n

BudgetWise

\n

Your Detailed Budget Calculator

\n
\n\n
\n
\n

Income & Expenses

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

Monthly Expenses

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

Your Budget Breakdown

\n
\n
\n Total Income\n $0.00\n
\n
\n Total Expenses\n $0.00\n
\n
\n Net Balance\n $0.00\n
\n
\n Savings Rate\n 0%\n
\n
\n \n
\n \n
\n
\n
\n\n
\n

BudgetWise - Take control of your finances

\n
\n---style.css---\n:root {\n --primary-color: #4a90e2;\n --secondary-color: #50e3c2;\n --background-color: #f5f7fa;\n --text-color: #333;\n --border-color: #ddd;\n}\n\nbody {\n font-family: 'Segoe UI', system-ui, sans-serif;\n line-height: 1.6;\n color: var(--text-color);\n background-color: var(--background-color);\n margin: 0;\n padding: 0;\n}\n\nheader {\n background: var(--primary-color);\n color: white;\n padding: 2rem;\n text-align: center;\n}\n\nh1 {\n margin: 0;\n font-size: 2.5rem;\n}\n\nmain {\n max-width: 1200px;\n margin: 2rem auto;\n padding: 0 1rem;\n}\n\n.input-section, .results-section {\n background: white;\n border-radius: 8px;\n padding: 2rem;\n margin-bottom: 2rem;\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.form-group {\n margin-bottom: 1.5rem;\n}\n\nlabel {\n display: block;\n margin-bottom: 0.5rem;\n font-weight: 600;\n}\n\ninput {\n width: 100%;\n padding: 0.75rem;\n border: 1px solid var(--border-color);\n border-radius: 4px;\n font-size: 1rem;\n}\n\nbutton {\n background: var(--secondary-color);\n color: white;\n border: none;\n padding: 1rem 2rem;\n border-radius: 4px;\n cursor: pointer;\n font-size: 1rem;\n transition: background 0.3s ease;\n}\n\nbutton:hover {\n background: #3fc1a8;\n}\n\n.results-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 1rem;\n margin-bottom: 2rem;\n}\n\n.result-item {\n background: var(--background-color);\n padding: 1rem;\n border-radius: 4px;\n text-align: center;\n}\n\n.result-item span:first-child {\n display: block;\n font-weight: 600;\n margin-bottom: 0.5rem;\n}\n\n.chart-container {\n max-width: 800px;\n margin: 0 auto;\n}\n\nfooter {\n text-align: center;\n padding: 1rem;\n background: var(--primary-color);\n color: white;\n}\n\n@media (max-width: 768px) {\n h1 {\n font-size: 2rem;\n }\n \n .results-grid {\n grid-template-columns: 1fr;\n }\n}\n---script.js---\ndocument.addEventListener('DOMContentLoaded', function() {\n const incomeInput = document.getElementById('income');\n const housingInput = document.getElementById('housing');\n const utilitiesInput = document.getElementById('utilities');\n const transportationInput = document.getElementById('transportation');\n const foodInput = document.getElementById('food');\n const entertainmentInput = document.getElementById('entertainment');\n const savingsInput = document.getElementById('savings');\n \n const totalIncome = document.getElementById('total-income');\n const totalExpenses = document.getElementById('total-expenses');\n const netBalance = document.getElementById('net-balance');\n const savingsRate = document.getElementById('savings-rate');\n \n const calculateButton = document.getElementById('calculate');\n \n const ctx = document.getElementById('budgetChart').getContext('2d');\n let budgetChart;\n \n calculateButton.addEventListener('click', function() {\n const income = parseFloat(incomeInput.value) || 0;\n const housing = parseFloat(housingInput.value) || 0;\n const utilities = parseFloat(utilitiesInput.value) || 0;\n const transportation = parseFloat(transportationInput.value) || 0;\n const food = parseFloat(foodInput.value) || 0;\n const entertainment = parseFloat(entertainmentInput.value) || 0;\n const savings = parseFloat(savingsInput.value) || 0;\n \n const totalExpensesValue = housing + utilities + transportation + food + entertainment;\n const netBalanceValue = income - totalExpensesValue;\n const savingsRateValue = ((savings / income) * 100) || 0;\n \n totalIncome.textContent = `$${income.toFixed(2)}`;\n totalExpenses.textContent = `$${totalExpensesValue.toFixed(2)}`;\n netBalance.textContent = `$${netBalanceValue.toFixed(2)}`;\n savingsRate.textContent = `${savingsRateValue.toFixed(1)}%`;\n \n if (budgetChart) {\n budgetChart.destroy();\n }\n \n budgetChart = new Chart(ctx, {\n type: 'pie',\n data: {\n labels: ['Housing', 'Utilities', 'Transportation', 'Food', 'Entertainment', 'Savings'],\n datasets: [{\n label: 'Budget Breakdown',\n data: [housing, utilities, transportation, food, entertainment, savings],\n backgroundColor: [\n '#4a90e2',\n '#50e3c2',\n '#f5a623',\n '#7ed321',\n '#bd10e0',\n '#ff6b6b'\n ],\n borderWidth: 1\n }]\n },\n options: {\n responsive: true,\n maintainAspectRatio: false,\n plugins: {\n legend: {\n position: 'bottom'\n }\n }\n }\n });\n });\n});\n---end---"
+ },
+ "logprobs": null,
+ "finish_reason": "stop"
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 249,
+ "completion_tokens": 1919,
+ "total_tokens": 2168,
+ "prompt_cache_hit_tokens": 0,
+ "prompt_cache_miss_tokens": 249
+ },
+ "system_fingerprint": "fp_f1afce2943"
+ }
readme.scroll
Changed around line 1
+ # budgetwise2.scroll.pub
+ Website generated by DeepSeek from prompt: Create a website that is a budget calculator, make it as detailed as possible
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', function() {
+ const incomeInput = document.getElementById('income');
+ const housingInput = document.getElementById('housing');
+ const utilitiesInput = document.getElementById('utilities');
+ const transportationInput = document.getElementById('transportation');
+ const foodInput = document.getElementById('food');
+ const entertainmentInput = document.getElementById('entertainment');
+ const savingsInput = document.getElementById('savings');
+
+ const totalIncome = document.getElementById('total-income');
+ const totalExpenses = document.getElementById('total-expenses');
+ const netBalance = document.getElementById('net-balance');
+ const savingsRate = document.getElementById('savings-rate');
+
+ const calculateButton = document.getElementById('calculate');
+
+ const ctx = document.getElementById('budgetChart').getContext('2d');
+ let budgetChart;
+
+ calculateButton.addEventListener('click', function() {
+ const income = parseFloat(incomeInput.value) || 0;
+ const housing = parseFloat(housingInput.value) || 0;
+ const utilities = parseFloat(utilitiesInput.value) || 0;
+ const transportation = parseFloat(transportationInput.value) || 0;
+ const food = parseFloat(foodInput.value) || 0;
+ const entertainment = parseFloat(entertainmentInput.value) || 0;
+ const savings = parseFloat(savingsInput.value) || 0;
+
+ const totalExpensesValue = housing + utilities + transportation + food + entertainment;
+ const netBalanceValue = income - totalExpensesValue;
+ const savingsRateValue = ((savings / income) * 100) || 0;
+
+ totalIncome.textContent = `$${income.toFixed(2)}`;
+ totalExpenses.textContent = `$${totalExpensesValue.toFixed(2)}`;
+ netBalance.textContent = `$${netBalanceValue.toFixed(2)}`;
+ savingsRate.textContent = `${savingsRateValue.toFixed(1)}%`;
+
+ if (budgetChart) {
+ budgetChart.destroy();
+ }
+
+ budgetChart = new Chart(ctx, {
+ type: 'pie',
+ data: {
+ labels: ['Housing', 'Utilities', 'Transportation', 'Food', 'Entertainment', 'Savings'],
+ datasets: [{
+ label: 'Budget Breakdown',
+ data: [housing, utilities, transportation, food, entertainment, savings],
+ backgroundColor: [
+ '#4a90e2',
+ '#50e3c2',
+ '#f5a623',
+ '#7ed321',
+ '#bd10e0',
+ '#ff6b6b'
+ ],
+ borderWidth: 1
+ }]
+ },
+ options: {
+ responsive: true,
+ maintainAspectRatio: false,
+ plugins: {
+ legend: {
+ position: 'bottom'
+ }
+ }
+ }
+ });
+ });
+ });
style.css
Changed around line 1
+ :root {
+ --primary-color: #4a90e2;
+ --secondary-color: #50e3c2;
+ --background-color: #f5f7fa;
+ --text-color: #333;
+ --border-color: #ddd;
+ }
+
+ body {
+ font-family: 'Segoe UI', system-ui, sans-serif;
+ line-height: 1.6;
+ color: var(--text-color);
+ background-color: var(--background-color);
+ margin: 0;
+ padding: 0;
+ }
+
+ header {
+ background: var(--primary-color);
+ color: white;
+ padding: 2rem;
+ text-align: center;
+ }
+
+ h1 {
+ margin: 0;
+ font-size: 2.5rem;
+ }
+
+ main {
+ max-width: 1200px;
+ margin: 2rem auto;
+ padding: 0 1rem;
+ }
+
+ .input-section, .results-section {
+ background: white;
+ border-radius: 8px;
+ padding: 2rem;
+ margin-bottom: 2rem;
+ box-shadow: 0 2px 4px rgba(0,0,0,0.1);
+ }
+
+ .form-group {
+ margin-bottom: 1.5rem;
+ }
+
+ label {
+ display: block;
+ margin-bottom: 0.5rem;
+ font-weight: 600;
+ }
+
+ input {
+ width: 100%;
+ padding: 0.75rem;
+ border: 1px solid var(--border-color);
+ border-radius: 4px;
+ font-size: 1rem;
+ }
+
+ button {
+ background: var(--secondary-color);
+ color: white;
+ border: none;
+ padding: 1rem 2rem;
+ border-radius: 4px;
+ cursor: pointer;
+ font-size: 1rem;
+ transition: background 0.3s ease;
+ }
+
+ button:hover {
+ background: #3fc1a8;
+ }
+
+ .results-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
+ gap: 1rem;
+ margin-bottom: 2rem;
+ }
+
+ .result-item {
+ background: var(--background-color);
+ padding: 1rem;
+ border-radius: 4px;
+ text-align: center;
+ }
+
+ .result-item span:first-child {
+ display: block;
+ font-weight: 600;
+ margin-bottom: 0.5rem;
+ }
+
+ .chart-container {
+ max-width: 800px;
+ margin: 0 auto;
+ }
+
+ footer {
+ text-align: center;
+ padding: 1rem;
+ background: var(--primary-color);
+ color: white;
+ }
+
+ @media (max-width: 768px) {
+ h1 {
+ font-size: 2rem;
+ }
+
+ .results-grid {
+ grid-template-columns: 1fr;
+ }
+ }