From 91b4f648ad729ff3430cc22f386cf71ddde1e182 Mon Sep 17 00:00:00 2001 From: Ruben Date: Mon, 14 Jul 2025 18:48:05 -0500 Subject: [PATCH] add nsfw toggle to site, some cleanup --- _includes/layouts/admins/list.njk | 2 +- _includes/layouts/home/intro.njk | 20 ++-- _includes/layouts/navbar.njk | 2 - _includes/layouts/nsfw-toggle.njk | 13 +++ _includes/layouts/sneexy/about.njk | 1 - _includes/layouts/sneexy/intro.njk | 6 ++ _includes/layouts/sneexy/nsfw-info.njk | 50 ++++------ _includes/styles/base.css | 131 +++++++++++++++++++++++-- _includes/styles/windows.css | 2 +- sneexy/sneexy.md | 2 + 10 files changed, 178 insertions(+), 51 deletions(-) create mode 100644 _includes/layouts/nsfw-toggle.njk diff --git a/_includes/layouts/admins/list.njk b/_includes/layouts/admins/list.njk index 3b6a3a0..808c604 100644 --- a/_includes/layouts/admins/list.njk +++ b/_includes/layouts/admins/list.njk @@ -1,6 +1,6 @@

Sneexy (Ruben)

-

Current webmaster; Hardware host (slosh!~); Admin.

+

Current webmaster; Hardware host (slosh!~); Admin.

Page

diff --git a/_includes/layouts/home/intro.njk b/_includes/layouts/home/intro.njk index ef16fc2..6854966 100644 --- a/_includes/layouts/home/intro.njk +++ b/_includes/layouts/home/intro.njk @@ -37,10 +37,10 @@

As answered by ~sneexy, the sysadmin of Synth.download.

-

Q: How do I join this tilde/pubnix/these services?

+

Q: How do I join this tilde/pubnix/these services?


NOTICE: Registrations currently aren't open for Tilde/Pubnix purposes. We are still setting things up in regards to that!

-

A: I pretty much just need to know you/the one reading this enough. I'll choose whether or not you'll be let in, trying to "Speedrun" getting close to me will not get you in. Massive bonus points if we're already friends/established mutuals!

+

A: I pretty much just need to know you/the one reading this enough. I'll choose whether or not you'll be let in, trying to "Speedrun" getting close to me will not get you in. Massive bonus points if we're already friends/established mutuals!

If you'd like to try asking, do so! Contact synth@synth.download* with the following:

  • Making it clear who you are (links to any profiles or websites)
  • @@ -53,25 +53,25 @@

    Note: You don't have to register for the Synth.download tilde/pubnix if you're just looking to register for one of our services (like our Sharkey or Iceshrimp instance). Feel free to just ask directly if that's the case! The same restrictions as if you were going to register for the tilde/pubnix still apply though.

-

Q: I sent a registration thing and it's been a while, what's up?

+

Q: I sent a registration thing and it's been a while, what's up?


-

