After building a project, like an app or website, “shipping” is publishing & sharing it online.
Students in many traditional computer science classes are lucky to make a single project. At Hack Clubs, every member makes & ships their first website their very first meeting.
Instead of learning programming concepts in isolation, learning by shipping means you focus on what you need to build real projects. It’s more fun & leads to better learning.
It's me, Ethan Hawksley, and I've just finished pushing out another large update to my site hawksley.dev! I've written a new blog post, all about how you can add JSON-LD to your own personal websites to improve how crawlers see them: hawksley.dev/blog/json-ld-explained-for-personal-websites It uses lots of examples from my own site, so you can easily copy-paste and edit to fit your own site. I've also now added my photo to my website too! It's in all the link previews, and on my home page. However, I was intentionally really careful when I added it. To maximise performance, I used the AVIF image format, with a PNG fallback. I've also inlined a low-resolution base64 AVIF directly into the html of my home page, so that it instantly loads in when you visit, and a higher quality AVIF loads on top of that once the page has finished loading. I'm really happy with how it turned out, the image is only 2.5KB! After some careful rearranging of my home page, it also fits in just under the size requirement for the first TCP packet group at 14KB, meaning it only requires one round trip with cloudflare for it to load. My PageSpeed Insights score is still 100/100/100/100

Day 166 / 365 I slept in today so intotality i wasnt all that productive lol. Other than some homwork, I did code 2 tracked hours!!! I decided that im going to be doing godot wild jam, but might as well track the hours too and submit to stardance (i should probably ask if thats okay before i fully ship). Anywhom, the theme incase you didnt know is "mutation", and given my brickbreaker / breakout streak, i thought "what if i made a kaplin flavored brickbreaker". this is eerily becoming a trend, since my last few hack club games were "what if i made a kaplin flavored pet sim" (raise a ceiling), "what if i made a kaplin flavored clicker game" (A.V.I.C.G.T.I.T.M) and "what if i made a kaplin flavored autochess game" (Engrams of chaos). Anyways, tangent aside, the game isnt actually that complex and also plays into my recent noita addiction. Basically, you can apply genes onto your very living and sentient ball (the ball will comment on your bad gameplay). Levels get progressively harder with stronger bricks, and you have a limited number of shots each round. Fail to do that, then your run dies. At the end of each round you get funds, so you can either buy a gene or get a "charity gene" for free. You dont actually know what this charity gene is until you equip it, and once you equip it you cant remove it. Those genes are fairly gimmicky, so its meant to be like "Your desperation caused a curveball to be thrown. Maybe you can adapt and make it the best thing ever?" in my 2 hours today i made some simple ball movement and paddle movement. But how on earth is that 2 hours, you ask? Well i also tried making a few things to replicate a visual effect i once saw in mindustry. So in mindustry the sprites are really smooth, evne though if you scale it up in a art editor they actually arent? So without much research i assumed that they were using some sort of shader to make smooth triangles between pixels (i dont think they actually do that, but thats what i assumed). So i tried replicating that with a shader. It failed. So now im coding my own image upscaler that generates triangles between pixels. Its NEARLY done, but has a few tiny bugs here and there. idk theres probably a name for this but im going to pretend im really smart for coding it myself. oh also uh stardance rng i got 882 i love gambling stardance rng day 2 🎲 882 · ranked #50 so far

I'm back with a fresh batch of improvements to hawksley.dev my personal site! I'm Ethan Hawksley on most platforms, but to make me easier to find I created hawksley.dev/elsewhere where I've listed all my profiles in one location, with rel="me" so search engines know I'm the same person. I've switched over to logical units (inline and block) instead of physical (width and height), and added dir="ltr" to my html to aid internationalisation down the line. Fixed a flash of white that chromium-based browsers would occasionally experience whilst navigating the site. Now using astro-compress to minify the resultant site so it's even smaller Also set up stylelint to run on save so my css stays in an idiomatic order. And finally my print styles have been improved so if you do Ctrl+P on my site, it should look nice! My GitHub is github.com/ethan-hawksley and you can check out my repository at github.com/ethan-hawksley/ethan-hawksley.github.io it's fully open source!


I've made my own GUI based Motif GUI editor called MotifDesigner! Take the hassle away from coding hideous amounts of code just for a simple app, just embed it on your own C++ app with an automatically generated header (.h) file ready for your use! This entire thing is written in C++ and highly optimized for MaXX desktop users, but don't fret! Other Linux users can try it (Wayland users require XWayland) and make their own Motif apps with ease! It's open source, too! github.com/zeankundev/MotifDesigner


