Update resources.html
Browse files- resources.html +47 -3
resources.html
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
<header class="main-header">
|
13 |
<div class="header-left">
|
14 |
<h1>
|
15 |
-
<a href="
|
16 |
>Infer <span class="star">❊</span></a
|
17 |
>
|
18 |
</h1>
|
@@ -21,7 +21,7 @@
|
|
21 |
<nav class="header-nav">
|
22 |
<a href="#" class="nav-link">About</a>
|
23 |
<span class="nav-separator">⎈</span>
|
24 |
-
<a href="resources
|
25 |
<span class="nav-separator">⎈</span>
|
26 |
<a href="mailto:[email protected]" class="nav-link">Contact</a>
|
27 |
</nav>
|
@@ -89,6 +89,7 @@
|
|
89 |
<script src="static/app.js"></script>
|
90 |
<script>
|
91 |
document.addEventListener('DOMContentLoaded', function() {
|
|
|
92 |
var aboutOverlay = document.getElementById('aboutOverlay');
|
93 |
var aboutCloseBtn = document.getElementById('aboutCloseBtn');
|
94 |
var aboutLink = Array.from(document.querySelectorAll('.nav-link')).find(function(link) {
|
@@ -112,7 +113,50 @@
|
|
112 |
}
|
113 |
});
|
114 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
115 |
});
|
116 |
</script>
|
117 |
</body>
|
118 |
-
</html>
|
|
|
12 |
<header class="main-header">
|
13 |
<div class="header-left">
|
14 |
<h1>
|
15 |
+
<a href="/" class="home-link"
|
16 |
>Infer <span class="star">❊</span></a
|
17 |
>
|
18 |
</h1>
|
|
|
21 |
<nav class="header-nav">
|
22 |
<a href="#" class="nav-link">About</a>
|
23 |
<span class="nav-separator">⎈</span>
|
24 |
+
<a href="/resources" class="nav-link">Resources</a>
|
25 |
<span class="nav-separator">⎈</span>
|
26 |
<a href="mailto:[email protected]" class="nav-link">Contact</a>
|
27 |
</nav>
|
|
|
89 |
<script src="static/app.js"></script>
|
90 |
<script>
|
91 |
document.addEventListener('DOMContentLoaded', function() {
|
92 |
+
// About overlay logic
|
93 |
var aboutOverlay = document.getElementById('aboutOverlay');
|
94 |
var aboutCloseBtn = document.getElementById('aboutCloseBtn');
|
95 |
var aboutLink = Array.from(document.querySelectorAll('.nav-link')).find(function(link) {
|
|
|
113 |
}
|
114 |
});
|
115 |
}
|
116 |
+
|
117 |
+
// Resource data handling
|
118 |
+
const resourceData = {
|
119 |
+
"do-not-train": {
|
120 |
+
title: "Do Not Train",
|
121 |
+
html: `<strong>What It Is:</strong> A simple metadata tag artists can add to their images to declare they don't consent to their work being used for training AI.<br><strong>How To Use:</strong> Add a do-not-train tag to your website's HTML or use platforms that support the tag.<br><strong>Note:</strong> It's not enforceable yet, but signals intent for future protections.<br><a href='https://spawning.ai/rightsholders-faq' class='action-button' target='_blank'><span>Learn more</span><span class='arrow'>⟶</span></a>`
|
122 |
+
},
|
123 |
+
"nightshade": {
|
124 |
+
title: "Nightshade",
|
125 |
+
html: `<strong>What It Is:</strong> A tool that poisons your artwork's pixels—imperceptibly to humans, but disruptive to training algorithms.<br><strong>Why It Works:</strong> It corrupts how AI models interpret your work, deterring them from using it.<br><a href='https://nightshade.cs.uchicago.edu/' class='action-button' target='_blank'><span>Try it out</span><span class='arrow'>⟶</span></a>`
|
126 |
+
},
|
127 |
+
"glaze": {
|
128 |
+
title: "Glaze",
|
129 |
+
html: `<strong>What It Is:</strong> A style cloak that protects your artistic fingerprint.<br><strong>What It Does:</strong> Applies a subtle, AI-visible filter that makes your work harder to mimic.<br><strong>Best For:</strong> Artists with a strong visual signature.<br><a href='https://glaze.cs.uchicago.edu/' class='action-button' target='_blank'><span>Try it out</span><span class='arrow'>⟶</span></a>`
|
130 |
+
},
|
131 |
+
"copyright": {
|
132 |
+
title: "Copyright Resources",
|
133 |
+
html: `<strong>Understand Your Rights:</strong><br>In many countries, your work is protected the moment it's created—but enforcing that is another story.<br><br><u>Includes:</u><ul><li>How to formally register your copyright</li><li>Templates for takedown notices</li><li>Intro to fair use & derivative work laws</li></ul>`
|
134 |
+
},
|
135 |
+
"licensing": {
|
136 |
+
title: "Licensing Tools",
|
137 |
+
html: `<strong>Put Terms in Writing:</strong><br>Use free or paid licenses to explicitly control how your work can be used.<br><br><u>Options to Explore:</u><ul><li>Creative Commons with "no AI use" clauses</li><li>Personal licensing agreements</li><li>Open-source licenses adapted for artists</li></ul>`
|
138 |
+
}
|
139 |
+
};
|
140 |
+
|
141 |
+
const categories = document.querySelectorAll('.resource-category');
|
142 |
+
const info = document.getElementById('resource-info');
|
143 |
+
|
144 |
+
if (categories.length && info) {
|
145 |
+
function showResource(key) {
|
146 |
+
categories.forEach(btn =>
|
147 |
+
btn.classList.toggle('active', btn.dataset.resource === key)
|
148 |
+
);
|
149 |
+
info.innerHTML = `<h3>${resourceData[key].title}</h3><p>${resourceData[key].html}</p>`;
|
150 |
+
}
|
151 |
+
|
152 |
+
categories.forEach(btn => {
|
153 |
+
btn.addEventListener('click', () => showResource(btn.dataset.resource));
|
154 |
+
});
|
155 |
+
|
156 |
+
// Show default resource
|
157 |
+
showResource('do-not-train');
|
158 |
+
}
|
159 |
});
|
160 |
</script>
|
161 |
</body>
|
162 |
+
</html>
|