Changes to phdonlyfans1.scroll.pub

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

PhD vs OnlyFans Calculator

+

Make an informed decision about your academic future

+
+
+
+
+
+

Current PhD Situation

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

OnlyFans Potential

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

Analysis Results

+
+
+

PhD Path

+

Projected 5-Year Earnings: $0

+
+
+
+
+
+
+

OnlyFans Path

+

Projected 5-Year Earnings: $0

+
+
+
+
+
+
+

+
+
+
+
+
+

This is a satirical calculator for entertainment purposes only. Please make career decisions thoughtfully.

+
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://phdonlyfans.scroll.pub
+ metaTags
+ editButton /edit.html
+ title PhD vs OnlyFans Career Calculator
+ style.css
+ body.html
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "msg_01HL9WNEuGcRVaykPGv4KvC8",
+ "type": "message",
+ "role": "assistant",
+ "model": "claude-3-5-sonnet-20241022",
+ "content": [
+ {
+ "type": "text",
+ "text": "Here's a creative implementation:\n\n---domain---\nphdonlyfans.scroll.pub\n\n---index.scroll---\nbuildHtml\nbaseUrl https://phdonlyfans.scroll.pub\nmetaTags\neditButton /edit.html\ntitle PhD vs OnlyFans Career Calculator\nstyle.css\nbody.html\nscript.js\n\n---body.html---\n
\n

PhD vs OnlyFans Calculator

\n

Make an informed decision about your academic future

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

Current PhD Situation

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

OnlyFans Potential

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

Analysis Results

\n
\n
\n

PhD Path

\n

Projected 5-Year Earnings: $0

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

OnlyFans Path

\n

Projected 5-Year Earnings: $0

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

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

This is a satirical calculator for entertainment purposes only. Please make career decisions thoughtfully.

\n
\n\n---style.css---\n:root {\n --gradient-1: #FF69B4;\n --gradient-2: #4B0082;\n --card-bg: rgba(255, 255, 255, 0.1);\n --text-color: #fff;\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 min-height: 100vh;\n background: linear-gradient(135deg, var(--gradient-1), var(--gradient-2));\n padding: 2rem;\n}\n\nheader {\n text-align: center;\n margin-bottom: 3rem;\n}\n\nh1 {\n font-size: 2.5rem;\n margin-bottom: 0.5rem;\n text-shadow: 2px 2px 4px rgba(0,0,0,0.3);\n}\n\n.tagline {\n font-size: 1.2rem;\n opacity: 0.9;\n}\n\n.calculator {\n max-width: 800px;\n margin: 0 auto;\n padding: 2rem;\n background: rgba(255, 255, 255, 0.1);\n backdrop-filter: blur(10px);\n border-radius: 20px;\n box-shadow: 0 8px 32px rgba(0,0,0,0.1);\n}\n\n.input-group {\n margin-bottom: 2rem;\n}\n\nh2 {\n margin-bottom: 1rem;\n color: #fff;\n}\n\nlabel {\n display: block;\n margin: 1rem 0 0.5rem;\n}\n\ninput {\n width: 100%;\n padding: 0.8rem;\n border: none;\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.2);\n color: white;\n font-size: 1rem;\n}\n\ninput[type=\"range\"] {\n height: 2px;\n background: rgba(255, 255, 255, 0.3);\n cursor: pointer;\n}\n\n.gradient-btn {\n display: block;\n width: 100%;\n padding: 1rem;\n margin: 2rem 0;\n border: none;\n border-radius: 8px;\n background: linear-gradient(45deg, var(--gradient-1), var(--gradient-2));\n color: white;\n font-size: 1.2rem;\n cursor: pointer;\n transition: transform 0.3s ease;\n}\n\n.gradient-btn:hover {\n transform: translateY(-2px);\n}\n\n.result-cards {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n margin: 2rem 0;\n}\n\n.card {\n background: var(--card-bg);\n padding: 1.5rem;\n border-radius: 12px;\n text-align: center;\n}\n\n.meter {\n height: 8px;\n background: rgba(255, 255, 255, 0.2);\n border-radius: 4px;\n margin-top: 1rem;\n overflow: hidden;\n}\n\n.meter-fill {\n height: 100%;\n width: 0;\n background: linear-gradient(90deg, var(--gradient-1), var(--gradient-2));\n transition: width 1s ease-in-out;\n}\n\n.recommendation {\n text-align: center;\n font-size: 1.2rem;\n margin-top: 2rem;\n padding: 1rem;\n background: rgba(255, 255, 255, 0.1);\n border-radius: 8px;\n}\n\n.hidden {\n display: none;\n}\n\nfooter {\n text-align: center;\n margin-top: 3rem;\n opacity: 0.7;\n font-size: 0.9rem;\n}\n\n@media (max-width: 600px) {\n body {\n padding: 1rem;\n }\n \n .calculator {\n padding: 1rem;\n }\n \n h1 {\n font-size: 2rem;\n }\n}\n\n---script.js---\ndocument.addEventListener('DOMContentLoaded', () => {\n const calculateBtn = document.getElementById('calculate');\n const resultDiv = document.getElementById('result');\n \n calculateBtn.addEventListener('click', () => {\n const stipend = parseFloat(document.getElementById('stipend').value) || 25000;\n const yearsLeft = parseFloat(document.getElementById('years-left').value) || 3;\n const stressLevel = parseFloat(document.getElementById('stress-level').value);\n const followers = parseFloat(document.getElementById('followers').value) || 0;\n const contentHours = parseFloat(document.getElementById('content-hours').value) || 0;\n const comfortLevel = parseFloat(document.getElementById('comfort-level').value);\n \n // Calculate PhD potential\n const phdScore = calculatePhDScore(stipend, yearsLeft, stressLevel);\n const ofScore = calculateOnlyFansScore(followers, contentHours, comfortLevel);\n \n // Update UI\n resultDiv.classList.remove('hidden');\n updateMeters(phdScore, ofScore);\n updateEarnings(phdScore, ofScore);\n updateRecommendation(phdScore, ofScore);\n });\n \n function calculatePhDScore(stipend, yearsLeft, stressLevel) {\n const yearlyValue = stipend * (1 - (stressLevel / 20));\n const futureValue = yearlyValue * (5 - yearsLeft) * 1.1; // 10% increase post-PhD\n return Math.max(0, Math.min(100, (futureValue / 300000) * 100));\n }\n \n function calculateOnlyFansScore(followers, hours, comfort) {\n const potentialSubs = followers * 0.05; // 5% conversion rate\n const monthlyRevenue = potentialSubs * 15 * (comfort / 10); // $15 average sub\n const yearlyRevenue = monthlyRevenue * 12 * (hours / 40); // Scale by hours\n return Math.max(0, Math.min(100, (yearlyRevenue / 300000) * 100));\n }\n \n function updateMeters(phdScore, ofScore) {\n document.getElementById('phd-meter').style.width = `${phdScore}%`;\n document.getElementById('of-meter').style.width = `${ofScore}%`;\n }\n \n function updateEarnings(phdScore, ofScore) {\n const phdEarnings = Math.round(phdScore * 3000);\n const ofEarnings = Math.round(ofScore * 3000);\n \n document.getElementById('phd-earnings').textContent = phdEarnings.toLocaleString();\n document.getElementById('of-earnings').textContent = ofEarnings.toLocaleString();\n }\n \n function updateRecommendation(phdScore, ofScore) {\n const recommendation = document.getElementById('recommendation');\n const diff = Math.abs(phdScore - ofScore);\n \n if (diff < 10) {\n recommendation.textContent = \"This is a tough call! Consider your personal values and long-term goals.\";\n } else if (phdScore > ofScore) {\n recommendation.textContent = \"The numbers suggest sticking with your PhD might be more profitable long-term.\";\n } else {\n recommendation.textContent = \"The numbers suggest OnlyFans could be more lucrative, but remember to consider all life factors!\";\n }\n }\n});\n\n---end---\n\nThis implementation features:\n\n1. A modern, gradient-based design with glassmorphism effects\n2. Responsive layout that works on all devices\n3. Interactive sliders and input fields\n4. Real-time calculations with animated results\n5. Professional yet playful tone\n6. Accessibility features\n7. Smooth animations and transitions\n8. Clear recommendations based on input\n9. Thoughtful UI/UX with proper spacing and typography\n10. Satirical but useful calculations\n\nThe domain name \"phdonlyfans\" is memorable, relevant, and slightly humorous while remaining professional enough for the purpose. The calculator takes various factors into account including current stipend, stress levels, social media following, and content creation capacity to provide a comparative analysis between the two career paths."
+ }
+ ],
+ "stop_reason": "end_turn",
+ "stop_sequence": null,
+ "usage": {
+ "input_tokens": 307,
+ "cache_creation_input_tokens": 0,
+ "cache_read_input_tokens": 0,
+ "output_tokens": 2945
+ }
+ }
readme.scroll
Changed around line 1
+ # phdonlyfans1.scroll.pub
+ Website generated by Claude from prompt: I want a website that will help decide if I should drout of my PhD program to do only Fans. So it should have some numerical tools and interactivity. Be creative.
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', () => {
+ const calculateBtn = document.getElementById('calculate');
+ const resultDiv = document.getElementById('result');
+
+ calculateBtn.addEventListener('click', () => {
+ const stipend = parseFloat(document.getElementById('stipend').value) || 25000;
+ const yearsLeft = parseFloat(document.getElementById('years-left').value) || 3;
+ const stressLevel = parseFloat(document.getElementById('stress-level').value);
+ const followers = parseFloat(document.getElementById('followers').value) || 0;
+ const contentHours = parseFloat(document.getElementById('content-hours').value) || 0;
+ const comfortLevel = parseFloat(document.getElementById('comfort-level').value);
+
+ // Calculate PhD potential
+ const phdScore = calculatePhDScore(stipend, yearsLeft, stressLevel);
+ const ofScore = calculateOnlyFansScore(followers, contentHours, comfortLevel);
+
+ // Update UI
+ resultDiv.classList.remove('hidden');
+ updateMeters(phdScore, ofScore);
+ updateEarnings(phdScore, ofScore);
+ updateRecommendation(phdScore, ofScore);
+ });
+
+ function calculatePhDScore(stipend, yearsLeft, stressLevel) {
+ const yearlyValue = stipend * (1 - (stressLevel / 20));
+ const futureValue = yearlyValue * (5 - yearsLeft) * 1.1; // 10% increase post-PhD
+ return Math.max(0, Math.min(100, (futureValue / 300000) * 100));
+ }
+
+ function calculateOnlyFansScore(followers, hours, comfort) {
+ const potentialSubs = followers * 0.05; // 5% conversion rate
+ const monthlyRevenue = potentialSubs * 15 * (comfort / 10); // $15 average sub
+ const yearlyRevenue = monthlyRevenue * 12 * (hours / 40); // Scale by hours
+ return Math.max(0, Math.min(100, (yearlyRevenue / 300000) * 100));
+ }
+
+ function updateMeters(phdScore, ofScore) {
+ document.getElementById('phd-meter').style.width = `${phdScore}%`;
+ document.getElementById('of-meter').style.width = `${ofScore}%`;
+ }
+
+ function updateEarnings(phdScore, ofScore) {
+ const phdEarnings = Math.round(phdScore * 3000);
+ const ofEarnings = Math.round(ofScore * 3000);
+
+ document.getElementById('phd-earnings').textContent = phdEarnings.toLocaleString();
+ document.getElementById('of-earnings').textContent = ofEarnings.toLocaleString();
+ }
+
+ function updateRecommendation(phdScore, ofScore) {
+ const recommendation = document.getElementById('recommendation');
+ const diff = Math.abs(phdScore - ofScore);
+
+ if (diff < 10) {
+ recommendation.textContent = "This is a tough call! Consider your personal values and long-term goals.";
+ } else if (phdScore > ofScore) {
+ recommendation.textContent = "The numbers suggest sticking with your PhD might be more profitable long-term.";
+ } else {
+ recommendation.textContent = "The numbers suggest OnlyFans could be more lucrative, but remember to consider all life factors!";
+ }
+ }
+ });
style.css
Changed around line 1
+ :root {
+ --gradient-1: #FF69B4;
+ --gradient-2: #4B0082;
+ --card-bg: rgba(255, 255, 255, 0.1);
+ --text-color: #fff;
+ }
+
+ * {
+ 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);
+ min-height: 100vh;
+ background: linear-gradient(135deg, var(--gradient-1), var(--gradient-2));
+ padding: 2rem;
+ }
+
+ header {
+ text-align: center;
+ margin-bottom: 3rem;
+ }
+
+ h1 {
+ font-size: 2.5rem;
+ margin-bottom: 0.5rem;
+ text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
+ }
+
+ .tagline {
+ font-size: 1.2rem;
+ opacity: 0.9;
+ }
+
+ .calculator {
+ max-width: 800px;
+ margin: 0 auto;
+ padding: 2rem;
+ background: rgba(255, 255, 255, 0.1);
+ backdrop-filter: blur(10px);
+ border-radius: 20px;
+ box-shadow: 0 8px 32px rgba(0,0,0,0.1);
+ }
+
+ .input-group {
+ margin-bottom: 2rem;
+ }
+
+ h2 {
+ margin-bottom: 1rem;
+ color: #fff;
+ }
+
+ label {
+ display: block;
+ margin: 1rem 0 0.5rem;
+ }
+
+ input {
+ width: 100%;
+ padding: 0.8rem;
+ border: none;
+ border-radius: 8px;
+ background: rgba(255, 255, 255, 0.2);
+ color: white;
+ font-size: 1rem;
+ }
+
+ input[type="range"] {
+ height: 2px;
+ background: rgba(255, 255, 255, 0.3);
+ cursor: pointer;
+ }
+
+ .gradient-btn {
+ display: block;
+ width: 100%;
+ padding: 1rem;
+ margin: 2rem 0;
+ border: none;
+ border-radius: 8px;
+ background: linear-gradient(45deg, var(--gradient-1), var(--gradient-2));
+ color: white;
+ font-size: 1.2rem;
+ cursor: pointer;
+ transition: transform 0.3s ease;
+ }
+
+ .gradient-btn:hover {
+ transform: translateY(-2px);
+ }
+
+ .result-cards {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
+ gap: 2rem;
+ margin: 2rem 0;
+ }
+
+ .card {
+ background: var(--card-bg);
+ padding: 1.5rem;
+ border-radius: 12px;
+ text-align: center;
+ }
+
+ .meter {
+ height: 8px;
+ background: rgba(255, 255, 255, 0.2);
+ border-radius: 4px;
+ margin-top: 1rem;
+ overflow: hidden;
+ }
+
+ .meter-fill {
+ height: 100%;
+ width: 0;
+ background: linear-gradient(90deg, var(--gradient-1), var(--gradient-2));
+ transition: width 1s ease-in-out;
+ }
+
+ .recommendation {
+ text-align: center;
+ font-size: 1.2rem;
+ margin-top: 2rem;
+ padding: 1rem;
+ background: rgba(255, 255, 255, 0.1);
+ border-radius: 8px;
+ }
+
+ .hidden {
+ display: none;
+ }
+
+ footer {
+ text-align: center;
+ margin-top: 3rem;
+ opacity: 0.7;
+ font-size: 0.9rem;
+ }
+
+ @media (max-width: 600px) {
+ body {
+ padding: 1rem;
+ }
+
+ .calculator {
+ padding: 1rem;
+ }
+
+ h1 {
+ font-size: 2rem;
+ }
+ }