June 18, 2025
I got tomorrow.io working and can now print the temperature to the console! Next I'm going to try to print different things based on current conditions, such as a sun emoji if it is sunny! I also need to find out how to get the units so I can print {temp}C or {temp}F based on that. (Image below is in C - yes it is that cold 🥶)
I added a button to reload the page to play again after winning.
I moved the creation of each button (card) into the js so now i can change the number of cards easily in future. I also randomised the order so that it's different each time! (The randomisation was done with ChatGPT's help as I've never used javascript before XD. I also added win text at the bottom.
I created a windows executable and GitHub release.
Centered everything and made each card the same size!
Now it only resets cards that are incorrect! Also, I lock the board when you've clicked two until after the board resets.
I got the matching working, so now you can click 2 that match and they wont disappear. They still disappear if you click the next set wrong. Will change that next.
Added the basic click - flip - reset for this!
Match the cards memory game! Built with HTML, a bit of CSS and pure JavaScript. It's my first real web project and I've never used JavaScript before so hopefully it's not too bad! :D
Added a skills section, as well as improving headings and gaps between headings. Also added another project to the list. Will ship now as I can't really do much more - I don't know JS / TS, and I'm not too good at CSS.
I changed the color scheme to be Catppuccin Macchiato (a dark scheme) and I added more to the about me. I also added a link to email me as well as a link to my GitHub. I think it's ready to ship now, unless I can think of anything else that's missing from it.
I have a basic page working now (on Nest!) with a nice font and a couple of projects I've made.
My personal portfolio website. Written in HTML and CSS, although I don't really know much CSS :D. Hosted on Hack Club Nest.
I tried uploading this to pypi so it could be installed for demo with pip, but it doesn't work and I've givien up after an hour - just recorded a demo video. If you do want to try the game, you can still clone the repo and install following the instructions on README.md!
Added a couple more things, like giving the shells the particle animation. And WE HAVE A NAME! (It's not the best but I'm not good at naming things). I'm going to ship this now as I think it's decently playable. Wish me luck!
I added some collectable items, that disappear on contact with a cool animation!
I made the pearl bullets despawn after 5 seconds, or if they hit a wall or the player. If they hit the player it prints a message to the console, but will add actual damage later!
Added a shell / clam enemy that fires pearl projectiles. The projectiles have no effect yet and do not despawn!
Created a basic enemy that runs left and right. Also I set up a pyright lsp config file so I can stop typing #pyright: ignore when pyright doesn't like pygame!
Added a chain to the spike ball and fixed the position of it. (Also I switched for VSCode to NeoVim!)
YESS! I fixed the spike ball - turns out I had the closing brackets for the sin and cosine in the wrong place.
Added a spike ball that should spin in a circle around the center point, but it's not working correctly yet - I think I got the trigonometry wrong :(
Added a new room full of skeletons, with the options to run or fight.
Added palm trees (some have collision, some are background details) with animations. Also added some background detail sprites for a more lively level.
Added an indicator line to moving saws to show where they move to, and made the ship sprite flip when it changes direction. The game's looking good now!
Added player animations such as a jump animation, idle animation, attack animation and run animation. This is done by having a list of frames and increasing the index each time, while setting self.image to the list at index.
Added more sprites to the game, including some animated sprites such as the flag and the saw!
Added the level textures for all the sprites!
I added a camera that tracks the player (always keeping it in the center). This is done by adding an offset when drawing all the objects.
I added a player sprite and change the original rects for a hitbox instead.
I don't know why SOM thinks I have to do a devlog, as I haven't changed anything since the last one, and when I posted the last one the time since devlog immediately updated to 28 minutes, so here's a picture of my git commits :)
I made the platforms semi collidable, so that you can jump up through them. Also made it so you can drop down through them if you press DOWN or S. This also fixed the issue with the player dropping through the platforms. There is currently an issue where you can stand inside the platforms though. Lastly, the vertical platform can actually push you into the other terrain, which is weird but kind of cool. I'll fix that later.
Added collisions to the moving platforms (but now sometimes the player falls through the vertical one slowly??)
Fixed jumping while standing next to a wall with another timer, and then began to implement moving platforms. I took way too long debugging the placement of the test boxes for this unfortunately, but it's working now!!
Finally got the wall jumps working! I'm using a timer to block left/right user input for about 300ms after each wall jump!
Honestly I spent the last hour and a bit just de-bugging one thing. After changing some of the collision checks to implement wall jumps (for now it's just wall slides), I somehow butchered the jump so I couldn't jump at all. I thought I'd fixed it but it just caused more problems. Turns out the solution was to call the collision check function BEFORE the jump, so that the y velocity is not reset immediately after jumping.
I added JUMPS!! You can now jump if the character is touching the floor. Next I'll be implementing wall jumps :)!
Added gravity and collisions to the game! The collision checks are separated: first it checks left/right, then up/down.
Added a player that uses inheritance from the sprite class. Added movement to the player that is normalized.
I started over (last time I promise!) so that I could follow a more up-to-date tutorial - this one's by Clear Code. So far I have a basic level (with no collision yet) and a sprite class.
Added physics entity class that accepts the groups for sprite groups, as well as a position for the FRect. Added a test entity to the game to test the init and update function, which currently moves the entity across the screen.
Started the project again so that I can follow a tutorial to start off with and expand after the basics such as the level, player & camera are finished.
Created the window with pygame-ce. Set up the structure for player & main file. Have added left and right movement and got a player sprite (which I'm going to change for something else later) from kenney assets. Next I plan to add a floor for the player. I'll also have to learn how to have a 'camera' to follow the player sprite.
2D Platformer written in python with pygame-ce.
Added instructions / introduction text. Also display health and energy upon escaping the dungeon. Increased chances of swords dropping from zombies. Now accept ENTER key to continue.
Change continue onwards prompt to ask again if input is not recognised. Re-word startup message.
Swords dropped by zombies now decrease damage taken when fighting.
Fixed a few of minor issues. Added more sleeps between print statements.
WE'RE ON PYPI!! This is the first project I've ever uploaded to PyPI. You can install the game with pip now!
Added colored text to explosion room.
Add new room with explosives, add display for health, energy, and level / room number.
Make screen clear between rooms
Added another room type, added winning by doing a certain amount of levels, among other minor improvements
Added a lot, including more rooms, more colored outputs, and another interaction for after each room.
Added more rooms, moved game into it's own class. Added resting system to restore health and energy.
Added an inventory pick up system and drops for zombie room.
Created the basic outline of the game with a player class with health and energy, as well as a room full of monsters.
A text based dungeon adventure game written in python. Now available on PyPI.
Move player into it's own class, adding some utilities such as image loader
Draw sprite after collision so it appears on top
Movement!! Collision detection!
WE HAVE A SCREEN! I'm using this project to learn pygame. I will also design my own pixel art assets. Current sprite is a placeholder.
Added a task list indicator and prevented opening delete menu when there are no tasks. Made some messages clearer.
Added the option to use a custom list to allow for separate lists (e.g. one for school, one for work, and one for chores). Also adds help menu with --help in cli.
Added a time delay before showing menu prompt after any action (adding tasks etc) is completed. Also added a message that shows if you list tasks when all have been completed, or if you try to complete tasks when all have already been completed.
Added color to the outputs using the rich library for python. Also added a nice error message with instructions if rich is not installed. Updated the README with new usage instructions for installation.
Added error handling that prints a message if a non integer is entered for the select tasks input, and error handling for if a task is selected for deletion or completion that does not exist.
I learned python last year using a course on Udemy and have been doing little projects in python since. With my to do list app I got to practice using databases to store the tasks. This was a nice small challenge and project. I still need to add some error handling for if you try to check off or delete a task that does not exist.
Simple to do list / task tracking app written in python, storing data in SQLite.
This was widely regarded as a great move by everyone.