Showing posts with label creation. Show all posts
Showing posts with label creation. Show all posts

Sunday, August 23, 2026

How the virtual temperature blanket works

I wanted this blog post to be a lot longer, but I'm dealing with brain fog from a few sources right now, so I think I will just make this a quick writeup of the tools and flow for the project. I do definitely want to note, as I do on the webpage, that this is my first real JS project, and it's probably better to learn from people who are not me. But at the same time, I've had a hard time finding exactly this type of information so I am posting.

Note: This article uses hover text to provide more information on certain words. To see the hover text, hold your mouse over words in blue for a bit. Unfortunately, this does not work on mobile devices (I would try a better method but there's the brain fog I mentioned earlier). 

1. The actual process

  •  A daily scheduled Github Action runs a Python script to pull yesterday's high temperature and today's forecasted high temperature from the Open-Meteo free weather API
  • Those temperatures are used to update a JSON file containing high temperatures since the start of the project
  • A short time later, a daily scheduled Github Action pushes my changes to my Neocities website (this is explicitly allowed by Neocities).
  • A Javascript file reads and interprets the values from the JSON file, which, along with HTML and CSS, lets you look at the temperature blanket! 

2.  How I achieved it

I started this project by changing my files from being locally hosted to being hosted on Github, and setting up syncing between VSCode, Github, and Neocities. It was a change that had been needed for a long time, since manually updating Neocities makes me extremely discouraged from working on my website. But, that happened quite a while before the actual temperature blanket coding.

My real start was setting up a folder for the project within my website, where I created an HTML shell file and a fake JSON file. I then worked on having Javascript be able to read in and echo the values from the file. Then, I developed my temperature ranges and colors for the blanket and coded them into Javascript. I successfully had a webpage with a bunch of colored bars on it. But, I didn't think it looked enough like a temperature blanket so I stole some CSS code from stack exchange to make all my rectangles have wavy borders instead. I also set up a system where the last strip in the temperature blanket (today's date) has a corresponding screen width to how far through the day you are when the website is viewed. After some more appearance tweaking, I found a real api to get data from and created my python script. Once everything was finalized there, I set up Github Action to run the python script daily. I couldn't be sure whether this would actually work, and it actually broke while I was on vacation, since the updated JSON wasn't triggering the automatic Neocities update (it should update on push, but bot actions don't trigger that, to prevent endless loop situations). So I had to edit that today and I am mostly just hoping it works now. 

Hopefully this quick overview is useful to some people! When I was growing up I used to look at a lot of websites for web artists (example: https://mrdoob.com/) and I had hoped that completing a CS degree* would help me understand how it was done. It did a bit, but I still felt like I was missing a lot of knowledge to get there, and after this project I feel like I am, while still far from anything on that level, quite a bit closer. It's way harder to do something without a roadmap, and I am hoping this can help prevent someone from facing as high of roadblocks as I faced. 

 *It isn't a true CS degree, but 75% of my classes were CS related. Life is complicated 

Friday, January 9, 2026

One Line A Day: The Only Type Of Journal I've Been Able To Keep


 Last year, maybe because of my interest in content creators who don't have cell phones, my YouTube recommendations seemed to be trying to give me a new hobby: journaling. It isn't alone: there are articles everywhere about its various benefits, and, regardless of how true they are, I definitely think it can be useful to write down your thoughts sometimes. But I'm also lazy.

Well, not always... (click arrow to expand sidenotes)

Last december (12/24) I challenged myself to complete 750 words of writing (on the aptly named 750words.com) every day. I had a lot of problems in my life at the time, and I think it helped me get my mind around them. But it also really, really sucked sometimes. That's a lot of writing to try to fit in, especially with the amount of family obligations in December. I did it though! It's the first month-long challenge I ever completed (and not for lack of trying!) I was (and am) so proud of myself for doing it that I guess I'm devoting a pragraph to it now. The habit had a lot of benefits and if I had infinite time and energy I'd have kept it up. But I don't so it remains in the past for now.

 So one day I had an idea: Why not force myself to write only one line per day? I couldn't get into an obsession/burnout cycle because there wasn't anything to obsess over, and I could hopefully manage a daily writing task if it was that small. I started on July 21, 2025; I've found starting projects like this on a random day makes it easier to stick to than, say, new years resolutions. Each page in my little journal has 24 lines on the front side, and I reserve the back of each page as a small junk journaling setup to practice some creativity. To avoid violating my own privacy, here's a blank page of the setup:

 I know one line a day isn't really enough for emotional processing or anything, but it helps me track my mood and remember what happened in the past (I currently have memory issues that can really upset me sometimes). Especially the junk journal setups are fun to look back through and see what I felt like saving that month.
 
I'll be honest though, I don't write in the journal every day, or even mot days. Sometimes I skip weeks at a time! (I give myself permission to go back and fill in days though, because there's no reason to be strict with myself). But, I journal a hell of a lot more (occasionally) than I did before I started the setup (never). I haven't seen other people doing this either even though they probably are, so I wanted to share. 

Most Popular