From 0f91d13fa8bf089c7765c77b2ca3cdcbe5e11d99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=83=AA=E3=82=AD=E8=90=8C?= Date: Tue, 15 Jul 2025 00:22:50 +0200 Subject: [PATCH] furry v2, along with some other changes #philosophy tag got renamed to #shower to reflect what the category was called this may result in changes in your feed --- content/about/v2.tree | 2 +- content/furry.dj | 202 ++++++++++++++++++ .../{philosophy/furry.tree => furry/v1.tree} | 0 content/index.dj | 2 +- content/music/blue-calx.tree | 2 +- content/philosophy/fear-of-the-unknown.tree | 2 +- content/treehouse.dj | 25 +++ content/treehouse/new.tree | 39 ++-- src/generate/doc.rs | 4 + src/generate/tree.rs | 8 +- treehouse.toml | 5 +- 11 files changed, 271 insertions(+), 20 deletions(-) create mode 100644 content/furry.dj rename content/{philosophy/furry.tree => furry/v1.tree} (100%) create mode 100644 content/treehouse.dj diff --git a/content/about/v2.tree b/content/about/v2.tree index f883bd5..f943e3b 100644 --- a/content/about/v2.tree +++ b/content/about/v2.tree @@ -45,7 +45,7 @@ visibility = "Private" "01J09E55G0WS63QCFBPP12EMRM", "01J09E55G0H58Q8V8NV23QSQGC", ] -+ I'm a _he/him_-type cat [furry][page:philosophy/furry] doing various things with computers. ++ I'm a _he/him_-type cat [furry][page:furry] doing various things with computers. % id = "01J7S89Y467VSMGW5DCE1P2D75" - I don't have enough drawing skill to pull off a full body fursona just yet, but this is me! diff --git a/content/furry.dj b/content/furry.dj new file mode 100644 index 0000000..ccc76b3 --- /dev/null +++ b/content/furry.dj @@ -0,0 +1,202 @@ +title = "furry! —w—" + ++++ + +I love fur! +Did you know it's really pleasant to the touch? + +If I could, I would actually hug out all the cats in the world. +Too bad there's so many it's kind of impossible, and also allergic complications. + +But, fur. +It's nice. +I like it a lot. + + +## This dance + +Realising my love of fur has been a huge source of internal conflicts for a long time. +When I first learned about the idea of _furries_, I was scared. + +I was going through my middle school days at the time, and I wanted to fit in as much as I could. +To not lose friends. +To not stand out too much. + +_You know what happens to people who stand out, don't you? +So keep your mouth shut, and fit in..._ +is what I thought. + +I was avidly scared of anime at the time. +It felt like a weird special interest thing, and from all I've heard of it, there was a _lot_ of lewd stuff. +I didn't want anything to do with that, so I started hating on anime and otaku culture. +Even though I found anime girls kinda cute. + +Just to fit in. + +The same thing happened with furries. +I got exposed to some lewd material while playing Geometry Dash levels, and it was enough to disgust me for good. +So that's how I also started hating on furries. + +Even though a few days later I changed my mind, and found the concept really cute. + +--- + +Months passed, and the beliefs that anime and furries were bad became engraved into my personality. + +How could I change now? +My friends would hate me. +They'd feel betrayed. +So I kept my hate shields up. + +But those fears started creeping up on me. +First, when I changed my friends group to one which had an otaku in it. +The guy was really nice. +He became my best friend by the end of middle school. + +Leaving behind that old group of friends meant I had a chance to redeem myself and start watching anime. +Our school trip was coming up, and my friend proposed that we watch [「君の名は。」]{.nowrap} (_Your Name_). + +I agreed, and a few weeks later I found myself in a room with a couple otakus, watching my first anime. +I was toes deep. +The water was warm. +I had friends by my side. +The ice around my heart melted a bit. + +But not so much for furries. + +--- + +Middle school ended, I parted ways with my friends group. +They went to a different high school than I did. +The time we had spent was some of the best time in my life, but it was time to say goodbye. + +Say hi to high school, where largely nothing had changed, and I remained a furry in disguise. +It came and went, and soon enough I was 18 years old; old enough to look for a job. + +Before I got hired though, I discovered A Hat in Time. +A game that taught me that it's okay to be childish and have a little fun, melting the ice around my heart a bit more in the process. + +Fast forward a bit, about a year into the job---I decided to play that DELTARUNE game everyone's been so hyped up about. +And there, a cute lil' character was waiting for me patiently. + +His name was Ralsei. + +I fuckin'... I dunno, man. +This guy. +This fuckin' guy. +This cute lil' floofer. +What can I say? + +A shy lil' goat boy.\ +Scared of the world.\ +With an iceberg of loneliness surrounding his heart. + +Ralsei's character resonated with mine. +He was scared of being himself, and never had any friends. +I was scared of being myself, and never had True friends. + +Then, by complete accident, I hammered the final nail into the coffin. +On the day the idea for this website sprouted into my mind, I found myself reading [a blog post from soatok](https://soatok.blog/2020/04/23/never-underestimate-the-furry-fandom/) about the furry fandom, and I was like... _of course._\ +_Of course._\ +_What the hell was I thinking._ + +Of course furries are fun.\ +Of course you should come out of your little hiding spot, tell everyone you're a furry, own it, and be proud of it.\ +What the hell have you been running away from?\ +Have some fun in your life for once, you cowardly little boy. + +My heart started screaming out for help. +And the power of fluffy boys shined within it. + +--- + +I don't remember what my coming out as a furry looked like exactly. + +All I remember is that I had an idea in my mind, for how to do it as subtly and gently as possible, to not scare myself away. +I drew an upside down pixel art hatted Ralsei. +He kinda didn't even resemble the real thing. +You had to look close, turn your head upside down... +but it was undeniably him. + +I then started doing pixel art more regularly, to level up my drawing skills. +{-Because of course I was, and in fact, still _am_, too socially inept to ask an artist for a commission-} + +I drew a couple more Ralseis, [including this fucking image LMAO](https://liquidev.net/syf/art/20230712_ralsei_sleeping.webp), and then finally, a *proper* hatless Ralsei face, right side up. +I set it as my profile picture, and it was out. + +_I'm a furry, y'all!_ OwO + + +## is like a weapon + +It would take me quite some time since then to come up with a fursona I could call my own, but at some point I settled for a [ragdoll](https://en.wikipedia.org/wiki/Ragdoll). +I love cats, I love fur, what's more to want than to be one of the floofiest cats in the world? + +Curious little observation, but it's actually kind of uncommon to see cat furries in the western world. +Makes my sona all the more unique! + +Other than my love of cats, this choice _may_ have been influenced by my liking of Japanese-style furries (ケモノ---_kemono_)---where cat OCs are a lot more common. +I just find their more human-like faces a lot cuter, so naturally I'd want my fursona to have one. + +--- + +You could also be wondering why the heck is my sona so... woman-like. +If I'm a _he/him_-type, why does it look like a such a _she/her_? + +Thing is, I really don't like gender stereotypes. +Why is a guy that looks a bit womanly perceived as a weirdo? +He's doing no harm, so why are you giving him weird stares on the street? + +Why can't I wear clothes that show off all the nice curves on my body, too? +Like overknee (aka programming) socks. +They're pretty cute if you match them up well with the rest of your outfit. + +So riki is a pink, fluffy femboy. +Because fuck those stereotypes. + + +## of self-defence + +There's actually another reason I like to wear a fursona online. + +I've never really liked my body much. +As a child, my face looked... weirdly square, and Mom always had my hair cut real short, and that was enough to really dislike how I look. + +I was also born with atopic dermatisis, which gave me horrible rashes and skin inflammations for the better part of my life. +Thankfully with some of the experimental meds I've been taking that's largely gone, but my skin still tends to be quite delicate. +And itchy. + +Also, remember how I said I really like cats?\ +But what if I told you... my allergies don't let me pet them much? + +Cats that wander outside (like those at my parents' house) like to roll in dirt, and you can imagine how well that meshes with my itchy and delicate skin. +So I hardly ever get the chance to pet a cat (once in a blue moon when visiting my parents), and when I _do_, I have to be really careful not to get an allergic reaction. +Not fun. + +So my fursona acts as a form of escape from that harsh reality. +On the internet, there is no atopic dermatisis or allergies to worry about, after all. + +--- + +Also can I just say, human customisation options are so lame??? + +The hell do you mean I only get to pick my skin colour, hair colour, and eye colour, and that's it? +Where's the "fur" option with a full 3D coat colour painting tool? +And where do I switch those lame-ass human ears to big cute spiky ears, and also where's the tail option. + +Please let me have cat features. +I look cuter that way. + + +## against the present, present tense + +So that pretty much sums it up. + +If you only skimmed this post, here's an AI summary for you: + +> Something something cute, something something pink fluffy ragdoll femboy, something something please give many pets and hug very much. + +_\*purrs smugly\*_ + +Have a very fluffy day! OwO + diff --git a/content/philosophy/furry.tree b/content/furry/v1.tree similarity index 100% rename from content/philosophy/furry.tree rename to content/furry/v1.tree diff --git a/content/index.dj b/content/index.dj index 2fdb873..0c8120f 100644 --- a/content/index.dj +++ b/content/index.dj @@ -5,7 +5,7 @@ include_feed = { name = "new", title = "Blog" } My name's *riki moe*, or *リキ萌*! -I'm a _he/him_-type cat [furry][page:philosophy/furry] doing various things with computers. +I'm a _he/him_-type cat [furry][page:furry] doing various things with computers. I work on game optimization tools at [[CD PROJEKT RED](https://cdprojektred.com) :rarog:]{.nowrap} but that's just the tip of the iceberg! After hours, I program [websites](/), [compilers][def:stitchkit/repo], [audio][def:dawd3/repo], and other fun things. diff --git a/content/music/blue-calx.tree b/content/music/blue-calx.tree index 4ffec5f..d715550 100644 --- a/content/music/blue-calx.tree +++ b/content/music/blue-calx.tree @@ -4,7 +4,7 @@ - overcoming [fear of the unknown][page:philosophy/fear-of-the-unknown], episode 1. % id = "01JCY18RY6PSVMHVQB3SGDK820" - - overthinking my [furry][page:philosophy/furry] self again. + - overthinking my [furry][page:furry] self again. my heart is pounding. % id = "01JCY18RY66AG2JQCBQT3GYACX" diff --git a/content/philosophy/fear-of-the-unknown.tree b/content/philosophy/fear-of-the-unknown.tree index 5469179..e2512da 100644 --- a/content/philosophy/fear-of-the-unknown.tree +++ b/content/philosophy/fear-of-the-unknown.tree @@ -17,7 +17,7 @@ % id = "01JCGVBXW4MBXMABNA2165JQAB" - this is pretty scary when you think about it. -do you mean I'll never be comfortable [being a furry][page:philosophy/furry]? +do you mean I'll never be comfortable [being a furry][page:furry]? % id = "01JCGVBXW4GV5K0Z0JN6X285CN" - well yeah, basically yeah. diff --git a/content/treehouse.dj b/content/treehouse.dj new file mode 100644 index 0000000..f8251e8 --- /dev/null +++ b/content/treehouse.dj @@ -0,0 +1,25 @@ +title = "The Construct" + ++++ + +You managed to click on the tree. +Hooray! :smile: + + +## Credits + +*riki's house* is brought to you by: + +- [riki][page:index]! That's me! +- The piece of software called [treehouse][def:treehouse/repo], which powers this website. + +Special thanks to all the friends who supported me over the course of its creation. + +- [Vixenka][def:person/vixenka]---my girlfriend! +- areox +- [ezioleq][def:person/ezioleq] +- [firstbober][def:person/firstbober] +- [olekolek1000 (aka oo8)][def:person/olekolek1000] + +And special thanks to you---dear reader! + diff --git a/content/treehouse/new.tree b/content/treehouse/new.tree index 5232f89..14343c1 100644 --- a/content/treehouse/new.tree +++ b/content/treehouse/new.tree @@ -26,6 +26,17 @@ if you've been wondering what I've been up to, you've come to the right place. if you want to read any of the posts, follow the links. it's like that by design. +% tags = ["meow", "shower"] + id = "01K05F3E3DN1PY9ZWN98ZE5HVV" +- ### [furry! ---w--- (version 2)][page:furry.dj] + + % id = "01K05F3E3DC8WWGKFE8CQ616X1" + - I gave this page the treatment it deserved. (which is: lots and lots of love :heart:) + + % id = "01K05F3E3DD075BBF0QSF5HVXW" + - With the rework of the treehouse to a more document-oriented format, it felt appropriate to narrate my story in a more novel-like way. + I sincerely hope you enjoy. + % tags = ["design", "treehouse"] id = "01K02XZTW3VYKX0Q5NZ17NRVTF" - ### [Requiem for a Fractal Forest][page:requiem.dj] @@ -103,7 +114,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JHGYTZN1NDXBSG4K5HJ8SRAM" - exploring the idea of aggregating pages via tags, rather than manually curating and structuring them out. -% tags = ["meow", "philosophy"] +% tags = ["meow", "shower"] id = "01JGXQ5E8DHAEYFTHG0RB86VNE" - ### [nickname change!][page:philosophy/riki] @@ -131,14 +142,14 @@ if you've been wondering what I've been up to, you've come to the right place. - now that the holidays are over, and I'm out of block game steam, I'll need to move onto something else. who knows what that might be? -% tags = ["design", "philosophy"] +% tags = ["design", "shower"] id = "01JG6Y6JNRQA4SSK3TEZ0RRTEB" - ### [design for the free soul][page:design/for-the-free-soul] % id = "01JG6Y6JNSYD5C8K4EWETYZX9K" - a little note on how constrains and guard rails can make you feel more "_claustrophobic._" -% tags = ["philosophy"] +% tags = ["shower"] id = "01JG55SF4FRRF9RDW9KMYHAECF" - ### [my weird stim: writing with light streaks][page:philosophy/light-streaks] @@ -176,7 +187,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JE75N3B0AER5A3TR2Q5W1WWR" - designers, please stop shoving touch panels into everything. -% tags = ["programming", "philosophy"] +% tags = ["programming", "shower"] id = "01JDZKAP3KT4AD36F6HPJTEM4Z" - ### [Advent of Code feels][page:programming/blog/aoc] @@ -194,7 +205,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JDJJSEWA7K5T3Z0Y6NQ8RBGX" - this is an exploration of how I built my abstraction, how it works, and what I learned from it. -% tags = ["philosophy"] +% tags = ["shower"] id = "01JDJ0RH4DJCNS7TPCRZHRPSRF" - ### [on responsibility & conformity][page:philosophy/responsibility] @@ -215,9 +226,9 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JCY18RY67XMT8Z0YHHZVA1TS" - not really related to the post, but just sayin'. -% tags = ["philosophy"] +% tags = ["shower"] id = "01JCGVBXW42S8G91SGAKYCQZE1" -- ### [furry! ---w---][page:philosophy/furry] +- ### [furry! ---w---][page:furry/v1] % id = "01JDTBGSJ7KB9GYWQZ8G9D97NY" - I'm an adorable little cat boy. purrow! _snuggle snuggle_ @@ -225,7 +236,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JDTBGSJ7RVYR0VD693FN10QH" - a lesson in Shock Therapy & Getting Over It {-with Bennett Foddy-} -% tags = ["philosophy"] +% tags = ["shower"] id = "01JCGVBXW39D0GJTZY53A25TXT" - ### [fear of the unknown][page:philosophy/fear-of-the-unknown] @@ -239,7 +250,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01JCGAM553N0A613MFSWX5XZFK" - a clever trick with C strings: did you know you can match a prefix just by chaining indexing with `&&`? -% tags = ["philosophy"] +% tags = ["shower"] id = "01JBWHXTMKYRW5XXDJG9VQNF5E" - ### [on nicknames][page:philosophy/nicknames] @@ -250,7 +261,7 @@ if you've been wondering what I've been up to, you've come to the right place. - I know I don't. so here's a little shower thought regarding _why_ that is. -% tags = ["philosophy"] +% tags = ["shower"] id = "01JBAK3T1ZSSTHRN6TTSXXBAKK" - ### ["I build things"][page:philosophy/i-build-things] @@ -325,7 +336,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01J293BFEBYSW4K7YHVN42J3WP" - so I decided to collect my thoughts into a nice little page I can link easily. -% tags = ["philosophy"] +% tags = ["shower"] id = "01J1Q8SBGFYKDATVF85XYWMSV2" - ### [in wisdom you become old][page:philosophy/in-wisdom-you-become-old] @@ -362,7 +373,7 @@ if you've been wondering what I've been up to, you've come to the right place. and that made me think, _why_ is that the case? % id = "01HV1DGFHZ65GJVQRSREKR67J9" - tags = ["programming", "philosophy"] + tags = ["programming", "shower"] - ### [systems are just a bunch of code][page:programming/blog/systems] % id = "01HV1DGFHZFFZSQNCVWBTJ1VHM" @@ -388,7 +399,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01HRG3VN095BNHERHWVX1TKS9K" - I really like Lua, did you know that? but I get kind of tired of explaining why a thousand times to people who don't know the language, so here's a page with my thoughts! -% tags = ["philosophy"] +% tags = ["shower"] id = "01HREVZNAH3PMMN29C6HNFQ7P9" - ### [just shut up sometimes][page:philosophy/shut-up] @@ -424,7 +435,7 @@ if you've been wondering what I've been up to, you've come to the right place. % id = "01HQ6G30PT1D729Z29NYVDCFDB" - this post explores basically just that. -% tags = ["philosophy"] +% tags = ["shower"] id = "01HFYZKREV93QY3K7KNNFSW90H" - ### [hedonic treadmill][page:philosophy/hedonic-treadmill] diff --git a/src/generate/doc.rs b/src/generate/doc.rs index eda596f..67cad92 100644 --- a/src/generate/doc.rs +++ b/src/generate/doc.rs @@ -108,6 +108,10 @@ pub struct DocDir { impl DocDir { #[instrument("DocDir::content", skip(self))] pub fn content(&self, path: &VPath) -> Option { + if !matches!(path.extension(), None | Some("dj")) { + return None; + } + if let Some(file_id) = self .sources .treehouse diff --git a/src/generate/tree.rs b/src/generate/tree.rs index 9ecd14c..dd1314e 100644 --- a/src/generate/tree.rs +++ b/src/generate/tree.rs @@ -159,10 +159,16 @@ impl TreehouseDir { #[instrument("TreehouseDir::content", skip(self))] fn content(&self, path: &VPath) -> Option { + let path = if path.extension() == Some("tree") { + path.with_extension("") + } else { + path.to_owned() + }; + let path = if path.is_root() { VPath::new_const("index") } else { - path + &path }; self.sources diff --git a/treehouse.toml b/treehouse.toml index 8881c23..516bdc5 100644 --- a/treehouse.toml +++ b/treehouse.toml @@ -63,7 +63,7 @@ tags = [ "design", "music", "games", - "philosophy", + "shower", # Programming fields "graphics", @@ -111,6 +111,9 @@ tags = [ "programming/technologies/unreal-engine/fixes" = "programming/unreal-engine/fixes" "programming/technologies/unreal-engine/generated-body" = "programming/unreal-engine/generated-body" +# 2025-07-15 furry v2 +"philosophy/furry" = "furry" + [emoji] [pics]