there's NO GORE it's just the files of this domain i made for fun.
at master 8.2 kB view raw
1<html> 2 <head> 3 <title>there's never going to be actual gore here</title> 4 <style> 5 a { 6 color: #ff0000; 7 font-weight: bold; 8 text-decoration: none; 9 text-transform: uppercase; 10 } 11 12 a:visited { 13 color: #ff0000; 14 font-weight: bold; 15 text-decoration: none; 16 text-transform: uppercase; 17} 18 19a:hover { 20 color: #000; 21 font-weight: bold; 22 text-decoration: none; 23 text-transform: uppercase; 24} 25 26th, td { 27 padding: 15px; 28} 29 30#kibun { 31} 32 </style> 33 </head> 34 35 <body> 36 <div style="margin: 0 auto; width: 75%; font-family: courier new; text-align: center; margin-top: 10%;"> 37 <pre> 38 39 ▄████ ▒█████ ██▀███ ▓█████ ▒███████▒ ▒█████ ███▄ █ ▓█████ 40 ██▒ ▀█▒▒██▒ ██▒▓██ ▒ ██▒▓█ ▀ ▒ ▒ ▒ ▄▀░▒██▒ ██▒ ██ ▀█ █ ▓█ ▀ 41▒██░▄▄▄░▒██░ ██▒▓██ ░▄█ ▒▒███ ░ ▒ ▄▀▒░ ▒██░ ██▒▓██ ▀█ ██▒▒███ 42░▓█ ██▓▒██ ██░▒██▀▀█▄ ▒▓█ ▄ ▄▀▒ ░▒██ ██░▓██▒ ▐▌██▒▒▓█ ▄ 43░▒▓███▀▒░ ████▓▒░░██▓ ▒██▒░▒████▒ ██▓ ▒███████▒░ ████▓▒░▒██░ ▓██░░▒████▒ 44 ░▒ ▒ ░ ▒░▒░▒░ ░ ▒▓ ░▒▓░░░ ▒░ ░ ▒▓▒ ░▒▒ ▓░▒░▒░ ▒░▒░▒░ ░ ▒░ ▒ ▒ ░░ ▒░ ░ 45 ░ ░ ░ ▒ ▒░ ░▒ ░ ▒░ ░ ░ ░ ░▒ ░░▒ ▒ ░ ▒ ░ ▒ ▒░ ░ ░░ ░ ▒░ ░ ░ ░ 46░ ░ ░ ░ ░ ░ ▒ ░░ ░ ░ ░ ░ ░ ░ ░ ░░ ░ ░ ▒ ░ ░ ░ ░ 47 ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ 48 ░ ░ 49 </pre> 50 51<div id="kibun" data-username="tigerlily.cafe"> 52 <script>function timeAgo (dateString) { 53 const date = Date.parse(dateString); 54 const curDate = new Date(date); 55 const now = Date.now(); 56 const yest = new Date(Date.parse(dateString)); 57 const today = new Date(date); 58 yest.setDate(today - 1); 59 const diff = (now - date) / 1000; // difference in seconds 60 if (diff < 5) { 61 return "just now"; 62 } else if (diff < 60) { 63 return `${diff} seconds ago`; 64 } else if (diff < 60*60) { 65 const min = Math.floor(diff / 60); 66 return `${min} minute${min > 1 ? 's' : ''} ago`; 67 } else if (diff < 60*60*24) { 68 const hr = Math.floor(diff / (60*60)); 69 return `${hr} hour${hr > 1 ? 's' : ''} ago`; 70 } else if (date.getDate() === yest.getDate() && date.getMonth() === yest.getMonth() && date.getYear() === yest.getYear()) { 71 return "yesterday"; 72 } 73 return `${curDate.toLocaleDateString(undefined, { 74 weekday: 'short', 75 year: 'numeric', 76 month: 'short', 77 day: 'numeric' 78 }).toLowerCase()}`; 79} 80 81async function getLatest() { 82 const kibunBase = document.getElementById('kibun'); 83 const username = kibunBase.getAttribute('data-username'); 84 const userDidData = await fetch(`https://slingshot.microcosm.blue/xrpc/com.bad-example.identity.resolveMiniDoc?identifier=${username}`); 85 const userDidDoc = await userDidData.json(); 86 const userDid = userDidDoc.did; 87 const userPds = userDidDoc.pds; 88 const userInfoReq = await fetch(` 89 ${userPds}/xrpc/com.atproto.repo.getRecord?repo=${userDid}&collection=app.bsky.actor.profile&rkey=self`); 90 const userInfoData = await userInfoReq.json(); 91 const displayName = userInfoData.value.displayName; 92 console.log(userInfoData); 93 const statusData = await fetch(`${userPds}/xrpc/com.atproto.repo.listRecords?repo=${userDid}&collection=social.kibun.status&limit=1`); 94 const statuses = await statusData.json(); 95 if (statuses.records.length === 0) return; 96 const status = statuses.records[0]; 97 const container = document.createElement('div'); 98 container.id = 'kibun-container'; 99 100 const header = document.createElement('div'); 101 header.id = 'kibun-header'; 102 103 const userLink = document.createElement('a'); 104 userLink.href = `https://www.kibun.social/users/${username}`; 105 userLink.textContent = displayName; 106 userLink.id = 'kibun-displayname'; 107 108 console.log(status.value.createdAt); 109 const parsedDate = Date.parse(status.value.createdAt); 110 const postTime = document.createElement('span'); 111 postTime.textContent = timeAgo(status.value.createdAt); 112 postTime.id = 'kibun-datetime'; 113 114 const emoji = status.value.emoji; 115 const emojiSign = document.createElement('span') 116 emojiSign.textContent = emoji; 117 emojiSign.id = 'kibun-emoji'; 118 119 const userHandle = document.createElement('a'); 120 userHandle.href = `https://kibun.social/users/${username}`; 121 userHandle.textContent = '@'+username; 122 userHandle.id = 'kibun-handle'; 123 124 header.append(userLink); 125 header.append(emojiSign); 126 header.append(userHandle); 127 header.append(postTime); 128 container.append(header); 129 130 const statusText = document.createElement('div'); 131 statusText.textContent = status.value.text; 132 statusText.id = 'kibun-status'; 133 container.append(statusText); 134 135 if (kibunBase.getAttribute('data-kibun') !== 'hide') { 136 const kibunLink = document.createElement('a'); 137 kibunLink.id = 'kibun-link'; 138 kibunLink.href = 'https://www.kibun.social/'; 139 kibunLink.setAttribute('target', '_blank'); 140 kibunLink.setAttribute('rel', 'external'); 141 kibunLink.textContent = 'kibun.social'; 142 container.append(kibunLink); 143 } 144 145 if (kibunBase.getAttribute('data-styles') !== 'none') { 146 const styles = document.createElement('style'); 147 styles.setAttribute('type', 'text/css'); 148 styles.innerHTML = ` 149 #kibun-container { 150 border: 1px #ff0000 solid; 151 box-shadow: 4px 4px 0 #ff0000; 152 padding: 20px; 153 max-width: 400px; 154 background-color: #FFFFFF; 155 font-family: courier new, sans-serif; 156 font-size: 14px; 157 position: relative; 158 margin-left: 35%; 159 } 160 161 #kibun-header { 162 display: flex; 163 gap: 10px; 164 align-items: center; 165 flex-wrap: wrap; 166 } 167 168 #kibun-displayname { 169 color: black; 170 font-weight: bold; 171 } 172 173 #kibun-handle { 174 color: #666666; 175 font-size: .8em; 176 } 177 178 #kibun-datetime { 179 color: #666666; 180 font-size: .8em; 181 } 182 183 #kibun-datetime:before { 184 content: "•"; 185 margin-right: 10px; 186 } 187 188 #kibun-status { 189 margin-top: 10px; 190 } 191 192 #kibun-link { 193 position: absolute; 194 bottom: 5px; 195 right: 5px; 196 font-size: .6em; 197 color: #666666; 198 } 199 `; 200 document.body.append(styles); 201 } 202 document.body.append(container); 203} 204 205getLatest(); 206</script> 207</div> 208 209 <center><table style="font-size: 1.2em; font-family: courier new; margin-left: 25px;"><tr style="padding: 15px;"><td>🦋 <a href="https://bsky.app/profile/tigerlily.cafe">bsky</a> <br> 210 🍃 <a href="https://devil.leaflet.pub/">leaflet</a> <br> 211 🐘 mastodon tbd <br> 212 🌊 <a href="https://tidal.com/@tigerlily">tidal</a> <br> 213 🎶 <a href="https://app.crucialtracks.org/profile/tigerlily">crucialtracks</a> <br> 214 🐝 <a href="https://bookhive.buzz/profile/tigerlily.cafe">bookhive</a><br> 215 📖 <a href="https://literal.club/tigerlilies">literal.club</a><br> 216 🌿 <a href="https://www.bookshelf.town/user/mitzi">bookshelf</a><br></td> 217 <td>🐺 <a href="https://scary.dog">personal</a><br> 218 ✏️ <a href="https://nikki.top/profile.php?id=124">microblog</a> <br> 219 📸 <a href="https://scary.dog/photolog.php">photolog</a><br> 220 💌 <a href="mailto:mitzi@scary.dog">mitzi</a> @ scary.dog <br> 221 🎵 <a href="https://www.last.fm/user/irohman">last.fm</a><br> 222 🌱 <a href="https://hell.leaflet.pub/">leaflet #2</a> <br> 223 🔫 <a href="https://devil.hotglue.me/?start">hotglue</a> <br> 224 🌠 <a href="https://tangled.org/strings/did:plc:2sqok7oqqrhtmmmb5sulkrw2/3m6cyhxo2pw22">kibun widget</a><br></td> 225</tr></table></center> 226<br> 227 </div> 228 229 </body> 230</html>