Changes to freelancerisk.com.TLD

root
root
10 days ago
Initial commit
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://freelancerisk.com
+ metaTags
+ editButton /edit.html
+ title Freelance Risk Calculator
+ style.css
+
+ header
+ class hero
+ nav
+ div Freelance Risk
+ class logo
+ div
+ class nav-links
+ a About
+ href #about
+ a Calculator
+ href #calculator
+ a Resources
+ href #resources
+ div
+ class hero-content
+ h1 Should You Go Freelance?
+ p Assess your risk and make an informed decision about leaving your job
+ a Start Assessment
+ class primary-button
+ href #calculator
+ main
+ section
+ id about
+ class about
+ h2 About This Tool
+ p This interactive calculator helps you evaluate the risks and rewards of transitioning from a traditional job to freelancing. Answer a few questions to get a personalized risk assessment.
+ section
+ id calculator
+ class calculator
+ h2 Freelance Risk Calculator
+ div
+ class calculator-form
+ div
+ class form-group
+ label Current Monthly Income
+ input
+ type number
+ id current-income
+ placeholder Enter amount
+ div
+ class form-group
+ label Expected Freelance Income
+ input
+ type number
+ id freelance-income
+ placeholder Enter amount
+ div
+ class form-group
+ label Savings Buffer (months)
+ input
+ type number
+ id savings-buffer
+ placeholder Enter months
+ div
+ class form-group
+ label Industry Stability
+ select
+ id industry-stability
+ option High
+ option Medium
+ option Low
+ button
+ class primary-button
+ id calculate-btn
+ Calculate Risk
+ div
+ class result-container
+ h3 Your Risk Assessment
+ p
+ id risk-result
+ p
+ id risk-explanation
+ section
+ id resources
+ class resources
+ h2 Helpful Resources
+ div
+ class resource-grid
+ div
+ class resource-card
+ h3 Freelance Contracts
+ p Essential templates for protecting your work
+ div
+ class resource-card
+ h3 Tax Guide
+ p Understanding freelance taxes and deductions
+ div
+ class resource-card
+ h3 Pricing Strategies
+ p How to price your services competitively
+ div
+ class resource-card
+ h3 Time Management
+ p Tools and techniques for productivity
+ footer
+ div
+ class footer-content
+ p A tool to help you make informed career decisions
+
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "9e574683-9a29-4bf3-9564-2715e6272798",
+ "object": "chat.completion",
+ "created": 1737874981,
+ "model": "deepseek-chat",
+ "choices": [
+ {
+ "index": 0,
+ "message": {
+ "role": "assistant",
+ "content": "---domain---\nfreelancerisk.com\n---index.scroll---\nbuildHtml\nbaseUrl https://freelancerisk.com\nmetaTags\neditButton /edit.html\ntitle Freelance Risk Calculator\nstyle.css\n\nheader\n class hero\n nav\n div Freelance Risk\n class logo\n div\n class nav-links\n a About\n href #about\n a Calculator\n href #calculator\n a Resources\n href #resources\n div\n class hero-content\n h1 Should You Go Freelance?\n p Assess your risk and make an informed decision about leaving your job\n a Start Assessment\n class primary-button\n href #calculator\nmain\n section\n id about\n class about\n h2 About This Tool\n p This interactive calculator helps you evaluate the risks and rewards of transitioning from a traditional job to freelancing. Answer a few questions to get a personalized risk assessment.\n section\n id calculator\n class calculator\n h2 Freelance Risk Calculator\n div\n class calculator-form\n div\n class form-group\n label Current Monthly Income\n input\n type number\n id current-income\n placeholder Enter amount\n div\n class form-group\n label Expected Freelance Income\n input\n type number\n id freelance-income\n placeholder Enter amount\n div\n class form-group\n label Savings Buffer (months)\n input\n type number\n id savings-buffer\n placeholder Enter months\n div\n class form-group\n label Industry Stability\n select\n id industry-stability\n option High\n option Medium\n option Low\n button\n class primary-button\n id calculate-btn\n Calculate Risk\n div\n class result-container\n h3 Your Risk Assessment\n p\n id risk-result\n p\n id risk-explanation\n section\n id resources\n class resources\n h2 Helpful Resources\n div\n class resource-grid\n div\n class resource-card\n h3 Freelance Contracts\n p Essential templates for protecting your work\n div\n class resource-card\n h3 Tax Guide\n p Understanding freelance taxes and deductions\n div\n class resource-card\n h3 Pricing Strategies\n p How to price your services competitively\n div\n class resource-card\n h3 Time Management\n p Tools and techniques for productivity\nfooter\n div\n class footer-content\n p A tool to help you make informed career decisions\n\nscript.js\n---style.css---\n:root {\n --primary-color: #2563eb;\n --secondary-color: #1e40af;\n --background-color: #f8fafc;\n --text-color: #1e293b;\n --card-bg: #ffffff;\n --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n}\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont, 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\n.hero {\n background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));\n color: white;\n padding: 4rem 1rem;\n text-align: center;\n}\n\n.hero-content h1 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.primary-button {\n background: white;\n color: var(--primary-color);\n padding: 0.75rem 2rem;\n border-radius: 0.5rem;\n text-decoration: none;\n font-weight: 600;\n transition: all 0.3s ease;\n}\n\n.primary-button:hover {\n transform: translateY(-2px);\n box-shadow: var(--shadow);\n}\n\n.calculator-form {\n max-width: 600px;\n margin: 2rem auto;\n padding: 2rem;\n background: var(--card-bg);\n border-radius: 0.5rem;\n box-shadow: var(--shadow);\n}\n\n.form-group {\n margin-bottom: 1.5rem;\n}\n\n.form-group label {\n display: block;\n margin-bottom: 0.5rem;\n font-weight: 600;\n}\n\n.form-group input,\n.form-group select {\n width: 100%;\n padding: 0.75rem;\n border: 1px solid #e2e8f0;\n border-radius: 0.5rem;\n}\n\n.result-container {\n margin-top: 2rem;\n padding: 2rem;\n background: var(--card-bg);\n border-radius: 0.5rem;\n box-shadow: var(--shadow);\n}\n\n.resource-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin-top: 2rem;\n}\n\n.resource-card {\n background: var(--card-bg);\n padding: 1.5rem;\n border-radius: 0.5rem;\n box-shadow: var(--shadow);\n}\n\n@media (max-width: 768px) {\n .hero-content h1 {\n font-size: 2rem;\n }\n \n .calculator-form {\n padding: 1rem;\n }\n}\n---script.js---\ndocument.addEventListener('DOMContentLoaded', function() {\n const calculateBtn = document.getElementById('calculate-btn');\n const resultElement = document.getElementById('risk-result');\n const explanationElement = document.getElementById('risk-explanation');\n\n calculateBtn.addEventListener('click', function() {\n const currentIncome = parseFloat(document.getElementById('current-income').value);\n const freelanceIncome = parseFloat(document.getElementById('freelance-income').value);\n const savingsBuffer = parseFloat(document.getElementById('savings-buffer').value);\n const industryStability = document.getElementById('industry-stability').value;\n\n if (!currentIncome || !freelanceIncome || !savingsBuffer) {\n alert('Please fill in all fields');\n return;\n }\n\n const incomeRatio = freelanceIncome / currentIncome;\n const riskScore = calculateRiskScore(incomeRatio, savingsBuffer, industryStability);\n\n displayResult(riskScore);\n });\n\n function calculateRiskScore(incomeRatio, savingsBuffer, industryStability) {\n let score = 0;\n \n // Income ratio factor\n if (incomeRatio >= 1.5) score += 20;\n else if (incomeRatio >= 1.2) score += 30;\n else if (incomeRatio >= 1) score += 50;\n else if (incomeRatio >= 0.8) score += 70;\n else score += 90;\n\n // Savings buffer factor\n if (savingsBuffer >= 12) score -= 20;\n else if (savingsBuffer >= 6) score -= 10;\n else if (savingsBuffer >= 3) score += 10;\n else score += 30;\n\n // Industry stability factor\n if (industryStability === 'High') score -= 20;\n else if (industryStability === 'Medium') score += 10;\n else score += 30;\n\n // Normalize score between 0 and 100\n score = Math.max(0, Math.min(100, score));\n\n return score;\n }\n\n function displayResult(score) {\n let riskLevel, explanation;\n \n if (score <= 30) {\n riskLevel = 'Low Risk';\n explanation = 'Your financial situation and market conditions suggest a low-risk transition to freelancing.';\n } else if (score <= 60) {\n riskLevel = 'Moderate Risk';\n explanation = 'You might face some challenges, but with proper planning, freelancing could work well for you.';\n } else {\n riskLevel = 'High Risk';\n explanation = 'The transition to freelancing might be risky at this time. Consider building more savings or improving your market position first.';\n }\n\n resultElement.textContent = riskLevel;\n explanationElement.textContent = explanation;\n }\n});\n---end---"
+ },
+ "logprobs": null,
+ "finish_reason": "stop"
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 725,
+ "completion_tokens": 1774,
+ "total_tokens": 2499,
+ "prompt_tokens_details": {
+ "cached_tokens": 0
+ },
+ "prompt_cache_hit_tokens": 0,
+ "prompt_cache_miss_tokens": 725
+ },
+ "system_fingerprint": "fp_3a5770e1b4"
+ }
readme.scroll
Changed around line 1
+ # freelancerisk.com.TLD
+
+ Prompt: website
+ Agent: deepseek
+ Model: deepseek-chat
+
+ ## User prompt
+ 我想创建个网站来评估我现在辞职去做自由职业的风险
+
+ ## System prompt
+ You are an expert web developer. Create a website based on this request: "我想创建个网站来评估我现在辞职去做自由职业的风险"
+
+ Requirements:
+ - Use only Scroll, CSS, and JavaScript (NO frameworks, NO external dependencies)
+ - Create clean, semantic HTML5
+ - Make it mobile-responsive
+ - Follow modern best practices and accessibility guidelines
+ - Keep it simple but professional
+ - Use only relative links and no external resources
+ - Do not put a copyright symbol or all rights reserved in the footer.
+ - Make it beautiful. Dazzling. Advanced used of CSS.
+
+ As a refresher, for doing the html body, Scroll is a whitespace based language that uses a single indented space to mark a line (aka particle) as a subparticle of a parent line.
+
+ For example:
+
+ header
+ class hero
+ nav
+ div Scroll
+ class logo
+ div
+ class nav-links
+ a Features
+ href #features
+ a Examples
+ href #examples
+ a Edit
+ href edit.html
+ a GitHub
+ class cta-button
+ href https://github.com/breck7/scroll
+ div
+ class hero-content
+ h1 Write Better with Scroll
+ p The extendible markup language that makes source beautiful and compiles to anything
+ a Get Started
+ class primary-button
+ href https://hub.scroll.pub/
+ main
+ section
+ id features
+ class features
+ h2 Why Scroll?
+ div
+ class feature-grid
+ div
+ class feature-card
+ div ⚡
+ class feature-icon
+ h3 Simple Syntax
+ p Like Markdown, but more powerful. No parentheses needed.
+ div
+ class feature-card
+ div 🧩
+ class feature-icon
+ h3 Extendible
+ p Build your own custom parsers.
+ div
+ class feature-card
+ div 🎨
+ class feature-icon
+ h3 Beautiful Output
+ p Create stunning documents with minimal effort.
+ div
+ class feature-card
+ div 🚀
+ class feature-icon
+ h3 Fast & Light
+ p Built on the efficient PPS Stack.
+ section
+ id examples
+ class code-demo
+ h2 See It In Action
+ div
+ class code-container
+ pre
+ class code-example
+ div
+ class code-output
+ footer
+ div
+ class footer-content
+ div
+ class footer-links
+ a Documentation
+ href https://scroll.pub/tutorial.html
+ a Community
+ href https://www.reddit.com/r/WorldWideScroll/
+ a Blog
+ href https://scroll.pub/blog
+ p Started by Breck Yunits. Evolved by a community.
+ https://twitter.com/breckyunits Breck Yunits
+ https://github.com/breck7/scroll/graphs/contributors community
+
+
+ First suggest a short, memorable domain name ending in TLD that represents this website. Then provide the website files. Use this exact format:
+
+ ---domain---
+ (domainTLD here)
+ ---index.scroll---
+ buildHtml
+ baseUrl https://(domainTLD here)
+ metaTags
+ editButton /edit.html
+ title (Title here)
+ style.css
+
+ (body content here. no blank lines please.)
+
+ script.js
+ ---style.css---
+ (CSS content here)
+ ---script.js---
+ (JavaScript content here)
+ ---end---
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', function() {
+ const calculateBtn = document.getElementById('calculate-btn');
+ const resultElement = document.getElementById('risk-result');
+ const explanationElement = document.getElementById('risk-explanation');
+
+ calculateBtn.addEventListener('click', function() {
+ const currentIncome = parseFloat(document.getElementById('current-income').value);
+ const freelanceIncome = parseFloat(document.getElementById('freelance-income').value);
+ const savingsBuffer = parseFloat(document.getElementById('savings-buffer').value);
+ const industryStability = document.getElementById('industry-stability').value;
+
+ if (!currentIncome || !freelanceIncome || !savingsBuffer) {
+ alert('Please fill in all fields');
+ return;
+ }
+
+ const incomeRatio = freelanceIncome / currentIncome;
+ const riskScore = calculateRiskScore(incomeRatio, savingsBuffer, industryStability);
+
+ displayResult(riskScore);
+ });
+
+ function calculateRiskScore(incomeRatio, savingsBuffer, industryStability) {
+ let score = 0;
+
+ // Income ratio factor
+ if (incomeRatio >= 1.5) score += 20;
+ else if (incomeRatio >= 1.2) score += 30;
+ else if (incomeRatio >= 1) score += 50;
+ else if (incomeRatio >= 0.8) score += 70;
+ else score += 90;
+
+ // Savings buffer factor
+ if (savingsBuffer >= 12) score -= 20;
+ else if (savingsBuffer >= 6) score -= 10;
+ else if (savingsBuffer >= 3) score += 10;
+ else score += 30;
+
+ // Industry stability factor
+ if (industryStability === 'High') score -= 20;
+ else if (industryStability === 'Medium') score += 10;
+ else score += 30;
+
+ // Normalize score between 0 and 100
+ score = Math.max(0, Math.min(100, score));
+
+ return score;
+ }
+
+ function displayResult(score) {
+ let riskLevel, explanation;
+
+ if (score <= 30) {
+ riskLevel = 'Low Risk';
+ explanation = 'Your financial situation and market conditions suggest a low-risk transition to freelancing.';
+ } else if (score <= 60) {
+ riskLevel = 'Moderate Risk';
+ explanation = 'You might face some challenges, but with proper planning, freelancing could work well for you.';
+ } else {
+ riskLevel = 'High Risk';
+ explanation = 'The transition to freelancing might be risky at this time. Consider building more savings or improving your market position first.';
+ }
+
+ resultElement.textContent = riskLevel;
+ explanationElement.textContent = explanation;
+ }
+ });
style.css
Changed around line 1
+ :root {
+ --primary-color: #2563eb;
+ --secondary-color: #1e40af;
+ --background-color: #f8fafc;
+ --text-color: #1e293b;
+ --card-bg: #ffffff;
+ --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
+ }
+
+ body {
+ font-family: -apple-system, BlinkMacSystemFont, sans-serif;
+ line-height: 1.6;
+ color: var(--text-color);
+ background-color: var(--background-color);
+ margin: 0;
+ padding: 0;
+ }
+
+ .hero {
+ background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
+ color: white;
+ padding: 4rem 1rem;
+ text-align: center;
+ }
+
+ .hero-content h1 {
+ font-size: 2.5rem;
+ margin-bottom: 1rem;
+ }
+
+ .primary-button {
+ background: white;
+ color: var(--primary-color);
+ padding: 0.75rem 2rem;
+ border-radius: 0.5rem;
+ text-decoration: none;
+ font-weight: 600;
+ transition: all 0.3s ease;
+ }
+
+ .primary-button:hover {
+ transform: translateY(-2px);
+ box-shadow: var(--shadow);
+ }
+
+ .calculator-form {
+ max-width: 600px;
+ margin: 2rem auto;
+ padding: 2rem;
+ background: var(--card-bg);
+ border-radius: 0.5rem;
+ box-shadow: var(--shadow);
+ }
+
+ .form-group {
+ margin-bottom: 1.5rem;
+ }
+
+ .form-group label {
+ display: block;
+ margin-bottom: 0.5rem;
+ font-weight: 600;
+ }
+
+ .form-group input,
+ .form-group select {
+ width: 100%;
+ padding: 0.75rem;
+ border: 1px solid #e2e8f0;
+ border-radius: 0.5rem;
+ }
+
+ .result-container {
+ margin-top: 2rem;
+ padding: 2rem;
+ background: var(--card-bg);
+ border-radius: 0.5rem;
+ box-shadow: var(--shadow);
+ }
+
+ .resource-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
+ gap: 2rem;
+ margin-top: 2rem;
+ }
+
+ .resource-card {
+ background: var(--card-bg);
+ padding: 1.5rem;
+ border-radius: 0.5rem;
+ box-shadow: var(--shadow);
+ }
+
+ @media (max-width: 768px) {
+ .hero-content h1 {
+ font-size: 2rem;
+ }
+
+ .calculator-form {
+ padding: 1rem;
+ }
+ }