I started watching japan animation around 2000, mainly from Blockbuster and mostly Studio Ghibli; due to the animation and stories in JRPG's like Final Fantasy, Chrono Trigger, Tales of Series and Silent Hill. Now I enjoy Interactive film games kinda like Life is Strange, Last of Us and Quantic Dream's games.
When peer to peer and torrenting became available the amount of Movies, TV Series and Anime I would watch increased greatly, as well as the amount of games I would download and systems I would mod, but I did not start watching anime regularly until I watched SAO in the beginning of 2016 which caused me to become obsessed with isekai.
Subsequently I started watching seasonal's later that year.
Most of my plan to watch is for my custom lists like Isekai and I have no intention of ever watching most of them.
I hardly drop anything because I know what I'll love, tolerate, and hate, so I choose not to start an anime I know I'll hate and if I do get bored with it, I put it on hold or in drop candidates until I'm in the right mood to watch it or if it turns out I can't even make it through 1-2 episodes then I usually delete it from my list as it's not even worth mentioning, but lately I've been trying to change that.
"People are stupid; given proper motivation, almost anyone will believe almost anything. Because people are stupid, they will believe a lie because they want to believe it's true, or because they are afraid it might be true. People's heads are full of knowledge, facts, and beliefs, and most of it is false, yet they think it all true. People are stupid; they can only rarely tell the difference between a lie and the truth."
These seem to work overall, but it's taking me more than 10 mins, so I give up. I was going to add it to the malfunction script if I made it work quickly
Make sure to disable //.profile .user-profile-about { max-height: 1000px;
const staticSelectors = [
'#statistics',
'#recs',
'#necs',
'#anime_favorites',
'#character_favorites',
'#person_favorites',
'#lastcomment',
'.user-comments',
'.fav-slide-block',
'.favmore',
'.btn-favmore',
'.clearfix'
];
new MutationObserver(() => {
const targetContainer = document.querySelector('.profile-about-user .word-break');
if (!targetContainer) return;
// 1. Handle static elements first
staticSelectors.forEach(selector => {
document.querySelectorAll(selector).forEach(element => {
if (!element.closest('.profile-about-user .word-break')) {
targetContainer.appendChild(element);
applyOverflowStyles(element);
}
});
});
// 2. Capture ALL H5 elements as section headers
const sectionHeaders = document.querySelectorAll('h2, h5');
sectionHeaders.forEach(header => {
// Collect all elements until next header
let nextElement = header.nextElementSibling;
const sectionElements = [header];
while (nextElement && !nextElement.matches('h2, h5')) {
sectionElements.push(nextElement);
nextElement = nextElement.nextElementSibling;
}
// Move entire section if not in container
if (!header.closest('.profile-about-user .word-break')) {
sectionElements.forEach(element => {
targetContainer.appendChild(element);
applyOverflowStyles(element);
});
}
});
// 3. Container overflow control
const containerRight = document.querySelector('.container-right');
if (containerRight) {
containerRight.style.overflowX = 'hidden';
containerRight.style.position = 'relative';
}
}).observe(document.body, { childList: true, subtree: true });
function applyOverflowStyles(element) {
element.style.maxWidth = '100%';
element.style.overflow = 'hidden';
element.style.boxSizing = 'border-box';
}
I want to force it on other viewers, because it's a messed up view, "so a hacked view".
Either talk with me because you really want to, or pls get scared and leave haha
// ==UserScript==
// @name Image Generation using Gemini API (Tampermonkey)
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Generate and display an image from the Gemini API based on a given prompt
// @author You
// @match *://*/*
// @grant GM.xmlHttpRequest
// @grant GM_getValue
// @grant GM_setValue
// ==/UserScript==
(function() {
'use strict';
// The AI prompt for image generation (you can modify this as needed)
const prompt = "Create a 3D rendered image of a pig with wings and a top hat flying over a futuristic scifi city with lots of greenery.";
// Make the API request to Gemini
const apiKey = ''; // API key stored in Tampermonkey
const apiUrl = `https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp-image-generation?key=${apiKey}`;
const requestPayload = {
contents: [{
parts: [{
text: prompt
}]
}],
config: {
responseModalities: ["IMAGE"]
}
};
// Use GM.xmlHttpRequest for making the POST request
GM.xmlHttpRequest({
method: "POST",
url: apiUrl,
responseType: 'json',
headers: {
"Content-Type": "application/json"
},
data: JSON.stringify(requestPayload),
onload: function(response) {
const data = response.response;
console.log(data)
// Check if the API response contains an image
if (data && data.candidates && data.candidates[0].content.parts) {
for (const part of data.candidates[0].content.parts) {
if (part.inlineData) {
const imageData = part.inlineData.data;
const imageUrl = `data:image/png;base64,${imageData}`;
// Create an image element and display it on the page
const imgElement = document.createElement('img');
imgElement.src = imageUrl;
imgElement.style.maxWidth = '100%'; // Optionally style the image
// Append the image to the body or a specific container
document.body.appendChild(imgElement);
console.log("Image generated and displayed successfully.");
}
}
} else {
console.error("Error: No image data found in the response.");
}
},
onerror: function(error) {
console.error("Request failed", error);
}
});
})();
Hmm, I won't watch a 42-minute vid haha.
I've already used Gemini many times before, too. I'm just eager to get the image generation API working in JS.
Did you copy and paste that from somewhere, or did AI make all that?
I don't think that the speed settings are working for now, and I would also add a function to check mouse clicks and auto-exit of navigation view.
I would also make it fetch my MAL post and parse it and auto-populate the buildings based on that, just in case I ever alter any text or links or delete or add stuff. So that I don't have extra work to go through that HTML and update its code.
All Comments (386) Comments
Make sure to disable //.profile .user-profile-about { max-height: 1000px;
ikr
Either talk with me because you really want to, or pls get scared and leave haha
good to know
thanks
I didn't know that you had made a "copy" of my AI script, haha.
Why not just use my AI script, then that does "the same and more"?
Thanks I'll give it a look.
I like the floor a lot
It can, but not through the API, it isn't public in yet
Hmm, I won't watch a 42-minute vid haha.
I've already used Gemini many times before, too. I'm just eager to get the image generation API working in JS.
Did you copy and paste that from somewhere, or did AI make all that?
I don't think that the speed settings are working for now, and I would also add a function to check mouse clicks and auto-exit of navigation view.
I would also make it fetch my MAL post and parse it and auto-populate the buildings based on that, just in case I ever alter any text or links or delete or add stuff. So that I don't have extra work to go through that HTML and update its code.
TweenJS is a really, really old library
Nice job!
It's definitely a nice-looking portfolio. I may use/update the code sometime in the future, haha
If you do, I would appreciate if you can also enable WebDav
Use a WebDAV-to-FTP bridge like **davfs2**, **WebDAV CGI**, or better: install a server that supports both protocols. Fastest option:
**Option 1: Use Apache with mod_dav + mod_dav_fs**
1. Install Apache:
```bash
sudo apt install apache2
```
2. Enable WebDAV modules:
```bash
sudo a2enmod dav
sudo a2enmod dav_fs
```
3. Create WebDAV folder:
```bash
sudo mkdir /var/www/webdav
sudo chown www-data:www-data /var/www/webdav
```
4. Add config to `/etc/apache2/sites-available/webdav.conf`:
```apache
<VirtualHost *:80>
ServerAdmin you@example.com
DocumentRoot /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /etc/apache2/webdav.passwd
Require valid-user
</Directory>
</VirtualHost>
```
5. Create user:
```bash
sudo htpasswd -c /etc/apache2/webdav.passwd youruser
```
6. Enable site:
```bash
sudo a2ensite webdav.conf
sudo systemctl reload apache2
```
**Optional**: symlink your FTP folder to `/var/www/webdav`.
```bash
sudo ln -s /your/ftp/folder/* /var/www/webdav/
```
Now your FTP files can be accessed via WebDAV.