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.
Mini Ship! 🚢 Using N8N workflows, auto triggered by my car driving focus (auto triggered by my car bluetooth), when I start driving, my slack status now reflects that! (i considered tying in gps, that might be going a bit too far tho /s ) EDIT/UPDATE: I am also syncing my do not disturb, and other focus mode settings to here!
don-tnowe.itch.io/mole-n-tunnel this is the first fully finished and published game i ever made and i think its really good please try it out if you could
Chela update!
I've fixed a ton of bugs and added some fun features and now Chela is at version 1.0.0! If you missed the previous ship, Chela is minimal selfhostable URL shortener written in Rust. It runs in a 14Mb Docker container!
I have an instance hosted at trkt.in, you can try it out by going to trkt.in/create with the user hackclub
and password 4YtC3qWKBZAYmD
.
github.com/secondary-smiles/chela
:scratch: :shipitparrot: SCRATCH SHIP: SSH FOR SCRATCH!!!:scratch: :shipitparrot:
The past week I've been working on getting SSH over WebSockets working to allow for building SSH apps with TurboWarp, a Scratch fork with custom extensions. It required me to write Go code compiled for WebAssembly to get a full client working, but it does work! Introducing, turbowarp.sh - building blocks for SSH apps in Scratch. It allows you to connect to any Linux server provided it has a WebSocket tunnel to SSH (see websocat/websockify) like Nest! You can execute commands, have full programming control flow with Scratch, and more!
You can try this extension today at turbowarp.org/editor?extension=https://cdn.jsdelivr.net/npm/turbowarp.sh/dist/bundle.min.js ,or by loading bundle.min.js
in the turbowarp.sh
package through a NPM CDN (like jsdelivr) from the "Custom Extensions" tile.
Git: sr.ht/~reesericci/turbowarp.sh
NPM: www.npmjs.com/package/turbowarp.sh
Announcing Chela! I took a few hours to try and make a nice little self hosted URL shortener like bit.ly. I wrote it in Rust and tried to keep it small. I'm currently hosting it at trkt.in. I used sqids to generate ID's which leads to super awesome short URL's like trkt.in/GM! The source is available here.
:kitty-dance: 🌸 *days of service ship incoming:* :kitty-dance: 🌸 Blossom 🌸 was held in Atlanta, Georgia from March 15-16th. working closely with the Girl Scouts of Greater Atlanta :girl-scouts:, i had the privilege of organizing a day-long event that brought together a team of high school female mentors and dozens of eager girl scouts. beginner girl scouts embarked on exciting journeys - from crafting their own PCB :pcb: keychains that they later had manufactured through #onboard to delving into an introduction of javascript :js: to code drawings on #blot the drawing robot. every girl went home with a unique new hardware or software project that they 100% created themselves, but most importantly, the confidence needed to pursue coding further :blobheart:. we also had a brilliant dinner (with ricotta balls :blobby-doughnut:) the night before with 28+ women in technology and STEM who guided us with their stories and experiences in their fields. all the high school mentors and i were fueled for the day ahead of us by the end of the night:half-salute:. it was so motivating to see girls who had never touched code before leaving the event with the confidence that they had a place in the world of technology & finished projects that they could show off. 🔗 website: blossom.hackclub.com :githubparrot: github repo: github.com/hackclub/blossom 📷 day of service photos: drive.google.com/drive/folders/1-XnTK7QPwufdo4flwsF7syqOoZwB0z6C?usp=sharing 🥂 women in STEM dinner photos: drive.google.com/drive/folders/1-WR0RY4SCYAOzAD3T-Z6aT0_DYBsNGgj?usp=sharing thank you to @MariannaLudensky @NilaRam @christina695 & the whole <!subteam^S06A2EGQ29M|@blossom-team> for the wonderful event we pulled off, hopefully inspiring many girls along with each other through the process.
Day 27 of #100-days-in-public. Today I spent time getting my react site to compile. Originally it was set so that you have to specify a directory it is going to run in but I managed to change that to the ./ directory so it can run in any direction. I also added some instructions for the user. Tomorrow I am going to work on getting it up on my website and shipping it. After I ship it I think I may try to incorporate an interaction library like MUI or EUI now that I am more familiar with react. On another note, I got my fudge from #10-days-in-public!
Day 26 of #100-days-in-public. I want to take a bit of a different approach on my #scrapbook today. Currently my Gemini based rug game is in a state where I am considering #shiping it but have an idea of one last feature that will require me to modify some of my code to create, and make it much more original. I think I may ship the current version tomorrow and then continue working on the last feature. Today I had a bit of a realization why react is such a good framework. Basically, my goal is to have a text box pop up when the user needs to enter their api key and not show up if it is already in the URL(see yesterdays video). The beauty of react is that I can do this very simply in one element by simply detecting if they need to enter a key, and if so returning a different piece of HTML. If they already have a key then I can simply return nothing and nothing pops up. With React I can just throw this element in anywhere and it just pops up when it needs to and disappears when it is not needed. Also, React allows me to easily modify page layout, say for example if I wanted my chat box to be below the input I can do that with swapping one line of code.
I built a student portal/site for my school! In the future, there may be AI and official district portal features thrown in as well, but at the moment it's primarily being used for my school's course selection since that's what's happening right now at school. I'm so happy to have finished building it! It's a project that I've been hoping to launch since my freshman year of high school but never had the coding expertise to execute, and now it's open-source and live for the 1,700+ students at my school to access! Using Next.js, React, and the magic of the Google Sheets API, I was able to sell the course catalog that my school has (and I now encourage you to check it out)! It's now available at mybla.vercel.app :D It's been awkward walking around and seeing people compliment the project due to seeing my name in weekly announcements but I'm happy that it already has a happy user base even after being released for a short while.
🚢 ANOTHER WEBSITE SHIP 🚢 I shipped 3 new pages for my website! The first one is a photos page, it pulls automatically from my Flickr for the photos and uses static images as fallback. The second one is a blog, it uses markdown files and tailwind typography for rendering them nicely! The third one is super simple but its a stack page, It includes the tools I use. Hardware and software! The website is written in :nextjs: Next.js and :tailwind: Tailwind CSS. It's all open source! ⭐ it on GitHub and live on aram.sh
Recreated the classic Chrome dino game for #sprig:
#ship I finaly finished procrastinating on making the pcb for my led cube and was able to knock it out in less than 8 hours total; particularly proud of no drc errors and a clean schematic
made a custom #arc-browser icon!
day 9 of #10-days-in-public!! today, i built an app for the student swift challenge. it's super late right now, so i'll ship it all tomorrow, but here's a look at it! :swift: 🧪
Working on my portfolio, little late to the party tho lol, planning some advanced stuff with 3d cards for projects and certification and also tags for projects , cant wait to #ship it probably in the summer along with a python script to update the projects and ceritifications and add new ones programatically with templates, hopefully finish this during this summer
🚢 WEBSITE SHIP 🚢
I have made a 📖 guestbook to my website! It allows you to read posts, login in with GitHub and post something! It uses :vercel: Vercel KV (soon migrating to upstash) and next-auth
for authentication. This was inspired by @toby’s guestbook on his website! This is now live at aram.sh/guestbook! Leave a message today! This was built for #10-days-in-public!
Day #1 of #10-days-in-public; I worked on my website and added a new feature to my bag scanner tool (kinda evolved into a slack toolkit). For my website I added a gist mirror so that m.kieranklukas.com/g/d99bc46b29dab92ed1799451188e02da pulls my docker compose management script. For the bag scanner tool I added the ability to search for a user in hackclub by name and get data about them; one annoying thing about that project is that since it works with a 58.3mb file its a pain to load into an editor.
App by me @Evan , @KevinYao-U04EWE54XKR , and @MichaelZhang to help hack clubs and their members learn JavaScript , this is a #ship from #the-summit : aicoder2009.github.io/summit-zelda
🚢 One more ship before i turn in for the night; I got ui working! now I have a snazzy ui as well as working snipper; i chose clack as the ui framework as it was already written in typescript; clack can be found here: github.com/natemoo-re/clack
🚢 Another micro ship! I built a shopgoodwill.com auction snipper to try and snag an ipod; it is written in typescript and bun as usual and requires only a max bid and auction id to work (besides authentication of course); i'm going to try and add a tui for it and clean up the code a bit but it works!
🚢 Micro ship this time; I created a typescript http plaintext streaming server with bun and express. You can find the code on my github: github.com/kcoderhtml/streaming-web m.kieranklukas.com
🚢 micro ship! I got a scrappy integration working with netlify and my websites blog backend vrite and can now publish posts from scrappy onto my blog automatically! well currently semi automaticaly; scrappy webhooks are broken rn but once they are fixed it will be!
First ship in a while! Made my first ever Sprig Game! Check out Marble Tilt! Check it out at sprig.hackclub.com/share/kirZ4UtFoGXO7zyZF1DJ!
🚢 EXPOSE PIZZA SCAMS 🚢 Ever been puzzled about whether to choose a large pizza or a small one? Don't take my word for it. You can find out for yourself with a small tool I've created! Just put in your price and size and it will effortlessly calculate the price per square inches. Check it out on aram.sh/pizza! The code is open source on aramshiva/website, (please ⭐ it)! :pizzaparrot: Happy 🍕 Partying! :pizzaorph:
These are just a few posts…
Keep exploring →