Day 160 / 365 A few important things for me today. For starters: Deltarune chapter 5 release date got announced, so i cant wait for that. My game router rebellion finally got fully approved for horizons (after 30 days including the reship), so now im comfortable with working on it again. I wasnt comfortable before because it felt like i needed to reship because i added new content since my first ship when i was talking with the reviewer. and to be frank i dont really blame horizons or really anyone involved. hack club seems very busy right now, and last i remember fraud squad (or is it called fraud department? lowkey i dont remember) was going through some stuff or smth i dont pay enough attention. In one turret, im working towards getting the drill building to work. but first i need ores. and to get ores i need maps. and im going to be recoding how maps work. Previously, maps were stored in zips. like it would just dump the images there. But im going to be switching to godot resources as they are more scalable and just easier to work with all around. it will shorten my scripts by a whole bunch. im still slightly on the fence about it, because one of the benifits of the zip is that you can disect maps. maybe i can make a special button somewhere that allows you to export a map as a zip? one way, of course. im not going to add a zip -> resource, that removes the whole point of switching in the first place imo. also played a whole bunch of noita. I got a quality of life mod that allows you to keep track better of where you have been, so now i can properly clear the floors and get all the collectibles without going in circles (cuz going in circles causes you to get attacked by enemies which means you need to beeline to the holy temple to heal which sorta locks you out of that floor until you get to floor 3 in which you can backtrack, which at that point there really isnt anything valuable on the earlier floors). Also tried making some cookies but there was too much dough in the pan so it came out as a large tablet of cookie. the inner parts were still raw though so i took off the edges then rebaked the center... for some reason whenever i try to use this specific type of only-add-egg-and-butter batter it always ends up being a clumpy mess instead of... cookies. the image is the inner portion after i rebaked it.


Day 149 / 365 Today was... somehow more unproductive than yesterday!! >:C But it was a generally fun day even though I didnt play that many games. I worked 20 minutes on my horizons quiz game project thing, adding in some cool preview images for each of the gamemodes. I also got "deleting" datasets to work. In reality it just changes it so it hides the quiz. If you attempt to add a new quiz using the same csv, it will just toggle it back to being visible, that way all the configs for that quiz are still saved! Rest of my day was spent out of the house with my dad and brother. I dropped my brother of at swim and ended up just having a bonding moment with my dad at the closest mall. Its a generally unoccupied mall. not a lot of buisness happens there (in terms of the internal mall stuff. the clothes stores and resturants on the outside of it do get a lot of buisness though). me and my dad walked through and had a chat, even walking into a craft store. didnt buy anything but still chatted. We also got some handsoaps that we thought my mom would like :) We got two of a vanilla almond one. One for me. Because I liked it. :yay: i love vanilla smelling things. and cinnamon! anyways after that me, my brother, and my dad went to applebees. im mentioning this because thats like a once-in-a-blue-moon-during-a-solar-eclipse thing and its lowkenuinly been like 3 years. when we got home it turns out my mom had recently gotten hand soaps. so now we just have 15 things of hand soap. please help. 5 hand soaps per sink including the kitchen😭 and on my horizons stuff. I think ive ultimately come to the conclusion that im NOT going to be going to nexus for various reasons. One of the reasons is the hours required. Especially given hackclub stardance is happening soon. I plan to be starting a thing with my club to get them into stardance so they can make some stuff. Also that club ysws, and other stuff. Im going to be getting a lot busier soon so im less confident in getting the hours. other reason is I dont think i really want to go anymore. Dont get me wrong it sounds fun but like. is it really worth all the hours? I mean I definently think I had great memories at hackclub shiba, but that was a whole week. nexus, last i checked, is a nonstop hackathon over a weekend. So yeah uh. i think im going to cash my hours and possibly move my study app to a different program (i hear macondo has a lot of good prize options). If i were to ship my moved aces project as is, i would most likely get 2 steam game grants (for publishing a game on steam) and 4 blahaj plushies :)

Hey! I'm Ethan Hawksley from the UK and I've been working on my personal site and blog for a while now, and I think it's finally at a point I'm happy to ship properly.
Why: I wanted somewhere to write my blog posts and show my work that actually reflects me technically, instead of just a LinkedIn profile.
How: It's built with Astro for zero-JS by default and proper MDX support. I put real effort into a couple places I've not seen many others doing.
IBM Plex fonts subsetted with pyftsubset to just the unicode ranges I'm using.
Full JSON-LD structured data representing myself and my site fully programmatically.
Light & dark mode support with no initial flash of white and js-less fallbacks.
Syntax highlighted code blocks with copy buttons.
WCAG AA compliant accessibility
Support for plenty of web standards, such as openpgpkey, security.txt, WebFinger, and llms/llms-full.txt
100/100 PageSpeed score
Where: hawksley.dev and the blog at hawksley.dev/blog


