Changes to creditimmo4.scroll.pub

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

Simulateur de Crédit Immobilier

+

Calculez votre prêt immobilier en quelques clics

+
+
+
+

Entrées

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

Résultats

+
+

Montant du prêt:

+

Frais de notaire:

+

Mensualités:

+

Coût total:

+

Coût des intérêts:

+
+
+

Comparaison des taux

+
+
+
+
+
+
+
+
+
+
+
+
TauxMensualitéCoût totalIntérêts
+
+
+
+

Simulateur de crédit immobilier pour la France

+
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://creditimmo.scroll.pub
+ metaTags
+ editButton /edit.html
+ title Simulateur de Crédit Immobilier en France
+ style.css
+ body.html
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "565560c5-c076-4ddf-8f4d-ef2578b3fca5",
+ "object": "chat.completion",
+ "created": 1735422323,
+ "model": "deepseek-chat",
+ "choices": [
+ {
+ "index": 0,
+ "message": {
+ "role": "assistant",
+ "content": "---domain---\ncreditimmo.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://creditimmo.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Simulateur de Crédit Immobilier en France\nstyle.css\nbody.html\nscript.js\n---body.html---\n
\n

Simulateur de Crédit Immobilier

\n

Calculez votre prêt immobilier en quelques clics

\n
\n
\n
\n

Entrées

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

Résultats

\n
\n

Montant du prêt:

\n

Frais de notaire:

\n

Mensualités:

\n

Coût total:

\n

Coût des intérêts:

\n
\n \n

Comparaison des taux

\n \n \n \n \n \n \n \n \n \n \n \n
TauxMensualitéCoût totalIntérêts
\n
\n
\n
\n

Simulateur de crédit immobilier pour la France

\n
\n---style.css---\n:root {\n --primary-color: #2c3e50;\n --secondary-color: #3498db;\n --background-color: #ecf0f1;\n --text-color: #34495e;\n --border-radius: 8px;\n --box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n line-height: 1.6;\n margin: 0;\n padding: 0;\n background-color: var(--background-color);\n color: var(--text-color);\n}\n\nheader {\n background-color: var(--primary-color);\n color: white;\n padding: 2rem;\n text-align: center;\n}\n\nmain {\n max-width: 1200px;\n margin: 2rem auto;\n padding: 0 1rem;\n}\n\nsection {\n background: white;\n border-radius: var(--border-radius);\n box-shadow: var(--box-shadow);\n padding: 2rem;\n margin-bottom: 2rem;\n}\n\nh2 {\n color: var(--primary-color);\n margin-bottom: 1.5rem;\n}\n\nform {\n display: grid;\n gap: 1rem;\n}\n\nlabel {\n font-weight: bold;\n}\n\ninput {\n padding: 0.5rem;\n border: 1px solid #ddd;\n border-radius: var(--border-radius);\n}\n\nbutton {\n background-color: var(--secondary-color);\n color: white;\n padding: 0.75rem;\n border: none;\n border-radius: var(--border-radius);\n cursor: pointer;\n transition: background-color 0.3s;\n}\n\nbutton:hover {\n background-color: #2980b9;\n}\n\n#results {\n display: grid;\n gap: 1rem;\n margin-bottom: 2rem;\n}\n\ntable {\n width: 100%;\n border-collapse: collapse;\n margin-top: 1rem;\n}\n\nth, td {\n padding: 0.75rem;\n text-align: left;\n border-bottom: 1px solid #ddd;\n}\n\nth {\n background-color: var(--primary-color);\n color: white;\n}\n\nfooter {\n text-align: center;\n padding: 1rem;\n background-color: var(--primary-color);\n color: white;\n}\n\n@media (max-width: 768px) {\n form {\n grid-template-columns: 1fr;\n }\n \n main {\n padding: 0 0.5rem;\n }\n \n section {\n padding: 1rem;\n }\n}\n---script.js---\nfunction formatCurrency(amount) {\n return new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR' }).format(Math.round(amount));\n}\n\nfunction calculateLoan() {\n const propertyPrice = parseFloat(document.getElementById('propertyPrice').value);\n const downPayment = parseFloat(document.getElementById('downPayment').value);\n const loanDuration = parseFloat(document.getElementById('loanDuration').value);\n const interestRates = document.getElementById('interestRates').value.split(',').map(Number);\n const renovationCost = parseFloat(document.getElementById('renovationCost').value) || 0;\n\n const notaryFees = propertyPrice * 0.08;\n const loanAmount = propertyPrice + renovationCost + notaryFees - downPayment;\n\n const results = interestRates.map(rate => {\n const monthlyRate = rate / 100 / 12;\n const numberOfPayments = loanDuration * 12;\n const monthlyPayment = loanAmount * monthlyRate / (1 - Math.pow(1 + monthlyRate, -numberOfPayments));\n const totalCost = monthlyPayment * numberOfPayments;\n const interestCost = totalCost - loanAmount;\n\n return {\n rate,\n monthlyPayment,\n totalCost,\n interestCost\n };\n });\n\n displayResults(results[0], loanAmount, notaryFees);\n displayComparisonTable(results);\n}\n\nfunction displayResults(result, loanAmount, notaryFees) {\n document.getElementById('loanAmount').textContent = formatCurrency(loanAmount);\n document.getElementById('notaryFees').textContent = formatCurrency(notaryFees);\n document.getElementById('monthlyPayment').textContent = formatCurrency(result.monthlyPayment);\n document.getElementById('totalCost').textContent = formatCurrency(result.totalCost);\n document.getElementById('interestCost').textContent = formatCurrency(result.interestCost);\n}\n\nfunction displayComparisonTable(results) {\n const tableBody = document.querySelector('#comparisonTable tbody');\n tableBody.innerHTML = results.map(result => `\n \n ${result.rate}%\n ${formatCurrency(result.monthlyPayment)}\n ${formatCurrency(result.totalCost)}\n ${formatCurrency(result.interestCost)}\n \n `).join('');\n}\n\ndocument.getElementById('creditForm').addEventListener('submit', function(e) {\n e.preventDefault();\n calculateLoan();\n});\n---end---"
+ },
+ "logprobs": null,
+ "finish_reason": "stop"
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 322,
+ "completion_tokens": 1735,
+ "total_tokens": 2057,
+ "prompt_cache_hit_tokens": 0,
+ "prompt_cache_miss_tokens": 322
+ },
+ "system_fingerprint": "fp_f1afce2943"
+ }
readme.scroll
Changed around line 1
+ # creditimmo4.scroll.pub
+ Website generated by DeepSeek from prompt: creer un site de credit immo pour la france. Entrées : montant du bien, apport, durée, plusieurs possibilités de taux, cout travaux. sorties : montant prêt,frais notaires, mensualités, cout total, cout intérêt. Soyez creatif, formatez les montants et arrondir à un 1 euro près et tableau pour comparer
script.js
Changed around line 1
+ function formatCurrency(amount) {
+ return new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR' }).format(Math.round(amount));
+ }
+
+ function calculateLoan() {
+ const propertyPrice = parseFloat(document.getElementById('propertyPrice').value);
+ const downPayment = parseFloat(document.getElementById('downPayment').value);
+ const loanDuration = parseFloat(document.getElementById('loanDuration').value);
+ const interestRates = document.getElementById('interestRates').value.split(',').map(Number);
+ const renovationCost = parseFloat(document.getElementById('renovationCost').value) || 0;
+
+ const notaryFees = propertyPrice * 0.08;
+ const loanAmount = propertyPrice + renovationCost + notaryFees - downPayment;
+
+ const results = interestRates.map(rate => {
+ const monthlyRate = rate / 100 / 12;
+ const numberOfPayments = loanDuration * 12;
+ const monthlyPayment = loanAmount * monthlyRate / (1 - Math.pow(1 + monthlyRate, -numberOfPayments));
+ const totalCost = monthlyPayment * numberOfPayments;
+ const interestCost = totalCost - loanAmount;
+
+ return {
+ rate,
+ monthlyPayment,
+ totalCost,
+ interestCost
+ };
+ });
+
+ displayResults(results[0], loanAmount, notaryFees);
+ displayComparisonTable(results);
+ }
+
+ function displayResults(result, loanAmount, notaryFees) {
+ document.getElementById('loanAmount').textContent = formatCurrency(loanAmount);
+ document.getElementById('notaryFees').textContent = formatCurrency(notaryFees);
+ document.getElementById('monthlyPayment').textContent = formatCurrency(result.monthlyPayment);
+ document.getElementById('totalCost').textContent = formatCurrency(result.totalCost);
+ document.getElementById('interestCost').textContent = formatCurrency(result.interestCost);
+ }
+
+ function displayComparisonTable(results) {
+ const tableBody = document.querySelector('#comparisonTable tbody');
+ tableBody.innerHTML = results.map(result => `
+
+ ${result.rate}%
+ ${formatCurrency(result.monthlyPayment)}
+ ${formatCurrency(result.totalCost)}
+ ${formatCurrency(result.interestCost)}
+
+ `).join('');
+ }
+
+ document.getElementById('creditForm').addEventListener('submit', function(e) {
+ e.preventDefault();
+ calculateLoan();
+ });
style.css
Changed around line 1
+ :root {
+ --primary-color: #2c3e50;
+ --secondary-color: #3498db;
+ --background-color: #ecf0f1;
+ --text-color: #34495e;
+ --border-radius: 8px;
+ --box-shadow: 0 2px 4px rgba(0,0,0,0.1);
+ }
+
+ body {
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ line-height: 1.6;
+ margin: 0;
+ padding: 0;
+ background-color: var(--background-color);
+ color: var(--text-color);
+ }
+
+ header {
+ background-color: var(--primary-color);
+ color: white;
+ padding: 2rem;
+ text-align: center;
+ }
+
+ main {
+ max-width: 1200px;
+ margin: 2rem auto;
+ padding: 0 1rem;
+ }
+
+ section {
+ background: white;
+ border-radius: var(--border-radius);
+ box-shadow: var(--box-shadow);
+ padding: 2rem;
+ margin-bottom: 2rem;
+ }
+
+ h2 {
+ color: var(--primary-color);
+ margin-bottom: 1.5rem;
+ }
+
+ form {
+ display: grid;
+ gap: 1rem;
+ }
+
+ label {
+ font-weight: bold;
+ }
+
+ input {
+ padding: 0.5rem;
+ border: 1px solid #ddd;
+ border-radius: var(--border-radius);
+ }
+
+ button {
+ background-color: var(--secondary-color);
+ color: white;
+ padding: 0.75rem;
+ border: none;
+ border-radius: var(--border-radius);
+ cursor: pointer;
+ transition: background-color 0.3s;
+ }
+
+ button:hover {
+ background-color: #2980b9;
+ }
+
+ #results {
+ display: grid;
+ gap: 1rem;
+ margin-bottom: 2rem;
+ }
+
+ table {
+ width: 100%;
+ border-collapse: collapse;
+ margin-top: 1rem;
+ }
+
+ th, td {
+ padding: 0.75rem;
+ text-align: left;
+ border-bottom: 1px solid #ddd;
+ }
+
+ th {
+ background-color: var(--primary-color);
+ color: white;
+ }
+
+ footer {
+ text-align: center;
+ padding: 1rem;
+ background-color: var(--primary-color);
+ color: white;
+ }
+
+ @media (max-width: 768px) {
+ form {
+ grid-template-columns: 1fr;
+ }
+
+ main {
+ padding: 0 0.5rem;
+ }
+
+ section {
+ padding: 1rem;
+ }
+ }