|
15698
|
Health/productivity desk assistant by @zmalkani | Health/productivity desk assistant by @zmalkani | Stardance...
|
zmalkani
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-12T16:18:21Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a hackpad that will be a desk assistant. To be a good student athlete, balancing schoolwork and practice/nutrition/etc is crucial. This device will have built-in distraction-free pomodoro study sessions, as well as food/water reminders to stay fuelled while focused in on schoolwork.", "repo": "https://github.com/zmalkani/health-productivity-desk-assistant", "demo": ""}]...
|
[{"post_id": 6493, "ts": "2026 [{"post_id": 6493, "ts": "2026-06-10T22:14:30Z", "hours": 2.2722, "text": "I finished my fusion model for the case, as well as my PCB design for my hackpad. Uses 3 switches, an encoder, and an OLED."}]...
|
Title: Health/productivity desk assistant by @zmal Title: Health/productivity desk assistant by @zmalkani | Stardance
Devlogs:
I finished my fusion model for the case, as well as my PCB design for my hackpad. Uses 3 switches, an encoder, and an OLED.
Ships:
I made a hackpad that will be a desk assistant. To be a good student athlete, balancing schoolwork and practice/nutrition/etc is crucial. This device will have built-in distraction-free pomodoro study sessions, as well as food/water reminders to stay fuelled while focused in on schoolwork....
|
1793616913.6900065
|
1793703313.6900065
|
|
59870
|
BLARE!! by @gemzaidahmad | Stardance
|
gemzaidahmad
|
0
|
0.58
|
0
|
[]
|
[{"post_id": 64936, "ts": "202 [{"post_id": 64936, "ts": "2026-09-09T17:39:24Z", "hours": 0.2667, "text": "Still working on the schematics: I only did about half an hour of work since I’m currently occupied with the firmware for the Macro-pad :3"}, {"post_id": 64333, "ts": "2026-09-08T17:08:10Z", "hours": 0.3167, "text": "I started with the schematics for my alarm clock because I was bored of making the firmware for the Macropad (ik lol). There is not much I did so not much to talk about"}]...
|
Title: BLARE!! by @gemzaidahmad | Stardance
Devlo Title: BLARE!! by @gemzaidahmad | Stardance
Devlogs:
I started with the schematics for my alarm clock because I was bored of making the firmware for the Macropad (ik lol). There is not much I did so not much to talk about
Still working on the schematics: I only did about half an hour of work since I’m currently occupied with the firmware for the Macro-pad :3...
|
1793638401.3560336
|
1794243201.3560336
|
|
48410
|
AeroTrack by @tejaswa | Stardance
|
tejaswa
|
0
|
12.5
|
0
|
[]
|
[{"post_id": 64942, "ts": "202 [{"post_id": 64942, "ts": "2026-09-09T17:54:53Z", "hours": 1.1464, "text": "Breadboards are mid and they ruined my life, i got devorced lost my house, kids, properties, car and everything else cuz of them I wrote a header file for this encoder, Normally thesehigh precision 21 bit encoders use SPI to communicate to the MCU, BUT I SWEAR ON MY LIFE THOSE PADS ARE TOO FKIN SMALL. ISTG THESE ARE THE SMALLEST PADS IVE EVER SEEN HOW IS ONE SUPPOSED TO SOLDER ON THESE I was NOT gonna solder those lil shis w my fat and rusted ass soldering iron, so i instead used 14bit resolution PWM out of the encoder, its not AS precise as the 21 bit but il solder them when im home OH AND THIS IS MY HOSTEL ROOM BTW I HATE IT HERE The consistency of this encoder is perfect tho resolution is consistent (both the stepper and the encoder) I showed yall in the video how consistent it was. Sometimes it floats aound a bit but ik its cuz of the breadboard fkin up the pwm signals whcih are alr prone to interference. Ill fix that tho so need to worry, Ill design everything in a way so that in future its very easy to switch from PWM to SPI Anywyas thats all i did for today, for tmr i have better calibration for motors and when the motors calibrate ill calibrate the encoders too, I havent worked much w header files for C, This is my first time so ill have to learn abt that a lot too"}, {"post_id": 62932, "ts": "2026-09-06T14:00:54Z", "hours": 1.7839, "text": "I love writing clean code I genuinely think one thing im good at is writing clean and structured code, Anyways apart from that, i was able to utilize sensorless homing in my TMC2209 drivers which i very ingeniously picked cuz i totally knew what they were capable of. To be honest i was js surfing da net and found out that u can actually home using these drivers without any external switches, so i was able to save the hassle and wire for that, It was pretty hard getting it running im not gonna lie, With help of chatgpt i was able to figure out why it wasnt working, and in the end i was able to get it to home properly I wired up the GPS use a library for it too and then sent those functions in a different header file so my main file remains clean. I coded a lil GPS_3D return func that gives x y and alt of the GPS which we will be using to aim the yagi to the target. You see the no gps fix message cuz my house walls are pretty thick, these GPS cant get fix inside (my planes expensive GPS cant get it indoors either) Update on my rc plane: Its my last day at home before ill be going to clg and it has not stopped raining for a single day so its wraps for that, I might be able to find a window to test it maybe. Tmr ill be working on getting the motor encoder working, Im still waiting up on my bearings and the wodden staff istg its taking way too long"}, {"post_id": 62003, "ts": "2026-09-05T06:35:03Z", "hours": 1.3983, "text": "MY CUSTOM DIPOLE IS WORKING AND NOTHING BURNED FOR STARTERS MY COAX IS HERE I went back to my dipole because it was WAY easier to solder the wires on stainless steel than it was on aluminum, Kinda bummed out cuz stainless steel velocity factor is higher than Al, So im 80% sure my antenna isnt tuned rn (hasn’t unlocked its full potential) Also i havent tuned my antenna for endpoint factor either. I tested with mavlink in same room and another room the RSSI didnt drop, I will be conducting more experiments today driving around tryna compare both the antennas I will research on how to build a 1:1 or 4:1 balun and make that too if possible, follow this proj and lets figure this blackmagic out together"}, {"post_id": 61492, "ts": "2026-09-04T13:11:15Z", "hours": 1.4667, "text": "OH ITS CHRISTMAS EVERYDAY MY PARTS ARRIVED ITS SUCH A MASSIVE BOX I CANT CONTAIN MYSELF, Im so so so excited thankyou zach thankyou stardance and thanku hackclub for getting me all this As soon as my parcel arrived i hopped on da puter tryna make the stepper go brr When i was starting out surprisingly it was NOT working as intended The stepper was making a LOT of noise and it was just jerky and stalling and had 0 torque, for the life of me i couldn’t figure out what the issue was. TURNS OUT, Claude fkin lied to me and told me wrong way to wire the stepper phase wires, so i had changed the wiring of how the stepper connector initially came with, After my free tokens expired i was like shi i gotta take shi in my own hands, I tried that and it instantly worked The torque was perfect and microstepping was insanely clean Now that this wiring stuff is done, all that remains is i have to figre out a way to get the motor encoder with the motor, i have multiple ideas on how i will do it so follow this project to see more of this in the end i would like to thank hackclub once AGAIN for getting me all this i love yall"}, {"post_id": 59117, "ts": "2026-08-31T19:02:35Z", "hours": 0.55, "text": "Dipole is done I made a 1/2 wave dipole antenna using 14 AWG aluminum wires I recorded 30 mins of work but this job took me 2 total hours to complete For starters i ALMOST disintegrated my 3D printer because of a stupid soda can I forgot i kept it under the arm (the X axis arm that moves up and down) and i didnt realise i kept it there, My first layers were SO trash because of it it was a solid half an hour of troubleshooting till i figured out what the issue was. Thankfully i didnt overtighten my screws so my rails are fine, But i cant say the same about my nozzle My nozzle scraped the bed after i removed the can cuz i set the Z offset too low and i did stop the print but it was lowk a lil late, It still works so thats fine But this stupid 6min print took me 2 Hours of work Anyways, This half wave is made of aluminum 14AWG single cored wire, i used a drill machine to straighten it and then cut 16.75cm pieces ( 2 cm more than that and then i folded the 2 cm part to work as connectors) It looks pretty perfect to me, I hope it works that way too If this doesnt work as expected ill look into building my DIY balun"}, {"post_id": 55412, "ts": "2026-08-27T07:00:55Z", "hours": 0.3097, "text": "Added the MCU and other sensors that will be necessary in the CAD too"}, {"post_id": 50787, "ts": "2026-08-20T05:17:08Z", "hours": 0.6167, "text": "Might get the funding soon I updated the readme with build instructions, rn i didnt add the dipole construction and itll be a long process of trial and error and i wanna provide the final method for construction It makes me vv happy that they actually saw the part where i implemented it in game and appreciated so hats off to them for that Everything is updated now i can apply for funding i think"}, {"post_id": 50301, "ts": "2026-08-19T13:47:02Z", "hours": 0.9167, "text": "MY TRAIN TO HOME IS IN 2 DAYS I cant wait to go home finally away from this fuh ahh clg and work on my projects Anyways i worked on the wiring diagram for the project in figma, wrote the readme and setup the github and i think im ready to req funding now (oh btw 3D prints are not included in the funding) They HAVE to let me on their magazine after this no chance all 3 of my projects dont make it there"}, {"post_id": 50256, "ts": "2026-08-19T12:30:07Z", "hours": 1.1333, "text": "Worked on da project a bit more Refined the 3D model a bit more, thought about the wiring diagram and made a BOM Currently only thing left are the 1m coax cable that because im not home i dont have acess to my radio telemetry so i cant see which connector they use, i did ask my parents to send me a pic but theyre a bit busy so thats on hold The entire project is lokey coming to life and im insanely excited to work on my frist RF project I learned about RF patterns Smith charts and different types of antennas, and i think i wont just stick to 433 yagi, i will be making my own various antennas The good thing is i dont have to spend a fortune on a radio setup as SIK radios that i have currently do have a RSSI meter (i hope they dont get slimed tho so i gotta calculate twice before making)"}, {"post_id": 48192, "ts": "2026-08-16T14:19:27Z", "hours": 1.3589, "text": "Whipped out this lil guy (Bro is NOT little) added motors and removed the curved part and am gonna use a 1/2 dipole for this Researching for this project is insane theres barely any content for 433mhz yagis or directional antennas. This project might be a hard one gng im getting kinda demotivated ngl I decided that ill use bike spokes as reflectors and see if they work. The driven element would be a single cored copper wire made into a makeshift half wave dipole antenna"}, {"post_id": 47688, "ts": "2026-08-15T19:23:33Z", "hours": 1.8169, "text": "They say RF is an engineers worst nightmare How bad could it be This is a custom 433MHz Yagi antenna tracker for my UAV. It uses the Pixhawk’s MAVLink GPS data, a ground-station GPS, and an ESP32 to calculate where the aircraft is and automatically point the Yagi at it using two direct-drive NEMA17 motors with absolute encoders. The whole thing is being built from scratch, including the antenna and tracking system. Today i made a rough 3d model of how the actual antenna would be irl (no impedance matching done yet) along with the rough kinematics of the whole structure Itll be mounted on top of a table with bearings and stepper motors, I might be adding pulleys to it later but i wanna keep cost as low as i can and range as high as i can, No physical limit switches or wonky mechanical stuff needed cuz of the awesome digital encoders A GPS for the GSC so that it knows where its at then ill be implementing compelx math to figure out where to point the antenna Maybe even RF Sims This is a whole new blackmagic territory im stepping into purely for the love of the game."}]...
|
Title: AeroTrack by @tejaswa | Stardance
Devlogs: Title: AeroTrack by @tejaswa | Stardance
Devlogs:
They say RF is an engineers worst nightmare How bad could it be This is a custom 433MHz Yagi antenna tracker for my UAV. It uses the Pixhawk’s MAVLink GPS data, a ground-station GPS, and an ESP32 to calculate where the aircraft is and automatically point the Yagi at it using two direct-drive NEMA17 motors with absolute encoders. The whole thing is being built from scratch, including the antenna and tracking system. Today i made a rough 3d model of how the actual antenna would be irl (no impedance matching done yet) along with the rough kinematics of the whole structure Itll be mounted on top of a table with bearings and stepper motors, I might be adding pulleys to it later but i wanna keep cost as low as i can and range as high as i can, No physical limit switches or wonky mechanical stuff needed cuz of the awesome digital encoders A GPS for the GSC so that it knows where its at then ill be implementing compelx math to figure out where to point the antenna Maybe even RF Sims This is a whole new blackmagic territory im stepping into purely for the love of the game.
Whipped out this lil guy (Bro is NOT little) added motors and removed the curved part and am gonna use a 1/2 dipole for this Researching for this project is insane theres barely any content for 433mhz yagis or directional antennas. This project might be a hard one gng im getting kinda demotivated ngl I decided that ill use bike spokes as reflectors and see if they work. The driven element would be a single cored copper wire made into a makeshift half wave dipole antenna
Worked on da project a bit more Refined the 3D model a bit more, thought about the wiring diagram and made a BOM Currently only thing left are the 1m coax cable that because im not home i dont have acess to my radio telemetry so i cant see which connector they use, i did ask my parents to send me a pic but theyre a bit busy so thats on hold The entire project is lokey coming to life and im insanely excited to work on my frist RF project I learned about RF patterns Smith charts and different types of antennas, and i think i wont just stick to 433 yagi, i will be making my own various antennas The good thing is i dont have to spend a fortune on a radio setup as SIK radios that i have currently do have a RSSI meter (i hope they dont get slimed tho so i gotta calculate twice before making)
MY TRAIN TO HOME IS IN 2 DAYS I cant wait to go home finally away from this fuh ahh clg and work on my projects Anyways i worked on the wiring diagram for the project in figma, wrote the readme and setup the github and i think im ready to req funding now (oh btw 3D prints are not included in the funding) They HAVE to let me on their magazine after this no chance all 3 of my projects dont make it there
Might get the funding soon I updated the readme with build instructions, rn i didnt add the dipole construction and itll be a long process of trial and error and i wanna provide the final method for construction It makes me vv happy that they actually saw the part where i implemented it in game and appreciated so hats off to them for that Everything is updated now i can apply for funding i think
Added the MCU and other sensors that will be necessary in the CAD too
Dipole is done I made a 1/2 wave dipole antenna using 14 AWG aluminum wires I recorded 30 mins of work but this job took me 2 total hours to complete For starters i ALMOST disintegrated my 3D printer because of a stupid soda can I forgot i kept it under the arm (the X axis arm that moves up and down) and i didnt realise i kept it there, My first layers were SO trash because of it it was a solid half an hour of troubleshooting till i figured out what the issue was. Thankfully i didnt overtighten my screws so my rails are fine, But i cant say the same about my nozzle My nozzle scraped the bed after i removed the can cuz i set the Z offset too low and i did stop the print but it was lowk a lil late, It still works so thats fine But this stupid 6min print took me 2 Hours of work Anyways, This half wave is made of aluminum 14AWG single cored wire, i used a drill machine to straighten it and then cut 16.75cm pieces ( 2 cm more than that and then i folded the 2 cm part to work as connectors) It looks pretty perfect to me, I hope it works that way too If this doesnt work as expected ill look into building my DIY balun
OH ITS CHRISTMAS EVERYDAY MY PARTS ARRIVED ITS SUCH A MASSIVE BOX I CANT CONTAIN MYSELF, Im so so so excited thankyou zach thankyou stardance and thanku hackclub for getting me all this As soon as my parcel arrived i hopped on da puter tryna make the stepper go brr When i was starting out surprisingly it was NOT working as intended The stepper was making a LOT of noise and it was just jerky and stalling and had 0 torque, for the life of me i couldn’t figure out what the issue was. TURNS OUT, Claude fkin lied to me and told me wrong way to wire the stepper phase wires, so i had changed the wiring of how the stepper connector initially came with, After my free tokens expired i was like shi i gotta take shi in my own hands, I tried that and it instantly worked The torque was perfect and microstepping was insanely clean Now that this wiring stuff is done, all that remains is i have to figre out a way to get the motor encoder with the motor, i have multiple ideas on how i will do it so follow this project to see more of this in the end i would like to thank hackclub once AGAIN for getting me all this i love yall
MY CUSTOM DIPOLE IS WORKING AND NOTHING BURNED FOR STARTERS MY COAX IS HERE I went back to my dipole because it was WAY easier to solder the wires on stainless steel than it was on aluminum, Kinda bummed out cuz stainless steel velocity factor is higher than Al, So im 80% sure my antenna isnt tuned rn (hasn’t unlocked its full potential) Also i havent tuned my antenna for endpoint factor either. I tested with mavlink in same room and another room the RSSI didnt drop, I will be conducting more experiments today driving around tryna compare both the antennas I will research on how to build a 1:1 or 4:1 balun and make that too if possible, follow this proj and lets figure this blackmagic out together
I love writing clean code I genuinely think one thing im good at is writing clean and structured code, Anyways apart from that, i was able to utilize sensorless homing in my TMC2209 drivers which i very ingeniously picked cuz i totally knew what they were capable of. To be honest i was js surfing da net and found out that u can actually home using these drivers without any external switches, so i was able to save the hassle and wire for that, It was pretty hard getting it running im not gonna lie, With help of chatgpt i was able to figure out why it wasnt working, and in the end i was able to get it to home properly I wired up the GPS use a library for it too and then sent those functions in a different header file so my main file remains clean. I coded a lil GPS_3D return func that gives x y and alt of the GPS which we will be using to aim the yagi to the target. You see the no gps fix message cuz my house walls are pretty thick, these GPS cant get fix inside (my planes expensive GPS cant get it indoors either) Update on my rc plane: Its my last day at home before ill be going to clg and it has not stopped raining for a single day so its wraps for that, I might be able to find a window to test it maybe. Tmr ill be working on getting the motor encoder working, Im still waiting up on my bearings and the wodden staff istg its taking way too long
Breadboards are mid and they ruined my life, i got devorced lost my house, kids, properties, car and everything else cuz of them I wrote a header file for this encoder, Normally thesehigh precision 21 bit encoders use SPI to communicate to the MCU, BUT I SWEAR ON MY LIFE THOSE PADS ARE TOO FKIN SMALL. ISTG THESE ARE THE SMALLEST PADS IVE EVER SEEN HOW IS ONE SUPPOSED TO SOLDER ON THESE I was NOT gonna solder those lil shis w my fat and rusted ass soldering iron, so i instead used 14bit resolution PWM out of the encoder, its not AS precise as the 21 bit but il solder them when im home OH AND THIS IS MY HOSTEL ROOM BTW I HATE IT HERE The consistency of this encoder is perfect tho resolution is consistent (both the stepper and the encoder) I showed yall in the video how consistent it was. Sometimes it floats aound a bit but ik its cuz of the breadboard fkin up the pwm signals whcih are alr prone to interference. Ill fix that tho so need to worry, Ill design everything in a way so that in future its very easy to switch from PWM to SPI Anywyas thats all i did for today, for tmr i have better calibration for motors and when the motors calibrate ill calibrate the encoders too, I havent worked much w header files for C, This is my first time so ill have to learn abt that a lot too...
|
1793228116.9267876
|
1793832916.9267876
|
|
58837
|
Deskoo by @itsnotxelite | Stardance
|
itsnotxelite
|
0
|
8.55
|
0
|
[]
|
[{"post_id": 64950, "ts": "202 [{"post_id": 64950, "ts": "2026-09-09T18:01:25Z", "hours": 2.3264, "text": "I am working in the hardware still."}, {"post_id": 64359, "ts": "2026-09-08T17:43:23Z", "hours": 2.4861, "text": "I worked in the Hardware"}, {"post_id": 63729, "ts": "2026-09-07T17:45:39Z", "hours": 2.7206, "text": "i have worked on the Code and The Hardware"}, {"post_id": 63057, "ts": "2026-09-06T17:15:45Z", "hours": 1.0172, "text": "I DECIDED TO PRINT THIS FOR MY DESKOO PROJECT."}]...
|
Title: Deskoo by @itsnotxelite | Stardance
Devlog Title: Deskoo by @itsnotxelite | Stardance
Devlogs:
I DECIDED TO PRINT THIS FOR MY DESKOO PROJECT.
i have worked on the Code and The Hardware
I worked in the Hardware
I am working in the hardware still....
|
1792936268.9352887
|
1793800268.9352887
|
|
56753
|
Cyber_OS by @mr_kn5196 | Stardance
|
mr_kn5196
|
0
|
3.18
|
0
|
[]
|
[{"post_id": 64951, "ts": "202 [{"post_id": 64951, "ts": "2026-09-09T18:02:59Z", "hours": 0.8047, "text": "no major changes since im busy with other commitments :( but heres a baby dino and his mom"}, {"post_id": 60656, "ts": "2026-09-03T04:52:15Z", "hours": 0.2939, "text": "just editing the README"}, {"post_id": 59669, "ts": "2026-09-01T16:21:33Z", "hours": 0.6083, "text": "tried to add a trash bin to trash the stickers you dont like but it didnt work :( sadd"}, {"post_id": 59013, "ts": "2026-08-31T16:24:00Z", "hours": 1.4683, "text": "Started WebOS 2( Cyber_OS) theme:cyberpunk added a welcome screen added a power button to turn on the monitor to view the OS added a place where you can paint and add stickers to decorate your OS"}]...
|
Title: Cyber_OS by @mr_kn5196 | Stardance
Devlogs Title: Cyber_OS by @mr_kn5196 | Stardance
Devlogs:
Started WebOS 2( Cyber_OS) theme:cyberpunk added a welcome screen added a power button to turn on the monitor to view the OS added a place where you can paint and add stickers to decorate your OS
tried to add a trash bin to trash the stickers you dont like but it didnt work :( sadd
just editing the README
no major changes since im busy with other commitments :( but heres a baby dino and his mom...
|
1793397424.9619548
|
1794002224.9619548
|
|
56315
|
3D Physics Simulator by @RajanKC | Stardance
|
RajanKC
|
1
|
6.03
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-01T15:58:18Z", "hours": 5.0, "multiplier": 2.95, "payout": 16, "blessing": "neutral", "text": "Completed the Project. Please rate it good", "repo": "https://github.com/RajanKCKC/3D-Physics", "demo": "https://rajankckc.github.io/3D-Physics/"}]...
|
[{"post_id": 64953, "ts": "202 [{"post_id": 64953, "ts": "2026-09-09T18:06:46Z", "hours": 0.6258, "text": "Implement drag-and-drop functionality for dynamic objects in the physics simulation"}, {"post_id": 60233, "ts": "2026-09-02T13:53:12Z", "hours": 0.4, "text": "Update README.md for improved project description and gameplay instructions"}, {"post_id": 59654, "ts": "2026-09-01T15:56:34Z", "hours": 0.2697, "text": "Update README.md to provide detailed project description, quick start guide, and features overview"}, {"post_id": 59632, "ts": "2026-09-01T15:33:05Z", "hours": 1.1417, "text": "Refactor HTML structure and enhance CSS styles for improved UI and functionality"}, {"post_id": 59584, "ts": "2026-09-01T14:20:11Z", "hours": 0.8872, "text": "Add control panel for physics settings and object spawning"}, {"post_id": 59067, "ts": "2026-08-31T17:49:25Z", "hours": 1.1167, "text": "Enhance user interaction by adding spawn hint and improving scene setup"}, {"post_id": 58244, "ts": "2026-08-30T16:34:11Z", "hours": 0.5497, "text": "Add lighting setup and enhance ground plane creation in the 3D scene"}, {"post_id": 58197, "ts": "2026-08-30T15:33:37Z", "hours": 1.3747, "text": "Add initial HTML, CSS, and JavaScript files for 3D Physics Simulator"}]...
|
Title: 3D Physics Simulator by @RajanKC | Stardanc Title: 3D Physics Simulator by @RajanKC | Stardance
Devlogs:
Add initial HTML, CSS, and JavaScript files for 3D Physics Simulator
Add lighting setup and enhance ground plane creation in the 3D scene
Enhance user interaction by adding spawn hint and improving scene setup
Add control panel for physics settings and object spawning
Refactor HTML structure and enhance CSS styles for improved UI and functionality
Update README.md to provide detailed project description, quick start guide, and features overview
Update README.md for improved project description and gameplay instructions
Implement drag-and-drop functionality for dynamic objects in the physics simulation
Ships:
Completed the Project. Please rate it good...
|
1793620458.6013155
|
1793706858.6013155
|
|
362
|
My profile by @mr_aditya | Stardance
|
mr_aditya
|
1
|
9.19
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-05T19:17:20Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is my first real website which I am going to deploy/ship. I made this website so in future when I make new things or get something new I will link that to that, more likely this website is my profile. Nothing else any doubt or have new project contact me!", "repo": "https://github.com/adi-1001/Personal-Website", "demo": "https://adi-1001.vercel.app/"}]...
|
[{"post_id": 64966, "ts": "202 [{"post_id": 64966, "ts": "2026-09-09T18:23:09Z", "hours": 2.1872, "text": "Rewrite the code now. It should be good, the main problem was javascript but now I tweak it little bit it is good."}, {"post_id": 62400, "ts": "2026-09-05T18:57:11Z", "hours": 3.5333, "text": "Finally the comment box is ready and also I edit the website a little bit , structure it well and add animation into there was a bug where the custom mouse pointer was going far away upon hovering but now it is fixed. I use AI help in some part of animation but now it is pretty good. Check the website out!!"}, {"post_id": 61669, "ts": "2026-09-04T18:17:27Z", "hours": 3.3053, "text": "Website is setup now I am trying to a add feedback system so I can Improve it more and get more ideas also its like new to me this feature."}]...
|
Title: My profile by @mr_aditya | Stardance
Devlo Title: My profile by @mr_aditya | Stardance
Devlogs:
Website is setup now I am trying to a add feedback system so I can Improve it more and get more ideas also its like new to me this feature.
Finally the comment box is ready and also I edit the website a little bit , structure it well and add animation into there was a bug where the custom mouse pointer was going far away upon hovering but now it is fixed. I use AI help in some part of animation but now it is pretty good. Check the website out!!
Rewrite the code now. It should be good, the main problem was javascript but now I tweak it little bit it is good.
Ships:
This is my first real website which I am going to deploy/ship. I made this website so in future when I make new things or get something new I will link that to that, more likely this website is my profile. Nothing else any doubt or have new project contact me!...
|
1793634533.9528985
|
1793720933.9528985
|
|
37881
|
IntelliML – AI Powered Dataset Management & Au IntelliML – AI Powered Dataset Management & AutoML Platform by @ifwhotcheetoss | Stardance...
|
ifwhotcheetoss
|
0
|
39.01
|
0
|
[]
|
[{"post_id": 64967, "ts": "202 [{"post_id": 64967, "ts": "2026-09-09T18:24:26Z", "hours": 7.1086, "text": "heyy guysss whassupp!! so akot has happened and finally my cleaning of dataset is now very close to be perfect .. rn i just did corrected the cleaning part … just check this out and i need suggestions of how can i make it perfect"}, {"post_id": 58990, "ts": "2026-08-31T15:51:19Z", "hours": 11.7933, "text": "Hey guys whatsupp… hope yall are fine… so as my intelliml is coming to end …there were many errors i faced after the completion of backend during frontend dev and api integartion …. ther eare still some fixes that needs to be done but for now focusing more on better quality of eda and automl charts and reports :)"}, {"post_id": 48123, "ts": "2026-08-16T12:42:35Z", "hours": 4.7389, "text": "hey guyss…. so my IntelliML project is coming to its end there is still some integration left but this is what ive done so far…. the backend was already completed but frontend as well as integration of apis is on its way… for now ive integrated eda and the cleaning of dataset… check this out"}, {"post_id": 43471, "ts": "2026-08-08T19:13:20Z", "hours": 5.1603, "text": "hiiii…..hope yall are doin well…. so for my project… The IntelliML backend is now functionally complete. I implemented dataset upload and versioning, profiling and quality analysis, EDA visualizations, and a full AutoML pipeline with multiple models, cross validation, hyperparameter tuning, and detailed evaluation metrics…ive also added model saving and prediction, experiment tracking and comparison, automated PDF report generation, and APIs for downloading predictions, models, and reports. I also added a dashboard summary API to track datasets, models, experiments, reports, and the best-performing model. I’m now working on improving the PDF reports with richer metadata, visualizations, and a more polished presentation."}, {"post_id": 40630, "ts": "2026-08-04T09:37:06Z", "hours": 3.3611, "text": "Enhanced the AutoML Pipeline heyyy guyss…hope yall are doin great…so ive spent this week improving IntelliML’s AutoML pipeline by making model evaluation more detailed and reliable. Added support for precision, recall, and F1-score alongside accuracy, along with confusion matrices and classification reports for better performance analysis. Implemented 5 fold cross validation to provide more robust evaluation and added feature importance for tree-based models to improve model interpretability. I also integrated GridSearchCV for automatic hyperparameter tuning of Random Forest, measured model training time, and expanded the results to include detailed performance metrics for every trained algorithm. To make the pipeline more robust, I added exception handling so that if one model fails, the remaining models continue training without interrupting the workflow. With these improvements, IntelliML now provides a much more complete and reliable AutoML experience, and I’m now moving on to the visualization phase, started with correlation heatmaps."}, {"post_id": 36878, "ts": "2026-07-29T07:40:40Z", "hours": 1.3322, "text": "##Built the AutoML Training Pipeline hii guysss………hope yall are doin well. ive implemented the first version of IntelliML’s AutoML training pipeline, which automates the end-to-end model training process. The pipeline loads the selected dataset, handles missing values, validates the target column, performs train test splitting and one hot encoding, then trains and evaluates multiple machine learning models, including Decision Tree, Random Forest, Logistic Regression, KNN, and Gaussian Naive Bayes. It compares their performance using accuracy and automatically returns the best performing model, making model selection fast and effortless."}, {"post_id": 36236, "ts": "2026-07-28T05:51:04Z", "hours": 1.3792, "text": "##Data Preprocessing Pipeline hey guyss!! hope ya’ll are doin well, so today ive build the data preprocessing pipeline for IntelliML. It can now automatically clean datasets by handling missing values, removing duplicates, encoding categorical features (Label Encoding and One Hot Encoding), scaling numerical data, and detecting outliers using the IQR method. The processed dataset is generated automatically, so it’s ready for model training without any extra manual work."}, {"post_id": 35715, "ts": "2026-07-27T10:05:31Z", "hours": 1.9989, "text": "heyy guysss.. hope yall are doin well so today I focused on dataset versioning and version comparison in IntelliML. I implemented automatic version creation so every new upload is saved as a separate dataset version, along with APIs to view version history and manage stored versions. I also built the first version of the comparison module, which can compare different dataset versions by highlighting changes in rows, columns, schema, data types, missing values, and duplicate records. These features make it much easier to track how datasets evolve over time and provide a solid foundation for future experiment tracking and MLOps workflows."}, {"post_id": 32408, "ts": "2026-07-21T16:01:53Z", "hours": 0.4597, "text": "I’ve implemented dataset profiling and data quality modules for IntelliMl. I’ve added APIs to analyse uploaded datasets by generating metadata(rows, cols etc).With this I’ve implemented data quality checks for missing values, duplicate rows and class distribution analysis"}, {"post_id": 32264, "ts": "2026-07-21T10:15:34Z", "hours": 1.6828, "text": "I’ve build a backend foundation for IntelliML in which I’ve used fastapi with a clean modular architecture. I’ve implemented dataset uploading functionality with automatic metadata storage, SQLITE, SQLAlchemy. The backend is configured with swagger api docs and I’ve started dataset profiling module to generate statistics"}]...
|
Title: IntelliML – AI Powered Dataset Management & Title: IntelliML – AI Powered Dataset Management & AutoML Platform by @ifwhotcheetoss | Stardance
Devlogs:
I’ve build a backend foundation for IntelliML in which I’ve used fastapi with a clean modular architecture. I’ve implemented dataset uploading functionality with automatic metadata storage, SQLITE, SQLAlchemy. The backend is configured with swagger api docs and I’ve started dataset profiling module to generate statistics
I’ve implemented dataset profiling and data quality modules for IntelliMl. I’ve added APIs to analyse uploaded datasets by generating metadata(rows, cols etc).With this I’ve implemented data quality checks for missing values, duplicate rows and class distribution analysis
heyy guysss.. hope yall are doin well so today I focused on dataset versioning and version comparison in IntelliML. I implemented automatic version creation so every new upload is saved as a separate dataset version, along with APIs to view version history and manage stored versions. I also built the first version of the comparison module, which can compare different dataset versions by highlighting changes in rows, columns, schema, data types, missing values, and duplicate records. These features make it much easier to track how datasets evolve over time and provide a solid foundation for future experiment tracking and MLOps workflows.
##Data Preprocessing Pipeline hey guyss!! hope ya’ll are doin well, so today ive build the data preprocessing pipeline for IntelliML. It can now automatically clean datasets by handling missing values, removing duplicates, encoding categorical features (Label Encoding and One Hot Encoding), scaling numerical data, and detecting outliers using the IQR method. The processed dataset is generated automatically, so it’s ready for model training without any extra manual work.
##Built the AutoML Training Pipeline hii guysss………hope yall are doin well. ive implemented the first version of IntelliML’s AutoML training pipeline, which automates the end-to-end model training process. The pipeline loads the selected dataset, handles missing values, validates the target column, performs train test splitting and one hot encoding, then trains and evaluates multiple machine learning models, including Decision Tree, Random Forest, Logistic Regression, KNN, and Gaussian Naive Bayes. It compares their performance using accuracy and automatically returns the best performing model, making model selection fast and effortless.
Enhanced the AutoML Pipeline heyyy guyss…hope yall are doin great…so ive spent this week improving IntelliML’s AutoML pipeline by making model evaluation more detailed and reliable. Added support for precision, recall, and F1-score alongside accuracy, along with confusion matrices and classification reports for better performance analysis. Implemented 5 fold cross validation to provide more robust evaluation and added feature importance for tree-based models to improve model interpretability. I also integrated GridSearchCV for automatic hyperparameter tuning of Random Forest, measured model training time, and expanded the results to include detailed performance metrics for every trained algorithm. To make the pipeline more robust, I added exception handling so that if one model fails, the remaining models continue training without interrupting the workflow. With these improvements, IntelliML now provides a much more complete and reliable AutoML experience, and I’m now moving on to the visualization phase, started with correlation heatmaps.
hiiii…..hope yall are doin well…. so for my project… The IntelliML backend is now functionally complete. I implemented dataset upload and versioning, profiling and quality analysis, EDA visualizations, and a full AutoML pipeline with multiple models, cross validation, hyperparameter tuning, and detailed evaluation metrics…ive also added model saving and prediction, experiment tracking and comparison, automated PDF report generation, and APIs for downloading predictions, models, and reports. I also added a dashboard summary API to track datasets, models, experiments, reports, and the best-performing model. I’m now working on improving the PDF reports with richer metadata, visualizations, and a more polished presentation.
hey guyss…. so my IntelliML project is coming to its end there is still some integration left but this is what ive done so far…. the backend was already completed but frontend as well as integration of apis is on its way… for now ive integrated eda and the cleaning of dataset… check this out
Hey guys whatsupp… hope yall are fine… so as my intelliml is coming to end …there were many errors i faced after the completion of backend during frontend dev and api integartion …. ther eare still some fixes that needs to be done but for now focusing more on better quality of eda and automl charts and reports :)
heyy guysss whassupp!! so akot has happened and finally my cleaning of dataset is now very close to be perfect .. rn i just did corrected the cleaning part … just check this out and i need suggestions of how can i make it perfect...
|
1793562482.2416356
|
1794167282.2416356
|
|
29717
|
random twitch bot by @alexqwsa | Stardance
|
alexqwsa
|
0
|
4.38
|
0
|
[]
|
[{"post_id": 64970, "ts": "202 [{"post_id": 64970, "ts": "2026-09-09T18:33:04Z", "hours": 4.3772, "text": "hi look at this image its a demo of what it does it currently does these stuff: >teto –> pulls user data stuff from ch.tetr.io (it currently pulls my username in it but it’ll be changed to be usable later) >swag –> same deal with the >teto command but for swag.nomaakip.xyz main instance doesnt exist anymore but theres a source code for it (same stuff with the username but on swagsocial ) not in the image but why not mention it: buh –> buh and more… (i think) also i started from a example code from the twitch developer documentation just to let you know, but i wanna add more stuff for it and change some stuff also i forgot to make some commits on the repository lmao im sorry"}]...
|
Title: random twitch bot by @alexqwsa | Stardance
Title: random twitch bot by @alexqwsa | Stardance
Devlogs:
hi look at this image its a demo of what it does it currently does these stuff: >teto –> pulls user data stuff from ch.tetr.io (it currently pulls my username in it but it’ll be changed to be usable later) >swag –> same deal with the >teto command but for swag.nomaakip.xyz main instance doesnt exist anymore but theres a source code for it (same stuff with the username but on swagsocial ) not in the image but why not mention it: buh –> buh and more… (i think) also i started from a example code from the twitch developer documentation just to let you know, but i wanna add more stuff for it and change some stuff also i forgot to make some commits on the repository lmao im sorry...
|
1793202904.1495826
|
1793807704.1495826
|
|
59844
|
Pokemon Battle simulator by @OpNikhil_25 | Stardan Pokemon Battle simulator by @OpNikhil_25 | Stardance...
|
OpNikhil_25
|
0
|
3.75
|
0
|
[]
|
[{"post_id": 64972, "ts": "202 [{"post_id": 64972, "ts": "2026-09-09T18:39:41Z", "hours": 2.655, "text": "#2 > I worked on my Pokemon Battle Simulator today.I added charizard as a second pokemon on my team and made a team list and made the switch option so I can choose a pokemon from my team .I tried switching between Greninja and Charizard in battle , and messing around with various Pokemon stats . I also figured that I need to improve the battle system so that when a Pokemon faints I can switch to another Pokemon"}, {"post_id": 64399, "ts": "2026-09-08T18:59:11Z", "hours": 1.0942, "text": "I’m making a Pokémon Battle Simulator in Python.At the moment I am working on the basic battle system, Pokémon stats, damage calculation, turn based on speed, battle loops, etc."}]...
|
Title: Pokemon Battle simulator by @OpNikhil_25 | Title: Pokemon Battle simulator by @OpNikhil_25 | Stardance
Devlogs:
I’m making a Pokémon Battle Simulator in Python.At the moment I am working on the basic battle system, Pokémon stats, damage calculation, turn based on speed, battle loops, etc.
#2 > I worked on my Pokemon Battle Simulator today.I added charizard as a second pokemon on my team and made a team list and made the switch option so I can choose a pokemon from my team .I tried switching between Greninja and Charizard in battle , and messing around with various Pokemon stats . I also figured that I need to improve the battle system so that when a Pokemon faints I can switch to another Pokemon...
|
1793638385.0373485
|
1794243185.0373485
|
|
58307
|
Neural Network by @NerdyItachi | Stardance
|
NerdyItachi
|
0
|
1.34
|
0
|
[]
|
[{"post_id": 64975, "ts": "202 [{"post_id": 64975, "ts": "2026-09-09T18:45:38Z", "hours": 0.3922, "text": "1.34k neruons currently active :D"}, {"post_id": 64949, "ts": "2026-09-09T18:00:52Z", "hours": 0.9436, "text": "Worked on the basic neurons as per for yesterday but lets see today"}]...
|
Title: Neural Network by @NerdyItachi | Stardance
Title: Neural Network by @NerdyItachi | Stardance
Devlogs:
Worked on the basic neurons as per for yesterday but lets see today
1.34k neruons currently active :D...
|
1792932744.5077949
|
1793796744.5077949
|
|
57121
|
Rustify by @brny | Stardance
|
brny
|
0
|
3.67
|
0
|
[]
|
[{"post_id": 64977, "ts": "202 [{"post_id": 64977, "ts": "2026-09-09T18:53:48Z", "hours": 0.5731, "text": "cout, or idk how you print strings i lost my sticky streak new feature just dropped you can now use simple cout statements but with one catch. the cout statement has to not have any spaces and be structured like cout « “foo” « endl; future goals: vector support function calling support string support thanks for reading this short devlog 1x bonus meme included in the screenshots in the screenshot below, all the commented code is features that will be implemented soon in the future."}, {"post_id": 63798, "ts": "2026-09-07T19:17:49Z", "hours": 0.3519, "text": "data types are fun a devlog a day keeps my streak alive whats up rust programmers who are looking to rewrite everything in rust. some new features just dropped that will make your lives much easier. (not guaranteed) new rustify features: support for booleans support for doubles support for floats support for bool, double and float functions future goals: cout && cin support support for calling functions note: this project is still in development and is lacking a lot of features. thanks for reading this short little devlog screenshot 1: code that was converted from c++, screenshot 2: original c++ code"}, {"post_id": 63181, "ts": "2026-09-06T20:53:06Z", "hours": 0.3583, "text": "rust > c++ a devlog a day keeps the heidi away whats up crustaceans (or c++ devs), some slight changes dropped to rustify the new changes include: functions (half working) a very nice looking and updated readme this readme includes instructions on how to build it or download it and the lore behind it some interesting lore behind this project as this devlog is very short Q: what is the inspiration behind this A: i made this because of the meme that rust developers rewrite c++ in rust Q: can i use this in production A: this is not made to be used standalone in production but it could work really well if used with an ai agent, might even write a opencode or claude skill for it. Q: can this convert c code? A: no thanks for reading this devlog screenshot of the new readme"}, {"post_id": 62462, "ts": "2026-09-05T20:21:19Z", "hours": 0.3319, "text": "small devlog a devlog a day keeps the orpheus away really small devlog, i just wanted to publish today’s one new changes: begin work on handling vectors remove completed todo items add a new test c++ file future goals: vector handling handling cout handling cin thanks for reading this devlog screenshot of the new file being converted, the compile errors arent a bad thing they are just reminders that you need to manually fix the code."}, {"post_id": 61657, "ts": "2026-09-04T17:58:29Z", "hours": 0.5361, "text": "new rustify feature! new rustify feature just dropped now, instead of having comments for unkown keywords e.g // UNKNOWN KEYWORD std::foo() they are replaced with compile errors e.g compile_error!(\"UNKNOWN KEYWORD std::foo()); this makes it easier to catch unknown keywords in large codebases and cancels the auto-compilation at the end. this is useful as the code may be broken if its missing a function or an integer the code is now also compiled at the end and the executable is placed next to the rust source file to-do list: ability to call functions std::cout support thank you for reading this devlog screenshot of the converter compiling the code and the compile errors doing their thing"}, {"post_id": 61054, "ts": "2026-09-03T19:22:54Z", "hours": 0.3608, "text": "devlog time! ok, this is a short devlog as i just wanted to get one out for the day new features: support for code in the comments support for void functions current todo-list: change comments regarding errors in the code to compile errors when detecting specific keywords, set a boolean to true that signifies that it requires a library be able to call functions from the converted code even though its really short, thanks for reading it screenshot of the converted code below"}, {"post_id": 60188, "ts": "2026-09-02T12:45:59Z", "hours": 0.6044, "text": "another day, another quick devlog Lots of new additions have just dropped for rustify that is going to make converting c++ code into rust easier. New features include: Support for integers Support for functions Support for returning Other, smaller changes in the code: Instead of reading directly from a vector, an iterator is being read, this allows for more flexibility with the code. Goals for the future: Verify C++ code before converting Call rustc when finished Support for vectors, strings and booleans Support for calling functions Support for cout, cerr, cin and endl Support for some other basic libraries I know this is a short devlog, but thank you for reading it. Image of the process and the converted code output"}, {"post_id": 59800, "ts": "2026-09-01T18:54:18Z", "hours": 0.5508, "text": "🤖 must rewrite it in rust new project! rustify is a simple tool that allows the user to rewrite c++ code in rust, with just the click of a button. only works on simple code tho but is blazing fast because it is written in rust. currently, it can: open the c++ source file write to the rust source file parse simple code such as include iostream or int main() color text output! things to implement in the future: support for more c++ keywords call rustc to compile the program call a compiler to verify the c++ program is correct before rewriting adding comments to functions/keywords that are not detected thank you for reading this devlog screenshot of the current version of the program parsing a source file and writing it to a rust source file (visible in second screenshot)"}]...
|
Title: Rustify by @brny | Stardance
Devlogs:
🤖 mu Title: Rustify by @brny | Stardance
Devlogs:
🤖 must rewrite it in rust new project! rustify is a simple tool that allows the user to rewrite c++ code in rust, with just the click of a button. only works on simple code tho but is blazing fast because it is written in rust. currently, it can: open the c++ source file write to the rust source file parse simple code such as include iostream or int main() color text output! things to implement in the future: support for more c++ keywords call rustc to compile the program call a compiler to verify the c++ program is correct before rewriting adding comments to functions/keywords that are not detected thank you for reading this devlog screenshot of the current version of the program parsing a source file and writing it to a rust source file (visible in second screenshot)
another day, another quick devlog Lots of new additions have just dropped for rustify that is going to make converting c++ code into rust easier. New features include: Support for integers Support for functions Support for returning Other, smaller changes in the code: Instead of reading directly from a vector, an iterator is being read, this allows for more flexibility with the code. Goals for the future: Verify C++ code before converting Call rustc when finished Support for vectors, strings and booleans Support for calling functions Support for cout, cerr, cin and endl Support for some other basic libraries I know this is a short devlog, but thank you for reading it. Image of the process and the converted code output
devlog time! ok, this is a short devlog as i just wanted to get one out for the day new features: support for code in the comments support for void functions current todo-list: change comments regarding errors in the code to compile errors when detecting specific keywords, set a boolean to true that signifies that it requires a library be able to call functions from the converted code even though its really short, thanks for reading it screenshot of the converted code below
new rustify feature! new rustify feature just dropped now, instead of having comments for unkown keywords e.g // UNKNOWN KEYWORD std::foo() they are replaced with compile errors e.g compile_error!("UNKNOWN KEYWORD std::foo()); this makes it easier to catch unknown keywords in large codebases and cancels the auto-compilation at the end. this is useful as the code may be broken if its missing a function or an integer the code is now also compiled at the end and the executable is placed next to the rust source file to-do list: ability to call functions std::cout support thank you for reading this devlog screenshot of the converter compiling the code and the compile errors doing their thing
small devlog a devlog a day keeps the orpheus away really small devlog, i just wanted to publish today’s one new changes: begin work on handling vectors remove completed todo items add a new test c++ file future goals: vector handling handling cout handling cin thanks for reading this devlog screenshot of the new file being converted, the compile errors arent a bad thing they are just reminders that you need to manually fix the code.
rust > c++ a devlog a day keeps the heidi away whats up crustaceans (or c++ devs), some slight changes dropped to rustify the new changes include: functions (half working) a very nice looking and updated readme this readme includes instructions on how to build it or download it and the lore behind it some interesting lore behind this project as this devlog is very short Q: what is the inspiration behind this A: i made this because of the meme that rust developers rewrite c++ in rust Q: can i use this in production A: this is not made to be used standalone in production but it could work really well if used with an ai agent, might even write a opencode or claude skill for it. Q: can this convert c code? A: no thanks for reading this devlog screenshot of the new readme
data types are fun a devlog a day keeps my streak alive whats up rust programmers who are looking to rewrite everything in rust. some new features just dropped that will make your lives much easier. (not guaranteed) new rustify features: support for booleans support for doubles support for floats support for bool, double and float functions future goals: cout && cin support support for calling functions note: this project is still in development and is lacking a lot of features. thanks for reading this short little devlog screenshot 1: code that was converted from c++, screenshot 2: original c++ code
cout, or idk how you print strings i lost my sticky streak new feature just dropped you can now use simple cout statements but with one catch. the cout statement has to not have any spaces and be structured like cout « “foo” « endl; future goals: vector support function calling support string support thanks for reading this short devlog 1x bonus meme included in the screenshots in the screenshot below, all the commented code is features that will be implemented soon in the future....
|
1793418547.3146532
|
1794023347.3146532
|
|
15743
|
Android Communication Suite by @angad | Stardance
|
angad
|
0
|
1.14
|
0
|
[]
|
[{"post_id": 6498, "ts": "2026 [{"post_id": 6498, "ts": "2026-06-10T22:21:03Z", "hours": 1.1411, "text": "Started the contacts app from scratch today. Two commits in. Data layer The bulk of today was designing how contact data reads and writes. Android’s ContactsContract API is cursor-based, untyped, and imperative (i.e. a pain), so I built an abstraction on top of it. Contacts are structured by being completely unstructured. In essence, the Android contact directory are a list of fields. Each field includes a unique identifier, a MIME type, the contact it aims to be assigned to, and a bunch of data fields (data0..data15). The shape of the data fields are determined by the MIME type. For example, a phone number field could assign data0 to the number itself, and a name field could assign data0 to the given (first) name. Android has the shape of commonly-used fields stored as a bunch of constants. I used that information to build wrappers for all of the common fields. Each field class knows how to parse a cursor and how to write itself to a WriteBuffer. UI Basics I’m using still-experimental Material 3 Expressive APIs. So far, I drew a nice search bar which will animate on open and on close, and currently does nothing else."}]...
|
Title: Android Communication Suite by @angad | Sta Title: Android Communication Suite by @angad | Stardance
Devlogs:
Started the contacts app from scratch today. Two commits in. Data layer The bulk of today was designing how contact data reads and writes. Android’s ContactsContract API is cursor-based, untyped, and imperative (i.e. a pain), so I built an abstraction on top of it. Contacts are structured by being completely unstructured. In essence, the Android contact directory are a list of fields. Each field includes a unique identifier, a MIME type, the contact it aims to be assigned to, and a bunch of data fields (data0..data15). The shape of the data fields are determined by the MIME type. For example, a phone number field could assign data0 to the number itself, and a name field could assign data0 to the given (first) name. Android has the shape of commonly-used fields stored as a bunch of constants. I used that information to build wrappers for all of the common fields. Each field class knows how to parse a cursor and how to write itself to a WriteBuffer. UI Basics I’m using still-experimental Material 3 Expressive APIs. So far, I drew a nice search bar which will animate on open and on close, and currently does nothing else....
|
1793544695.6723666
|
1794149495.6723666
|
|
35012
|
Lotus 5-DOF robotic arm by @ATheChampion | Stardan Lotus 5-DOF robotic arm by @ATheChampion | Stardance...
|
ATheChampion
|
0
|
34.26
|
0
|
[]
|
[{"post_id": 64980, "ts": "202 [{"post_id": 64980, "ts": "2026-09-09T19:05:17Z", "hours": 8.4214, "text": "I designed the rotating base of the arm with screw holes to mount each servo and connected this to a planetary gearbox with a 4:1 transmission ratio so that the first axis is able to have 120kg.cm of torque. Doing this means that it will be more accurate and precise and that the servo will be under less stress and will run at lower temperatures. I also designed the base frame which the servo sits in which has a nice pattern that i named the arm after. I finished by creating the brackets for the planetary gearbox and servo to be connected to the base frame, then recorded all the different parts needed for the robotic arm and completed the design stage."}, {"post_id": 60422, "ts": "2026-09-02T18:45:48Z", "hours": 10.005, "text": "I finished the timing belt system and then designed the head in order to allow a wrist roll mechanism on the end effector. Because of the tiny amount of space available I had to make it as compact as possible using the smallest gears and bevel gears I could find. I then had to make sure I’d actually be able to put everything into place in real life so created all the required gaps in the head. (I also created the toolhead which can actually 3d print but I have no clue where the recording is and can’t remember if I even did record it). After doing this I unfortunately had to stay in hospital for 2 weeks so I lost alot of time and focus but now I’m out and I created a sort of roof for each joint with cantilever clips that will snap into each wall and connect them together. These have holes which will carry cables and give the arm a much sleeker look."}, {"post_id": 45083, "ts": "2026-08-11T11:01:57Z", "hours": 15.8317, "text": "Made parallel linkage mechanism and timing belt system. I started by making the system where a servo can control the end effector and then adding gaps in the linkage bars so that they don’t hit the end of screws. When i finished making that system I tried finding a way for the Feetech SCS0009 to be able to do the wrist roll and I spent quite a few hours on that until I realised it doesn’t even have enough torque so I would need to have a stronger servo for that. I decided on the Feetech STS3215 because that’s what all the other servos are so it would just be easier. I had to have it attached to the main frame and then I looked at some different ways I could control the wrist roll remotely, deciding on a timing belt drive system because parallel linkage mechanism wouldn’t fit. Making the timing belt system was super hard because I had really small amounts of space to work with so needed the smallest parts possible like the pulleys and the timing belts as well as the ball bearings and then have them all be screwed/connected to the main frame."}]...
|
Title: Lotus 5-DOF robotic arm by @ATheChampion | Title: Lotus 5-DOF robotic arm by @ATheChampion | Stardance
Devlogs:
Made parallel linkage mechanism and timing belt system. I started by making the system where a servo can control the end effector and then adding gaps in the linkage bars so that they don’t hit the end of screws. When i finished making that system I tried finding a way for the Feetech SCS0009 to be able to do the wrist roll and I spent quite a few hours on that until I realised it doesn’t even have enough torque so I would need to have a stronger servo for that. I decided on the Feetech STS3215 because that’s what all the other servos are so it would just be easier. I had to have it attached to the main frame and then I looked at some different ways I could control the wrist roll remotely, deciding on a timing belt drive system because parallel linkage mechanism wouldn’t fit. Making the timing belt system was super hard because I had really small amounts of space to work with so needed the smallest parts possible like the pulleys and the timing belts as well as the ball bearings and then have them all be screwed/connected to the main frame.
I finished the timing belt system and then designed the head in order to allow a wrist roll mechanism on the end effector. Because of the tiny amount of space available I had to make it as compact as possible using the smallest gears and bevel gears I could find. I then had to make sure I’d actually be able to put everything into place in real life so created all the required gaps in the head. (I also created the toolhead which can actually 3d print but I have no clue where the recording is and can’t remember if I even did record it). After doing this I unfortunately had to stay in hospital for 2 weeks so I lost alot of time and focus but now I’m out and I created a sort of roof for each joint with cantilever clips that will snap into each wall and connect them together. These have holes which will carry cables and give the arm a much sleeker look.
I designed the rotating base of the arm with screw holes to mount each servo and connected this to a planetary gearbox with a 4:1 transmission ratio so that the first axis is able to have 120kg.cm of torque. Doing this means that it will be more accurate and precise and that the servo will be under less stress and will run at lower temperatures. I also designed the base frame which the servo sits in which has a nice pattern that i named the arm after. I finished by creating the brackets for the planetary gearbox and servo to be connected to the base frame, then recorded all the different parts needed for the robotic arm and completed the design stage....
|
1793404396.934528
|
1794009196.934528
|
|
59530
|
Tanzil-Portfolio by @itsnotxelite | Stardance
|
itsnotxelite
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T19:14:04Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website about myself. it include my works and skills. I learned the html, but building the design and animations was challneging for me. sometimes in error i used to ai to answer my questions and asked ai to write a paragraph about myself. You all can check my website.", "repo": "https://github.com/Xelite-00/My-Website", "demo": "https://xelite-00.github.io/My-Website/"}]...
|
[{"post_id": 64981, "ts": "202 [{"post_id": 64981, "ts": "2026-09-09T19:05:38Z", "hours": 4.3378, "text": "I Completed My Website, Check it in “ https://xelite-00.github.io/My-Website/ ”"}]...
|
Title: Tanzil-Portfolio by @itsnotxelite | Stardan Title: Tanzil-Portfolio by @itsnotxelite | Stardance
Devlogs:
I Completed My Website, Check it in “ https://xelite-00.github.io/My-Website/ ”
Ships:
I made a personal website about myself. it include my works and skills. I learned the html, but building the design and animations was challneging for me. sometimes in error i used to ai to answer my questions and asked ai to write a paragraph about myself. You all can check my website....
|
1792878699.440495
|
1793742699.440495
|
|
41517
|
Jar designer web by @wilmerBailon | Stardance
|
wilmerBailon
|
1
|
11.74
|
142
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-16T08:53:02Z", "hours": 8.0, "multiplier": 16.81, "payout": 142, "blessing": "neutral", "text": "Hello there! This is my first Hack Club proyect. I am proud of been part of the community. I usually do small proyects just for entretainment in my free time and I found this initiative incredible. I am open for any suggestion and new ideas. The proyect is a jar designer web application (ClayForge). My aim was to generate parametrized vase models (.stl) through an instant visual input in 2D that I could print in my 3D printer. The most difficult part was adding the spins only to the external surface, at first it changed all the design. Thanks for your time, I hope you like it.", "repo": "https://github.com/w7714218-sys/ClayForge-Jar-project", "demo": "https://clayforge.dino.icu/"}]...
|
[{"post_id": 64995, "ts": "202 [{"post_id": 64995, "ts": "2026-09-09T19:23:46Z", "hours": 2.7364, "text": "Today I worked on ClayForge based on the feedback I received.I made several changes to simplify the project and make the codebase cleaner and easier to understand. I also reorganized some of the JavaScript, cleaned up the CSS and removed some unnecessary files and configuration.I updated the README as well so it is more concise and focused on the project itself.Overall, today’s work was mainly about taking the feedback into account and cleaning up the project without changing its main functionality.Hope it gets accepted.=)"}, {"post_id": 64809, "ts": "2026-09-09T14:17:06Z", "hours": 1.0067, "text": "I took the feedback into account and spent some time reworking the styling and parts of the logic. I changed the layout, spacing and visual details. I’ll keep refining it as I continue working on it.Hope it gets accepted =)."}, {"post_id": 41587, "ts": "2026-08-05T21:41:17Z", "hours": 0.2703, "text": "It worked!!! :)"}, {"post_id": 41353, "ts": "2026-08-05T14:43:00Z", "hours": 0.56, "text": "I added a spiral effect to the vase generator and spent some time testing different shapes and parameters. The results are looking pretty interesting so far. Next step is to print one on my 3D printer and see how it turns out in real life. Hopefully everything works as expected! :)"}, {"post_id": 41307, "ts": "2026-08-05T13:34:34Z", "hours": 5.4686, "text": "Spent a good amount of time working on ClayForge these days. The project is starting to feel much more solid and usable. I improved the overall interface, cleaned up the design panel, added more controls and kept refining the vase editor.I had some problems with the initial structure of the project but I was able to solve them with a little help of copilot. There’s still plenty to do, but it’s coming together nicely and feels much closer to the tool I have in mind. Looking forward to building on this in the next sessions."}, {"post_id": 40166, "ts": "2026-08-03T15:54:30Z", "hours": 1.7781, "text": "Today I spent some time improving ClayForge and making the project feel more like a real application. I reorganized the code into different files to keep everything cleaner and easier to maintain. I also finished the profile editor on the left side of the screen. It now shows the grid, the vase profile and the control points. The best part is that the control points are now interactive. I can drag them with the mouse and the 3D vase updates instantly, which makes it much easier to experiment with different shapes. Most of today was spent cleaning up the code and fixing small issues after splitting everything into modules, but now the project has a much better foundation for adding more features. Next, I want to add wall thickness, smoother curves and STL export so the vases can be 3D printed."}, {"post_id": 39571, "ts": "2026-08-02T17:03:37Z", "hours": 0.345, "text": "Hello there!!, this is my first project on the community which seems to be a really engaging initiative. Today I started the project and set up the development environment. I created the initial project structure, installed Node.js, and configured npm together with Vite. After that, I added Three.js and built a simple interactive 3D scene with a cube to make sure everything was working as expected. For the next stage of the project, I want to replace the cube with a procedurally generated vase and start working on the main object of the application."}]...
|
Title: Jar designer web by @wilmerBailon | Stardan Title: Jar designer web by @wilmerBailon | Stardance
Devlogs:
Hello there!!, this is my first project on the community which seems to be a really engaging initiative. Today I started the project and set up the development environment. I created the initial project structure, installed Node.js, and configured npm together with Vite. After that, I added Three.js and built a simple interactive 3D scene with a cube to make sure everything was working as expected. For the next stage of the project, I want to replace the cube with a procedurally generated vase and start working on the main object of the application.
Today I spent some time improving ClayForge and making the project feel more like a real application. I reorganized the code into different files to keep everything cleaner and easier to maintain. I also finished the profile editor on the left side of the screen. It now shows the grid, the vase profile and the control points. The best part is that the control points are now interactive. I can drag them with the mouse and the 3D vase updates instantly, which makes it much easier to experiment with different shapes. Most of today was spent cleaning up the code and fixing small issues after splitting everything into modules, but now the project has a much better foundation for adding more features. Next, I want to add wall thickness, smoother curves and STL export so the vases can be 3D printed.
Spent a good amount of time working on ClayForge these days. The project is starting to feel much more solid and usable. I improved the overall interface, cleaned up the design panel, added more controls and kept refining the vase editor.I had some problems with the initial structure of the project but I was able to solve them with a little help of copilot. There’s still plenty to do, but it’s coming together nicely and feels much closer to the tool I have in mind. Looking forward to building on this in the next sessions.
I added a spiral effect to the vase generator and spent some time testing different shapes and parameters. The results are looking pretty interesting so far. Next step is to print one on my 3D printer and see how it turns out in real life. Hopefully everything works as expected! :)
It worked!!! :)
I took the feedback into account and spent some time reworking the styling and parts of the logic. I changed the layout, spacing and visual details. I’ll keep refining it as I continue working on it.Hope it gets accepted =).
Today I worked on ClayForge based on the feedback I received.I made several changes to simplify the project and make the codebase cleaner and easier to understand. I also reorganized some of the JavaScript, cleaned up the CSS and removed some unnecessary files and configuration.I updated the README as well so it is more concise and focused on the project itself.Overall, today’s work was mainly about taking the feedback into account and cleaning up the project without changing its main functionality.Hope it gets accepted.=)
Ships:
Hello there! This is my first Hack Club proyect. I am proud of been part of the community. I usually do small proyects just for entretainment in my free time and I found this initiative incredible. I am open for any suggestion and new ideas. The proyect is a jar designer web application (ClayForge). My aim was to generate parametrized vase models (.stl) through an instant visual input in 2D that I could print in my 3D printer. The most difficult part was adding the spins only to the external surface, at first it changed all the design. Thanks for your time, I hope you like it....
|
1792878538.4503243
|
1793742538.4503243
|
|
44160
|
Voxlord by @Praknoor | Stardance
|
Praknoor
|
1
|
36.04
|
20
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T14:37:51Z", "hours": 16.0, "multiplier": 1.96, "payout": 20, "blessing": "neutral", "text": "so this is a game i made for fun, custum engine, made it by myself😭, it was made only for fun, hope u like it…. rn now the character selection doesn’t work, but u can skip it by just pressing enter", "repo": "https://github.com/GurnoorLog/Voxelord", "demo": "https://github.com/GurnoorLog/Voxelord/releases/tag/voxlord"}]...
|
[{"post_id": 65005, "ts": "202 [{"post_id": 65005, "ts": "2026-09-09T19:45:42Z", "hours": 4.8894, "text": "yoo gng improved the world, and the sky, added also a launch screen"}, {"post_id": 60324, "ts": "2026-09-02T16:35:46Z", "hours": 3.3658, "text": "improved the world and also added an mcp so u can play with ure llm(why did i add that? idk just for fun 😭😭😭😭😭😭)"}, {"post_id": 49771, "ts": "2026-08-18T18:10:35Z", "hours": 3.0428, "text": "yoo gng i have just added the the clouds, improved the sky, and the water , i am now working on the multiplayer side"}, {"post_id": 48375, "ts": "2026-08-16T18:13:24Z", "hours": 8.7394, "text": "yop gng jsut made improvmnet…made it more optimized, also improved the world lighthingh"}, {"post_id": 41251, "ts": "2026-08-05T10:49:28Z", "hours": 15.6686, "text": "yoo gng….so i made this game just for fun, maybe i will add also some backgroud track"}]...
|
Title: Voxlord by @Praknoor | Stardance
Devlogs:
Title: Voxlord by @Praknoor | Stardance
Devlogs:
yoo gng….so i made this game just for fun, maybe i will add also some backgroud track
yop gng jsut made improvmnet…made it more optimized, also improved the world lighthingh
yoo gng i have just added the the clouds, improved the sky, and the water , i am now working on the multiplayer side
improved the world and also added an mcp so u can play with ure llm(why did i add that? idk just for fun 😭😭😭😭😭😭)
yoo gng improved the world, and the sky, added also a launch screen
Ships:
so this is a game i made for fun, custum engine, made it by myself😭, it was made only for fun, hope u like it…. rn now the character selection doesn’t work, but u can skip it by just pressing enter...
|
1793595337.4566596
|
1793681737.4566596
|
|
58879
|
Disco(elysium) alarm by @reaous | Stardance
|
reaous
|
0
|
6.21
|
0
|
[]
|
[{"post_id": 65008, "ts": "202 [{"post_id": 65008, "ts": "2026-09-09T19:55:37Z", "hours": 5.5317, "text": "Disco elysium alarm - Had to reqire the schematics since i messed it up last time , and then did some PCB silk Screen art !"}, {"post_id": 62864, "ts": "2026-09-06T12:15:11Z", "hours": 0.6833, "text": "Disco elysium-esque Alarm : So this is my first devlog , and i designed the alarm clock and what the theme was(retrofuturistic artsy ), where the screens should be and things , i posted the refernce frame here so go through it if you guys wanna ! nextly i will go through the pcb documentation and then build the pcb in kiCad"}]...
|
Title: Disco(elysium) alarm by @reaous | Stardance Title: Disco(elysium) alarm by @reaous | Stardance
Devlogs:
Disco elysium-esque Alarm : So this is my first devlog , and i designed the alarm clock and what the theme was(retrofuturistic artsy ), where the screens should be and things , i posted the refernce frame here so go through it if you guys wanna ! nextly i will go through the pcb documentation and then build the pcb in kiCad
Disco elysium alarm - Had to reqire the schematics since i messed it up last time , and then did some PCB silk Screen art !...
|
1793516148.0958602
|
1794120948.0958602
|
|
14584
|
pdf-tools by @ahmoin | Stardance
|
ahmoin
|
0
|
2.15
|
0
|
[]
|
[{"post_id": 6501, "ts": "2026 [{"post_id": 6501, "ts": "2026-06-10T22:31:37Z", "hours": 2.1475, "text": "a website that provides a PDF toolkit that runs entirely client-side using WebAssembly, only the AI merge feature sends extracted page text to a server for planning. picked mupdf as the PDF engine since it compiles to WASM and covers everything needed: merging, splitting, rotating, page manipulation, and rendering to images. getting mupdf to work with Next.js took some configuration. it uses top level await for WASM initialisation, so webpack needed asyncWebAssembly and topLevelAwait experiments enabled. also had to stub out Node.js built-ins (fs, path, module, etc.) for the browser bundle since mupdf conditionally imports them in Node environments. Next.js uses Turbopack by default but I couldn’t get it working so I moved to webpack via the –webpack flag. a key detail with mupdf was the buffer copy pattern. buf.asUint8Array() returns a view into the WASM heap, not a real JS buffer. passing it directly to a Blob gives a corrupted or empty file. had to copy the bytes out first with new Uint8Array(src.byteLength). features built: merge: combines multiple PDFs, with an optional AI instruction field that sends extracted page text to Gemini 2.5 Flash via Vercel AI Gateway and gets back a structured page plan split: extracts every page into its own PDF, downloaded as a ZIP rotate: rotates all or specific pages by 90/180/270 degrees remove pages: deletes specific pages by number or range (1, 3, 5-7, etc.) extract pages: saves specific pages as a new PDF pdf to images: renders each page as a PNG at 2x scale, downloaded as a ZIP UI is a resizable panel layout, tools on the left and PDF preview iframe on the right. on mobile it stacks vertically. tool picker is a list of items, clicking one shows that tool’s upload UI and action button. button label changes per tool (“merge 3 PDFs”, “split PDF”, etc.) https://pdf.ahmoin.com"}]...
|
Title: pdf-tools by @ahmoin | Stardance
Devlogs:
Title: pdf-tools by @ahmoin | Stardance
Devlogs:
a website that provides a PDF toolkit that runs entirely client-side using WebAssembly, only the AI merge feature sends extracted page text to a server for planning. picked mupdf as the PDF engine since it compiles to WASM and covers everything needed: merging, splitting, rotating, page manipulation, and rendering to images. getting mupdf to work with Next.js took some configuration. it uses top level await for WASM initialisation, so webpack needed asyncWebAssembly and topLevelAwait experiments enabled. also had to stub out Node.js built-ins (fs, path, module, etc.) for the browser bundle since mupdf conditionally imports them in Node environments. Next.js uses Turbopack by default but I couldn’t get it working so I moved to webpack via the –webpack flag. a key detail with mupdf was the buffer copy pattern. buf.asUint8Array() returns a view into the WASM heap, not a real JS buffer. passing it directly to a Blob gives a corrupted or empty file. had to copy the bytes out first with new Uint8Array(src.byteLength). features built: merge: combines multiple PDFs, with an optional AI instruction field that sends extracted page text to Gemini 2.5 Flash via Vercel AI Gateway and gets back a structured page plan split: extracts every page into its own PDF, downloaded as a ZIP rotate: rotates all or specific pages by 90/180/270 degrees remove pages: deletes specific pages by number or range (1, 3, 5-7, etc.) extract pages: saves specific pages as a new PDF pdf to images: renders each page as a PNG at 2x scale, downloaded as a ZIP UI is a resizable panel layout, tools on the left and PDF preview iframe on the right. on mobile it stacks vertically. tool picker is a list of items, clicking one shows that tool’s upload UI and action button. button label changes per tool (“merge 3 PDFs”, “split PDF”, etc.) https://pdf.ahmoin.com...
|
1793329173.1079278
|
1793933973.1079278
|
|
29361
|
ddos tool by @ascpixi | Stardance
|
ascpixi
|
1
|
53.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T20:13:32Z", "hours": 53.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I ermmm submitted this to test if the ship flow in stardance works :-)", "repo": "https://github.com/ascpixi/claudec", "demo": "https://vercel.com"}]...
|
[{"post_id": 65012, "ts": "202 [{"post_id": 65012, "ts": "2026-09-09T20:08:33Z", "hours": 52.7667, "text": "This is a test devlog. It is a really good devlog. I am a big fan of logging my dev"}]...
|
Title: ddos tool by @ascpixi | Stardance
Devlogs: Title: ddos tool by @ascpixi | Stardance
Devlogs:
This is a test devlog. It is a really good devlog. I am a big fan of logging my dev
Ships:
I ermmm submitted this to test if the ship flow in stardance works :-)...
|
1793580540.2978737
|
1793666940.2978737
|
|
60095
|
A Minimalist's Homepage by @thewildchip | Star A Minimalist's Homepage by @thewildchip | Stardance...
|
thewildchip
|
0
|
6.61
|
0
|
[]
|
[{"post_id": 65014, "ts": "202 [{"post_id": 65014, "ts": "2026-09-09T20:10:02Z", "hours": 0.3344, "text": "F*ck React – Part 1: A Minimalist’s finds Hugo + 渋い View the live site · Source Code (clickbait title haha) I found that interesting because I thought personal pages had to be flashy and have trending effects. For me, that was the barrier to publishing my own website, as I absolutely hate JS and these frontend libraries (nothing against people who love such things). This led me to find the best static site generator for my needs: Hugo , paired with this template – shoutout to ntk148v for this amazing 🪄 minimal theme. I found Karpathy’s point of view (read Part 0 ) interesting because I thought personal pages had to be flashy and have trending effects. For me, that was the barrier to publishing my own website, as I absolutely hate JS and these frontend libraries (nothing against people who love such things). This led me to find the best static site generator for my needs: Hugo , paired with this template – shoutout to ntk148v for this amazing 🪄 minimal theme. One of Hugo’s biggest benefits is that you can edit your content using Markdown files in /content/ . Theme customizations are also easy, as you only need to edit /assets/css/custom.css to override the default styles in /assets/css/main.css . Layouts can be customized in /layouts/ , while further configuration can be changed in hugo.toml . After that, I roughly designed (picture below) how I wanted the website to look and customized the theme and layout with the assistance of Hermes , and of course filled in the content myself. For the colors, I took inspiration from Nous Research . I also added separate pages for my CV (have not uploaded the public version yet), contact, and writings. Deploying with GitHub Pages is simple, as every push to main triggers the GitHub Actions workflow automatically and Hugo builds the site."}, {"post_id": 64999, "ts": "2026-09-09T19:32:03Z", "hours": 6.2747, "text": "F * ck React – Part 0: Beginning Of A Minimalist’s Homepage View the live site · Source Code (clickbait title haha) Anyone who is interested in AI (sorry for bringing up this word) knows Andrej Karpathy. While reading through his homepage (last visited: 09/09/26), I stumbled upon this paragraph: 0 frameworks were used to make this simple responsive website because I am becoming seriously allergic to 500-pound websites. This one is pure HTML and CSS in two static files and that’s it."}]...
|
Title: A Minimalist's Homepage by @thewildchip Title: A Minimalist's Homepage by @thewildchip | Stardance
Devlogs:
F * ck React – Part 0: Beginning Of A Minimalist’s Homepage View the live site · Source Code (clickbait title haha) Anyone who is interested in AI (sorry for bringing up this word) knows Andrej Karpathy. While reading through his homepage (last visited: 09/09/26), I stumbled upon this paragraph: 0 frameworks were used to make this simple responsive website because I am becoming seriously allergic to 500-pound websites. This one is pure HTML and CSS in two static files and that’s it.
F*ck React – Part 1: A Minimalist’s finds Hugo + 渋い View the live site · Source Code (clickbait title haha) I found that interesting because I thought personal pages had to be flashy and have trending effects. For me, that was the barrier to publishing my own website, as I absolutely hate JS and these frontend libraries (nothing against people who love such things). This led me to find the best static site generator for my needs: Hugo , paired with this template – shoutout to ntk148v for this amazing 🪄 minimal theme. I found Karpathy’s point of view (read Part 0 ) interesting because I thought personal pages had to be flashy and have trending effects. For me, that was the barrier to publishing my own website, as I absolutely hate JS and these frontend libraries (nothing against people who love such things). This led me to find the best static site generator for my needs: Hugo , paired with this template – shoutout to ntk148v for this amazing 🪄 minimal theme. One of Hugo’s biggest benefits is that you can edit your content using Markdown files in /content/ . Theme customizations are also easy, as you only need to edit /assets/css/custom.css to override the default styles in /assets/css/main.css . Layouts can be customized in /layouts/ , while further configuration can be changed in hugo.toml . After that, I roughly designed (picture below) how I wanted the website to look and customized the theme and layout with the assistance of Hermes , and of course filled in the content myself. For the colors, I took inspiration from Nous Research . I also added separate pages for my CV (have not uploaded the public version yet), contact, and writings. Deploying with GitHub Pages is simple, as every push to main triggers the GitHub Actions workflow automatically and Hugo builds the site....
|
1793641659.5118556
|
1794246459.5118556
|
|
46405
|
Poolside Cooler :D by @aayanalikhan09 | Stardance
|
aayanalikhan09
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T20:27:13Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a pool cooler that floats in the water and can act as in-pool storage for your drinks! This makes it easy to access, easy to keep drinks cool, and, after all the ice and drinks are gone, a fun floating object to make as fun as you wish! Unfortunately, I couldn’t test it myself due to certain restrictions, but all files are publicly available for those who wish to test it out! If you do end up printing this - let me know! I want to see what you guys make!", "repo": "https://github.com/aayanalikhan09-hash/Pool-Cooler", "demo": ""}]...
|
[{"post_id": 65017, "ts": "202 [{"post_id": 65017, "ts": "2026-09-09T20:13:05Z", "hours": 3.8981, "text": "i know its kind of abrupt - but thats it for this cooler i made this cooler in cad and printed it and didnt have the money nor time for a pool noodle so im leaving it here i have attached the makerworld link here if you want to support the model in some way or wish to print it yourself - https://makerworld.com/en/models/3281187-poolside-drinks-cooler-6-pack"}, {"post_id": 44838, "ts": "2026-08-10T21:18:25Z", "hours": 1.5169, "text": "I’m making a pool drinks cooler for a 6-pack of any canned drink! Thought this would be a cool project to make so I’m making it for Stardance"}]...
|
Title: Poolside Cooler :D by @aayanalikhan09 | Sta Title: Poolside Cooler :D by @aayanalikhan09 | Stardance
Devlogs:
I’m making a pool drinks cooler for a 6-pack of any canned drink! Thought this would be a cool project to make so I’m making it for Stardance
i know its kind of abrupt - but thats it for this cooler i made this cooler in cad and printed it and didnt have the money nor time for a pool noodle so im leaving it here i have attached the makerworld link here if you want to support the model in some way or wish to print it yourself - https://makerworld.com/en/models/3281187-poolside-drinks-cooler-6-pack
Ships:
I made a pool cooler that floats in the water and can act as in-pool storage for your drinks! This makes it easy to access, easy to keep drinks cool, and, after all the ice and drinks are gone, a fun floating object to make as fun as you wish! Unfortunately, I couldn’t test it myself due to certain restrictions, but all files are publicly available for those who wish to test it out! If you do end up printing this - let me know! I want to see what you guys make!...
|
1793580633.2149134
|
1793667033.2149134
|
|
56532
|
Moderation discord bot by @justnorbert | Stardance
|
justnorbert
|
0
|
2.82
|
0
|
[]
|
[{"post_id": 65019, "ts": "202 [{"post_id": 65019, "ts": "2026-09-09T20:14:40Z", "hours": 0.3894, "text": "a few new commands"}, {"post_id": 63860, "ts": "2026-09-07T20:53:00Z", "hours": 0.2542, "text": "Preparing /help command"}, {"post_id": 62478, "ts": "2026-09-05T20:47:12Z", "hours": 0.9131, "text": "I added some simple commands such as: /serverinfo, /userinfo, /slowmode"}, {"post_id": 59809, "ts": "2026-09-01T19:19:45Z", "hours": 0.4572, "text": "Hi! Today I added a simple /clear command to the bot"}, {"post_id": 59142, "ts": "2026-08-31T19:27:10Z", "hours": 0.8094, "text": "Hi! I’m working on a discord bot that I will seriously use. My goal is to write a moderation bot that will support basic moderation commands, an autoresponder as well as full server logs. Below is the beginning of the project, I hope I will be able to add something interesting soon"}]...
|
Title: Moderation discord bot by @justnorbert | St Title: Moderation discord bot by @justnorbert | Stardance
Devlogs:
Hi! I’m working on a discord bot that I will seriously use. My goal is to write a moderation bot that will support basic moderation commands, an autoresponder as well as full server logs. Below is the beginning of the project, I hope I will be able to add something interesting soon
Hi! Today I added a simple /clear command to the bot
I added some simple commands such as: /serverinfo, /userinfo, /slowmode
Preparing /help command
a few new commands...
|
1793386506.7029467
|
1793991306.7029467
|
|
60268
|
Frictionless by @Romomankoo | Stardance
|
Romomankoo
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-10T17:12:19Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a modern portfolio website about myself. It features four distinct sections: About, Skills, Projects, and Contact. The hardest thing for me was learning how to use GitHub, but otherwise it all went pretty smoothly. Sometimes I didn’t know how to make certain things (AI helped), BUT all code was written by hand by me. I’m really proud of how it turned out and that I successfully deployed my first project.", "repo": "https://github.com/Romomankoo147/my-website", "demo": "https://romomankoo147.github.io/my-website/#projects"}]...
|
[{"post_id": 65034, "ts": "202 [{"post_id": 65034, "ts": "2026-09-09T20:50:49Z", "hours": 0.2667, "text": "Just fixing stuff"}, {"post_id": 64955, "ts": "2026-09-09T18:07:42Z", "hours": 0.5125, "text": "First time uploading my work started this project before this but came back to tweak few things."}]...
|
Title: Frictionless by @Romomankoo | Stardance
De Title: Frictionless by @Romomankoo | Stardance
Devlogs:
First time uploading my work started this project before this but came back to tweak few things.
Just fixing stuff
Ships:
I built a modern portfolio website about myself. It features four distinct sections: About, Skills, Projects, and Contact. The hardest thing for me was learning how to use GitHub, but otherwise it all went pretty smoothly. Sometimes I didn’t know how to make certain things (AI helped), BUT all code was written by hand by me. I’m really proud of how it turned out and that I successfully deployed my first project....
|
1793588149.5467792
|
1793674549.5467792
|
|
57666
|
Bear Alarm Clock by @BeeY | Stardance
|
BeeY
|
0
|
3.8
|
0
|
[]
|
[{"post_id": 65045, "ts": "202 [{"post_id": 65045, "ts": "2026-09-09T21:32:40Z", "hours": 0.7667, "text": "I’ve finished my case for my alarm! The face is just for show and its a little janky, but it’ll work."}, {"post_id": 63159, "ts": "2026-09-06T20:06:59Z", "hours": 1.3667, "text": "I’m almost finished with my case for my alarm and I think it’s looking pretty cute! I drew on the face to see what it would look like. The face/screen needs to be moved a little but otherwise it’s basically done. :3"}, {"post_id": 62318, "ts": "2026-09-05T16:59:44Z", "hours": 1.6672, "text": "I’m making a bear alarm clock for blare, the ears being the buttons. :3 I’ve made the pcb and started the case. I think it’s going to be really cute!"}]...
|
Title: Bear Alarm Clock by @BeeY | Stardance
Devl Title: Bear Alarm Clock by @BeeY | Stardance
Devlogs:
I’m making a bear alarm clock for blare, the ears being the buttons. :3 I’ve made the pcb and started the case. I think it’s going to be really cute!
I’m almost finished with my case for my alarm and I think it’s looking pretty cute! I drew on the face to see what it would look like. The face/screen needs to be moved a little but otherwise it’s basically done. :3
I’ve finished my case for my alarm! The face is just for show and its a little janky, but it’ll work....
|
1793451019.785005
|
1794055819.785005
|
|
33858
|
Tiny Jarvis by @louisd | Stardance
|
louisd
|
0
|
30.13
|
0
|
[]
|
[{"post_id": 65046, "ts": "202 [{"post_id": 65046, "ts": "2026-09-09T21:35:51Z", "hours": 2.1347, "text": "Added a Spotify waveform animation This will play on the OLED screen while the AI is speaking out loud. The waveform is generated in real time, randomly, by an algorithm, and displayed through the python library luma.oled Sadly, I still haven’t received funding and can’t continue with the hardware part of this project. I don’t know or understand why the funding keeps getting refused, even though I do all the right things as indicated everytime, and this is very frustratung because I literally went to the lengths of designing my own PCB from scratch, all of this to not get funded. I’m short of ideas for the software part now… still waiting for the funding (2 months btw, 22 demands)"}, {"post_id": 54709, "ts": "2026-08-25T19:42:51Z", "hours": 1.4408, "text": "“Hey Tiny Jarvis. where’d I put my keys again?” Tiny_Jarvis now has memory ! I’ve implemented a simple sqlite local database in Python to store every question the user asks. (first time doing this ! very satisifying) This means it can help you remember timings, dates, locations… anything! However, this also means that all these cumulatively added memories make the prompt for the AI longer and longer Which is why for the moment it only remembers the last 5 prompts. This may seem like a small amount, but for the most it is sufficient for remembering recent prompts. Should I make it remember more stuff? tell me"}, {"post_id": 52300, "ts": "2026-08-22T12:38:39Z", "hours": 2.8067, "text": "“Hey Tiny Jarvis, what’s going on in the world?” New feature: Tiny Jarvis automatically fetches the news from BBC World, chooses the most impactful headline, reads the articles and generates a summary! This happens in the background, every hour, to ensure that the news is recent. I discovered smth called RSS feeds, which is basically a tool that feeds website updates back to you in the form of XML files. Then I learnt about the feedparser python library, as well as trafilatura , for extracting text from HTML (for getting the text from the articles), which made the job ten times easier. However, this process does take some time: Step 1: script parses the BBC World feed Step 2: local AI chooses between the thirteen daily headlines Step 3: script fetches the associated articles text Step 4: local AI summarizes ALL THREE articles. On a Raspberry Pi 5, obviously, this can take at least 5 minutes. Now for the moment this is a bit biased, because I chose the “Technology” category for the RSS feed 😅 but i’ll add the option to change it later Is this a good feature? Please tell me"}, {"post_id": 51503, "ts": "2026-08-21T08:21:10Z", "hours": 2.5022, "text": "“Hey Tiny Jarvis, play Smooth Criminal” mopidy-youtube integrated! and it works! All you have to do is press the button, say out loud “Play (song) …” and it will search for it in Youtube music (FREE MUSIC!!!) and play it. You can then adjust the volume with the rotary encoder, which is satisfying asf. This was one hell of a debugging session, holy I had to search for forked repos on Github that fixed a obscure yt-dlp issue, and somehow it works. Anyways apart from that, i restructured the project code repo entirely, everything is now separated into different sections like firmware and pcb to distinguish hardware from software. New: the install.sh was finally tested and it works perfectly after a few tweaks! woohoo! Oh and finally: rewrote my README.md as recommended by the Stardance guides, and yh I agree it looks better Tell me if you have any other ideas of features to implement"}, {"post_id": 46357, "ts": "2026-08-13T15:06:41Z", "hours": 1.9442, "text": "Music handler + system metrics idle screen Time to make Tiny_Jarvis a little more like the real Jarvis…. SYSTEM METRICS SCREEN! Displays in real time: battery life, cpu temperature, current time on the OLED screen. Finished up the Mopidy part of the music player, can’t test it yet sadly (i don’t have access to my rpi5 right now) it was way more difficult than I thought AIM: “Play …” -> searches through free music online database like Youtube music for query and plays the music if it finds it. Added another quirky feature: flip a coin Tell me if you have ideas of other new useful features"}, {"post_id": 44309, "ts": "2026-08-09T23:46:42Z", "hours": 1.6589, "text": "New timer feature implemented, plus more Created a handle_prompt() function in main.py to handle any task-specific prompt given by the user. For example: if I say “Play …” or “Set a timer of …” then it will recognize this specific pattern and handle those actions perfectly, and if it’s something else than the AI will just answer it. It’s scalable, so I can add more features in the future, such as “Definition of” or idk (if you have any ideas lemme know in the comments) Created a timer.py file which handles the timer feature, which is sort of complicated but now works (it displays on-screen in real time, which is pretty cool) All in all, main.py is now very clean and readable."}, {"post_id": 42688, "ts": "2026-08-07T15:20:43Z", "hours": 1.0628, "text": "Cleaned up main.py and cooking_helper.py It’s been a while since I last worked on this project, I’m still waiting for my hardware funding request to be approved, which made me lose motivation. But I’m back, so here’s what’s new: I separated the main function in cooking_helper.py Unix-style, so that everything is cleaner and easier to debug or scale (in case the CSV file gets bigger) Now it doesn’t need to open the csv everytime, instead it just opens it once upon startup. In main.py , created an initialize() function which separates the tasks into an easier format. The AssistantDisplay class and the list of recipes is then passed onto the while True loop. The main() function is now much simpler: it calls the initialization function, then in the loop it checks whether there are new recordings thanks to an imported function, if there are not it waits 0.2 seconds before checking again, and if there is then it runs the process_recording() function. Very clean!"}, {"post_id": 34645, "ts": "2026-07-25T15:19:12Z", "hours": 1.0297, "text": "Upgraded the cooking helper + critical bug fixes Translated the recipes to english - will add more later Fixed a critical issue with initializing and importing different python files, now main.py has the real control of initialization thanks to a listener.init_listener() function. Added a speak(['Ingredients']) in main.py so Tiny_Jarvis will speak the ingredients of the chosen recipe out loud Switched from hardcoding random.randint(0,33) to random.choice(list) way simpler and easier to read, and created a format_cooking_sentence(recipe_object) function so that main.py doesn’t have to manage that, way better Future changes I might implement: apparently Raspberry Pi OS manages audio through the Advanced Linux Sound Architecture (ALSA) which is responsible for the hardware drivers, the audio routing and control, and the low-level utilities such as the commands I often use, such as alsamixer , aplay and arecord So when two python libraries that need to either record audio or output audio call ALSA to do so, it can lead to conflicts. In this case, sounddevice and pyaudio which are both wrappers of the C library PortAudio . So a future change would be only using sounddevice for example, or vice versa. This has another hidden advantage: removing a possibly finnicky dependency and making the whole process smoother, since compiling C on a Raspberry Pi can be difficult at times."}, {"post_id": 34096, "ts": "2026-07-24T16:00:12Z", "hours": 0.4331, "text": "Added a cool silkscreen logo Made an entry for the 23rd of July in JOURNAL.md Found and added this logo from The Noun Project . Really cool website btw. This icon clicked with me bc it really represents what Jarvis (or AI chatbots are in general) is, that being SIMULATED intelligence, and makes us remember that’s its all just complex math equations and not real intellect. Fixed some DFM issues, and rerouted a lot of traces, some were going over the mounting holes Tried to make more space for the logo but broke the whole thing and had to Ctrl+z my way out of there (help) Looks cool no?"}, {"post_id": 33554, "ts": "2026-07-23T16:16:59Z", "hours": 0.8894, "text": "PCB + updates on the cooking feature Wrote an entry in JOURNAL.md for today’s work Worked a lot on the PCB in EasyEDA Pro, mostly clearance issues but also a lot of struggling with the GND pour. Updates on the cooking feature: Thought it would be cool to be able to show the ingredients on the OLED screen So updated the AssistantDisplay class and created a neat function to show text using the python library luma.oled Problem is it would go off screen, so I implemented the built-in textwrap module and it can now display 5 lines. Will get to translating everything to english later, promised Anyways if anyone has any recommendations for the PCB don’t hesitate to leave a comment!"}, {"post_id": 32963, "ts": "2026-07-22T13:37:48Z", "hours": 1.3981, "text": "Added a cooking recipes feature for no reason Created a cooking_helper.py in a cooking/ folder OCR’d half of a cooking book with help from Gemini and put everything in a beautiful recipes.csv Used the csv.DictReader object to access the info and organize it into a list, very useful. Updated main.py so that when the user’s prompt starts with “Cooking”, it takes a random recipe from the csv file (using the random.randint(a, b) function) and returns a formatted sentence with all the info for cooking that recipe. Made this cos I’m really bad at cooking and it could also benefit others, you never know."}, {"post_id": 32400, "ts": "2026-07-21T15:40:27Z", "hours": 0.4131, "text": "Schematic and PCB tweaking Made an entry for today in JOURNAL.md I’ll keep this short, but basically: huge issues with my schematic, electrically incorrect for the most part, some useless components, which then translated into the actual PCB, having to rewire traces manually, making tons of mistakes along the way and spending waay too much time repairing them. Still waiting for the funding request to be approved before I can order these. Huge thanks to M-Mrk in the Slack electronics channel for all his help, he saved me"}, {"post_id": 31821, "ts": "2026-07-20T14:39:34Z", "hours": 1.0108, "text": "Error handling time! + bug and dependency fixing Now that I have a clean slate to test my project on, I ran python main.py and somwhow got three errors in a row. Spent an hour adding try s and except Exception as e everywhere to prevent this. Now debugging is way easier and more user-friendly. Fixed some bugs such as ssd1106 not being a real OLED screen part name As well as gpiozero missing the rpi-lgpio library, which needs system-wide packages swig and liblgpio-dev so yh dependency hell. Almost everything should be error-proof now. I tested it, and no errors popped up, just friendly reminders that I2C wasn’t enabled, or that my buttons weren’t detected, or no screen. Update install.sh with these changes, now works perfectly."}, {"post_id": 31697, "ts": "2026-07-20T09:51:03Z", "hours": 1.2397, "text": "RPI5 OS Switch + Tiny_Jarvis easier to put in place Worst day in my life. Tried to flash a Raspberry Pi OS Lite (64-bit) on the raspberry pi 5 (which btw has an NVMe SSD), and it did NOT go well: First flash using the Imager: didn’t work, nothing happened, the Pi started speaking in freaking morse code Spent an hour trying to decode that morse code according to documentation, thought it was an EEPROM bootloader issue, made a diagnostic card, made a factory reset card, nope. Realized I could plug it through HDMI to my projector; did that: it was asking me for a username. Didn’t have a USB keyboard so couldn’t type it in. Almost threw the Pi out of the window cos I configured all that in the fricking Imager. Realized I was using the Imager from Flathub and not rpi-imager Retried the whole thing with that Imager: still didn’t work. Spent two hours doing the same thing over and over: flashing the card with the Imager, going into the files, editing user-data , cloud-init-ouput.log , etc… realized the Imager wasn’t writing the information in those files but others, booting it up into HDMI, checking the logs, managing to bypass username but not keyboard layout, etc… I EVEN TRIED LEGACY VERSIONS OF THE OS AND CREATING A wpa_supplicant.conf . Atp I was going to crash out but then I checked my rpi-imager version (even though I had updated it) and turns out my laptop just couldn’t get the latest version : it was 1.8.0 , not 2.1.0 (the latest one). Downloaded the newest version, ran it, and it worked. I have officially lost faith in humanity. Anyways I read my README.md and decided that it was getting way too complicated (the installation part) so I pasted that whole part into Kimi K3 and he made me a install.sh which is basically fire since you just run chmod +x install.sh ./install.sh and the whole system-wide-packages-and-dependencies are all installed in the right order, easily. This is tested and proved (i did it with the newly flashed OS)."}, {"post_id": 30725, "ts": "2026-07-18T15:25:56Z", "hours": 1.0417, "text": "Major software update + PCB testing Found out yesterday that Ollama is just the whole UI and simplificator of use for the C library llama.cpp And turns out there’s a python wrapper for that library, llama-cpp-python , which has two advantages over Ollama: Faster Way more flexible, we can get every last bit of performance from the rpi5 So I updated ai.py with this new feature, there are more settings than Ollama for optimizing performance for CPU-only (4 cores) which is great, however I had to download a .gguf from Hugging Face and accidentally ended up being given access to a repository for the model?! so i can now propose changes to that repo, for some reason… Fixed a typo which would’ve raised a TypeError in main.py Made it so the second button shuts down the Pi safely Wrote another entry in JOURNAL.md , where I soldered and tested the prototype PCBs I ordered from JLCPCB"}, {"post_id": 30358, "ts": "2026-07-17T20:44:15Z", "hours": 0.6842, "text": "JOURNAL.md new entries! Added some entries for the 7th and 8th of July, where I delved into PCB making from scratch! As well as an entry for the 17th of July, when I received my first PCBs - spoiler alert: they do not work as intended Made a lot of mistakes, but managed to make a rather good first try, which will hopefully lead to a better final PCB (i’m working on that) This time I’ll check the DFM before ordering Hope you appreciate my storytelling!"}, {"post_id": 29013, "ts": "2026-07-15T17:41:24Z", "hours": 1.1994, "text": "JOURNAL.md started + Hardware time! Created a JOURNALmd file Documented everything I did on the 5th and 6th of July, with photos and some explanations as to what I was doing and trying to achieve To make it short: prototyping and creating some visuals for the OLED screen/UI, as well as assembling everything together. Connected README.md to JOURNAL.md You can read it here"}, {"post_id": 28941, "ts": "2026-07-15T15:42:24Z", "hours": 0.8244, "text": "Finishing up the software part Took on the task of making my code more readable, and as such easier to debug Created a AssistantDisplay class to better manage the OLED threads - way cleaner now Put sentence_buffer() in ai.py and get_lastest_recordings() in listener.py , now the only function in main.py is main() . Clean! Squeezed a bit more performance out of the faster-whisper model by setting cpu_threads to 4 and beam_size to 1, even if we’ll lose a tiny bit in quality. Still a good tradeoff Detected an avoided a critical issue: if glob detected the file while it was being written to and passed it on to faster-whisper , then it would be corrupted and be mashed garbage. So I read some documentation about the queue module and used that, it’s way better and easier in the end."}, {"post_id": 28791, "ts": "2026-07-15T09:10:34Z", "hours": 0.9594, "text": "Faster response speed thanks to streaming audio Ok so ollama ’s ChatResponse class allows, when creating an instance of it, to write stream = True . So I could stream the outputted response directly into Piper TTS and into the speakers. Except it would sound very weird, very robotic-like since the chatbot outputs tokens, not words. I then created a function called sentence_buffer() that seperates them into a list of words, that are then given to Piper TTS in speaker.py Then I used a library called pyaudio to stream the Piper TTS output into the speakers! it’s actually just a Python wrapper for a C library called portaudio , so I ran into a LOT of dependency issues, but that’s a battle for another day. Moved a few functions that were in main.py into other files for better management Other small modifications"}, {"post_id": 28461, "ts": "2026-07-14T18:30:50Z", "hours": 1.0342, "text": "Threading implementation for better speed Today I decided to learn about the python module threading , and realized it wasn’t that difficult to implement in my project. The issue was: when I ran oled(\"thinking_animation.gif\") it ran sequentially, so the whole script had to wait for the animation to finish, which obviously can’t happen. So I created different threads for each animation/png, and made a “switch”, better known as a threading.Event() which enabled me to manage the “workers” way better (sorry, i’m getting used to the vocabulary) Also I added comments everywhere in main.py for better explainability. Finally I adjusted the code in OLED.py with the switch implemented and added some small user-friendly checks throughout my project. Hopefully everything works! Note: sadly it will be difficult to use threads in the rest of the code, since the process is, at its core, sequential. Faster-whisper needs audio to proceed, the ollama AI chatbot needs a prompt to continue, etc…"}, {"post_id": 27948, "ts": "2026-07-13T21:51:29Z", "hours": 1.2056, "text": "README.md first commit Spent a LOT of time on the README.md, I want my project to be reusable so made a good How to install section, there are tons of different commands to run to ensure it works first try Didn’t write anything in the Hardware section, but will soon. (my first PCBs don’t work yet) In OLED.py : it now supports gifs, which is great because of Piskel which can turn simple animations into gifs. Made some visuals in Piskel for the screen ( thinking_animation.gif and button_pressed.gif ) Simplified drastically listener.py for future debugging. One of the biggest issues with this project so far: the difficulty to test it! I don’t have all the required materials yet. I might use the pytest module? we’ll see"}, {"post_id": 27692, "ts": "2026-07-13T14:03:16Z", "hours": 1.3119, "text": "Linking everything together Updated the project structure with more python scripts so that it now looks like this: Tiny_Jarvis/ ├── .venv/ ├── piper_voices/ ├── recordings/ # New ├── assets/ # New ├── ai.py ├── listener.py # New ├── main.py ├── OLED.py ├── speaker.py ├── transcriber.py # New ├── README.md └── requirements.txt What’s new: Added an assets/ folder for the OLED screen visuals Added a recordings/ folder for the audio captured by the mic when the user is speaking Created listener.py : actively listens for a button press; when pressed, records audio through the usb mic until the button is released, then that audio is sent to transcriber.py Created transcriber.py : takes that audio and passes it as input into faster-whisper to “translate” into text ! And finally, first time linking everything together in main.py : there is still a lot to be done if we are talking speed/efficiency, but the core pipeline is done. The user presses a button to talk, releases it when finished, the audio is captured and translated into text by faster-whisper , then that text is given as prompt to the AI chatbot (like Qwen3-0.6B . The response is then turned into a voice using Piper TTS and outputted through the speaker! Possible future implementation of the threading module to make it faster, even though I have no idea how it works."}, {"post_id": 27640, "ts": "2026-07-13T12:18:46Z", "hours": 1.9014, "text": "Initializing the project Created a virtual environment .venv/ so that all necessary python modules and packages are cleanly installed together. Created a requirements.txt , where I put all the python modules I import in the project so that people can reuse it. Created a piper_voices/ directory and downloaded a medium voice via python -m piper.download_voices en_US-lessac-medium Created 4 different files: Tiny_Jarvis/ ├── ai.py # the AI chatbot ├── main.py # the main script ├── OLED.py # The visuals! └── speaker.py # the audio Wrote the basic code for each of those files. For the moment, I concentrate on making importable functions that function indepedently, and will link them together in main.py later on. Created a README.md . It’s empty for now, will fill it in later."}]...
|
Title: Tiny Jarvis by @louisd | Stardance
Devlogs Title: Tiny Jarvis by @louisd | Stardance
Devlogs:
Initializing the project Created a virtual environment .venv/ so that all necessary python modules and packages are cleanly installed together. Created a requirements.txt , where I put all the python modules I import in the project so that people can reuse it. Created a piper_voices/ directory and downloaded a medium voice via python -m piper.download_voices en_US-lessac-medium Created 4 different files: Tiny_Jarvis/ ├── ai.py # the AI chatbot ├── main.py # the main script ├── OLED.py # The visuals! └── speaker.py # the audio Wrote the basic code for each of those files. For the moment, I concentrate on making importable functions that function indepedently, and will link them together in main.py later on. Created a README.md . It’s empty for now, will fill it in later.
Linking everything together Updated the project structure with more python scripts so that it now looks like this: Tiny_Jarvis/ ├── .venv/ ├── piper_voices/ ├── recordings/ # New ├── assets/ # New ├── ai.py ├── listener.py # New ├── main.py ├── OLED.py ├── speaker.py ├── transcriber.py # New ├── README.md └── requirements.txt What’s new: Added an assets/ folder for the OLED screen visuals Added a recordings/ folder for the audio captured by the mic when the user is speaking Created listener.py : actively listens for a button press; when pressed, records audio through the usb mic until the button is released, then that audio is sent to transcriber.py Created transcriber.py : takes that audio and passes it as input into faster-whisper to “translate” into text ! And finally, first time linking everything together in main.py : there is still a lot to be done if we are talking speed/efficiency, but the core pipeline is done. The user presses a button to talk, releases it when finished, the audio is captured and translated into text by faster-whisper , then that text is given as prompt to the AI chatbot (like Qwen3-0.6B . The response is then turned into a voice using Piper TTS and outputted through the speaker! Possible future implementation of the threading module to make it faster, even though I have no idea how it works.
README.md first commit Spent a LOT of time on the README.md, I want my project to be reusable so made a good How to install section, there are tons of different commands to run to ensure it works first try Didn’t write anything in the Hardware section, but will soon. (my first PCBs don’t work yet) In OLED.py : it now supports gifs, which is great because of Piskel which can turn simple animations into gifs. Made some visuals in Piskel for the screen ( thinking_animation.gif and button_pressed.gif ) Simplified drastically listener.py for future debugging. One of the biggest issues with this project so far: the difficulty to test it! I don’t have all the required materials yet. I might use the pytest module? we’ll see
Threading implementation for better speed Today I decided to learn about the python module threading , and realized it wasn’t that difficult to implement in my project. The issue was: when I ran oled("thinking_animation.gif") it ran sequentially, so the whole script had to wait for the animation to finish, which obviously can’t happen. So I created different threads for each animation/png, and made a “switch”, better known as a threading.Event() which enabled me to manage the “workers” way better (sorry, i’m getting used to the vocabulary) Also I added comments everywhere in main.py for better explainability. Finally I adjusted the code in OLED.py with the switch implemented and added some small user-friendly checks throughout my project. Hopefully everything works! Note: sadly it will be difficult to use threads in the rest of the code, since the process is, at its core, sequential. Faster-whisper needs audio to proceed, the ollama AI chatbot needs a prompt to continue, etc…
Faster response speed thanks to streaming audio Ok so ollama ’s ChatResponse class allows, when creating an instance of it, to write stream = True . So I could stream the outputted response directly into Piper TTS and into the speakers. Except it would sound very weird, very robotic-like since the chatbot outputs tokens, not words. I then created a function called sentence_buffer() that seperates them into a list of words, that are then given to Piper TTS in speaker.py Then I used a library called pyaudio to stream the Piper TTS output into the speakers! it’s actually just a Python wrapper for a C library called portaudio , so I ran into a LOT of dependency issues, but that’s a battle for another day. Moved a few functions that were in main.py into other files for better management Other small modifications
Finishing up the software part Took on the task of making my code more readable, and as such easier to debug Created a AssistantDisplay class to better manage the OLED threads - way cleaner now Put sentence_buffer() in ai.py and get_lastest_recordings() in listener.py , now the only function in main.py is main() . Clean! Squeezed a bit more performance out of the faster-whisper model by setting cpu_threads to 4 and beam_size to 1, even if we’ll lose a tiny bit in quality. Still a good tradeoff Detected an avoided a critical issue: if glob detected the file while it was being written to and passed it on to faster-whisper , then it would be corrupted and be mashed garbage. So I read some documentation about the queue module and used that, it’s way better and easier in the end.
JOURNAL.md started + Hardware time! Created a JOURNALmd file Documented everything I did on the 5th and 6th of July, with photos and some explanations as to what I was doing and trying to achieve To make it short: prototyping and creating some visuals for the OLED screen/UI, as well as assembling everything together. Connected README.md to JOURNAL.md You can read it here
JOURNAL.md new entries! Added some entries for the 7th and 8th of July, where I delved into PCB making from scratch! As well as an entry for the 17th of July, when I received my first PCBs - spoiler alert: they do not work as intended Made a lot of mistakes, but managed to make a rather good first try, which will hopefully lead to a better final PCB (i’m working on that) This time I’ll check the DFM before ordering Hope you appreciate my storytelling!
Major software update + PCB testing Found out yesterday that Ollama is just the whole UI and simplificator of use for the C library llama.cpp And turns out there’s a python wrapper for that library, llama-cpp-python , which has two advantages over Ollama: Faster Way more flexible, we can get every last bit of performance from the rpi5 So I updated ai.py with this new feature, there are more settings than Ollama for optimizing performance for CPU-only (4 cores) which is great, however I had to download a .gguf from Hugging Face and accidentally ended up being given access to a repository for the model?! so i can now propose changes to that repo, for some reason… Fixed a typo which would’ve raised a TypeError in main.py Made it so the second button shuts down the Pi safely Wrote another entry in JOURNAL.md , where I soldered and tested the prototype PCBs I ordered from JLCPCB
RPI5 OS Switch + Tiny_Jarvis easier to put in place Worst day in my life. Tried to flash a Raspberry Pi OS Lite (64-bit) on the raspberry pi 5 (which btw has an NVMe SSD), and it did NOT go well: First flash using the Imager: didn’t work, nothing happened, the Pi started speaking in freaking morse code Spent an hour trying to decode that morse code according to documentation, thought it was an EEPROM bootloader issue, made a diagnostic card, made a factory reset card, nope. Realized I could plug it through HDMI to my projector; did that: it was asking me for a username. Didn’t have a USB keyboard so couldn’t type it in. Almost threw the Pi out of the window cos I configured all that in the fricking Imager. Realized I was using the Imager from Flathub and not rpi-imager Retried the whole thing with that Imager: still didn’t work. Spent two hours doing the same thing over and over: flashing the card with the Imager, going into the files, editing user-data , cloud-init-ouput.log , etc… realized the Imager wasn’t writing the information in those files but others, booting it up into HDMI, checking the logs, managing to bypass username but not keyboard layout, etc… I EVEN TRIED LEGACY VERSIONS OF THE OS AND CREATING A wpa_supplicant.conf . Atp I was going to crash out but then I checked my rpi-imager version (even though I had updated it) and turns out my laptop just couldn’t get the latest version : it was 1.8.0 , not 2.1.0 (the latest one). Downloaded the newest version, ran it, and it worked. I have officially lost faith in humanity. Anyways I read my README.md and decided that it was getting way too complicated (the installation part) so I pasted that whole part into Kimi K3 and he made me a install.sh which is basically fire since you just run chmod +x install.sh ./install.sh and the whole system-wide-packages-and-dependencies are all installed in the right order, easily. This is tested and proved (i did it with the newly flashed OS).
Error handling time! + bug and dependency fixing Now that I have a clean slate to test my project on, I ran python main.py and somwhow got three errors in a row. Spent an hour adding try s and except Exception as e everywhere to prevent this. Now debugging is way easier and more user-friendly. Fixed some bugs such as ssd1106 not being a real OLED screen part name As well as gpiozero missing the rpi-lgpio library, which needs system-wide packages swig and liblgpio-dev so yh dependency hell. Almost everything should be error-proof now. I tested it, and no errors popped up, just friendly reminders that I2C wasn’t enabled, or that my buttons weren’t detected, or no screen. Update install.sh with these changes, now works perfectly.
Schematic and PCB tweaking Made an entry for today in JOURNAL.md I’ll keep this short, but basically: huge issues with my schematic, electrically incorrect for the most part, some useless components, which then translated into the actual PCB, having to rewire traces manually, making tons of mistakes along the way and spending waay too much time repairing them. Still waiting for the funding request to be approved before I can order these. Huge thanks to M-Mrk in the Slack electronics channel for all his help, he saved me
Added a cooking recipes feature for no reason Created a cooking_helper.py in a cooking/ folder OCR’d half of a cooking book with help from Gemini and put everything in a beautiful recipes.csv Used the csv.DictReader object to access the info and organize it into a list, very useful. Updated main.py so that when the user’s prompt starts with “Cooking”, it takes a random recipe from the csv file (using the random.randint(a, b) function) and returns a formatted sentence with all the info for cooking that recipe. Made this cos I’m really bad at cooking and it could also benefit others, you never know.
PCB + updates on the cooking feature Wrote an entry in JOURNAL.md for today’s work Worked a lot on the PCB in EasyEDA Pro, mostly clearance issues but also a lot of struggling with the GND pour. Updates on the cooking feature: Thought it would be cool to be able to show the ingredients on the OLED screen So updated the AssistantDisplay class and created a neat function to show text using the python library luma.oled Problem is it would go off screen, so I implemented the built-in textwrap module and it can now display 5 lines. Will get to translating everything to english later, promised Anyways if anyone has any recommendations for the PCB don’t hesitate to leave a comment!
Added a cool silkscreen logo Made an entry for the 23rd of July in JOURNAL.md Found and added this logo from The Noun Project . Really cool website btw. This icon clicked with me bc it really represents what Jarvis (or AI chatbots are in general) is, that being SIMULATED intelligence, and makes us remember that’s its all just complex math equations and not real intellect. Fixed some DFM issues, and rerouted a lot of traces, some were going over the mounting holes Tried to make more space for the logo but broke the whole thing and had to Ctrl+z my way out of there (help) Looks cool no?
Upgraded the cooking helper + critical bug fixes Translated the recipes to english - will add more later Fixed a critical issue with initializing and importing different python files, now main.py has the real control of initialization thanks to a listener.init_listener() function. Added a speak(['Ingredients']) in main.py so Tiny_Jarvis will speak the ingredients of the chosen recipe out loud Switched from hardcoding random.randint(0,33) to random.choice(list) way simpler and easier to read, and created a format_cooking_sentence(recipe_object) function so that main.py doesn’t have to manage that, way better Future changes I might implement: apparently Raspberry Pi OS manages audio through the Advanced Linux Sound Architecture (ALSA) which is responsible for the hardware drivers, the audio routing and control, and the low-level utilities such as the commands I often use, such as alsamixer , aplay and arecord So when two python libraries that need to either record audio or output audio call ALSA to do so, it can lead to conflicts. In this case, sounddevice and pyaudio which are both wrappers of the C library PortAudio . So a future change would be only using sounddevice for example, or vice versa. This has another hidden advantage: removing a possibly finnicky dependency and making the whole process smoother, since compiling C on a Raspberry Pi can be difficult at times.
Cleaned up main.py and cooking_helper.py It’s been a while since I last worked on this project, I’m still waiting for my hardware funding request to be approved, which made me lose motivation. But I’m back, so here’s what’s new: I separated the main function in cooking_helper.py Unix-style, so that everything is cleaner and easier to debug or scale (in case the CSV file gets bigger) Now it doesn’t need to open the csv everytime, instead it just opens it once upon startup. In main.py , created an initialize() function which separates the tasks into an easier format. The AssistantDisplay class and the list of recipes is then passed onto the while True loop. The main() function is now much simpler: it calls the initialization function, then in the loop it checks whether there are new recordings thanks to an imported function, if there are not it waits 0.2 seconds before checking again, and if there is then it runs the process_recording() function. Very clean!
New timer feature implemented, plus more Created a handle_prompt() function in main.py to handle any task-specific prompt given by the user. For example: if I say “Play …” or “Set a timer of …” then it will recognize this specific pattern and handle those actions perfectly, and if it’s something else than the AI will just answer it. It’s scalable, so I can add more features in the future, such as “Definition of” or idk (if you have any ideas lemme know in the comments) Created a timer.py file which handles the timer feature, which is sort of complicated but now works (it displays on-screen in real time, which is pretty cool) All in all, main.py is now very clean and readable.
Music handler + system metrics idle screen Time to make Tiny_Jarvis a little more like the real Jarvis…. SYSTEM METRICS SCREEN! Displays in real time: battery life, cpu temperature, current time on the OLED screen. Finished up the Mopidy part of the music player, can’t test it yet sadly (i don’t have access to my rpi5 right now) it was way more difficult than I thought AIM: “Play …” -> searches through free music online database like Youtube music for query and plays the music if it finds it. Added another quirky feature: flip a coin Tell me if you have ideas of other new useful features
“Hey Tiny Jarvis, play Smooth Criminal” mopidy-youtube integrated! and it works! All you have to do is press the button, say out loud “Play (song) …” and it will search for it in Youtube music (FREE MUSIC!!!) and play it. You can then adjust the volume with the rotary encoder, which is satisfying asf. This was one hell of a debugging session, holy I had to search for forked repos on Github that fixed a obscure yt-dlp issue, and somehow it works. Anyways apart from that, i restructured the project code repo entirely, everything is now separated into different sections like firmware and pcb to distinguish hardware from software. New: the install.sh was finally tested and it works perfectly after a few tweaks! woohoo! Oh and finally: rewrote my README.md as recommended by the Stardance guides, and yh I agree it looks better Tell me if you have any other ideas of features to implement
“Hey Tiny Jarvis, what’s going on in the world?” New feature: Tiny Jarvis automatically fetches the news from BBC World, chooses the most impactful headline, reads the articles and generates a summary! This happens in the background, every hour, to ensure that the news is recent. I discovered smth called RSS feeds, which is basically a tool that feeds website updates back to you in the form of XML files. Then I learnt about the feedparser python library, as well as trafilatura , for extracting text from HTML (for getting the text from the articles), which made the job ten times easier. However, this process does take some time: Step 1: script parses the BBC World feed Step 2: local AI chooses between the thirteen daily headlines Step 3: script fetches the associated articles text Step 4: local AI summarizes ALL THREE articles. On a Raspberry Pi 5, obviously, this can take at least 5 minutes. Now for the moment this is a bit biased, because I chose the “Technology” category for the RSS feed 😅 but i’ll add the option to change it later Is this a good feature? Please tell me
“Hey Tiny Jarvis. where’d I put my keys again?” Tiny_Jarvis now has memory ! I’ve implemented a simple sqlite local database in Python to store every question the user asks. (first time doing this ! very satisifying) This means it can help you remember timings, dates, locations… anything! However, this also means that all these cumulatively added memories make the prompt for the AI longer and longer Which is why for the moment it only remembers the last 5 prompts. This may seem like a small amount, but for the most it is sufficient for remembering recent prompts. Should I make it remember more stuff? tell me
Added a Spotify waveform animation This will play on the OLED screen while the AI is speaking out loud. The waveform is generated in real time, randomly, by an algorithm, and displayed through the python library luma.oled Sadly, I still haven’t received funding and can’t continue with the hardware part of this project. I don’t know or understand why the funding keeps getting refused, even though I do all the right things as indicated everytime, and this is very frustratung because I literally went to the lengths of designing my own PCB from scratch, all of this to not get funded. I’m short of ideas for the software part now… still waiting for the funding (2 months btw, 22 demands)...
|
1793386274.5778048
|
1793991074.5778048
|
|
39640
|
WePod by @Nuno | Stardance
|
Nuno
|
0
|
6.74
|
0
|
[]
|
[{"post_id": 65052, "ts": "202 [{"post_id": 65052, "ts": "2026-09-09T21:49:44Z", "hours": 0.45, "text": "Devlog +: Fixes After printing one part i realised the brass inserts didnt fit and the bottom was too thin so I fixed that"}, {"post_id": 35452, "ts": "2026-07-26T21:34:48Z", "hours": 3.0003, "text": "DevLog 2: WePod- Orange Finished the Case for the WePod. Ended up going for an Orange and Yellow look with a spot to place a keychain similar to a phone case. I made it so it splits into 2 pieces that connect via 3M screws. The only ports exposed are the Charging Port, the SD Slot and 3.5mm Jack so if u ever want to change the firmware u are gonna need to take it apart"}, {"post_id": 34852, "ts": "2026-07-25T21:43:05Z", "hours": 3.2894, "text": "DevLog 1: WePod, An open source Mp3 Player. I was way too young to know what an IPod was until i began to like eletronics. I also never had an Mp3 player so with that and the fact we dont anything now i decided to create the WePod. Its a simple Mp3 that runs on the Xiao RP2040 and uses a SD Card as its memory to hold our very legitimate and totally not pirated songs. Right now I have only made the pcb without the BMS but i left 3 pads on the right to eventually connect a BMS"}]...
|
Title: WePod by @Nuno | Stardance
Devlogs:
DevLog Title: WePod by @Nuno | Stardance
Devlogs:
DevLog 1: WePod, An open source Mp3 Player. I was way too young to know what an IPod was until i began to like eletronics. I also never had an Mp3 player so with that and the fact we dont anything now i decided to create the WePod. Its a simple Mp3 that runs on the Xiao RP2040 and uses a SD Card as its memory to hold our very legitimate and totally not pirated songs. Right now I have only made the pcb without the BMS but i left 3 pads on the right to eventually connect a BMS
DevLog 2: WePod- Orange Finished the Case for the WePod. Ended up going for an Orange and Yellow look with a spot to place a keychain similar to a phone case. I made it so it splits into 2 pieces that connect via 3M screws. The only ports exposed are the Charging Port, the SD Slot and 3.5mm Jack so if u ever want to change the firmware u are gonna need to take it apart
Devlog +: Fixes After printing one part i realised the brass inserts didnt fit and the bottom was too thin so I fixed that...
|
1793422130.5664368
|
1794026930.5664368
|
|
60426
|
grant finder by @anisht245 | Stardance
|
anisht245
|
0
|
5.24
|
0
|
[]
|
[{"post_id": 65053, "ts": "202 [{"post_id": 65053, "ts": "2026-09-09T21:50:53Z", "hours": 5.2447, "text": "I finished my FIRST grant finder. This website allows for teams to search for grants through an all in one database where teams can filter through requirements. Additionally, this website can help teams in the United States alongside international teams. Below I attached a view on how the website looks."}]...
|
Title: grant finder by @anisht245 | Stardance
Dev Title: grant finder by @anisht245 | Stardance
Devlogs:
I finished my FIRST grant finder. This website allows for teams to search for grants through an all in one database where teams can filter through requirements. Additionally, this website can help teams in the United States alongside international teams. Below I attached a view on how the website looks....
|
1793641967.0125985
|
1794246767.0125985
|
|
15234
|
Animatronic Claptrap by @vivaan_khowal | Stardance
|
vivaan_khowal
|
0
|
1.0
|
0
|
[]
|
[{"post_id": 6506, "ts": "2026 [{"post_id": 6506, "ts": "2026-06-10T22:41:32Z", "hours": 1.0, "text": "Started working on the project today. The first part I’m working on is the driving base. For that, I’m using a 6374 170KV motor for the torque, combined with two 6-inch lawn mower wheels joined together for its base. The plan is to use toothed belts and pulleys to transmit motion from the motor to the wheels, but we haven’t designed that part yet."}]...
|
Title: Animatronic Claptrap by @vivaan_khowal | St Title: Animatronic Claptrap by @vivaan_khowal | Stardance
Devlogs:
Started working on the project today. The first part I’m working on is the driving base. For that, I’m using a 6374 170KV motor for the torque, combined with two 6-inch lawn mower wheels joined together for its base. The plan is to use toothed belts and pulleys to transmit motion from the motor to the wheels, but we haven’t designed that part yet....
|
1792893070.501481
|
1793757070.501481
|
|
29476
|
O.T.I.S by @Sharkle | Stardance
|
Sharkle
|
0
|
55.42
|
0
|
[]
|
[{"post_id": 65062, "ts": "202 [{"post_id": 65062, "ts": "2026-09-09T22:16:42Z", "hours": 9.0675, "text": "DEVLOG #13 What I did For this devlog, I started working on the web app for Otis. I want it to have controls that allow you to manually control him, as well as a button/textbox for AI questions. I was able to make a simple one with Tkinter, but decided to scrap that idea and go with a web server made with CSS and HTML. I then paused that and began working on the microphone feature, since I felt like that was much more important compared to the web server. Challenges Creating the app I initially wanted to create the app with Tkinter, as I had seen others use it and it did not seem too hard. So I began programming it with that. I made a simple window with 7buttons (4 for movement and 3 for AI use). But after realizing that I would not be able to control the ESP with Tkinter, I had to look elsewhere. This is when I realized I could make an ESP32 web server and upload the HTML code to it. This would allow me to create a local web server with a GUI that I could interact with. Working with the microphone After working on the web server, I decided that getting the microphone was a bigger priority for me, so I pivoted and began working on that. I looked at the Seeed Studio docs for microphone use and was able to create some code that would detect and package audio samples. I plan to use this with the Python script to transcribe it locally. The problem is that it is not working, and I have not yet found a solution. This all feels really sketchy, and I don’t expect it to work immediately, so wish me luck. What is next I don’t have a lot of time left, and I have yet to actually put any of the hardware together. I will likely try to 3d print the parts and begin putting stuff together by the end of next week. I will also continue working on the microphone."}, {"post_id": 56256, "ts": "2026-08-27T22:56:10Z", "hours": 8.7339, "text": "DEVLOG #12 What I did I know this is a lot of time for a single devlog, so I will try to post them more often moving forward. First, I worked on allowing the AI to control the movement of the treads. My first Idea was to create a JSON schema with all 4 directions that the AI could enter values into. The values would dictate the time (in milliseconds) for which the action should be executed. Initially, I decided the 4 directions should be forward, backward, left, and right. But I knew that this would not work, since the tank treads can really only move forward and backward, as well as turn. So I then decided to replace the directions with “Right tread forward”, “Left tread forward”, “Right tread backward”, and “Left tread backward”. I decided on this because I felt that it would allow the AI to reason through my commands, which would allow for much more abstract movement. But the model was not smart enough to map out its movements, and I didn’t really have any other ideas for movement except for forward, backward, and spinning. But that gave me the idea to just use those elements in the JSON scheme. So I set the directions to “forward”, “backward”, “spin left”, and “spin right”. This way, the AI would be able to move exactly how I wanted it to move, without overcomplicating the whole thing, giving me more accurate results. After this, I began working on the APP for OTIS’s controller. I have not decided on a layout, but I do know I want buttons for the 4 directions, a chat box, and a button to send voice commands and photos. Challenges 422 Unprocessable Content So while trying to find a way to get the AI to respond as JSON, I remembered Ollama allows you to send format requests as part of the API POST request to the AI. So after reading the docs, I was able to whip up a simple JSON format using Pydantic and BaseModel with the 4 directions. But when I tried to send the request, I kept getting the 422 error response code. So then I tried a bunch of different stuff, like removing the requirements and removing the nested JSON with the format data. But none of that worked. That’s when I did some research on the docs, and I found that it was the Pydantic JSON class that was causing all the problems. You see, Pydantic is used to check whether incoming data is formatted properly. So when I used it to create a JSON schema, it would constantly look for that data from the Arduino, which it wouldn’t find. This caused the 422 error. So I removed the class and created a JSON schema as a regular variable, and this solved the issue What is next The next thing on my agenda is going to be to create the OTIS app that will allow me to manually control OTIS like a mini rover. I am currently using Tkinter to create the GUI, and will likely use an ESP web server to allow the GUI to interact with the Arduino. Thank you."}, {"post_id": 52405, "ts": "2026-08-22T15:11:12Z", "hours": 5.0672, "text": "DEVLOG #10 What I did In this devlog, I really just updated some of the things I had already implemented. First, I remodeled the wheels from gears to regular smooth wheels. This is because I had the idea of using those silicone wristbands as the tank treads instead of timing belts. This would not only be more accessible, but it would also make OTIS much more customizable and, in my opinion, look much better. This is because the silicone bands are thicker than the timing belts, which means the tank treads are larger. I also installed another AI model, qwen3-VL:4b, because I believed it would have better image analysis. I tested out all the models to find the best one, and I think I will use qwen3-vl:4b for this project, as it was able to recognize pictures and follow instructions more accurately than Llava. Lastly, while testing the models, I realized the prompting was a bit tedious when using the camera, since I would have to take a photo each time I prompted the AI. So I revised the code so that it would ask if you wanted to take a photo. If you say “photo”, it will ask you to position the camera and send the prompt. If you don’t want to take a photo, you just put the prompt in the first question, and it will default to no-photo mode for that prompt. Challenges Modeling the wheels This wasn’t really one large problem, more so multiple smaller ones. You see, I had already completed the 3d model with the gears instead of the wheel. This meant that changing the wheels would alter the whole model. For this reason, I was contemplating whether this would be the right choice, as I would also have to fix the animation. But I decided to do it anyway. The main problem was that the wheels have a much larger diameter than the gears. So if I were to just replace them, it would look extremely disproportionate. So, I had to remodel the servo slot and the front axles by placing them closer together and moving them up. Once I completed this, I had to redo the whole animation because the old one did not fit the new wheels well. But after all this, I was able to reupload the new files to the GitHub repo and begin fixing the code. What is next The next thing I am going to do is test out the tool. I wrote up a simple tool in Python that would allow the AI to send data that controls the servos, but I have not tested it yet, which is what I will be doing next. I will also likely wire up the servos and continue testing other models to try to find a good setup. Thank you."}, {"post_id": 49979, "ts": "2026-08-19T00:14:54Z", "hours": 6.5842, "text": "DEVLOG #10 What I did So for this devlog, I mainly spent all of my time working on the camera. I looked up an example script from the Seeed Studio docs to learn about the main system. I then spent quite some time working on a way to convert the picture into a format that I could place into the JSON. I also shifted the old code a bit to better fit the way I wanted to use the camera. In the end, I was able to get the camera working and send a photo to the AI to reference in its response. Challenges Getting the conversion of the photo So I went into this knowing literally nothing about how cameras like this one worked. So I started with the docs and was able to write the code that took the photos. Although this was a bit tedious, the main challenge came when I tried to convert the photos to a format that was compatible with the AI. You see, when you take the photo, it is saved as a frame buffer JPEG. But I needed to convert it to Base64, since that is what Ollama uses when integrating images in the POST request. So I did some digging and came across mbedtls_base64_encode() from the mbedtls/base64.h library. This was really annoying to work with because there are a lot of required parameters, and I didn’t know what any of them meant, let alone how to use my code with them. After an hour of searching, I asked Gemini what each of the parameters meant and what to include in them, and I was able to get the code completed. But when I tried to run it, my ESP kept rebooting. After some more research, I learned that the cause was insufficient memory to store the Base64 string. I was able to fix this by adding if statements as well as memset() to manage the memory space better. After this, I added some code so that it would work regardless of whether the camera was connected. What is next The thing I am going to work on next is to create a way for the AI to use the servos. I already started working on a tool to handle that, but I have not tested it yet. I am also thinking about remodeling the wheels because I noticed that rubber wrist bands might be a better alternative to the timing belts. Thanks."}, {"post_id": 48409, "ts": "2026-08-16T18:57:43Z", "hours": 1.9836, "text": "DEVLOG #9 What I did For this block, I fixed minor details to make the prompting more seamless. First, I fixed the deserialization so that only the response would be printed. I also used Serial.readString() so the user can send multiple prompts without having to reupload the code with a new prompt Challenges Getting the Deserialization and print to work So this was a really annoying problem that I should not have had this much trouble with. When you receive the response from the AI, it comes back as JSON, with the response as well as other information like the date created, context, etc. I only wanted to print the response, so I tried using deserializeJson() from the ArduinoJson.h library. But for some reason, I kept getting null when trying to print the response element. I tried messing around with the data types, switching between string and const char*, but those didn’t work. I also tried basing my code off of an example from the ArduinoJson website, but it still would not work. Then I created an if statement that checked if there was an element in the JSON labeled response. This returned false, which meant that the data was not deserializing properly. At that point, I felt pretty lost. But then I thought of deserializing the JSON in the Python script and then sending just the response. So I looked into how to deserialize JSON strings through Python, and I came across json.loads() from the json library. There are two main versions of this method: json.loads() and json.load() . .load deserializes a file, while .loads deserializes a string. Because the response from the AI came back as a string, I was able to use the latter to separate the response from the rest of the data, which I was then able to send back and print successfully. What is next Now that I pretty much have the prompting working, my next course of action is likely going to be to figure out how to use the camera and send the feed to the AI. This will definitely be challenging, as I have no idea how I want this part of the project to work. Thank you."}, {"post_id": 46627, "ts": "2026-08-14T00:44:41Z", "hours": 7.3786, "text": "DEVLOG #8 ##What I did These 7 hours, I basically spent trying to get the HTTP POST request to work. I had a lot of trouble when trying to get it to work, but I was able to find a way to get the prompt to the AI and the response back to the ESP. ##Challenges ####Getting the POST to work Initially, I had decided to scrap the MCP idea and to just send an HTTP request directly to Ollama. This plan should have worked, but I could not get it to function. For some reason, I kept receiving a response code of -1 when I tried to send the request. This code means the connection was refused, and this could happen for a multitude of reasons. After some simple troubleshooting, I deduced that the problem was likely related to my firewall. You see, Ollama runs on port 11434, which is protected by the firewall. It also only listens to 127.0.0.1, which meant that I could not send data from the ESP32. To fix the IP problem, I tried setting an environment variable to allow it to listen on 0.0.0.0, but this didn’t work. Then I tried exposing port 11434 on my firewall to the IP of my ESP32, but that was also unsuccessful. I even tried connecting the ESP and my computer to my phone’s hotspot, but that also yielded -1. After consulting Google’s Gemini for any other solutions, I decided that I should just create a Python file that would handle all the requests. So I created a file, installed FastAPI with Uvicorn, and used those libraries along with requests to send an API request to Ollama’s REST API, which I could then return to the ESP. The ESP sent the prompt to the Python script via HTTPClient and ArduinoJSON. After creating all of this, I was finally able to get a response from the AI in serialized JSON, and I am currently trying to figure out why I can’t deserialize it and print it. ##What is next As I mentioned above, I will continue trying to find a way to print only the response and to send prompts seamlessly. This part of the project was definitely very frustrating, but I am so happy I was able to make it possible. Thanks."}, {"post_id": 43026, "ts": "2026-08-08T02:24:08Z", "hours": 2.2417, "text": "DEVLOG #7 What I did So this whole time, I basically spent trying to get the web server of the ESP32 to work, which I had a hard time understanding. I also tried using the Python script to send data to the web server, but that doesn’t seem to work either. So I began setting up the AI model with Open Web UI and Docker. I decided that I will probably scrap the whole MCP plan since i’m pretty sure I can just send and receive data as HTTP requests directly between Open Web UI and the ESP32 as JSON. Challenges Getting the data to send The main problem I have with all of this is that I don’t know what I’m doing a lot of the time. Even though I have worked with Arduino, I have never worked with an ESP32, and I don’t know how I can utilize the wifi to send and receive data. I tried understanding an example script for a basic web server that is built into the IDE, but I couldn’t wrap my head around the part where you create the server. I was able to get the ESP32 to connect to my WiFi, though, which I guess is progress. I also tried sending a POST request from the Python script, but I don’t think that is going to work since I have no idea how to get the ESP32 to receive the data. It’s even harder to find answers to these problems since I don’t even know what to look for. I decided that I should scrap the MCP plan, since I could just read JSON data that the ESP32 can receive through a GET request. In conclusion, I just ran in circles trying different things that all yielded the same results. Getting the AI to work For some reason, the model that I decided to use can only complete tasks, which are defined by a set of tools. I am able to use it in the CLI just fine, but this problem occurs when I use the model in Open Web UI. I’m using Qwen3-vl:8b because it can supposedly analyze images, though I will likely try another model if this persists. What is next The next thing is likely going to be to try other AI models to see if I can get one to work. I will also do more research on an alternative to creating a web server. This project has been very tedious, so wish me luck."}, {"post_id": 42189, "ts": "2026-08-06T20:03:58Z", "hours": 2.2336, "text": "DEVLOG #6 What I did So today, I decided that I should finish up my design before I apply to get funded. But there were a few things that I had yet to do. First, I created the top panel for OTIS. I don’t exactly know why I put it off until now, but I made a simple design that will just sit on top and be held in place by little stoppers. I also did a bit of research beforehand on what battery i should purchase, but a lot of them are too big. So I also increased the size of OTIS from 77mmx77mmx77mm to 80x80x78.5 (78.5 because the lid is 1.5 mm thick). Lastly, I went and updated the assembly video and drawing, and uploaded all the changed parts to the GitHub repo. Challenges Resizing the robot When I initially changed the size of the robot, I thought everything was ok. I used joints to attach everything, so all the parts just kinda “shifted” into the right spot. But the challenges came when I had to edit the parts of the robot that were now disproportionate. One example of this was the LCD. The screen is supposed to sit right in the middle of the robot, but it was not in the middle of the LCD board, which means all the dimensions got messed up when I resized the enclosure. To make matters worse, the project tool that I used to make the holes kept bugging out and offsetting the projection to where it was BEFORE I shifted the design. Eventually I got it to work by creating separate sketches from the projections, which is a setting on the pop-up. This way, the projections would stay exactly where I needed them instead of trying to auto-correct to some past position. I also fixed some other parts; the spacer near the servo also got messed up, but I was able to fix those problems much more easily. What Is Next The microcontroller and wires will arrive today, so I will begin working with them and the AI to figure out how to synchronize them all. I also applied for funding, so I will wait and see where that goes. Thank you."}, {"post_id": 41034, "ts": "2026-08-04T23:19:31Z", "hours": 1.7672, "text": "DEVLOG 5 What I did I began by updating the 3d model by updating the position of the screws. I did not like the visibility of the screws in the earlier design, which is why I decided to put them in from the back. I had placed some spacers between the front of the robot and the screw holes on the LCD, which meant I could screw it in from the back since the spacers created a place for the screws to screw in. This meant two things. The screws were now invisible from the exterior, and I didn’t need to use nuts. Then I created the assembly. I created my own animation for the assembly by manually transforming each component. I also created a drawing of the exploded view with a parts list. Lastly, I updated the schematic because someone suggested adding net labels to make it look cleaner. I also did quite a bit of research trying to wrap my head around MCPs and other options. But I landed on using Ollama to install a local AI model, Open Web UI to use the model with MCPs, and Python that will handle the MSPs as well as the communication between the AI and the microcontroller. Challenges Creating the exploded view. Creating the animation was hard enough, especially since the animation system is really annoying to work with. But I decided that an animation of the disassembly guide would not suffice, so I wanted to make a drawing from the animation as an exploded view. But the problem came up when I created the drawing, and not all of the parts were visible. So I solved this by creating a separate animation where all the parts are moved far enough that they are all visible from the same angle, but still in their relative locations. Figuring out the architecture workflow This has been the worst part of this project, especially because I have practically no knowledge whatsoever regarding this kind of stuff. The main problems I was having were trying to find a way to allow the AI to interact with the microcontroller. I had no Idea where to start, and was losing faith in this project. I also considered scrapping the whole movement idea because I didn’t know how I would integrate it effectively. But I stumbled on MCPs, which I think will work. They basically work by creating tools that an AI can use to interact with other software, and they are very versatile. I want to make an MCP server (a custom set of tools) that controls the code that the microcontroller runs on. Only problems are that I don’t know how to use Python or MCPs, and therefore have no idea what my options are. After some extensive research, I have a rough idea that I think might work. The prompt and camera feed will be sent to a web server created by the esp32, which a Python script will be able to access via an API. This prompt is then fed into the AI, which will use the data to generate an answer. I will also create tools in the Python script that the AI can use that will turn the servos on and off through an API if it decides it needs to move. This data, along with the response from the AI, will be sent back to the web server, which the microcontroller will display on the LCD. What is next Currently, I am waiting on my microcontroller, which is said to arrive later this week. While I wait, I will probably continue researching ways to get this to work and try to get a better idea of what I expect of OTIS. Any help or guidance with this matter would be greatly appreciated. Thank you."}, {"post_id": 40188, "ts": "2026-08-03T16:19:04Z", "hours": 7.1342, "text": "Devlog #4 Hey. This is my fourth Devlog for O.T.I.S, my personal AI desk robot. I know this is a lot of time to be putting into one Devlog, but I will try to go into as much depth as possible. What I did So, I started by creating a little notch for the camera module. I am going to buy an extension for the camera because it allows me to mount it separately, and because it comes with two heatsinks. Next, I made the gears that would hold the treads using a model of an SG90 attachment for dimensions. I also remodeled the top of the servo because the model had more comprehensive dimensions for the servo as well. After that, I began working on the front wheels. I created a model of a 2mm rod for the axle and made a cylindrical guide for the axle and gear. I also made a small stopper that I will attach to keep the axle from sliding out. Then I figured I should start on the assembly guide. I decided that an exploded view of the robot with a disassembly animation would suffice, but then I realized that I had not created a model for the LCD or the camera, so I began with the LCD. Once I completed that, I put the LCD on the robot and modeled holes for the screws. Lastly, I moved on to the camera module itself. I decided to model just the camera and the heatsink, since I didn’t think the extended wire would look accurate or contribute to the design. I also created models for the screws and nuts so that I could include them in the assembly guide. Lastly, I ordered the microcontroller, 22 AWG wire, and the servos. Challenges Modeling the gears I had quite a bit of trouble when trying to model the gears. I wanted them to have the grooves inside similar to other common servo attachments, but I couldn’t find dimensions for the attachments that included them. I did find a 3d model online that had dimensions, so I based my design off of that. I haven’t modeled the grooves, but I will likely do so if I can find some reference. I also had a little bit of trouble finding rubber treads for the robot, since they were all too large. But I came across timing belts, which are usually used in printers or small CNC machines, and they seemed like the perfect solution. This is because they were small enough, were made of rubber, and had teeth. Creating the screws When looking for ways to mount the LCD to the robot, I decided that screws would work well. So I measured the size of the holes on the LCD, but they were 3mm big. This meant that a standard M3 (3mm) screw would not fit. So I looked for one slightly smaller and found M2.5. This size should work, since it is slightly smaller than the hole, but not too small. I also had a bit of trouble finding dimensions for the threads, since I thought that I would need to specify all of that when creating the screw. But I realized that Fusion only needed the size of the screw (M2.5), which I was able to provide. I did the same for the nut, using a reference I found on a listing. I will likely buy these screws from a local hardware store, so I will update my design after I buy them. Deciding on a board This was one of the biggest problems I had when creating this robot. Buying an unsoldered version would mean I could make stronger connections by twisting wire or soldering (I don’t have a soldering iron and don’t know how to solder). But it would make testing harder, and I would also be risking causing a short circuit if the wires shift around too much. Buying the board with presoldered pins would mean easier and more reliable testing. But jumper wires are not very secure, which means I would have to learn to solder anyway. In the end, I decided to go for the unsoldered version. My plan is to wrap the wire around the pins and to add hot glue or shrink wrap to make the connection safer while I get comfortable with soldering. What is next I am going to do research on the best AI for OTIS’s brain, as well as finish the 3D model and assembly guide."}, {"post_id": 38444, "ts": "2026-07-31T20:13:58Z", "hours": 2.0119, "text": "DEVLOG #3 What I did So, I started with the Schematic on KiCad. I created symbols for the microcontroller and the LCD screen (since there weren’t ones on KiCad) and used the premade servo symbols for the continuous servos. I put them all on the page and wired them up in a way that made sense to me. I have never made a schematic before and did not know if my wiring was accurate. After that, I started on the BOM. I don’t have much on there yet, just details about the main components like the microcontroller and servos, but I will expand on it later. Challenges Making the schematic I had quite a bit of trouble when making the schematic. This was mainly because I had never done this before and didn’t know what to expect. One challenge I faced was creating the symbol for the Microcontroller. I started by going to the product page on Seeed Studios website. I saw a diagram with all the pins and their functions, but I didnt know what to include. So I googled an image of a schematic using the microcontroller and found that people would often just label the external GPIO pins, so thats what I did. Another problem I faced was trying to find the pin numbers. I was able to find the name of each pin on the diagram from the website, but they didn’t list the pin numbers. So I decided to look at the data sheet. So I googled for the data sheet, found one from Seeed Studio, and copied the pin numbers from a table on the sheet. But I noticed that they didn’t label all the pins on there, specifically the 5V (VBUS) pin and GPIO43 (which turned out to be TX), which is when I began to look elsewhere. Then I noticed that other schematics were just labeling them as 1 - 14 along the pins, so that is what I did. I faced similar problems with the LCD, but I decided to exclude the pin numbers and to just name them depending on their function. After I had made both symbols, I moved onto the schematic. This was fairly simple, since I just had to connect the right pins. But I was a little skeptical as to whether I had wired up the power correctly, since I didn’t know how I was supposed to wire the battery to all the components. However, I looked at some simple example schematics with batteries to see how they were implemented, and based mine off of them. I decided to power the LCD from the microcontroller since it runs off of 3.3V and the battery is set to 5V, with the servos and microcontroller running directly off of the battery. What is next Next, I will probably order the parts that I know I will need and begin working with them. Sadly, the microcontroller is said to arrive a week from now, while all the other parts are going to arrive much sooner unless I purchase an unsoldered version of the board. I was thinking about buying an unsoldered version and then just tying wire around the pins to make connections since I don’t have a soldering iron, but I don’t know how good of an Idea that is. Any suggestions would be greatly appreciated."}, {"post_id": 36129, "ts": "2026-07-28T00:35:50Z", "hours": 0.965, "text": "DEVLOG #2 What I did I created a rough 3d Model of OTIS’s body. I did so in Fusion360, and also used dimensions of servos and a sample LCD screen to model those parts as well. The servos are going to be MG90S continuous servos, and the LCD is most likely going to be a 2.4-inch LCD. I had some trouble when trying to decide how I was going to run the AI. But i decided that I will use an ESP-32 and run the AI on my PC. I also decided that instead of using YOLO or OpenCV, I will probably just use an LLM. This is because I want the robot to be able to answer more abstract questions about what it sees, and I don’t know how YOLO works with LLMs since it is designed to recognize a collection of specific items, but I will do research. I also updated my plan for what I am going to do. Also, I decided to go for a Seeed Studio ESP-32S3 with the camera module instead of the ESP-32S3 cam because its smaller and has a built in mic, which will not only make the robot more compact, but will also save me some pins. Challenges One of the biggest challenges I had was trying to find the right parts. This is the first time I had every done research to find parts for my own personal project, so it was very time consuming and tedious. Finding the right board One concern I had was whether I would even be able to use the ESP 32 for this project. While doing research, I knew that I would use SPI for the LCD, but I also assumed the camera module would use SPI as well. So, I was worried about whether I would be able to use both modules at the same time, especially since there was only one set of SPI pins on the board. This would have been possible regardless, but it didn’t matter because the camera module ended up not actually needing the SPI pins, so I think I am ok. Finding Dimensions Another big challenge I faced was while I was modeling the robot. I had never modeled something from scratch before, so I was really lost at the beginning. But I decided to just start somewhere and model a servo. I pulled up a random photo of the dimensions of the MG90S (I was fairly confident that the dimensions would be pretty accurate since its a popular model) and began modeling. Then I modeled the robot’s size based off of the Servos and then chose the size of the LCD by modeling it and seeing how it fit. What is next I will do more research on LLMs and whether this is the right option for my project, as well as the ways I can use them in my project. I will also update and create more designs and work on making a README.md file for GitHub."}, {"post_id": 31501, "ts": "2026-07-19T23:01:20Z", "hours": 0.2503, "text": "DEVLOG-1 What I did I created a document with a simple layout of OTIS. I have not modeled anything yet, but I created a description of my plan with parts. What is next I am going to create a rough 3D model and possibly create a schematic next."}]...
|
Title: O.T.I.S by @Sharkle | Stardance
Devlogs:
D Title: O.T.I.S by @Sharkle | Stardance
Devlogs:
DEVLOG-1 What I did I created a document with a simple layout of OTIS. I have not modeled anything yet, but I created a description of my plan with parts. What is next I am going to create a rough 3D model and possibly create a schematic next.
DEVLOG #2 What I did I created a rough 3d Model of OTIS’s body. I did so in Fusion360, and also used dimensions of servos and a sample LCD screen to model those parts as well. The servos are going to be MG90S continuous servos, and the LCD is most likely going to be a 2.4-inch LCD. I had some trouble when trying to decide how I was going to run the AI. But i decided that I will use an ESP-32 and run the AI on my PC. I also decided that instead of using YOLO or OpenCV, I will probably just use an LLM. This is because I want the robot to be able to answer more abstract questions about what it sees, and I don’t know how YOLO works with LLMs since it is designed to recognize a collection of specific items, but I will do research. I also updated my plan for what I am going to do. Also, I decided to go for a Seeed Studio ESP-32S3 with the camera module instead of the ESP-32S3 cam because its smaller and has a built in mic, which will not only make the robot more compact, but will also save me some pins. Challenges One of the biggest challenges I had was trying to find the right parts. This is the first time I had every done research to find parts for my own personal project, so it was very time consuming and tedious. Finding the right board One concern I had was whether I would even be able to use the ESP 32 for this project. While doing research, I knew that I would use SPI for the LCD, but I also assumed the camera module would use SPI as well. So, I was worried about whether I would be able to use both modules at the same time, especially since there was only one set of SPI pins on the board. This would have been possible regardless, but it didn’t matter because the camera module ended up not actually needing the SPI pins, so I think I am ok. Finding Dimensions Another big challenge I faced was while I was modeling the robot. I had never modeled something from scratch before, so I was really lost at the beginning. But I decided to just start somewhere and model a servo. I pulled up a random photo of the dimensions of the MG90S (I was fairly confident that the dimensions would be pretty accurate since its a popular model) and began modeling. Then I modeled the robot’s size based off of the Servos and then chose the size of the LCD by modeling it and seeing how it fit. What is next I will do more research on LLMs and whether this is the right option for my project, as well as the ways I can use them in my project. I will also update and create more designs and work on making a README.md file for GitHub.
DEVLOG #3 What I did So, I started with the Schematic on KiCad. I created symbols for the microcontroller and the LCD screen (since there weren’t ones on KiCad) and used the premade servo symbols for the continuous servos. I put them all on the page and wired them up in a way that made sense to me. I have never made a schematic before and did not know if my wiring was accurate. After that, I started on the BOM. I don’t have much on there yet, just details about the main components like the microcontroller and servos, but I will expand on it later. Challenges Making the schematic I had quite a bit of trouble when making the schematic. This was mainly because I had never done this before and didn’t know what to expect. One challenge I faced was creating the symbol for the Microcontroller. I started by going to the product page on Seeed Studios website. I saw a diagram with all the pins and their functions, but I didnt know what to include. So I googled an image of a schematic using the microcontroller and found that people would often just label the external GPIO pins, so thats what I did. Another problem I faced was trying to find the pin numbers. I was able to find the name of each pin on the diagram from the website, but they didn’t list the pin numbers. So I decided to look at the data sheet. So I googled for the data sheet, found one from Seeed Studio, and copied the pin numbers from a table on the sheet. But I noticed that they didn’t label all the pins on there, specifically the 5V (VBUS) pin and GPIO43 (which turned out to be TX), which is when I began to look elsewhere. Then I noticed that other schematics were just labeling them as 1 - 14 along the pins, so that is what I did. I faced similar problems with the LCD, but I decided to exclude the pin numbers and to just name them depending on their function. After I had made both symbols, I moved onto the schematic. This was fairly simple, since I just had to connect the right pins. But I was a little skeptical as to whether I had wired up the power correctly, since I didn’t know how I was supposed to wire the battery to all the components. However, I looked at some simple example schematics with batteries to see how they were implemented, and based mine off of them. I decided to power the LCD from the microcontroller since it runs off of 3.3V and the battery is set to 5V, with the servos and microcontroller running directly off of the battery. What is next Next, I will probably order the parts that I know I will need and begin working with them. Sadly, the microcontroller is said to arrive a week from now, while all the other parts are going to arrive much sooner unless I purchase an unsoldered version of the board. I was thinking about buying an unsoldered version and then just tying wire around the pins to make connections since I don’t have a soldering iron, but I don’t know how good of an Idea that is. Any suggestions would be greatly appreciated.
Devlog #4 Hey. This is my fourth Devlog for O.T.I.S, my personal AI desk robot. I know this is a lot of time to be putting into one Devlog, but I will try to go into as much depth as possible. What I did So, I started by creating a little notch for the camera module. I am going to buy an extension for the camera because it allows me to mount it separately, and because it comes with two heatsinks. Next, I made the gears that would hold the treads using a model of an SG90 attachment for dimensions. I also remodeled the top of the servo because the model had more comprehensive dimensions for the servo as well. After that, I began working on the front wheels. I created a model of a 2mm rod for the axle and made a cylindrical guide for the axle and gear. I also made a small stopper that I will attach to keep the axle from sliding out. Then I figured I should start on the assembly guide. I decided that an exploded view of the robot with a disassembly animation would suffice, but then I realized that I had not created a model for the LCD or the camera, so I began with the LCD. Once I completed that, I put the LCD on the robot and modeled holes for the screws. Lastly, I moved on to the camera module itself. I decided to model just the camera and the heatsink, since I didn’t think the extended wire would look accurate or contribute to the design. I also created models for the screws and nuts so that I could include them in the assembly guide. Lastly, I ordered the microcontroller, 22 AWG wire, and the servos. Challenges Modeling the gears I had quite a bit of trouble when trying to model the gears. I wanted them to have the grooves inside similar to other common servo attachments, but I couldn’t find dimensions for the attachments that included them. I did find a 3d model online that had dimensions, so I based my design off of that. I haven’t modeled the grooves, but I will likely do so if I can find some reference. I also had a little bit of trouble finding rubber treads for the robot, since they were all too large. But I came across timing belts, which are usually used in printers or small CNC machines, and they seemed like the perfect solution. This is because they were small enough, were made of rubber, and had teeth. Creating the screws When looking for ways to mount the LCD to the robot, I decided that screws would work well. So I measured the size of the holes on the LCD, but they were 3mm big. This meant that a standard M3 (3mm) screw would not fit. So I looked for one slightly smaller and found M2.5. This size should work, since it is slightly smaller than the hole, but not too small. I also had a bit of trouble finding dimensions for the threads, since I thought that I would need to specify all of that when creating the screw. But I realized that Fusion only needed the size of the screw (M2.5), which I was able to provide. I did the same for the nut, using a reference I found on a listing. I will likely buy these screws from a local hardware store, so I will update my design after I buy them. Deciding on a board This was one of the biggest problems I had when creating this robot. Buying an unsoldered version would mean I could make stronger connections by twisting wire or soldering (I don’t have a soldering iron and don’t know how to solder). But it would make testing harder, and I would also be risking causing a short circuit if the wires shift around too much. Buying the board with presoldered pins would mean easier and more reliable testing. But jumper wires are not very secure, which means I would have to learn to solder anyway. In the end, I decided to go for the unsoldered version. My plan is to wrap the wire around the pins and to add hot glue or shrink wrap to make the connection safer while I get comfortable with soldering. What is next I am going to do research on the best AI for OTIS’s brain, as well as finish the 3D model and assembly guide.
DEVLOG 5 What I did I began by updating the 3d model by updating the position of the screws. I did not like the visibility of the screws in the earlier design, which is why I decided to put them in from the back. I had placed some spacers between the front of the robot and the screw holes on the LCD, which meant I could screw it in from the back since the spacers created a place for the screws to screw in. This meant two things. The screws were now invisible from the exterior, and I didn’t need to use nuts. Then I created the assembly. I created my own animation for the assembly by manually transforming each component. I also created a drawing of the exploded view with a parts list. Lastly, I updated the schematic because someone suggested adding net labels to make it look cleaner. I also did quite a bit of research trying to wrap my head around MCPs and other options. But I landed on using Ollama to install a local AI model, Open Web UI to use the model with MCPs, and Python that will handle the MSPs as well as the communication between the AI and the microcontroller. Challenges Creating the exploded view. Creating the animation was hard enough, especially since the animation system is really annoying to work with. But I decided that an animation of the disassembly guide would not suffice, so I wanted to make a drawing from the animation as an exploded view. But the problem came up when I created the drawing, and not all of the parts were visible. So I solved this by creating a separate animation where all the parts are moved far enough that they are all visible from the same angle, but still in their relative locations. Figuring out the architecture workflow This has been the worst part of this project, especially because I have practically no knowledge whatsoever regarding this kind of stuff. The main problems I was having were trying to find a way to allow the AI to interact with the microcontroller. I had no Idea where to start, and was losing faith in this project. I also considered scrapping the whole movement idea because I didn’t know how I would integrate it effectively. But I stumbled on MCPs, which I think will work. They basically work by creating tools that an AI can use to interact with other software, and they are very versatile. I want to make an MCP server (a custom set of tools) that controls the code that the microcontroller runs on. Only problems are that I don’t know how to use Python or MCPs, and therefore have no idea what my options are. After some extensive research, I have a rough idea that I think might work. The prompt and camera feed will be sent to a web server created by the esp32, which a Python script will be able to access via an API. This prompt is then fed into the AI, which will use the data to generate an answer. I will also create tools in the Python script that the AI can use that will turn the servos on and off through an API if it decides it needs to move. This data, along with the response from the AI, will be sent back to the web server, which the microcontroller will display on the LCD. What is next Currently, I am waiting on my microcontroller, which is said to arrive later this week. While I wait, I will probably continue researching ways to get this to work and try to get a better idea of what I expect of OTIS. Any help or guidance with this matter would be greatly appreciated. Thank you.
DEVLOG #6 What I did So today, I decided that I should finish up my design before I apply to get funded. But there were a few things that I had yet to do. First, I created the top panel for OTIS. I don’t exactly know why I put it off until now, but I made a simple design that will just sit on top and be held in place by little stoppers. I also did a bit of research beforehand on what battery i should purchase, but a lot of them are too big. So I also increased the size of OTIS from 77mmx77mmx77mm to 80x80x78.5 (78.5 because the lid is 1.5 mm thick). Lastly, I went and updated the assembly video and drawing, and uploaded all the changed parts to the GitHub repo. Challenges Resizing the robot When I initially changed the size of the robot, I thought everything was ok. I used joints to attach everything, so all the parts just kinda “shifted” into the right spot. But the challenges came when I had to edit the parts of the robot that were now disproportionate. One example of this was the LCD. The screen is supposed to sit right in the middle of the robot, but it was not in the middle of the LCD board, which means all the dimensions got messed up when I resized the enclosure. To make matters worse, the project tool that I used to make the holes kept bugging out and offsetting the projection to where it was BEFORE I shifted the design. Eventually I got it to work by creating separate sketches from the projections, which is a setting on the pop-up. This way, the projections would stay exactly where I needed them instead of trying to auto-correct to some past position. I also fixed some other parts; the spacer near the servo also got messed up, but I was able to fix those problems much more easily. What Is Next The microcontroller and wires will arrive today, so I will begin working with them and the AI to figure out how to synchronize them all. I also applied for funding, so I will wait and see where that goes. Thank you.
DEVLOG #7 What I did So this whole time, I basically spent trying to get the web server of the ESP32 to work, which I had a hard time understanding. I also tried using the Python script to send data to the web server, but that doesn’t seem to work either. So I began setting up the AI model with Open Web UI and Docker. I decided that I will probably scrap the whole MCP plan since i’m pretty sure I can just send and receive data as HTTP requests directly between Open Web UI and the ESP32 as JSON. Challenges Getting the data to send The main problem I have with all of this is that I don’t know what I’m doing a lot of the time. Even though I have worked with Arduino, I have never worked with an ESP32, and I don’t know how I can utilize the wifi to send and receive data. I tried understanding an example script for a basic web server that is built into the IDE, but I couldn’t wrap my head around the part where you create the server. I was able to get the ESP32 to connect to my WiFi, though, which I guess is progress. I also tried sending a POST request from the Python script, but I don’t think that is going to work since I have no idea how to get the ESP32 to receive the data. It’s even harder to find answers to these problems since I don’t even know what to look for. I decided that I should scrap the MCP plan, since I could just read JSON data that the ESP32 can receive through a GET request. In conclusion, I just ran in circles trying different things that all yielded the same results. Getting the AI to work For some reason, the model that I decided to use can only complete tasks, which are defined by a set of tools. I am able to use it in the CLI just fine, but this problem occurs when I use the model in Open Web UI. I’m using Qwen3-vl:8b because it can supposedly analyze images, though I will likely try another model if this persists. What is next The next thing is likely going to be to try other AI models to see if I can get one to work. I will also do more research on an alternative to creating a web server. This project has been very tedious, so wish me luck.
DEVLOG #8 ##What I did These 7 hours, I basically spent trying to get the HTTP POST request to work. I had a lot of trouble when trying to get it to work, but I was able to find a way to get the prompt to the AI and the response back to the ESP. ##Challenges ####Getting the POST to work Initially, I had decided to scrap the MCP idea and to just send an HTTP request directly to Ollama. This plan should have worked, but I could not get it to function. For some reason, I kept receiving a response code of -1 when I tried to send the request. This code means the connection was refused, and this could happen for a multitude of reasons. After some simple troubleshooting, I deduced that the problem was likely related to my firewall. You see, Ollama runs on port 11434, which is protected by the firewall. It also only listens to 127.0.0.1, which meant that I could not send data from the ESP32. To fix the IP problem, I tried setting an environment variable to allow it to listen on 0.0.0.0, but this didn’t work. Then I tried exposing port 11434 on my firewall to the IP of my ESP32, but that was also unsuccessful. I even tried connecting the ESP and my computer to my phone’s hotspot, but that also yielded -1. After consulting Google’s Gemini for any other solutions, I decided that I should just create a Python file that would handle all the requests. So I created a file, installed FastAPI with Uvicorn, and used those libraries along with requests to send an API request to Ollama’s REST API, which I could then return to the ESP. The ESP sent the prompt to the Python script via HTTPClient and ArduinoJSON. After creating all of this, I was finally able to get a response from the AI in serialized JSON, and I am currently trying to figure out why I can’t deserialize it and print it. ##What is next As I mentioned above, I will continue trying to find a way to print only the response and to send prompts seamlessly. This part of the project was definitely very frustrating, but I am so happy I was able to make it possible. Thanks.
DEVLOG #9 What I did For this block, I fixed minor details to make the prompting more seamless. First, I fixed the deserialization so that only the response would be printed. I also used Serial.readString() so the user can send multiple prompts without having to reupload the code with a new prompt Challenges Getting the Deserialization and print to work So this was a really annoying problem that I should not have had this much trouble with. When you receive the response from the AI, it comes back as JSON, with the response as well as other information like the date created, context, etc. I only wanted to print the response, so I tried using deserializeJson() from the ArduinoJson.h library. But for some reason, I kept getting null when trying to print the response element. I tried messing around with the data types, switching between string and const char*, but those didn’t work. I also tried basing my code off of an example from the ArduinoJson website, but it still would not work. Then I created an if statement that checked if there was an element in the JSON labeled response. This returned false, which meant that the data was not deserializing properly. At that point, I felt pretty lost. But then I thought of deserializing the JSON in the Python script and then sending just the response. So I looked into how to deserialize JSON strings through Python, and I came across json.loads() from the json library. There are two main versions of this method: json.loads() and json.load() . .load deserializes a file, while .loads deserializes a string. Because the response from the AI came back as a string, I was able to use the latter to separate the response from the rest of the data, which I was then able to send back and print successfully. What is next Now that I pretty much have the prompting working, my next course of action is likely going to be to figure out how to use the camera and send the feed to the AI. This will definitely be challenging, as I have no idea how I want this part of the project to work. Thank you.
DEVLOG #10 What I did So for this devlog, I mainly spent all of my time working on the camera. I looked up an example script from the Seeed Studio docs to learn about the main system. I then spent quite some time working on a way to convert the picture into a format that I could place into the JSON. I also shifted the old code a bit to better fit the way I wanted to use the camera. In the end, I was able to get the camera working and send a photo to the AI to reference in its response. Challenges Getting the conversion of the photo So I went into this knowing literally nothing about how cameras like this one worked. So I started with the docs and was able to write the code that took the photos. Although this was a bit tedious, the main challenge came when I tried to convert the photos to a format that was compatible with the AI. You see, when you take the photo, it is saved as a frame buffer JPEG. But I needed to convert it to Base64, since that is what Ollama uses when integrating images in the POST request. So I did some digging and came across mbedtls_base64_encode() from the mbedtls/base64.h library. This was really annoying to work with because there are a lot of required parameters, and I didn’t know what any of them meant, let alone how to use my code with them. After an hour of searching, I asked Gemini what each of the parameters meant and what to include in them, and I was able to get the code completed. But when I tried to run it, my ESP kept rebooting. After some more research, I learned that the cause was insufficient memory to store the Base64 string. I was able to fix this by adding if statements as well as memset() to manage the memory space better. After this, I added some code so that it would work regardless of whether the camera was connected. What is next The thing I am going to work on next is to create a way for the AI to use the servos. I already started working on a tool to handle that, but I have not tested it yet. I am also thinking about remodeling the wheels because I noticed that rubber wrist bands might be a better alternative to the timing belts. Thanks.
DEVLOG #10 What I did In this devlog, I really just updated some of the things I had already implemented. First, I remodeled the wheels from gears to regular smooth wheels. This is because I had the idea of using those silicone wristbands as the tank treads instead of timing belts. This would not only be more accessible, but it would also make OTIS much more customizable and, in my opinion, look much better. This is because the silicone bands are thicker than the timing belts, which means the tank treads are larger. I also installed another AI model, qwen3-VL:4b, because I believed it would have better image analysis. I tested out all the models to find the best one, and I think I will use qwen3-vl:4b for this project, as it was able to recognize pictures and follow instructions more accurately than Llava. Lastly, while testing the models, I realized the prompting was a bit tedious when using the camera, since I would have to take a photo each time I prompted the AI. So I revised the code so that it would ask if you wanted to take a photo. If you say “photo”, it will ask you to position the camera and send the prompt. If you don’t want to take a photo, you just put the prompt in the first question, and it will default to no-photo mode for that prompt. Challenges Modeling the wheels This wasn’t really one large problem, more so multiple smaller ones. You see, I had already completed the 3d model with the gears instead of the wheel. This meant that changing the wheels would alter the whole model. For this reason, I was contemplating whether this would be the right choice, as I would also have to fix the animation. But I decided to do it anyway. The main problem was that the wheels have a much larger diameter than the gears. So if I were to just replace them, it would look extremely disproportionate. So, I had to remodel the servo slot and the front axles by placing them closer together and moving them up. Once I completed this, I had to redo the whole animation because the old one did not fit the new wheels well. But after all this, I was able to reupload the new files to the GitHub repo and begin fixing the code. What is next The next thing I am going to do is test out the tool. I wrote up a simple tool in Python that would allow the AI to send data that controls the servos, but I have not tested it yet, which is what I will be doing next. I will also likely wire up the servos and continue testing other models to try to find a good setup. Thank you.
DEVLOG #12 What I did I know this is a lot of time for a single devlog, so I will try to post them more often moving forward. First, I worked on allowing the AI to control the movement of the treads. My first Idea was to create a JSON schema with all 4 directions that the AI could enter values into. The values would dictate the time (in milliseconds) for which the action should be executed. Initially, I decided the 4 directions should be forward, backward, left, and right. But I knew that this would not work, since the tank treads can really only move forward and backward, as well as turn. So I then decided to replace the directions with “Right tread forward”, “Left tread forward”, “Right tread backward”, and “Left tread backward”. I decided on this because I felt that it would allow the AI to reason through my commands, which would allow for much more abstract movement. But the model was not smart enough to map out its movements, and I didn’t really have any other ideas for movement except for forward, backward, and spinning. But that gave me the idea to just use those elements in the JSON scheme. So I set the directions to “forward”, “backward”, “spin left”, and “spin right”. This way, the AI would be able to move exactly how I wanted it to move, without overcomplicating the whole thing, giving me more accurate results. After this, I began working on the APP for OTIS’s controller. I have not decided on a layout, but I do know I want buttons for the 4 directions, a chat box, and a button to send voice commands and photos. Challenges 422 Unprocessable Content So while trying to find a way to get the AI to respond as JSON, I remembered Ollama allows you to send format requests as part of the API POST request to the AI. So after reading the docs, I was able to whip up a simple JSON format using Pydantic and BaseModel with the 4 directions. But when I tried to send the request, I kept getting the 422 error response code. So then I tried a bunch of different stuff, like removing the requirements and removing the nested JSON with the format data. But none of that worked. That’s when I did some research on the docs, and I found that it was the Pydantic JSON class that was causing all the problems. You see, Pydantic is used to check whether incoming data is formatted properly. So when I used it to create a JSON schema, it would constantly look for that data from the Arduino, which it wouldn’t find. This caused the 422 error. So I removed the class and created a JSON schema as a regular variable, and this solved the issue What is next The next thing on my agenda is going to be to create the OTIS app that will allow me to manually control OTIS like a mini rover. I am currently using Tkinter to create the GUI, and will likely use an ESP web server to allow the GUI to interact with the Arduino. Thank you.
DEVLOG #13 What I did For this devlog, I started working on the web app for Otis. I want it to have controls that allow you to manually control him, as well as a button/textbox for AI questions. I was able to make a simple one with Tkinter, but decided to scrap that idea and go with a web server made with CSS and HTML. I then paused that and began working on the microphone feature, since I felt like that was much more important compared to the web server. Challenges Creating the app I initially wanted to create the app with Tkinter, as I had seen others use it and it did not seem too hard. So I began programming it with that. I made a simple window with 7buttons (4 for movement and 3 for AI use). But after realizing that I would not be able to control the ESP with Tkinter, I had to look elsewhere. This is when I realized I could make an ESP32 web server and upload the HTML code to it. This would allow me to create a local web server with a GUI that I could interact with. Working with the microphone After working on the web server, I decided that getting the microphone was a bigger priority for me, so I pivoted and began working on that. I looked at the Seeed Studio docs for microphone use and was able to create some code that would detect and package audio samples. I plan to use this with the Python script to transcribe it locally. The problem is that it is not working, and I have not yet found a solution. This all feels really sketchy, and I don’t expect it to work immediately, so wish me luck. What is next I don’t have a lot of time left, and I have yet to actually put any of the hardware together. I will likely try to 3d print the parts and begin putting stuff together by the end of next week. I will also continue working on the microphone....
|
1793461982.2636795
|
1794066782.2636795
|
|
59993
|
macropad by @brickyonyt | Stardance
|
brickyonyt
|
0
|
0.28
|
0
|
[]
|
[{"post_id": 65070, "ts": "202 [{"post_id": 65070, "ts": "2026-09-09T22:39:08Z", "hours": 0.2844, "text": "Worked on macropad"}]...
|
Title: macropad by @brickyonyt | Stardance
Devlog Title: macropad by @brickyonyt | Stardance
Devlogs:
Worked on macropad...
|
1793638507.0329309
|
1794243307.0329309
|
|
59889
|
Minimalstic-phone-stand-multiuse-mat-for-two. by @ Minimalstic-phone-stand-multiuse-mat-for-two. by @aditis | Stardance...
|
aditis
|
0
|
0.93
|
0
|
[]
|
[{"post_id": 65075, "ts": "202 [{"post_id": 65075, "ts": "2026-09-09T22:50:00Z", "hours": 0.3667, "text": "(Sorry still not my final actually) I got the idea to fill in the zig zags for better grip, and made the speakers smaller so this whole thing is fully more compact. Let me know what you think in the comments!"}, {"post_id": 64468, "ts": "2026-09-08T21:46:23Z", "hours": 0.2836, "text": "NOW I IMPLEMENTED SPEAKERS! So, my last final design was not final because I came up with another idea right when I submitted so my idea is we can have Bluetooth speakers on it too!"}, {"post_id": 64445, "ts": "2026-09-08T20:38:40Z", "hours": 0.2833, "text": "Just finished the final design on cad!"}]...
|
Title: Minimalstic-phone-stand-multiuse-mat-for-tw Title: Minimalstic-phone-stand-multiuse-mat-for-two. by @aditis | Stardance
Devlogs:
Just finished the final design on cad!
NOW I IMPLEMENTED SPEAKERS! So, my last final design was not final because I came up with another idea right when I submitted so my idea is we can have Bluetooth speakers on it too!
(Sorry still not my final actually) I got the idea to fill in the zig zags for better grip, and made the speakers smaller so this whole thing is fully more compact. Let me know what you think in the comments!...
|
1793638419.6363707
|
1794243219.6363707
|
|
59945
|
alarm clock by @_jacy | Stardance
|
_jacy
|
0
|
1.23
|
0
|
[]
|
[{"post_id": 65076, "ts": "202 [{"post_id": 65076, "ts": "2026-09-09T22:52:14Z", "hours": 0.55, "text": "I have finished working on the case. There will be a top layer for the switches, then the bottom layer will be for mounting the pcb and hiding the electronics/cables in the back."}, {"post_id": 65041, "ts": "2026-09-09T21:12:46Z", "hours": 0.6833, "text": "I completely finished designing the PCB for the alarm clock, now onto the firmware."}]...
|
Title: alarm clock by @_jacy | Stardance
Devlogs: Title: alarm clock by @_jacy | Stardance
Devlogs:
I completely finished designing the PCB for the alarm clock, now onto the firmware.
I have finished working on the case. There will be a top layer for the switches, then the bottom layer will be for mounting the pcb and hiding the electronics/cables in the back....
|
1793638463.5227873
|
1794243263.5227873
|
|
52978
|
David's Digital Hub by @daval | Stardance
|
daval
|
1
|
11.24
|
30
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-06T00:49:22Z", "hours": 10.0, "multiplier": 2.89, "payout": 30, "blessing": "neutral", "text": "I did my own website, although it’s more of a portfolio. It was kind of hard, since I have little to no experience actually building something, specially in HTML and CSS, I felt like I was cheating when using a template, so I tried to add as much as I could, like integrating a feature from a different template, or using API keys to sync my music stats to the website.", "repo": "https://github.com/davalanisv1/Digital_Hub", "demo": "https://davalanisv1.github.io/Digital_Hub/home.html"}]...
|
[{"post_id": 65077, "ts": "202 [{"post_id": 65077, "ts": "2026-09-09T22:54:39Z", "hours": 0.3339, "text": "Just some basic follow up, changed the title of some pages, checked up the links, and created a codespace! So now I can code anywhere, even if it’s not my own laptop! That’s so peak"}, {"post_id": 64435, "ts": "2026-09-08T20:12:42Z", "hours": 0.9033, "text": "Added my brand new certificates, corrected the fact that my default lander page is in School.html instead of home.html, and added the pdf’s of the official certs, once the header/image is clicked it’ll get you to the official PDF."}, {"post_id": 62566, "ts": "2026-09-06T00:44:30Z", "hours": 5.8075, "text": "This took WAY longer than expected, but at last, nearly 10 hours later… here’s my website: First, I finished all the pages. -Second, after I realized it looked kinda dry, I decided to also implement the “Carousel” thing from Helios (another HTML5 template), it looks prettier now, and not as dry. -Third, I also linked my Last.fm so it can show what am I currently listening to, my weekly scrobbles, and all than fun stuff. -Lastly, added some text, images, and deployed it. It was an awesome run, it felt fun to do this, hope you guys don’t obliterate me with the ratings and I get enough stardust to get something 😭"}, {"post_id": 60571, "ts": "2026-09-03T00:23:38Z", "hours": 0.4333, "text": "FINALLY, I FINISHED THE SCHOOL SUBPAGE 😭 it took a little over an hour in total but since I’ve been busy with school it feels like it took days, now I gotta finish the cert page and the clubs page, the first one should be relatively easy since I hold barelly a couple certificates, and the clubs & events should be easy too, since I’ve only been in two club and one event/internship/volunteering… the Projects Page will also be relatively time consuming, Media Tracking will probably be the hardest, since I want to sync my Last.fm to the website(can’t even do an HTML from scratch btw, no idea how I’m gonna sync Last.fm 😭). PD: Slowly but surely my new mantra is becoming “Progress is progress”"}, {"post_id": 59964, "ts": "2026-09-02T01:20:15Z", "hours": 0.7169, "text": "Finished the second section of my School Subpage, corresponding to Sophomore Year, at this pace I’m gonna finish next week -_-"}, {"post_id": 59316, "ts": "2026-09-01T01:22:09Z", "hours": 0.2833, "text": "barelly did anything, js tweaked some stuff, added my second semester transcript… tomorrow I will add requirements for graduation and more images"}, {"post_id": 58484, "ts": "2026-08-30T22:02:56Z", "hours": 0.9394, "text": "Worked on the School subpage of the Academics page, couldn’t finish since I had to go, but something’s something"}, {"post_id": 53352, "ts": "2026-08-23T21:10:31Z", "hours": 0.8667, "text": "Second Devlog I modified one of the htmls to serve as the introduction for subpages for projects, school work and certificates :D"}, {"post_id": 52579, "ts": "2026-08-22T19:16:51Z", "hours": 1.2, "text": "First Devlog I looked for a website template, downloaded it, modified it into my liking and added text on the home page"}]...
|
Title: David's Digital Hub by @daval | Stardan Title: David's Digital Hub by @daval | Stardance
Devlogs:
First Devlog I looked for a website template, downloaded it, modified it into my liking and added text on the home page
Second Devlog I modified one of the htmls to serve as the introduction for subpages for projects, school work and certificates :D
Worked on the School subpage of the Academics page, couldn’t finish since I had to go, but something’s something
barelly did anything, js tweaked some stuff, added my second semester transcript… tomorrow I will add requirements for graduation and more images
Finished the second section of my School Subpage, corresponding to Sophomore Year, at this pace I’m gonna finish next week -_-
FINALLY, I FINISHED THE SCHOOL SUBPAGE 😭 it took a little over an hour in total but since I’ve been busy with school it feels like it took days, now I gotta finish the cert page and the clubs page, the first one should be relatively easy since I hold barelly a couple certificates, and the clubs & events should be easy too, since I’ve only been in two club and one event/internship/volunteering… the Projects Page will also be relatively time consuming, Media Tracking will probably be the hardest, since I want to sync my Last.fm to the website(can’t even do an HTML from scratch btw, no idea how I’m gonna sync Last.fm 😭). PD: Slowly but surely my new mantra is becoming “Progress is progress”
This took WAY longer than expected, but at last, nearly 10 hours later… here’s my website: First, I finished all the pages. -Second, after I realized it looked kinda dry, I decided to also implement the “Carousel” thing from Helios (another HTML5 template), it looks prettier now, and not as dry. -Third, I also linked my Last.fm so it can show what am I currently listening to, my weekly scrobbles, and all than fun stuff. -Lastly, added some text, images, and deployed it. It was an awesome run, it felt fun to do this, hope you guys don’t obliterate me with the ratings and I get enough stardust to get something 😭
Added my brand new certificates, corrected the fact that my default lander page is in School.html instead of home.html, and added the pdf’s of the official certs, once the header/image is clicked it’ll get you to the official PDF.
Just some basic follow up, changed the title of some pages, checked up the links, and created a codespace! So now I can code anywhere, even if it’s not my own laptop! That’s so peak
Ships:
I did my own website, although it’s more of a portfolio. It was kind of hard, since I have little to no experience actually building something, specially in HTML and CSS, I felt like I was cheating when using a template, so I tried to add as much as I could, like integrating a feature from a different template, or using API keys to sync my music stats to the website....
|
1792846263.6969216
|
1793710263.6969216
|
|
59551
|
personal site!!! by @Anastt | Stardance
|
Anastt
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T23:57:19Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my very own personal website with html/css!! I really liked the process of learning to code with html/css, its pretty easy and straightforward. took me a bit to get familiar with it but then time went by pretty fast. i deployed my website through github pages, you can go check it out!!", "repo": "https://github.com/Anastt77/personal-bulletin-site", "demo": "https://anastt77.github.io/personal-bulletin-site/"}]...
|
[{"post_id": 65079, "ts": "202 [{"post_id": 65079, "ts": "2026-09-09T23:04:58Z", "hours": 1.4075, "text": "finished the site!!!!!! ring the bells!!! seriously this was the most fun thing ever, html/css is awesome. i basically just sat down and did everything today, added all my text and the sections and some little gif thingies :)"}, {"post_id": 64800, "ts": "2026-09-09T13:44:24Z", "hours": 1.0144, "text": "did a lot of research in between the coding to get familiar with html/css. i like it its pretty simple. took a while for me to figure out how to have the box of text in the middle tho lmao… cant wait to acc fill the website up!!"}]...
|
Title: personal site!!! by @Anastt | Stardance
De Title: personal site!!! by @Anastt | Stardance
Devlogs:
did a lot of research in between the coding to get familiar with html/css. i like it its pretty simple. took a while for me to figure out how to have the box of text in the middle tho lmao… cant wait to acc fill the website up!!
finished the site!!!!!! ring the bells!!! seriously this was the most fun thing ever, html/css is awesome. i basically just sat down and did everything today, added all my text and the sections and some little gif thingies :)
Ships:
I made my very own personal website with html/css!! I really liked the process of learning to code with html/css, its pretty easy and straightforward. took me a bit to get familiar with it but then time went by pretty fast. i deployed my website through github pages, you can go check it out!!...
|
1793573437.804436
|
1793659837.804436
|
|
2169
|
World's Worst Macropad by @Lana | Stardance
|
Lana
|
0
|
1.69
|
0
|
[]
|
[{"post_id": 6508, "ts": "2026 [{"post_id": 6508, "ts": "2026-06-10T22:44:52Z", "hours": 0.8275, "text": "Finished routing my PCB and creating my case today! (Sort of) I ran into a lot of trouble with the KiCAD components because I am just getting used to the software. While laying out the PCB, I noticed that many of the pads were appearing as “disconnected,” and my investigation into this issue definately set me back. I initially thought there was an issue with the footprint itself, only to find that A. My switches were wayyy too close - I didn’t notice they were overlapping B. KiCad was identifying pins that were not connected in the schematic. The footprint was functioning correctly-the software was simply indicating that certain GPIO pins had not been assigned to any net Besides re-learning to read instructions carefully and actually reference the diagrams before jumping into any work, I fell victim to the finicky nature of CAD-based software once again - (didn’t know it could still haunt me in circuit design/firmware. Beyond the electrical component, I was finally able to drift back into my domain - 3D design - as I worked on my case. I decided to be adventurous and neglect the warning on the macropad guide by using Onshape instead of Fusion since I’m more familiar with the software. Long story short, I had to scrap the first file completely and start over 😒. I literally had ONE job… This is what I have after about an hour of drawing a box. I’m excited to delve into other macropad designs to see how I can make mine worse!"}, {"post_id": 5412, "ts": "2026-06-09T05:10:54Z", "hours": 0.8628, "text": "PCB configuration - new to KiCAD software, so getting this done took longer than it should’ve. Through-holes are appearing as unconnected, and I’m trying to figure out what went wrong. Thoughts?"}]...
|
Title: World's Worst Macropad by @Lana | Stard Title: World's Worst Macropad by @Lana | Stardance
Devlogs:
PCB configuration - new to KiCAD software, so getting this done took longer than it should’ve. Through-holes are appearing as unconnected, and I’m trying to figure out what went wrong. Thoughts?
Finished routing my PCB and creating my case today! (Sort of) I ran into a lot of trouble with the KiCAD components because I am just getting used to the software. While laying out the PCB, I noticed that many of the pads were appearing as “disconnected,” and my investigation into this issue definately set me back. I initially thought there was an issue with the footprint itself, only to find that A. My switches were wayyy too close - I didn’t notice they were overlapping B. KiCad was identifying pins that were not connected in the schematic. The footprint was functioning correctly-the software was simply indicating that certain GPIO pins had not been assigned to any net Besides re-learning to read instructions carefully and actually reference the diagrams before jumping into any work, I fell victim to the finicky nature of CAD-based software once again - (didn’t know it could still haunt me in circuit design/firmware. Beyond the electrical component, I was finally able to drift back into my domain - 3D design - as I worked on my case. I decided to be adventurous and neglect the warning on the macropad guide by using Onshape instead of Fusion since I’m more familiar with the software. Long story short, I had to scrap the first file completely and start over 😒. I literally had ONE job… This is what I have after about an hour of drawing a box. I’m excited to delve into other macropad designs to see how I can make mine worse!...
|
1793530258.1192808
|
1794135058.1192808
|
|
42016
|
The Periodic Table by @supernovae6626 | Stardance
|
supernovae6626
|
0
|
8.64
|
0
|
[]
|
[{"post_id": 65080, "ts": "202 [{"post_id": 65080, "ts": "2026-09-09T23:16:26Z", "hours": 1.5192, "text": "The Periodic Table: Devlog #4 Currently considering why I decided this was a good idea. Also restarting with consistent devlogs. Accomplished: Restarted project from scratch Created files necessary for home page (2 js files included) Got the head part of the html done Created a (nested) js object for all info on the elements Challenges Guys that object was 598 lines long. To-Do - Create the actual table (probs via table this time) - Add css to make it pretty - Add js to the other js file to make it an interactive table - Decide if I want to add other info or leave this nightmare as it is (thoughts?)"}, {"post_id": 60780, "ts": "2026-09-03T11:33:16Z", "hours": 3.16, "text": "The Periodic Table: Devlog #3 To be totally honest, the entirety of this was spent trying to get the darn table to format properly. The buttons still don’t work. Probably going to try something else after this. (Sorry this is scant. I’m posting, like, 2 weeks after I last touched this.)"}, {"post_id": 43443, "ts": "2026-08-08T18:08:15Z", "hours": 2.5833, "text": "#The Periodic Table: Devlog #2 What I Got Done: Switched the grid out for table Retyped all the buttons Did some basic formatting for the table & added colors for the groups Added a video Created radiobuttons for a “dark mode” & “light mode” (still have to create the JS function) Challenges Retyping all the buttons Choosing colors"}, {"post_id": 42107, "ts": "2026-08-06T17:50:45Z", "hours": 1.3783, "text": "The Periodic Table: Devlog #1 Accomplished: Created all needed files (& beginning code) Decided that the grid element is best for making an interactive table ( so much research) Manually input each element (all 118) Turned a list of 118 buttons into a grid Challenges Psyching myself up to manually input all 118 elements Copying down symbols & families of the elements from a periodic table Researching ‘grid’ & relevant properties"}]...
|
Title: The Periodic Table by @supernovae6626 | Sta Title: The Periodic Table by @supernovae6626 | Stardance
Devlogs:
The Periodic Table: Devlog #1 Accomplished: Created all needed files (& beginning code) Decided that the grid element is best for making an interactive table ( so much research) Manually input each element (all 118) Turned a list of 118 buttons into a grid Challenges Psyching myself up to manually input all 118 elements Copying down symbols & families of the elements from a periodic table Researching ‘grid’ & relevant properties
#The Periodic Table: Devlog #2 What I Got Done: Switched the grid out for table Retyped all the buttons Did some basic formatting for the table & added colors for the groups Added a video Created radiobuttons for a “dark mode” & “light mode” (still have to create the JS function) Challenges Retyping all the buttons Choosing colors
The Periodic Table: Devlog #3 To be totally honest, the entirety of this was spent trying to get the darn table to format properly. The buttons still don’t work. Probably going to try something else after this. (Sorry this is scant. I’m posting, like, 2 weeks after I last touched this.)
The Periodic Table: Devlog #4 Currently considering why I decided this was a good idea. Also restarting with consistent devlogs. Accomplished: Restarted project from scratch Created files necessary for home page (2 js files included) Got the head part of the html done Created a (nested) js object for all info on the elements Challenges Guys that object was 598 lines long. To-Do - Create the actual table (probs via table this time) - Add css to make it pretty - Add js to the other js file to make it an interactive table - Decide if I want to add other info or leave this nightmare as it is (thoughts?)...
|
1793159605.4713924
|
1793764405.4713924
|
|
59883
|
Bacon Bot by @jehawk620 | Stardance
|
jehawk620
|
0
|
0.5
|
0
|
[]
|
[{"post_id": 65081, "ts": "202 [{"post_id": 65081, "ts": "2026-09-09T23:18:43Z", "hours": 0.4961, "text": "I’m still learning the ropes and spent most of the time trying to learn VS. I’m enjoying the process so far!"}]...
|
Title: Bacon Bot by @jehawk620 | Stardance
Devlog Title: Bacon Bot by @jehawk620 | Stardance
Devlogs:
I’m still learning the ropes and spent most of the time trying to learn VS. I’m enjoying the process so far!...
|
1793638415.9146585
|
1794243215.9146585
|
|
56581
|
universe today by @alyah | Stardance
|
alyah
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T23:28:51Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a custom new tab page using NASA’s API, my first time working with APIs of any sort! :) The stylized site features NASA’s photo (or video!) of the day, its title, and description. Under it is the Google search bar! You can access the preview at: https://lyri3aly.github.io/universe-today/ . Or download the files here: https://github.com/lyri3aly/universe-today/releases/tag/v1 , on Google Chrome, go to chrome://extensions/, turn on developer mode, select Load unpacked, and choose the dist folder from the downloaded files.", "repo": "https://github.com/lyri3aly/universe-today", "demo": "https://lyri3aly.github.io/universe-today/"}]...
|
[{"post_id": 65082, "ts": "202 [{"post_id": 65082, "ts": "2026-09-09T23:21:39Z", "hours": 0.5256, "text": "decided to cut this project short and finish without reaching some of my original goals as there are a few others I’m hoping to start on! final devlog for a while: fixed some formatting and made the google search bar functionable. + updated README with new plans."}, {"post_id": 64566, "ts": "2026-09-09T02:24:23Z", "hours": 1.0472, "text": "officially a new tab page! I added manifest.json to override existing google new tab code and added a nice search bar. I also updated the README and added a future plan. next up is making it look better and more functionable."}, {"post_id": 61934, "ts": "2026-09-05T03:25:12Z", "hours": 1.4894, "text": "completed the guide for Give Your Website a Pulse! here’s how the website is looking now. i’m going to sketch out a design soon and implement it a rough draft of it for the first ship to complete the mission."}]...
|
Title: universe today by @alyah | Stardance
Devlo Title: universe today by @alyah | Stardance
Devlogs:
completed the guide for Give Your Website a Pulse! here’s how the website is looking now. i’m going to sketch out a design soon and implement it a rough draft of it for the first ship to complete the mission.
officially a new tab page! I added manifest.json to override existing google new tab code and added a nice search bar. I also updated the README and added a future plan. next up is making it look better and more functionable.
decided to cut this project short and finish without reaching some of my original goals as there are a few others I’m hoping to start on! final devlog for a while: fixed some formatting and made the google search bar functionable. + updated README with new plans.
Ships:
I made a custom new tab page using NASA’s API, my first time working with APIs of any sort! :) The stylized site features NASA’s photo (or video!) of the day, its title, and description. Under it is the Google search bar! You can access the preview at: https://lyri3aly.github.io/universe-today/ . Or download the files here: https://github.com/lyri3aly/universe-today/releases/tag/v1 , on Google Chrome, go to chrome://extensions/, turn on developer mode, select Load unpacked, and choose the dist folder from the downloaded files....
|
1793580667.1894777
|
1793667067.1894777
|
|
60412
|
My amazing New Tab by @Tennis-Legend | Stardance
|
Tennis-Legend
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-10T01:51:59Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Quick Tab is a simple, lightweight new tab page built with plain HTML, CSS and JavaScript. It includes a live clock and date, a Google search bar, quick links, a small todo list and a weather section. Everything runs client‑side, which keeps it fast and easy to use. The main challenge was keeping the layout clean while fitting in the core features without making the page feel crowded. To test the project, download the folder, move it somewhere safe so it doesn’t get deleted, open the index.html file and set it as your new tab page in your browser. Once it’s set, the page should load instantly and all features should work straight away.", "repo": "https://github.com/tennis-legend1/My-amazing-Website", "demo": "https://tennis-legend1.github.io/My-amazing-Website/"}]...
|
[{"post_id": 65106, "ts": "202 [{"post_id": 65106, "ts": "2026-09-10T00:34:46Z", "hours": 1.1139, "text": "Quick Tab is made to be a clean and fast new tab page without any extra clutter. The structure stays simple by using plain HTML, CSS and JavaScript, which keeps everything easy to read and adjust. The page includes a live clock and date, a Google search bar, quick links, a small todo list saved locally and a weather section. Everything runs on the client side so it loads instantly and stays lightweight. Setup is simple. Download the folder, move it somewhere safe so it doesn’t get deleted, open the index.html file and set it as your new tab page in your browser. No installation or configuration is needed. The aim is to keep the experience minimal, clean and straightforward for anyone who wants a simple new tab layout."}]...
|
Title: My amazing New Tab by @Tennis-Legend | Star Title: My amazing New Tab by @Tennis-Legend | Stardance
Devlogs:
Quick Tab is made to be a clean and fast new tab page without any extra clutter. The structure stays simple by using plain HTML, CSS and JavaScript, which keeps everything easy to read and adjust. The page includes a live clock and date, a Google search bar, quick links, a small todo list saved locally and a weather section. Everything runs on the client side so it loads instantly and stays lightweight. Setup is simple. Download the folder, move it somewhere safe so it doesn’t get deleted, open the index.html file and set it as your new tab page in your browser. No installation or configuration is needed. The aim is to keep the experience minimal, clean and straightforward for anyone who wants a simple new tab layout.
Ships:
Quick Tab is a simple, lightweight new tab page built with plain HTML, CSS and JavaScript. It includes a live clock and date, a Google search bar, quick links, a small todo list and a weather section. Everything runs client‑side, which keeps it fast and easy to use. The main challenge was keeping the layout clean while fitting in the core features without making the page feel crowded. To test the project, download the folder, move it somewhere safe so it doesn’t get deleted, open the index.html file and set it as your new tab page in your browser. Once it’s set, the page should load instantly and all features should work straight away....
|
1793588162.4103036
|
1793674562.4103036
|
|
60468
|
kodo list by @Abubazar | Stardance
|
Abubazar
|
1
|
14.0
|
15
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-10T00:40:44Z", "hours": 14.0, "multiplier": 1.52, "payout": 15, "blessing": "neutral", "text": "its a node based todo list. most challenging part was making the ropes connecting nodes.", "repo": "https://github.com/Abubazar/Kodo-List", "demo": "https://kodo-list.netlify.app/"}]...
|
[{"post_id": 65107, "ts": "202 [{"post_id": 65107, "ts": "2026-09-10T00:37:23Z", "hours": 14.3375, "text": "didnt realize we need devlogs. everythings already on hackatime"}]...
|
Title: kodo list by @Abubazar | Stardance
Devlogs Title: kodo list by @Abubazar | Stardance
Devlogs:
didnt realize we need devlogs. everythings already on hackatime
Ships:
its a node based todo list. most challenging part was making the ropes connecting nodes....
|
1793588166.0814693
|
1793674566.0814693
|
|
58784
|
terminascoll by @azure | Stardance
|
azure
|
0
|
2.17
|
0
|
[]
|
[{"post_id": 65121, "ts": "202 [{"post_id": 65121, "ts": "2026-09-10T01:13:05Z", "hours": 0.7081, "text": "Devlog 2: Added concurrency for playlist, been getting bored of coding lately so less progress than usual ill try to ship this before thirdspace"}, {"post_id": 64527, "ts": "2026-09-09T00:16:24Z", "hours": 1.1339, "text": "Devlog 1: added the frame to text after i took forever figuring out how it works but its actually simple brightness based, did have to figure out how to calc(short for calculate) brightness with rgb but ended up just looking it up fix some bugs in my code(besides me forgetting to type cast in the float), and cleaned the tui up a bit more minor things."}, {"post_id": 62609, "ts": "2026-09-06T02:33:22Z", "hours": 0.3294, "text": "Devlog 0: got inspired by this vid from a video so im making a basic tui set up while i research easy stuff :3 i made a textual basic app with quit and cursor controls, and a skeleton for downloading youtube videos and turning them into text"}]...
|
Title: terminascoll by @azure | Stardance
Devlogs Title: terminascoll by @azure | Stardance
Devlogs:
Devlog 0: got inspired by this vid from a video so im making a basic tui set up while i research easy stuff :3 i made a textual basic app with quit and cursor controls, and a skeleton for downloading youtube videos and turning them into text
Devlog 1: added the frame to text after i took forever figuring out how it works but its actually simple brightness based, did have to figure out how to calc(short for calculate) brightness with rgb but ended up just looking it up fix some bugs in my code(besides me forgetting to type cast in the float), and cleaned the tui up a bit more minor things.
Devlog 2: Added concurrency for playlist, been getting bored of coding lately so less progress than usual ill try to ship this before thirdspace...
|
1792936245.918165
|
1793800245.918165
|
|
13560
|
Biggy OS by @LoginlikeLogan | Stardance
|
LoginlikeLogan
|
3
|
66.97
|
330
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-06T02:50:14Z", "hours": 20.0, "multiplier": 8.97, "payout": 180, "blessing": "neutral", "text": "So guys, Ive updated the os with mutiple new apps like the weather, music, calculator, paint, browser, and minecraft apps! Test it out!", "repo": "https://github.com/Logdegret/Biggy-Cheese-OS/", "demo": "https://logdegret.github.io/Biggy-Cheese-OS"}, {"ship_num": 2, "ts": "2026-08-23T13:58:23Z", "hours": 14.0, "multiplier": 10.42, "payout": 150, "blessing": "neutral", "text": "I finally finished my webos and I am happy with what ive made! There was lots that i struggled with. Hopefully this can earn a super star!", "repo": "https://github.com/Logdegret/Biggy-Cheese-OS/", "demo": "https://logdegret.github.io/Biggy-Cheese-OS"}, {"ship_num": 3, "ts": "2026-07-30T07:28:58Z", "hours": 14.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a webos based on the biggy cheese meme. I found the video player extra hard. Hopefully it meets the requirements?", "repo": "https://github.com/Logdegret/Biggy-Cheese-OS/", "demo": "https://logdegret.github.io/Biggy-Cheese-OS"}]...
|
[{"post_id": 65124, "ts": "202 [{"post_id": 65124, "ts": "2026-09-10T01:25:38Z", "hours": 4.1136, "text": "Working Up to the Big Leagues… So ive made a new window called finder and It’s pretty basic so far. It was about 330 lines of js.. I will probably replace the standby/placeholder emojis with svgs so it doesn’t look out of theme!"}, {"post_id": 64469, "ts": "2026-09-08T21:47:57Z", "hours": 0.6869, "text": "A sad devlog… so I couldn’t fix it and I had to use a bit of AI to fully debug. it turns out, the calculator app was hijacking keystrokes and I had a single broken line of code in app.js. But now it works!"}, {"post_id": 64436, "ts": "2026-09-08T20:12:51Z", "hours": 14.1656, "text": "I have been working super hard and trying to fix bugs and heavily avoiding ai. But for some reason the website is breaking apart and no longer loading."}, {"post_id": 62618, "ts": "2026-09-06T02:46:53Z", "hours": 1.0931, "text": "Final Additions! Ive added a modified file of eaglercraft into the biggy os and it is now called Biggy OS"}, {"post_id": 61193, "ts": "2026-09-04T00:26:40Z", "hours": 8.1094, "text": "Ive added 3 new apps!! A working browser, calculator, and paint app!!! windows were not working properly so I had to make some ajustments and fix it. Took me some time.. haha"}, {"post_id": 59859, "ts": "2026-09-01T20:41:46Z", "hours": 9.2781, "text": "Tutorial has been added! Guys Guess what? Ive made a tutorial on how to get started on the os and i have made backgrounds gif possible. The tutorial kinda gave me a bit of trouble with bugs so i took lots of time debugging. Im also working on something big…."}, {"post_id": 59012, "ts": "2026-08-31T16:23:19Z", "hours": 1.5581, "text": "Guys I am BACK!! So far ive been tweaking a few things like the location bug, it was supposed to popup when you clicked download for the weather app. But I guess i didn’t catch that.. Anyways Here are some new backgrounds, they’re 4k!!"}, {"post_id": 53063, "ts": "2026-08-23T13:55:30Z", "hours": 1.5417, "text": "MY LAST DEVLOG!!! Hey guys, its been a great run! ive added a music app and a few customizable widgets but which can only be found by something you need to explore. Thank you guys so much for support!"}, {"post_id": 52333, "ts": "2026-08-22T13:19:21Z", "hours": 0.5256, "text": "Ive added a new app that you can download! i am currently thinking of stopping this project although it has been a blast making this project."}, {"post_id": 51796, "ts": "2026-08-21T17:09:52Z", "hours": 2.1492, "text": "LOT OF NEW BIG THINGS Ive added two new windows, notes and the store. nothing can be donwloaded yet but i am currently working on that. Ive added resizing!! follow allong and this shall be a super star project!"}, {"post_id": 50661, "ts": "2026-08-19T22:48:17Z", "hours": 0.3942, "text": "A fun cinematic opening!!! I’ve ai coded me a simple opening while i added the sound for it. I hate to say but i was a little lazy on this one since i don’t really know much on animation in websites."}, {"post_id": 50640, "ts": "2026-08-19T22:01:17Z", "hours": 2.5006, "text": "A super Annoying Terminal This Terminal is super annoying, spacing, css and divs are driving me crazy! Everytime i clicked on this terminal it used to break the screen… Not anymore! Finally the spacing and terminal is close to perfect. I will now be focusing on a cinematic loading screen."}, {"post_id": 48209, "ts": "2026-08-16T14:40:19Z", "hours": 2.4889, "text": "LOTS OF STUFF ive added a to do list with a check box so you can remind yourself what to do. Ive also added a terminal! its a work in progress but im getting there! i really want this to be a super star project so im putting in all my effort!"}, {"post_id": 46924, "ts": "2026-08-14T14:16:12Z", "hours": 0.3458, "text": "Ive tuned up the meme window to filter them and frame them"}, {"post_id": 45943, "ts": "2026-08-12T19:11:29Z", "hours": 2.4656, "text": "I added a lot so far, i added a meme tab and a to do tab. meme tab is done but not the todo."}, {"post_id": 41329, "ts": "2026-08-05T14:04:58Z", "hours": 0.4178, "text": "Ive finnaly fixed this stupid window that did not want to cooperate. I actaully suffered through this. Well, hope that some of you will like it. Also heres the progress so far: Im going to be changing meme generator to daily meme. I will be coding in python for it. Also If anyone wants to work with me to make a biggy cheeze type game, please feel free to reach out to me"}, {"post_id": 39719, "ts": "2026-08-02T21:11:11Z", "hours": 0.635, "text": "I drew a new icon for a daily meme. How do yall like it? also my game window is soooooo broken. it stretches so weird… I need someone to design a game for me since idk how to make game. Anyone?"}, {"post_id": 38749, "ts": "2026-08-01T09:37:58Z", "hours": 0.9711, "text": "added fullscreen and a game that is animal themed. NOT MY GAME"}, {"post_id": 37450, "ts": "2026-07-30T06:23:48Z", "hours": 1.0489, "text": "Made A new window / app for an about me! This is probably the final devlog until the first ship. Thank you guys so much for the support and hopefully i can get to the next OS mission.."}, {"post_id": 36272, "ts": "2026-07-28T08:23:05Z", "hours": 0.8856, "text": "I added another modular window that can change backgrounds"}, {"post_id": 34540, "ts": "2026-07-25T10:38:04Z", "hours": 0.8489, "text": "added apps!"}, {"post_id": 34517, "ts": "2026-07-25T09:34:34Z", "hours": 0.3906, "text": "I added a custom cheese cursor that I drew!"}, {"post_id": 34502, "ts": "2026-07-25T08:38:58Z", "hours": 2.3539, "text": "I scrapped the ugly background and added a physical clock with a rotating joke/statement. Also added a fun loading screen"}, {"post_id": 33948, "ts": "2026-07-24T09:02:04Z", "hours": 2.0789, "text": "Many Things Have Been Added! Ive added a rotating joke/statement that changes everytime you reload, a clock(that will be improved), and a clock widget/window that I want to be a permenant widget. Wish me luck! here are some pictures and the progress so far!"}, {"post_id": 31251, "ts": "2026-07-19T14:44:53Z", "hours": 3.2208, "text": "I have added a draggable window for the biggy cheeze moment with a custom player"}, {"post_id": 30562, "ts": "2026-07-18T07:29:12Z", "hours": 1.0281, "text": "We have went back to biggy cheeze Sorry for changing it! I am going to restart from scratch"}, {"post_id": 8723, "ts": "2026-06-14T14:20:53Z", "hours": 0.7217, "text": "I change my theme Lets Go Knicks"}, {"post_id": 7172, "ts": "2026-06-11T23:47:16Z", "hours": 1.2631, "text": "added stardance link, fixed image, and more text. Im struggling with this… lol"}, {"post_id": 5276, "ts": "2026-06-09T00:07:01Z", "hours": 0.5161, "text": "Started my own webos via guide(idk why image doesn’t work) help?? it works on index.html locally…"}]...
|
Title: Biggy OS by @LoginlikeLogan | Stardance
De Title: Biggy OS by @LoginlikeLogan | Stardance
Devlogs:
Started my own webos via guide(idk why image doesn’t work) help?? it works on index.html locally…
added stardance link, fixed image, and more text. Im struggling with this… lol
I change my theme Lets Go Knicks
We have went back to biggy cheeze Sorry for changing it! I am going to restart from scratch
I have added a draggable window for the biggy cheeze moment with a custom player
Many Things Have Been Added! Ive added a rotating joke/statement that changes everytime you reload, a clock(that will be improved), and a clock widget/window that I want to be a permenant widget. Wish me luck! here are some pictures and the progress so far!
I scrapped the ugly background and added a physical clock with a rotating joke/statement. Also added a fun loading screen
I added a custom cheese cursor that I drew!
added apps!
I added another modular window that can change backgrounds
Made A new window / app for an about me! This is probably the final devlog until the first ship. Thank you guys so much for the support and hopefully i can get to the next OS mission..
added fullscreen and a game that is animal themed. NOT MY GAME
I drew a new icon for a daily meme. How do yall like it? also my game window is soooooo broken. it stretches so weird… I need someone to design a game for me since idk how to make game. Anyone?
Ive finnaly fixed this stupid window that did not want to cooperate. I actaully suffered through this. Well, hope that some of you will like it. Also heres the progress so far: Im going to be changing meme generator to daily meme. I will be coding in python for it. Also If anyone wants to work with me to make a biggy cheeze type game, please feel free to reach out to me
I added a lot so far, i added a meme tab and a to do tab. meme tab is done but not the todo.
Ive tuned up the meme window to filter them and frame them
LOTS OF STUFF ive added a to do list with a check box so you can remind yourself what to do. Ive also added a terminal! its a work in progress but im getting there! i really want this to be a super star project so im putting in all my effort!
A super Annoying Terminal This Terminal is super annoying, spacing, css and divs are driving me crazy! Everytime i clicked on this terminal it used to break the screen… Not anymore! Finally the spacing and terminal is close to perfect. I will now be focusing on a cinematic loading screen.
A fun cinematic opening!!! I’ve ai coded me a simple opening while i added the sound for it. I hate to say but i was a little lazy on this one since i don’t really know much on animation in websites.
LOT OF NEW BIG THINGS Ive added two new windows, notes and the store. nothing can be donwloaded yet but i am currently working on that. Ive added resizing!! follow allong and this shall be a super star project!
Ive added a new app that you can download! i am currently thinking of stopping this project although it has been a blast making this project.
MY LAST DEVLOG!!! Hey guys, its been a great run! ive added a music app and a few customizable widgets but which can only be found by something you need to explore. Thank you guys so much for support!
Guys I am BACK!! So far ive been tweaking a few things like the location bug, it was supposed to popup when you clicked download for the weather app. But I guess i didn’t catch that.. Anyways Here are some new backgrounds, they’re 4k!!
Tutorial has been added! Guys Guess what? Ive made a tutorial on how to get started on the os and i have made backgrounds gif possible. The tutorial kinda gave me a bit of trouble with bugs so i took lots of time debugging. Im also working on something big….
Ive added 3 new apps!! A working browser, calculator, and paint app!!! windows were not working properly so I had to make some ajustments and fix it. Took me some time.. haha
Final Additions! Ive added a modified file of eaglercraft into the biggy os and it is now called Biggy OS
I have been working super hard and trying to fix bugs and heavily avoiding ai. But for some reason the website is breaking apart and no longer loading.
A sad devlog… so I couldn’t fix it and I had to use a bit of AI to fully debug. it turns out, the calculator app was hijacking keystrokes and I had a single broken line of code in app.js. But now it works!
Working Up to the Big Leagues… So ive made a new window called finder and It’s pretty basic so far. It was about 330 lines of js.. I will probably replace the standby/placeholder emojis with svgs so it doesn’t look out of theme!
Ships:
I made a webos based on the biggy cheese meme. I found the video player extra hard. Hopefully it meets the requirements?
I finally finished my webos and I am happy with what ive made! There was lots that i struggled with. Hopefully this can earn a super star!
So guys, Ive updated the os with mutiple new apps like the weather, music, calculator, paint, browser, and minecraft apps! Test it out!...
|
1792878595.6829658
|
1793742595.6829658
|
|
59623
|
Mini Desktop Weather Station by @Dewaldt | Stardan Mini Desktop Weather Station by @Dewaldt | Stardance...
|
Dewaldt
|
0
|
1.3
|
0
|
[]
|
[{"post_id": 65125, "ts": "202 [{"post_id": 65125, "ts": "2026-09-10T01:28:14Z", "hours": 1.2989, "text": "I finally got it working with the 3rd sensor, because the previous 2 didn’t work"}]...
|
Title: Mini Desktop Weather Station by @Dewaldt | Title: Mini Desktop Weather Station by @Dewaldt | Stardance
Devlogs:
I finally got it working with the 3rd sensor, because the previous 2 didn’t work...
|
1793570028.174274
|
1794174828.174274
|
|
29127
|
WarioWare Game by @mollybeth | Stardance
|
mollybeth
|
0
|
7.89
|
0
|
[]
|
[{"post_id": 65131, "ts": "202 [{"post_id": 65131, "ts": "2026-09-10T01:50:59Z", "hours": 2.825, "text": "ok so there a few issues with some of the code. I am getting that fixed. But I’ve taken a break but other than that ya that’s what I have been working on."}, {"post_id": 48514, "ts": "2026-08-16T22:12:06Z", "hours": 3.0622, "text": "I started the first mini game and added a character. The main color theme is a purple/blue if you can’t tell :)."}, {"post_id": 34976, "ts": "2026-07-26T03:29:18Z", "hours": 1.9994, "text": "completing the title/ level scenes with flower elements :)"}]...
|
Title: WarioWare Game by @mollybeth | Stardance
D Title: WarioWare Game by @mollybeth | Stardance
Devlogs:
completing the title/ level scenes with flower elements :)
I started the first mini game and added a character. The main color theme is a purple/blue if you can’t tell :).
ok so there a few issues with some of the code. I am getting that fixed. But I’ve taken a break but other than that ya that’s what I have been working on....
|
1793393746.7762165
|
1793998546.7762165
|
|
59151
|
My own site! by @Seed | Stardance
|
Seed
|
1
|
2.49
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T00:11:33Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I’ve created a personal website,one of the challenges were learning how to align some div with css, i also learned that you cant put red as the text color and black as the background color lol (sorry for bad english)", "repo": "https://github.com/liamkury/myweb", "demo": "https://liamkury.github.io/myweb/"}]...
|
[{"post_id": 65133, "ts": "202 [{"post_id": 65133, "ts": "2026-09-10T01:54:51Z", "hours": 0.4936, "text": "added more informations about me,I reorganized the layout,added a @media ,and made the github readme more complete"}, {"post_id": 63926, "ts": "2026-09-07T23:45:26Z", "hours": 1.7711, "text": "adding more informations like social media…"}]...
|
Title: My own site! by @Seed | Stardance
Devlogs: Title: My own site! by @Seed | Stardance
Devlogs:
adding more informations like social media…
added more informations about me,I reorganized the layout,added a @media ,and made the github readme more complete
Ships:
I’ve created a personal website,one of the challenges were learning how to align some div with css, i also learned that you cant put red as the text color and black as the background color lol (sorry for bad english)...
|
1793623689.5392568
|
1793710089.5392568
|
|
58010
|
simplenotes by @jaydenn_71 | Stardance
|
jaydenn_71
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-10T02:23:40Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "SimpleNotes I made a really basic notes app so that I can improve my Tailwind, Supabase, and JSX skills. Was migrated from macondo cause I was too lazy to deploy it to gh pages and then I forgot so here it is!", "repo": "https://github.com/jade-ore/simplenotes", "demo": "https://jade-ore.github.io/simplenotes/"}]...
|
[{"post_id": 65138, "ts": "202 [{"post_id": 65138, "ts": "2026-09-10T02:13:23Z", "hours": 0.4625, "text": "Final Devlog Making Demo It was honestly a matter of copying and pasting and then editing some logic. Overall no problems. I think I’m ready to ship!"}, {"post_id": 61874, "ts": "2026-09-05T01:06:34Z", "hours": 0.7275, "text": "Simplenotes Devlog 2 Making things clean Basically editing would delete the progress and making new notes wouldn’t clear the previous notes so I just fixed that Starting on demo I tried some things out using the “? :” thing but for some reason it wouldn’t compile so I did some research and I realized I needed to use react dom router which would have to make me switch the gh pages config and everything and I’ll do that tomorrow"}, {"post_id": 61234, "ts": "2026-09-04T02:09:56Z", "hours": 5.6297, "text": "Devlog for the website Backstory I made this a bit ago for Macondo but I got really lazy and didn’t want to deploy it and then I forgot about it and then I only remembered recently that I actually had this project. Website I made a small CRUD app with authentication using Supabase. It’s a really basic notes app (which doesn’t even work right now cause supabase is down ) that has authentication by email."}]...
|
Title: simplenotes by @jaydenn_71 | Stardance
Dev Title: simplenotes by @jaydenn_71 | Stardance
Devlogs:
Devlog for the website Backstory I made this a bit ago for Macondo but I got really lazy and didn’t want to deploy it and then I forgot about it and then I only remembered recently that I actually had this project. Website I made a small CRUD app with authentication using Supabase. It’s a really basic notes app (which doesn’t even work right now cause supabase is down ) that has authentication by email.
Simplenotes Devlog 2 Making things clean Basically editing would delete the progress and making new notes wouldn’t clear the previous notes so I just fixed that Starting on demo I tried some things out using the “? :” thing but for some reason it wouldn’t compile so I did some research and I realized I needed to use react dom router which would have to make me switch the gh pages config and everything and I’ll do that tomorrow
Final Devlog Making Demo It was honestly a matter of copying and pasting and then editing some logic. Overall no problems. I think I’m ready to ship!
Ships:
SimpleNotes I made a really basic notes app so that I can improve my Tailwind, Supabase, and JSX skills. Was migrated from macondo cause I was too lazy to deploy it to gh pages and then I forgot so here it is!...
|
1793656158.894431
|
1793742558.894431
|
|
9281
|
Ghost Precense by @ANNAHAKI | Stardance
|
ANNAHAKI
|
0
|
6.5
|
0
|
[]
|
[{"post_id": 6514, "ts": "2026 [{"post_id": 6514, "ts": "2026-06-10T23:12:49Z", "hours": 1.8542, "text": "I made some changes in the schematic, this was pure 2 hours of stress and 1 min of crying, the footprints arent working idk why, idk if i have to do it from scratch alll again… im rlly stressed and i just graduated today soo il stop here"}, {"post_id": 5242, "ts": "2026-06-08T23:05:37Z", "hours": 2.6411, "text": "Todayyy i lerned how to do my own symbols and footprints, i did the schematic of the pcb for ghost precense, i put the lebels and its going pretty well yeyyy i mean i struggled a lot doing this but its goint well :D"}, {"post_id": 4699, "ts": "2026-06-08T03:54:56Z", "hours": 0.6208, "text": "I m trying to understand KiCad and how to make a better PCB by downloading the ki cad files, i struggle cus theres more LIN (i think thats the name) files then the new ones KiCad_mod , so thats a barrer. I recomend Snapeda for getting the files for ur pcb its rare cus i just lerned to use KiCad this month (today is day 7) LOL this is the files thats necesary:"}, {"post_id": 4288, "ts": "2026-06-07T15:25:29Z", "hours": 0.4667, "text": "umm why did it takes 28 min of my life to make a table of 7 things…"}, {"post_id": 3564, "ts": "2026-06-06T15:44:04Z", "hours": 0.9128, "text": "This is the materials ill use for this project, Its a ghost precense wooo spooky wooo. my idea is to make a esp32 cam to detect movement with help of the ultrasonic sensor, then the servo will move 360 depending of the movement of the ´thing´ and the matriz LED and the oled will try to detect. I WILL TRY TO USE COMPUTER VISION but im a noob!"}]...
|
Title: Ghost Precense by @ANNAHAKI | Stardance
De Title: Ghost Precense by @ANNAHAKI | Stardance
Devlogs:
This is the materials ill use for this project, Its a ghost precense wooo spooky wooo. my idea is to make a esp32 cam to detect movement with help of the ultrasonic sensor, then the servo will move 360 depending of the movement of the ´thing´ and the matriz LED and the oled will try to detect. I WILL TRY TO USE COMPUTER VISION but im a noob!
umm why did it takes 28 min of my life to make a table of 7 things…
I m trying to understand KiCad and how to make a better PCB by downloading the ki cad files, i struggle cus theres more LIN (i think thats the name) files then the new ones KiCad_mod , so thats a barrer. I recomend Snapeda for getting the files for ur pcb its rare cus i just lerned to use KiCad this month (today is day 7) LOL this is the files thats necesary:
Todayyy i lerned how to do my own symbols and footprints, i did the schematic of the pcb for ghost precense, i put the lebels and its going pretty well yeyyy i mean i struggled a lot doing this but its goint well :D
I made some changes in the schematic, this was pure 2 hours of stress and 1 min of crying, the footprints arent working idk why, idk if i have to do it from scratch alll again… im rlly stressed and i just graduated today soo il stop here...
|
1793400723.1639128
|
1794005523.1639128
|
|
9841
|
[Miniaturised] Custom Server Rack by @qb | Stardan [Miniaturised] Custom Server Rack by @qb | Stardance...
|
qb
|
0
|
9.91
|
0
|
[]
|
[{"post_id": 65144, "ts": "202 [{"post_id": 65144, "ts": "2026-09-10T02:40:31Z", "hours": 0.25, "text": "added dram slots to the motherboard"}, {"post_id": 23415, "ts": "2026-07-06T11:11:38Z", "hours": 1.8344, "text": "qubixal memory technologies (qxmt) prints its first 3x downscaled DDR5 ECC RDIMM at 32GB capacity using 32Gb modules after some time thinking about it, i decided at this scale it was better to take the two piece locking mechanism design of a typical dimm slot to one piece (no reference intended). this was because of: easier printing, 2. easier to produce consistently 3. easier designing and it works! after about ~5 prototypes (i think?) the dram slot works. now i think the only thing left is to create the CPU latching mechanism. image: a rough diagram showing flaws (oh yeah first design also bent because of unstable base because the ram stick would push the unevenly extruded latching arms out)"}, {"post_id": 20465, "ts": "2026-07-02T01:52:17Z", "hours": 2.8836, "text": "notdev log #2 basically finished every major hardware component. worked on: fan exhaust system + mountable radiator adjusted sff->pci splitter board dimensions to fit added PSU adapter/expansion boards (-> 8pin pwr/24pin mobo) next step is to finalise DRAM attachment system on the motherboard."}, {"post_id": 11792, "ts": "2026-06-19T05:58:14Z", "hours": 4.9411, "text": "DRAM prices so bad that I’m building a server rack (in fusion) The goal is to build a full 4U server rack, scale it down and 3D print it. Then, print a full shelf of racks. Keep going and you get infinite compute. What I’ve done: Fully modelled GPU (design adapted from 5090/RTX Pro 6000), M.2 SSD, SFF and Network Adapter Cards, Power Supply Partially modelled Dual-CPU EATX Motherboard. Every part has been modelled by hand to reference materials. As the end result will be scaled down, many parts have been widened to accomodate that. Thank you for your support!"}]...
|
Title: [Miniaturised] Custom Server Rack by @qb | Title: [Miniaturised] Custom Server Rack by @qb | Stardance
Devlogs:
DRAM prices so bad that I’m building a server rack (in fusion) The goal is to build a full 4U server rack, scale it down and 3D print it. Then, print a full shelf of racks. Keep going and you get infinite compute. What I’ve done: Fully modelled GPU (design adapted from 5090/RTX Pro 6000), M.2 SSD, SFF and Network Adapter Cards, Power Supply Partially modelled Dual-CPU EATX Motherboard. Every part has been modelled by hand to reference materials. As the end result will be scaled down, many parts have been widened to accomodate that. Thank you for your support!
notdev log #2 basically finished every major hardware component. worked on: fan exhaust system + mountable radiator adjusted sff->pci splitter board dimensions to fit added PSU adapter/expansion boards (-> 8pin pwr/24pin mobo) next step is to finalise DRAM attachment system on the motherboard.
qubixal memory technologies (qxmt) prints its first 3x downscaled DDR5 ECC RDIMM at 32GB capacity using 32Gb modules after some time thinking about it, i decided at this scale it was better to take the two piece locking mechanism design of a typical dimm slot to one piece (no reference intended). this was because of: easier printing, 2. easier to produce consistently 3. easier designing and it works! after about ~5 prototypes (i think?) the dram slot works. now i think the only thing left is to create the CPU latching mechanism. image: a rough diagram showing flaws (oh yeah first design also bent because of unstable base because the ram stick would push the unevenly extruded latching arms out)
added dram slots to the motherboard...
|
1793422345.6462824
|
1794027145.6462824
|
|
3667
|
Project Thorax by @aayanalikhan09 | Stardance
|
aayanalikhan09
|
0
|
45.59
|
0
|
[]
|
[{"post_id": 65151, "ts": "202 [{"post_id": 65151, "ts": "2026-09-10T02:51:26Z", "hours": 2.0836, "text": "tvs diodes are the bane of my existence(right now) these things are so annoying i swear i have to add them everywhere apparently to protect my pcb from esd which i supposed is a good thing but its so annoying and its another component i have to add which is taking away time from when my project can be reviewed… anyhow here is my updated schematic for those that care :D thats all of the stuff ive done! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :) p.s. HOW DID I ROLL A ZERO AND THEN A PLUS FOURRRR"}, {"post_id": 64592, "ts": "2026-09-09T03:09:43Z", "hours": 1.9175, "text": "OMG MY SCHEMATIC IT LOOKS SO GOOD"}, {"post_id": 63371, "ts": "2026-09-07T04:52:55Z", "hours": 3.5008, "text": "so. many. things. another late night devlog! so the two big things we have are the removal of yet another component, and switching out our power source! i removed the voltage regulator as this pcb is mostly just for detection and not actual movement - that will be much later way after i get the testing and data down to a science because i no longer needed the humongous amount of power, i can now switch my power source to usb-c! it will be much more efficient and less complicated - only complaint is now i need to figure out voltage regulator i need bc usb-c gives out 5v by default other changes/news: i swapped the direction of the indicator led because thats how it works apparently with voltage drains or something i added some boot pin jumpers since you can never be too safe with what pins should and shouldnt be plugged in! i asked people on the kicad server to review my stuff(they are SO kind and helpful) and they gave me quite a few tips: clean up my schematic(tbh this is long overdue that thing is a MESS ) so that they can actually understand stuff - one dude added a video on all the common practices for schematics so ill be looking at that they also said to add netlabels so its much cleaner(i saw how they look and its GORGEOUS) add ESD protection - very important so i dont damage my components(they mentioned something about TVS diodes which i need to look into) buy some good books! i’ve been looking into the like college level textbook material for learning electricity and its fundamentals at its core using my library materials, but the kicad people recommended some other texts and said they may be available online for free! also btw i got a shirt from zach latta himself! super awesome day for me :) thats all of the stuff ive done in the past few days! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)"}, {"post_id": 52755, "ts": "2026-08-23T03:02:35Z", "hours": 3.9367, "text": "Lots more to be told! first off - i think i broke my streak merely bc i FORGOT TO PUBLISH THE LAPSEE NOOOOOO i finished the i2c wiring which is good! i have the spectral sensor, the bluetooth chip and the voltage regulator(it had two sets of i2c ports!) all hooked up to my mcu’s i2c bus i also added the clocks for both the bluetooth and the mcu! i am currently trying to figure out what on earth BOOT pins do on the esp32 because once i figure that out im done with it!(technically i could add a jtag but those things are EXPENSIVE OMG ) thats all for today tho! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)"}, {"post_id": 48650, "ts": "2026-08-17T04:01:55Z", "hours": 3.8906, "text": "Late night devlog :) another BIG change is in order! today we figured out the bluetooth low energy chips(BLE chips or as i like to say bleh chips) are LOW energy for a reason - they cant do constant data reporting and also cant transmit that much data solution? switch to good ol’ esp32! never did me wrong :D (to be fair tho i never used it so it never had the chance ) real talk tho its WAY easier to understand due to actually good documentation and many references and blogs and youtube videos about it also learned a good bit about crystal oscillators - they are essentially physical clocks to know the time or timing for a certain action ex. the rate at which to take photos or to send bluetooth signals overall pretty important stuff but this bluetooth will take another 6 hours i anticipate at the very least thats all for today tho! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)"}, {"post_id": 47788, "ts": "2026-08-15T23:22:48Z", "hours": 5.9358, "text": "big update! soooo many changes to tell you about! all in ONE devlog :) so big news - we finished half of the peripherals! a quick summary of what happened and some details of each change DOWNGRADED from usb-c 3.1 to 2.0 so basically 3.1 is useless for anything less than some kind of special data format that needs to be transferred ex. video, audio, 3d mesh, etc. so 2.0 is MORE than enough :) (totally not because i was getting a headache from figuring out where to put the 3.1 pins on my mcu and decided to just say 2.0 is enough ) ADDED 16mb flash serial memory i realized that while an sd card is GREAT for lots of data sending and backup storage and allat, it is INCREDIBLY slow and this is why we need the pcb equivalent of RAM for our detector software(pls dont rob me for my ram ) ADDED indicator LED for usb-c port figured this might be useful and also pretty :D current task - bluetooth i CANNOT figure out this bluetooth chip it has so many pins its so scary ahhh im going to be spending quite a few hours figuring this one out also btw YES i did make my own format im so sorry its so bad 😭 edit - this is my best performing devlog! thank you guys so much for all your help and support :)"}, {"post_id": 42384, "ts": "2026-08-07T02:23:59Z", "hours": 3.0678, "text": "yo i finished sd card wiring guys!!! what component next???(i was thinking usb-c) took a LOT of cross reference to adafruit stuff and some online research, but i finally did sd card wiring lmk if theres anything amiss that you see :)"}, {"post_id": 41743, "ts": "2026-08-06T04:05:20Z", "hours": 3.5886, "text": "finished power wiring! also found out that Altium(an industry standard pcb software!) offers free student accounts to people in school! after i finish this project, i may make it again in altium!"}, {"post_id": 38660, "ts": "2026-08-01T05:13:30Z", "hours": 5.2008, "text": "Woah! too many hours logged and not enough devlogs lol so the past two days ive been trying to decrypt all these random documents that talk about how to wire different things and what pins do what however, after looking through all of these, I’ve come to the conclusion that 1. I still have a LOT to learn 😭and 2. i should prolly take the components 1 by 1 i started trying to wire up the usb-c(which i replaced with the kicad generic one ooh so fancy looking!), but ran into a problem while looking for the capacitors some reference documents say they use in the second image i have, you can see in all 5 pixels what the image says(seriously though if anyone knows what it says lmk) so right now im on the hunt for the correct capacitors for the project also thought i should share that the hackpad stardust prize is RIDICUOUSLY low - ONE stardust are we serious???"}, {"post_id": 36774, "ts": "2026-07-29T01:21:15Z", "hours": 4.7061, "text": "lots of stuff going on! very happy to say i did a lot of work recently :D so first off i made a new banner for my project lmk if u like him :) ive been doing some research on different components im gonna need and also attempting to itemize my stuff so it s easier to visualize - i gotta say looking to be more expensive than i thought today i mostly looked at step-down voltage converters(essentially make sure that electricity doesnt flow at a rate too high for electronics) and bluetooth chips that are low energy(nordic semiconductor is looking very promising!) only problems i currently have is first FINDING THIS BLUETOOTH CHIP FOOTPRINT AND SYMBOL I CANT FIND IT ANYWHERE AND I DONT WANT TO HAVE TO SPEND HOURS JUST MAKING IT IN KICAD and second just understanding wiring and what different pins actually do also thought i should share that im chrome tab maxxing rn https://docs.google.com/document/d/1EHGDPYE_L2ZDA2Ll7cWK8OQcedOOThalmhql7GgHQ5M/edit?usp=sharing ^^parts doc also thought i should say that ive seen an uptick in ai devlogs so i wanted to take a moment to ask all of you to write your own devlogs please it adds a lot more character :)"}, {"post_id": 25041, "ts": "2026-07-08T23:59:04Z", "hours": 0.3667, "text": "first off - Documentation is INSANE bro these devs are not paid enough anyways i just wanted to post an update of the schematic rq and also wanted to share i rerolled a +0 BRO HOW DOES THIS HAPPEN"}, {"post_id": 23133, "ts": "2026-07-05T22:04:22Z", "hours": 5.5239, "text": "Digikey and Mouser Struggles For much of this stage of attempting to find the parts I need, I ran into many problems with the parts vendors and their bot detection and sign in methods they were spotchy at best and i ended up having to switch sites twice just to get the files needed - and im not even sure if i have the right files yet lol"}, {"post_id": 10045, "ts": "2026-06-16T16:45:16Z", "hours": 1.5461, "text": "Component Choice and Scale Issues Today, I was trying to get all my components into the schematic so I can start to do the math for all the voltages and other components needed and stuff like that. Easy right? Wrong. Finding the components was the easiest part(although there was a mixup with the battery pack where certain details weren’t listed so I had to message the seller). The hard part for today was figuring how to set a scale in the schematic. Obviously this is very important so I can set a size for my battery pack, but I couldn’t find anything anywhere for my software of choice. I am considering switching to KiCAD(after all, I just need to add a few components), but I’ll have to see what can be done about the scale stuff. If I can figure that out, the next step will be to add the other components necessary for function."}, {"post_id": 9473, "ts": "2026-06-15T20:36:08Z", "hours": 0.3256, "text": "This is my first ever devlog! Quite exciting :D anyways this is supposed to just be some git testing to make sure my repo is setup to be public and receive commits, im still not too sure how to do this with PCBs but ill figure it out"}]...
|
Title: Project Thorax by @aayanalikhan09 | Stardan Title: Project Thorax by @aayanalikhan09 | Stardance
Devlogs:
This is my first ever devlog! Quite exciting :D anyways this is supposed to just be some git testing to make sure my repo is setup to be public and receive commits, im still not too sure how to do this with PCBs but ill figure it out
Component Choice and Scale Issues Today, I was trying to get all my components into the schematic so I can start to do the math for all the voltages and other components needed and stuff like that. Easy right? Wrong. Finding the components was the easiest part(although there was a mixup with the battery pack where certain details weren’t listed so I had to message the seller). The hard part for today was figuring how to set a scale in the schematic. Obviously this is very important so I can set a size for my battery pack, but I couldn’t find anything anywhere for my software of choice. I am considering switching to KiCAD(after all, I just need to add a few components), but I’ll have to see what can be done about the scale stuff. If I can figure that out, the next step will be to add the other components necessary for function.
Digikey and Mouser Struggles For much of this stage of attempting to find the parts I need, I ran into many problems with the parts vendors and their bot detection and sign in methods they were spotchy at best and i ended up having to switch sites twice just to get the files needed - and im not even sure if i have the right files yet lol
first off - Documentation is INSANE bro these devs are not paid enough anyways i just wanted to post an update of the schematic rq and also wanted to share i rerolled a +0 BRO HOW DOES THIS HAPPEN
lots of stuff going on! very happy to say i did a lot of work recently :D so first off i made a new banner for my project lmk if u like him :) ive been doing some research on different components im gonna need and also attempting to itemize my stuff so it s easier to visualize - i gotta say looking to be more expensive than i thought today i mostly looked at step-down voltage converters(essentially make sure that electricity doesnt flow at a rate too high for electronics) and bluetooth chips that are low energy(nordic semiconductor is looking very promising!) only problems i currently have is first FINDING THIS BLUETOOTH CHIP FOOTPRINT AND SYMBOL I CANT FIND IT ANYWHERE AND I DONT WANT TO HAVE TO SPEND HOURS JUST MAKING IT IN KICAD and second just understanding wiring and what different pins actually do also thought i should share that im chrome tab maxxing rn https://docs.google.com/document/d/1EHGDPYE_L2ZDA2Ll7cWK8OQcedOOThalmhql7GgHQ5M/edit?usp=sharing ^^parts doc also thought i should say that ive seen an uptick in ai devlogs so i wanted to take a moment to ask all of you to write your own devlogs please it adds a lot more character :)
Woah! too many hours logged and not enough devlogs lol so the past two days ive been trying to decrypt all these random documents that talk about how to wire different things and what pins do what however, after looking through all of these, I’ve come to the conclusion that 1. I still have a LOT to learn 😭and 2. i should prolly take the components 1 by 1 i started trying to wire up the usb-c(which i replaced with the kicad generic one ooh so fancy looking!), but ran into a problem while looking for the capacitors some reference documents say they use in the second image i have, you can see in all 5 pixels what the image says(seriously though if anyone knows what it says lmk) so right now im on the hunt for the correct capacitors for the project also thought i should share that the hackpad stardust prize is RIDICUOUSLY low - ONE stardust are we serious???
finished power wiring! also found out that Altium(an industry standard pcb software!) offers free student accounts to people in school! after i finish this project, i may make it again in altium!
yo i finished sd card wiring guys!!! what component next???(i was thinking usb-c) took a LOT of cross reference to adafruit stuff and some online research, but i finally did sd card wiring lmk if theres anything amiss that you see :)
big update! soooo many changes to tell you about! all in ONE devlog :) so big news - we finished half of the peripherals! a quick summary of what happened and some details of each change DOWNGRADED from usb-c 3.1 to 2.0 so basically 3.1 is useless for anything less than some kind of special data format that needs to be transferred ex. video, audio, 3d mesh, etc. so 2.0 is MORE than enough :) (totally not because i was getting a headache from figuring out where to put the 3.1 pins on my mcu and decided to just say 2.0 is enough ) ADDED 16mb flash serial memory i realized that while an sd card is GREAT for lots of data sending and backup storage and allat, it is INCREDIBLY slow and this is why we need the pcb equivalent of RAM for our detector software(pls dont rob me for my ram ) ADDED indicator LED for usb-c port figured this might be useful and also pretty :D current task - bluetooth i CANNOT figure out this bluetooth chip it has so many pins its so scary ahhh im going to be spending quite a few hours figuring this one out also btw YES i did make my own format im so sorry its so bad 😭 edit - this is my best performing devlog! thank you guys so much for all your help and support :)
Late night devlog :) another BIG change is in order! today we figured out the bluetooth low energy chips(BLE chips or as i like to say bleh chips) are LOW energy for a reason - they cant do constant data reporting and also cant transmit that much data solution? switch to good ol’ esp32! never did me wrong :D (to be fair tho i never used it so it never had the chance ) real talk tho its WAY easier to understand due to actually good documentation and many references and blogs and youtube videos about it also learned a good bit about crystal oscillators - they are essentially physical clocks to know the time or timing for a certain action ex. the rate at which to take photos or to send bluetooth signals overall pretty important stuff but this bluetooth will take another 6 hours i anticipate at the very least thats all for today tho! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)
Lots more to be told! first off - i think i broke my streak merely bc i FORGOT TO PUBLISH THE LAPSEE NOOOOOO i finished the i2c wiring which is good! i have the spectral sensor, the bluetooth chip and the voltage regulator(it had two sets of i2c ports!) all hooked up to my mcu’s i2c bus i also added the clocks for both the bluetooth and the mcu! i am currently trying to figure out what on earth BOOT pins do on the esp32 because once i figure that out im done with it!(technically i could add a jtag but those things are EXPENSIVE OMG ) thats all for today tho! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)
so. many. things. another late night devlog! so the two big things we have are the removal of yet another component, and switching out our power source! i removed the voltage regulator as this pcb is mostly just for detection and not actual movement - that will be much later way after i get the testing and data down to a science because i no longer needed the humongous amount of power, i can now switch my power source to usb-c! it will be much more efficient and less complicated - only complaint is now i need to figure out voltage regulator i need bc usb-c gives out 5v by default other changes/news: i swapped the direction of the indicator led because thats how it works apparently with voltage drains or something i added some boot pin jumpers since you can never be too safe with what pins should and shouldnt be plugged in! i asked people on the kicad server to review my stuff(they are SO kind and helpful) and they gave me quite a few tips: clean up my schematic(tbh this is long overdue that thing is a MESS ) so that they can actually understand stuff - one dude added a video on all the common practices for schematics so ill be looking at that they also said to add netlabels so its much cleaner(i saw how they look and its GORGEOUS) add ESD protection - very important so i dont damage my components(they mentioned something about TVS diodes which i need to look into) buy some good books! i’ve been looking into the like college level textbook material for learning electricity and its fundamentals at its core using my library materials, but the kicad people recommended some other texts and said they may be available online for free! also btw i got a shirt from zach latta himself! super awesome day for me :) thats all of the stuff ive done in the past few days! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :)
OMG MY SCHEMATIC IT LOOKS SO GOOD
tvs diodes are the bane of my existence(right now) these things are so annoying i swear i have to add them everywhere apparently to protect my pcb from esd which i supposed is a good thing but its so annoying and its another component i have to add which is taking away time from when my project can be reviewed… anyhow here is my updated schematic for those that care :D thats all of the stuff ive done! please leave a heart, follow, and comment if you are interested in this stuff bc it helps me and you out! you find out more about my project and i get more traffic and potentially funding :) p.s. HOW DID I ROLL A ZERO AND THEN A PLUS FOURRRR...
|
1793159409.257527
|
1793764209.257527
|