Day 144 / 365 Got some well needed sleeping-in time. Though, despite this, I cant say I did all that much important stuff. A lot of my day was spent watching anime with a online friend over discord call lol. I did fully implement the quiz game to my horizons study app. I also have some plans for a cool mastery tacking thing by just storing your last two attempts on any of the minigames. If you manage to get all questions right in two game sessions in a row, you would have maximum mastery for that dataset. How cool. anyways im going to be real for a second. Im extremely worried about horizons nexus. The event is in exactly 26 days. You are required to buy the ticket 2 weeks before the hackathon, so I need to get the 15 hour ticket within 11 days. Of my three horizons projects, I have one shipped. The previous ship took roughly 10 days to be completed, only to be denied in order to do a reship with my new hour count. Assuming this ship goes through with no reductions, I will hopefully be able to get the ticket in the next two days. This leaves 23 remaining days until the event. Lets say the hypothetical that I REALLY need to get the flight grant to go. Assuming that ships take 10 days to get accepted, that only leaves me 13 days remaining. A flight from my city to SF costs 550 dollars, and under horizons $8.5 grant per hour, that makes 68 hours. This means, I have to do 5 hours a day. Man. I dont know if i can truly go to horizons at this rate. Lets say in a hypothetical world where it only takes 3 days for a ship to get reviewed, I would only need to do 3.4 hours a day. Rough, but a lot more achievable. So uh. Yeah. Kaplin fun fact. I guess. IDK. I feel generally down today. probably because my little brother was just being a general nuisance for most of the day. but hey, thats little brothers for you. TLDR: Today was a great day with no flaws since i got to sleep in :)


No wifi dinosaur game with with a seal! stephanietanexist-maker.github.io/Infinite-seal-game I hope yall like the seal I drew for the sprite :D

Day 135 / 365 Today was a very lock-in type of day. I had to wake up really early to drive my dad to work (he has vision impariment and thus cant drive). But I used this early morning to my advantage, getting a good chunk of work on my horizons game done really early. I worked on getting models to load for dialogue, and also being able to search the model for the animation player to find available animations. Outside of coding, I really just played some mindustry and hypixel bedwars. I also tried to do some world gen stuff in hytale. i was hoping with their recent updates it would be easier to make a dungeon system, but turns out thats not the case and I gave up. I probably would need to find some guide in the hytale modding discord servers. I finally got my horizons ship back. I was told some changes i need to make (like make a full proper level), so I worked on that a bit. The level looks okay. its using some placeholder assets since i havent made any props yet. Its supposed to be a sorta city outskirts type of feel. In totality I did 4 hours today! Im probably going to ship it immediately after this post!


Day 131 / 365 My summer starts today but its probably going to take a while before everything settles down. Did a psych test and public speaking speech. so now im finally done!! yippee!!! so i lowkey just played for the rest of the day. I ate a celebratory dessert at a mexican resturant. this is sorta a tradition my family has been doing since I first started doing dual enrollment lol. Anwyhom I worked on my horizons game for an hour, I added a cool enemy trigger system where if you enter an area it will make all its child nodes visible and processing. this works for walls as well to box players in. I wanna lock in tommorow (and hopefully my horizons ship from 7 days ago will be accepted lol!!)


you've seen the lanyard.cnrad.dev discord status embed generator thing. its cool, you can embed your discord profile into your website. yay!
but what about your hackclub slack profile..? to my knowledge nobody made such a thing yet...
hi! i made slacktivity!! its a slack bot (hello @slacktivityspy )/api that lets you generate live svgs/pngs of your profile, and supports embedding everywhere!! even in this very slack post (although slack cdn caching wont make the preview live-updated unless you click on it)
heres the github, the api docs are in there somewhere. to get started, you can try /slacktivity-help and /slacktivity-register, then /slacktivity-preview!!
hope you have fun using it, i definitely had fun making it. 14h 25m acc. to hackatime as of post!
made for #C07UZSKJQRX, with <3 from @revi & the Icarus Alliance (+ Kai)
(p.s. its hosted on nest, so it may be kinda slow. apawlogies!!)

this was supposed to be an overdrive original game i made back in february, but i decided to continue it anyways. anyways, here I present: Countless Reigns (OBT 1) link: play.unity.com/en/games/d9ec14c7-67b6-46a6-a385-0d44966fe5d9/countless-reigns-obt-beta game asset and code (everything): github.com/zeankundev/CountlessReigns (requires Unity 6) controls are really intuitive, though, just like you would on LoL. • RMB to move • LMB to attack • L to toggle camera lock credits: • programmer: me • pixel art & game assets: me • narrator & Jasu VA: me • music and SFX: Pianomations, Pixabay ⚠️ for mobile users: there are no official mobile ports yet. while you can play it on mobile, it often requires a mouse to be plugged in! ⚠️ you must click the canvas before playing the game, there is a known bug that won't launch the game or hide the intro, will fix it soon ⚠️ this game is _UNFINISHED!_ expect bugs and incomplete features & mechanics. if this bothers you, you may make a PR/issue feedbacks are welcome (reply this thread pls). thanks, and have fun



