June 18, 2025
A Raycast extension that converts Markdown to HTML and vice versa
I created a program that searches the MongoDB database from my previous devlogs and prints out the results. It uses fuzzy search (the $search operator that can be seen in the code in the video) which basically also returns matches even if they aren't exactly the same as the query. It then sorts it by relevance and includes pagination using this line:
skipcount = (page - 1) * pagesize
which is then passed to the project_collection.find() method
I changed the script to use async which fetches data concurrently and is much faster! (30 minutes down to around 3 minutes!!!) It also now uses bulk_write with mongodb, which is much more efficient and reduces the amount of connections needed.
I also got a nest account, which is where I will be hosting the backend (my next step is to make the front end)
I deployed to github pages and fixed some hyperlink issues
I improved the css alot! I added a font from google fonts, a background and custom text formatting
I added a really really simple contact page
I added the projects page with a div for each project so you can simply copy and paste and have new card!
I finished making the homepage which shows some of my interests and projects
I created the first version of the homepage. It includes a footer, my profile picture as a clickable button and some info about me
I made a very simple 404 page (css coming soon)
A personal website I made for the Swirl ysws, which features my projects and some cool stuff
I created a python script that uses the SOM projects api (https://summer.hackclub.com/api/v1/projects) to update a MongoDB collection with information about every project in Summer of Making. This data in the data base will then be used to calculate the estimated shell profit
I added a dialogue system using the dialogic plugin and a new movement system which has double jumps, slams and more!
I added a health bar and an artifact bar that uses art I made in Aseprite. I also added helpful debugging messages and a base scene that contains all of the required components such as the health bar and killzone so I don't have to add them manually every time I create a new level
I made a gem that will be used to show the amount of artifacts collected like a health bar in game
I created a big todo markdown file to keep track of what I need to do. It includes stuff like health, music and level design
I created an option in the next_scene node to decide whether to check the amount of artifacts collected or not (it is only checked in the second level of a time period). I also made a second level to test it
I added a scene that decides whether to move you to the next time period depending on the number of artifacts you have collected. Each time period will have 4 artifacts, and you only need 3 to progress
I added a collectible system that can be used for artifacts in each time period.
I created a basic movement script with coyote time and double jumps. It also features easily changeable variables (such as speed and jump strength) to customise the feel of movement later
I finished the login flow and the function to get user details
A website that uses the spotify api to tell you the "mood" of your playlists
Now my scraper uses the results of categories.json to crawl every program inside of that category. Instead of simply using requests and beautiful soup like I did for the category scraper, I had to use selenium to launch a headless browser, because the data for the programs is rendered with JavaScript. In the the screenshot below, you can see the format of the results with categories.json and the programs in each category as their own file and with some of the code on the right.
A 2D platformer where you go through time to collect artifacts
u-crawler is a web scraper that utilizes the BeautifulSoup, requests and selenium to collect data about courses and programs from the University of New South Wales. It adheres to robots.txt and outputs its results into a neatly formatted directory composed of json files. I created this for the Anansi YSWS and I learnt a lot about web scraping :D
I added an idle animation that activates after 30 seconds of inactivity and a startup animation that activates when the board powers on.
I also added feedback to the reaction game, if you get < 230 ms, the LEDs will blink quickly, for < 350 ms they will blink normally and longer than that, they will blink slowly.
I added a new game-binary!
How it works:
- The LEDs will show a binary number for 5 seconds
- When they turn off, you have to input that value using the keyboard
- Pressing the top left button adds 1
- Pressing the top right button adds 5
- Pressing the bottom left button subtracts 1
- To submit your number, hold the bottom right button for 2 seconds
- If you got it correct, the LEDs will all flash twice
- If you got it wrong, they will flash one by one 2 times
I added more silkscreen art to the PCB, thank you solder people for helping
I made the circuit on a breadboard, and added a resistor to make the sensitivity potentiometer actually work. I'm probably ready to ship now!
Added a keychain hole and some silkscreen art.
I made the first version of my pcb design! it's supposed to be a cute duck keychain, but now that I think about it, I forgot the hole lol.
I finished my schematic! I'm planning on making it turn on in the dark (with the photoresistor) and off in the light.
A PCB with lights that you can use as a keychain.
This was widely regarded as a great move by everyone.