A: Either A: You've been denied, and I won't explain why due to having a low social battery when it comes to explaining things or B: You have been accepted/considered but I do registration and everything manually (Yes, automation would be nice, but also seems overkill for a private thing that won't get much outside traction), so it may take a while for me to finish up the process for you to be able to get in.

+

A: Either A: You've been denied, and I won't explain why due to having a low social battery when it comes to explaining things or B: You have been accepted/considered but I do registration and everything manually (Yes, automation would be nice, but also seems overkill for a private thing that won't get much outside traction), so it may take a while for me to finish up the process for you to be able to get in.

In either case, try poking at me directly and I may respond depending on the end case.

-

Q: Is information on this page up to date?

+

Q: Is information on this page up to date?


-

A: Uh... Probably? It should be, although yes, it should be noted that everything on this page is static. I manually update the information listed here for everything. I just haven't bothered setting up any sort of dynamic stuff.

+

A: Uh... Probably? It should be, although yes, it should be noted that everything on this page is static. I manually update the information listed here for everything. I just haven't bothered setting up any sort of dynamic stuff.

-

Q: Why something so fancy for something private?

+

Q: Why something so fancy for something private?


-

A: Why not? I'm having fun making this site. Might as well put some extra information on here, even if it'll probably be private and small forever. (Although - Things can always change! Who knows if I decide to expand publicly or something.)

+

A: Why not? I'm having fun making this site. Might as well put some extra information on here, even if it'll probably be private and small forever. (Although - Things can always change! Who knows if I decide to expand publicly or something.)

-

Q: Merp!

+

Q: Merp!


-

A: Beep!

+

A: Beep!

diff --git a/_includes/layouts/navbar.njk b/_includes/layouts/navbar.njk index 7fb2921..ac33937 100644 --- a/_includes/layouts/navbar.njk +++ b/_includes/layouts/navbar.njk @@ -38,7 +38,6 @@

Theme

Only works with JavaScript.

-
@@ -55,7 +54,6 @@

  • Font

    -
    diff --git a/_includes/layouts/nsfw-toggle.njk b/_includes/layouts/nsfw-toggle.njk new file mode 100644 index 0000000..270a7df --- /dev/null +++ b/_includes/layouts/nsfw-toggle.njk @@ -0,0 +1,13 @@ + +
    +
    + +
    +

    This page features optional NSFW content/mentions of related topics. This is disabled by default, and is safe to view this page with this option disabled. If you're not a fan of that stuff or a minor, leave this option disabled.

    +
    +
    + +
    +

    Hides the NSFW content itself under a blur effect, until hovered over/tapped on. Yes, at some point, I'll improve the styling over this.

    +
    +
    \ No newline at end of file diff --git a/_includes/layouts/sneexy/about.njk b/_includes/layouts/sneexy/about.njk index 1a08c8a..3347588 100644 --- a/_includes/layouts/sneexy/about.njk +++ b/_includes/layouts/sneexy/about.njk @@ -26,7 +26,6 @@

    For the record, and this is most likely something worth pointing out: My mental health isn't great and I tend to have intense mood swings, and can sometimes randomly break down. Please excuse me in these moments, Thanks.

    I'm also usually exhausted. Both mentally and physically, if that wasn't clear.

    Sometimes, I do make things, but honestly don't expect much from me. I'll make some type of gallery page soon for the things I do make and the things others do for me, I promise.

    -
    {% include "layouts/sneexy/nsfw-info.njk" %} \ No newline at end of file diff --git a/_includes/layouts/sneexy/intro.njk b/_includes/layouts/sneexy/intro.njk index f7dc3fc..f130e4d 100644 --- a/_includes/layouts/sneexy/intro.njk +++ b/_includes/layouts/sneexy/intro.njk @@ -14,7 +14,13 @@
    +
    +

    Hey, you've enabled viewing NSFW stuff for my page. That's cool. Just note a few things, now that you've enabled that, you'll see my horny side. There are now mentions of (more extreme cases of) Fat/related, inflation/related and vore on this page, and some other related actions in the form of text, such as belching. If you do not wish to continue, just disable NSFW content for this page and you'll be good. By continuing to read beyond this point, you consent.

    +

    ...although for all enabling it does, mainly just adds a new section to the about me section and adds a few silly strings of extra text here and there.

    +

    If you're going to complain about me being "weird" or whatever, you have read all of the warnings and continued anyways instead of backing out. I'll make fun of you.

    +

    +

    Stupidily gay fatfuck edition,


    Theme song by ChalkLlate!

    3D Low poly model of my synth character. He's a pretty chubby synth with a belly and chest made entirely out of goo, his frame is mostly made with shades of grey with lime/pastel green accents. Hey, I'm Ruben!

    diff --git a/_includes/layouts/sneexy/nsfw-info.njk b/_includes/layouts/sneexy/nsfw-info.njk index b3c133c..8f9f088 100644 --- a/_includes/layouts/sneexy/nsfw-info.njk +++ b/_includes/layouts/sneexy/nsfw-info.njk @@ -1,33 +1,25 @@ -
    - - 🔞 Other NSFW/kinky/fetish-related information about myself, if you're curious. - - -
    -

    Content-warning on Content-warning: This section here is obviously going to mention the things I like that are in the NSFW field of things, which also means that if you're a minor, stop reading this and close this section, thanks. You can easily see them from here that I literally just directly mention them, but repeating them here before you go far too down (Because I care!): Fat, Inflation and Vore are mentioned topics here. If you don't want to read anything about those, you should stop reading this section and close it.

    -

    In the other case that it wasn't obvious, I like big things, as a whole, and some other things sprinkled in. But specifically, I'm talking about:

    +
    +
    +

    ...In the other case that it wasn't obvious, I like big things, as a whole, with some other things sprinkled in. But specifically, I'm into:

    +
      +
    • Fat
      • -
      • Fat
      • +
      • Talking about big bellies, love handles, fat thighs, moobs... and generally large, soft creatures as well.
      • +
      +
    • Inflation/Expansion
    • +
        +
      • Hooking me up to a charger and letting me overcharge way over my limit... A good few pumps of air or maybe a few... many, bottles of sodas...
      • +
      • Also counting in things such as force-feeding. Yes, you may feed me for as much and long as possible, even if I somehow ever manage to reach a limit and plead to stop.
      • +
      +
    • Vore
    • +
        +
      • Personally: I'm a safe/hard, prey/pred switch. If you want, I'll eat you and let you rest inside of me. Don't worry, I won't harm you, I'll make sure you're comfortable and safe in my goo. However, if you also want or if I think you deserved it, I won't hesitate to heat it up in there, slowly absorb you and churn you down into goo-data~ Not without consent, though.
        • -
        • Talking about big bellies, love handles, fat thighs, moobs... and generally large, soft creatures as well.
        • -
        -
      • Inflation/Expansion
      • -
          -
        • A good few pumps of air or maybe a few... many, bottles of sodas...
        • -
        • Also counting in things such as force-feeding.
        • -
        -
      • Vore
      • -
          -
        • There's too many teasing oppertunities with this one, okay? Besides, being treated as a "small goo-snack" is just...
        • -
        • Personally: I'm a safe/hard, prey/pred switch. If you want, I'll eat you and let you rest inside of me. Don't worry, I won't harm you, I'll make sure you're comfortable and safe in my goo. However, if you also want or if I think you deserved it, I won't hesitate to heat it up in there, slowly absorb you and churn you down into goo-data~ Not without consent, though.
        • -
            -
          • Alternatively, if you know how to poke at my own buttons, you could easily get me prey-brained and end up eating and digesting me instead... Trust me, my goo is basically like jelly, and although my data isn't really compatible with any other creature, it just makes me more fattening for you~
          • -
          +
        • Alternatively, if you know how to poke at my own buttons, you could easily get me prey-brained and end up eating and digesting me instead... I'm usually quite submissive if you end up getting me in your maw, and also a tasty, fattening snack of data...
      -

      ...and a variety of other things. I'm mostly flexible with my kinks/fetishes, and I fuck around with a good amount of things. And yes, the general "NSFW" stuff like sex or whatever is cool by me.

      -

      In general, I do my best to keep my open/public spaces and interactions clean, and avoid talking or going deep into these types of subjects. If I ever do, I do so with a content-warning whenever possible. So basically, only Fedi.

      -

      I do have NSFW focused spaces/accounts for myself, and if you know where to find them, well, then you know where. Feel free to tease or roleplay with me if you'd like on those accounts, although only if we know each other a decent amount which in this case, doing it in my direct messages are also fine. Otherwise I'll just ignore or block you, especially if you keep trying to make things horny when I Do Not Know You.

      -

      Also! If you're going to complain about me being weird or something - You read this. You chose to visit my page, saw basically every obvious "warning", then read the content warning to this section, decided open it, read the other content warning, and continued reading instead of backing out when you should have. I'll make fun of you.

      -
    -
    \ No newline at end of file + +

    ...and a variety of other things. I'm mostly flexible with my kinks/fetishes, and I fuck around with a good amount of things. And yes, the general "NSFW" stuff like sex or whatever is cool by me.

    +

    In general, I do my best to keep my open/public spaces and interactions clean, and avoid talking or going deep into these types of subjects. If I ever do on those spaces, I do so with a content-warning whenever possible. So basically, only Fedi.

    +

    I do have NSFW focused spaces/accounts for myself. Feel free to tease or be lewd or roleplay with me if you'd like on those accounts, although only if we know each other a decent amount which in this case, doing it in my direct messages are also fine. Otherwise I'll just ignore or block you, especially if you keep trying to make things horny when I Do Not Know You.

    +
    \ No newline at end of file diff --git a/_includes/styles/base.css b/_includes/styles/base.css index c4dd5de..6be0fa2 100644 --- a/_includes/styles/base.css +++ b/_includes/styles/base.css @@ -273,14 +273,14 @@ a { text-decoration-color: color-mix(in srgb, var(--accent) 60%, transparent); text-decoration-thickness: 0.1em; transition: 0.2s; -} -a:hover { - color: var(--link); - text-decoration-color: var(--accent); - text-decoration-skip-ink: none; - text-decoration-thickness: .3em; - transition: 0.2s; + &:hover { + color: var(--link); + text-decoration-color: var(--accent); + text-decoration-skip-ink: none; + text-decoration-thickness: .3em; + transition: 0.2s; + } } /* smol text */ @@ -295,6 +295,22 @@ li { padding-bottom: .5rem; } +/* text with "title", little hover-over info tibblets */ +._info { + cursor: help; + text-decoration-color: color-mix(in srgb, var(--foreground) 40%, transparent); + text-decoration-line: underline; + text-decoration-style: dashed; + text-decoration-thickness: 0.1em; + transition: 0.2s; + + &:hover { + text-decoration-color: color-mix(in srgb, var(--foreground) 80%, transparent); + text-decoration-skip-ink: none; + transition: 0.2s; + } +} + /* the tabler icons svgs styling */ .tabler-icon, .icon .icon-tabler { @@ -517,6 +533,107 @@ summary { } } +/* ------------------ +- nsfw toggle group - +------------------ */ + +.nsfw-toggle-holder { + background-color: color-mix(in srgb, var(--background) 95%, white); + border-radius: 1rem; + border: .2rem solid var(--border); + color: var(--foreground); + padding: .5rem; + position: fixed; + max-width: 30rem; + margin-left: .4rem; + z-index: 30; + right: .4rem; + top: 3rem; + transition: 0.2s; + + /* inital "shrunken" state */ + opacity: .5; + scale: .75; + transform-origin: top right; + + + /* hide captions when unhovered */ + .caption { + display: none; + } + + &:hover { + transition: 0.2s; + + /* hovered "full" state */ + opacity: 1; + scale: 1; + + .caption { + opacity: .9; + display: unset; + } + } + + .nsfw-toggle, .spoil-nsfw-toggle { + display: block; + } + + /* hide the spoil option if nsfw itself is disabled */ + .spoil-nsfw-toggle { + display: none; + margin-top: 1rem; + } + + &:has(input[type="checkbox"]#view-nsfw-content:checked) .spoil-nsfw-toggle { + display: inherit !important; + } + + /* shrink it even more if on a small display */ + @media screen and (max-width: 580px) { + scale: .5; + } +} + +/* _is-nsfw class for elements that are "nsfw" - will be hidden and spoiled by default */ +._is-nsfw { + display: none; +} + +/* inverse to remove elements if they aren't nsfw while the option is toggled */ +._is-nsfw-inverse { + display: inherit; +} + +/* show if enabled */ +html:has(input[type="checkbox"]#view-nsfw-content:checked) { + ._is-nsfw { + display: inherit; + } + + ._is-nsfw-inverse { + display: none; + } +} + +/* blue/spoiler if enabled */ +html:has(input[type="checkbox"]#spoil-nsfw-content:checked) { + ._is-nsfw { + filter: blur(.4rem) contrast(200%); + transition: 0.2s; + + &:hover { + filter: unset !important; + transition: 0.2s; + } + } + + /* _always-show to ignore the "spoiler" option */ + ._always-show { + filter: unset !important; + } +} + /* --------------- - alt text popup - --------------- */ diff --git a/_includes/styles/windows.css b/_includes/styles/windows.css index e604b3a..0d8cdae 100644 --- a/_includes/styles/windows.css +++ b/_includes/styles/windows.css @@ -109,7 +109,7 @@ } /* window when its the first one on the page */ -.window:first-child { +.window:first-of-type { margin-top: 5rem; animation: .3s ease-out .2s 1 window-appear; diff --git a/sneexy/sneexy.md b/sneexy/sneexy.md index a11517a..2cc44bf 100644 --- a/sneexy/sneexy.md +++ b/sneexy/sneexy.md @@ -4,6 +4,8 @@ layout: "layouts/sneexy/base.njk" permalink: "/~sneexy/" --- +{% include "layouts/nsfw-toggle.njk" %} + {% include "layouts/sneexy/intro.njk" %} {% include "layouts/sneexy/about.njk" %}