I built Learnify. i vibe coded nearly the entire thing, but i just wanted to learn the ins and outs of stripe for my next project. It is like duolingo, but with ai curriculum for anything you could think of. SAT prep, geometry, music theory, javascript, etc. it's not perfect in any way, but as i said earlier i just wanted to ship something. It’s web only right now because i didn't even think about paying app store fees. It's live at learnify.studio if you want to check it out.

You! You're a human right? So you probably don't need this project, but maybe some apps that you built do! I’m Akaalroop and I’ve… never touched or built a backend in my life but I like Rust, so I decided to try it out! I built an API which converts words: like “seven hundred and forty-three” to numbers your app can use, like 743! As you can imagine the logic for doing that isn't too difficult, but it was the API itself that took most of the time. Setting up a parser, receiving requests, returning errors or responses, dealing with incorrect data, etc. All without a single framework or parser library used! And I used no AI either! It was a challenge but I'm proud of myself. So I hope you enjoy v1.0.0 and give it a try! GitHub Demo Flavourtown

COWBOY TOWER !! :yay: its an action platformer hwere YOU are cowboy. you need to climb the tower and defeat bosses to reach the top! there's three different worlds, lasso swinging, horses that defy physics, and moreeeee!!! all waiting for you in cowboy tower!! check it out!! made in Rust for flavortown in >100 hours :3c: itch link: gnarmi.itch.io/cowboy-tower repo: github.com/ingobeans/cowboy-tower

I shipped my projects for the #C0APA6DDC6N , as I bought to tickets and had overtime, I logged 16.4 this week, I'm currently voting to ship the second project, this week was rough but I have high hopes on this weekend. flavortown.hackclub.com/projects/20313 flavortown.hackclub.com/projects/17053

TODAY i shipped a slack bot that summarizes your slack threads! why? because we are LAZY to read a long thread and not understand so this is why i built a slack bot that does the thing. read it and output it into a understable format that you can finally read.. so why not use the bot? you can use it in dms, mention it in a slack thread or use the shortcut? have fun bot: @ThreadSummarizer5000 source code: github.com/Snowflake6413/threadsummarizer

EcliPanel v3 is AIO (all in one) management panel for hosting services featuring Pterodactyl like wings support, server management and DNS/Organisations Management for Enterprise. Specially for hackclubers I have added inside of billing 30 minutes demo so you could emulate Enterprise experience and use it to review it! > ⚠️ Open Source (Non‑Commercial Only) Image Showcase incase demo does not work or you want to see some admin stuff: github.com/thenoname-gurl/EcliPanel/blob/main/SHOWCASE.md Note: Showcase is updated on monthly basis use demo. ecli.app - hosting that uses this project github.com/thenoname-gurl/EcliPanel - source code

I made ArchiveTube, a frontend for archiving YouTube video Features: • Homepage • Channel page • Queue for archiving whole channel / playlist • Full metadata (title, description, thumbnail, subtitles • Optional login for archiving videos Demo Source code




here is my project the simple e-shopping website(Powered by next.js) :- Name: Devin-Bay Repo: github.com/kevinhamza/Devin-Bay Demo: devin-bay.vercel.app Feel Free to review

:yay: do YOU have a project you want to share? create a 722x84 banner for it and upload to <https://hack.irispond.net/|Hackvertisements>!!!! :yay: Hackvertisements are small banner embeds you can add to your website. every time the page is loaded, it will display a random Hackvertisement submitted by fellow hackclubbers, showcasing off a certified cool project :3 (theres nothing commercial about these, really just a fun way to share your projects!!!) you can create as many hackvertisements you want for your projects, and you also get to pick a link for the hackvertisement to take people when clicked. you can also edit and delete uploaded hackvertisements, so you can always update them later!! if you dont feel very creative or dont currently have a project you want to share, go ahead and instead add the hackvertisement embed to your own website!! its a really fun way to show off the hackclub community and make your website more lively :3c: (there is also a leaderboard for the pages that have shown the most hackvertisements)

In these two hours i started by adding progress bars to the battle ui. Then I worked on expanding the map by completing route 22 and the gate for route 22. Im going to do the first ship in a few days so stay tunedflavortown.hackclub.com/projects/8520

These are just a few posts…
Keep exploring →