|
63316
|
What Don't You Know by @Air-Fryer | Stardance
|
Air-Fryer
|
0
|
0.45
|
0
|
[]
|
[{"post_id": 74244, "ts": "202 [{"post_id": 74244, "ts": "2026-09-27T01:42:26Z", "hours": 0.45, "text": "Cursor, consider yourself created!"}]...
|
Title: What Don't You Know by @Air-Fryer | Sta Title: What Don't You Know by @Air-Fryer | Stardance
Devlogs:
Cursor, consider yourself created!...
|
1793051328.6959276
|
1793656128.6959276
|
|
64484
|
whats up in nasa by @shauz | Stardance
|
shauz
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T01:54:15Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i have made a very attractive looking ui for this Nasa website. this website calls NASA’s api key for todays article and photo and displays it beautifully in the website. LANGUAGES USED: JavaScript, css, html", "repo": "https://github.com/wowaidummy/Random-website-project", "demo": "https://nasaarticles.vercel.app"}]...
|
[{"post_id": 74248, "ts": "202 [{"post_id": 74248, "ts": "2026-09-27T01:51:23Z", "hours": 0.2886, "text": "the app was not displaying on the webso now i hosted it properly using vercel"}, {"post_id": 74029, "ts": "2026-09-26T15:38:04Z", "hours": 0.2661, "text": "I have completed the website for the nasa api project. this porject calls tha nasa api for an image and a article and displays it with flawless css for a clean and proper webpage. ive use ai for debugging and fixing error. thanks for checking out!"}]...
|
Title: whats up in nasa by @shauz | Stardance
Dev Title: whats up in nasa by @shauz | Stardance
Devlogs:
I have completed the website for the nasa api project. this porject calls tha nasa api for an image and a article and displays it with flawless css for a clean and proper webpage. ive use ai for debugging and fixing error. thanks for checking out!
the app was not displaying on the webso now i hosted it properly using vercel
Ships:
i have made a very attractive looking ui for this Nasa website. this website calls NASA’s api key for todays article and photo and displays it beautifully in the website. LANGUAGES USED: JavaScript, css, html...
|
1793213596.2241044
|
1793299996.2241044
|
|
65873
|
Aroush WebOS by @Imobes | Stardance
|
Imobes
|
0
|
1.0
|
0
|
[]
|
[{"post_id": 74250, "ts": "202 [{"post_id": 74250, "ts": "2026-09-27T01:56:32Z", "hours": 1.0003, "text": "Hello everyone! I started building my own WebOS for mental health resources by using Stardance’s WebOS guide. I ran into problems opening the pages. I solved this by going through the settings and opening the “main” branch. I’m excited to customize my website!"}]...
|
Title: Aroush WebOS by @Imobes | Stardance
Devlog Title: Aroush WebOS by @Imobes | Stardance
Devlogs:
Hello everyone! I started building my own WebOS for mental health resources by using Stardance’s WebOS guide. I ran into problems opening the pages. I solved this by going through the settings and opening the “main” branch. I’m excited to customize my website!...
|
1793091222.0023794
|
1793696022.0023794
|
|
7650
|
Project Eclipse by @Nicormu | Stardance
|
Nicormu
|
0
|
24.76
|
0
|
[]
|
[{"post_id": 74252, "ts": "202 [{"post_id": 74252, "ts": "2026-09-27T02:06:11Z", "hours": 1.7828, "text": "Hiiii, Please say hello to the new liquid colorrrr (it also shinesssssss), the new crafting button, the new exit button and finally, the skin for the crafting tableeeeeeeee. Hope you like ittt <3"}, {"post_id": 73390, "ts": "2026-09-25T01:45:53Z", "hours": 2.8564, "text": "Hiiiiiii everyoneeeeee, I think the crafting station is getting a great advancement and is getting really goodddddddddd. I will add a color change when the crafting is available and see what can be improved before starting with quests or the economy of the game"}, {"post_id": 72471, "ts": "2026-09-23T01:10:03Z", "hours": 2.5333, "text": "Hiiiii, I have worked a bit and started a refactor on the crafting system, I still have issues. I dont like how the system is right now, I will think new ideas"}, {"post_id": 67342, "ts": "2026-09-13T12:45:07Z", "hours": 9.1197, "text": "Hi everyoneee, I was busy and stressed out with school and many other things, but I think I will start again with the development of Project Eclipse. By now, I have only organized the project and refactored almost every system."}, {"post_id": 18779, "ts": "2026-06-29T23:54:30Z", "hours": 2.4675, "text": "Devlog #5 I have been struggling with the crafting system. I cannot even describe the problem I have right now. Almost all the time recorded is trying the system and nothing to work. After I gived up with that, I organized the project :D"}, {"post_id": 15416, "ts": "2026-06-25T01:50:42Z", "hours": 0.4908, "text": "#Devlog #4 Hi guysss! I have been very busy these days but I have tried my best. I had added the sprites of the beaker and coal and started with the crafting system allowing dragging (not working completely) from the inventory. I will try all as I can to work more and improve the project :D"}, {"post_id": 10385, "ts": "2026-06-17T02:09:42Z", "hours": 2.705, "text": "Devlog #3 Hi everyone! Over the past few days, I’ve been working on the inventory and recipe system. I ran into some issues with Unity not saving my progress, so I had to rebuild everything multiple times (about 2 or 3 times 😭). On the bright side, I’m really happy with how the Notebook and Post-It sprites turned out. Now that the inventory system is mostly in place, I think I’ll be moving on to the crafting station."}, {"post_id": 7792, "ts": "2026-06-13T00:28:26Z", "hours": 1.9114, "text": "Devlog #2 Hi guys, I have been busy with the school and had work a little this week. The things I added is an inventory system, a recollection system and a prototype of the crafting station. I had problems with the inventory system and panel to make it look as I wanted to. Will keep working"}, {"post_id": 4451, "ts": "2026-06-07T19:33:52Z", "hours": 0.8914, "text": "Devlog #1 - The Beginning Project Eclipse is officially in development. This week I created the Garage scene, implemented player movement, and started working on object interactions. The biggest challenge was getting the interaction system to work correctly, which led to several debugging sessions before objects could be detected properly. Next, I’ll focus on finishing interactions and creating the first machine prototype"}]...
|
Title: Project Eclipse by @Nicormu | Stardance
De Title: Project Eclipse by @Nicormu | Stardance
Devlogs:
Devlog #1 - The Beginning Project Eclipse is officially in development. This week I created the Garage scene, implemented player movement, and started working on object interactions. The biggest challenge was getting the interaction system to work correctly, which led to several debugging sessions before objects could be detected properly. Next, I’ll focus on finishing interactions and creating the first machine prototype
Devlog #2 Hi guys, I have been busy with the school and had work a little this week. The things I added is an inventory system, a recollection system and a prototype of the crafting station. I had problems with the inventory system and panel to make it look as I wanted to. Will keep working
Devlog #3 Hi everyone! Over the past few days, I’ve been working on the inventory and recipe system. I ran into some issues with Unity not saving my progress, so I had to rebuild everything multiple times (about 2 or 3 times 😭). On the bright side, I’m really happy with how the Notebook and Post-It sprites turned out. Now that the inventory system is mostly in place, I think I’ll be moving on to the crafting station.
#Devlog #4 Hi guysss! I have been very busy these days but I have tried my best. I had added the sprites of the beaker and coal and started with the crafting system allowing dragging (not working completely) from the inventory. I will try all as I can to work more and improve the project :D
Devlog #5 I have been struggling with the crafting system. I cannot even describe the problem I have right now. Almost all the time recorded is trying the system and nothing to work. After I gived up with that, I organized the project :D
Hi everyoneee, I was busy and stressed out with school and many other things, but I think I will start again with the development of Project Eclipse. By now, I have only organized the project and refactored almost every system.
Hiiiii, I have worked a bit and started a refactor on the crafting system, I still have issues. I dont like how the system is right now, I will think new ideas
Hiiiiiii everyoneeeeee, I think the crafting station is getting a great advancement and is getting really goodddddddddd. I will add a color change when the crafting is available and see what can be improved before starting with quests or the economy of the game
Hiiii, Please say hello to the new liquid colorrrr (it also shinesssssss), the new crafting button, the new exit button and finally, the skin for the crafting tableeeeeeeee. Hope you like ittt <3...
|
1793270935.6192386
|
1793875735.6192386
|
|
65507
|
Minimalist Alarm Clock by @super_soimon | Stardanc Minimalist Alarm Clock by @super_soimon | Stardance...
|
super_soimon
|
0
|
5.08
|
0
|
[]
|
[{"post_id": 74253, "ts": "202 [{"post_id": 74253, "ts": "2026-09-27T02:08:22Z", "hours": 3.9336, "text": "Finished the whole project! Done the onshape case, it consists of 3 parts (top shell, bottom shell, middle shell). Decided to 3d print the keycaps aswell, to stay minimalist Everything is in a GitHub repository, finished BOM and README.md."}, {"post_id": 73385, "ts": "2026-09-25T01:33:52Z", "hours": 1.15, "text": "First Devlog for this project! Finished schematic and pcb layout, started work on case in onshape."}]...
|
Title: Minimalist Alarm Clock by @super_soimon | S Title: Minimalist Alarm Clock by @super_soimon | Stardance
Devlogs:
First Devlog for this project! Finished schematic and pcb layout, started work on case in onshape.
Finished the whole project! Done the onshape case, it consists of 3 parts (top shell, bottom shell, middle shell). Decided to 3d print the keycaps aswell, to stay minimalist Everything is in a GitHub repository, finished BOM and README.md....
|
1793087612.822798
|
1793692412.822798
|
|
9327
|
Drone ESC and FC by @puffiniac | Stardance
|
puffiniac
|
0
|
22.4
|
0
|
[]
|
[{"post_id": 74254, "ts": "202 [{"post_id": 74254, "ts": "2026-09-27T02:29:54Z", "hours": 3.8747, "text": "Devlog 10 wow we are in the double digits! Here is the most important parts! I am back after 2 months of not working on the project, I realized how much of a waste it would be if I don’t finish. However, there are some big changes. I will build the 4 in 1 ESC and a Flight Controller! I will not be able to finish the entire drone, however the 2 most important things will be finished! Anyway, here’s what happened, about 2 months ago I wanted to make the single ESC I had be a 4 in 1. Issue was that I did not know how the module and multi-channel tool worked… This made it so that I would be forced to had make everything. This was something I just could not bring myself to do. This was even worsened by the fact that school was beginning for me. I decided to rest on it for a while. But my friend brought it up with me and I started to properly learn about PCB’s and I think this is a little bit more possible for me now. I hopefully can finish this by the next devlog and then I can work on the flight controller. Here are some photos!"}, {"post_id": 44311, "ts": "2026-08-09T23:52:24Z", "hours": 4.8669, "text": "Devlog 9 This was about 3 days of work, I did not have a lot of motivation to continue keep doing this however i was able to finally finish the ESC PCB. Please do not bully me about my via’s… I know that they are bad. That is one thing that I would like to work on when doing the flight controller. The copper pour that I did was only for GND. although this is very messy i hope to improve how i layout the flight controller because that is the next step. The size that i used was 40mm by 40mm. Although this is pretty big, I hope that it still is ok for the drone. Now its time to work on the flight controller, something that I am both excited about and scared, because now I have a set size that i can use. 40mm by 40mm… i hope that i can do this!"}, {"post_id": 32099, "ts": "2026-07-21T01:00:35Z", "hours": 1.7172, "text": "Devlog 8 Today I started off by completely organizing my project files because things were getting way too messy to actually work efficiently. Once that was cleaned up, I ran the schematic-to-PCB sync in KiCad to pull all my components into the PCB editor, which immediately helped me catch a few footprint issues. I realized I had accidentally mixed up the footprint for my DRV8329 driver chip with my MCU, so I went back and properly assigned the QFN footprint for the AT32 MCU and imported the custom library folder for the Bourns CRE2512 current shunt resistor. I also sorted out the final connector footprints, adding a 3-pin JST-SH vertical connector for the flight controller interface signals like DSHOT and raw power, plus solid through-hole test pads for the three motor phase outputs. After clearing out all the sync errors, every single component from the MCU down to the connectors has a valid physical footprint attached. The schematic is officially completely finished for real this time, and I am finally ready to jump straight into component placement and routing on the PCB."}, {"post_id": 28032, "ts": "2026-07-14T01:34:20Z", "hours": 1.8, "text": "Devlog #7 WE ARE DONE… with the schematic… :( I finally finished wiring up the entire schematic for this block and cleaned up all the remaining loose ends Used an 3V3 rail and renamed a ton of stuff Added a bunch of resistors and capacitors as a backup power just in case I am officially ready to move past the schematic capture phase and start the physical PCB layout"}, {"post_id": 26834, "ts": "2026-07-11T21:06:30Z", "hours": 2.4833, "text": "Devlog #6 Day 7 was all about adding critical passive components to the gate driver schematic so the hardware can actually boot up and run safely. These include capacitors and Resistors. In the Schematic we have: three 1µF 50V X7R ceramic capacitors (C1, C2, C3) separate decoupling capacitors (1µF and 0.1µF) to clean up electrical noise. a 200kΩ resistor to ground to lock in a 20 V/V gain threshold for tracking motor current for the CSAGAIN"}, {"post_id": 25682, "ts": "2026-07-10T03:22:13Z", "hours": 1.8753, "text": "Devlog #5 Day 6 was all about getting off the drawing board and starting the actual schematic wiring for the ESC. my friend started something about the code idrk… in the meantime, i was able to get one esc almost finished. it was getting late so im going to go to sleep however, the goal next time i lock in is to finish schematics and move on. im thinking about doing a copper pour to make my life a lot easier. i think it will also be better for the amount of power that is getting put into this thing. the screenshots show just ONE of the ESC’s. i feel like this was the only way that this would be manageable. (breaking it up into 4 smaller parts.) needed to do a lot a lot of research on what exactly all the pins did. was able to figure out most of them. if anyone sees any errors pleaseeee tell me i lwk dont want to cook my motherboard…"}, {"post_id": 24460, "ts": "2026-07-08T01:14:21Z", "hours": 1.1667, "text": "Devlog #4 Talked about Outpost and talked about how we would code the drone. We need to finalize how we will do the code. + all of the important protocols that we need to use. After that we can both go on our individual ways to CAD/code the drone. We also talked about how we can implement PID into the software side of things. We might talk to a robotics person we know if he can help us. We were talking about how we can design each of the ESC’s. Turns out this might be easier that we expected… Overall productive session because we have not been working for a while."}, {"post_id": 18127, "ts": "2026-06-29T04:24:26Z", "hours": 2.2961, "text": "Devlog #4 to push the drone to 200mph we laid out the architecture for a custom 4-in-1 Electronic Speed Controller (ESC) designed to handle extreme current. the last photo shows our design that we came up with. it was inspired by the design of the SpeedyBee F405 V5 55A. then we worked on creating our shopping list and things that we need to buy to flush out the drone. while doing this we realized how expensive this would get. Realizing this we asked Alfie however he redirected us to Max which i sent another message to, we shall see how this works out… next is to finish the shopping cart, see if we can/should continue then open up KiCAD!"}, {"post_id": 16697, "ts": "2026-06-27T04:07:46Z", "hours": 1.2667, "text": "Devlog #3 Looking for Products wait i didnt realize that i could type here 😭 so i guess ill explain the past 3 days the best that I can! the first day me and my friend figured out the best that we could on how we would but I completely blanked on the fact that i was supposed to be recording a timelapse of the process. because of that, a massive chunk of the mental heavy lifting is already done behind the scenes. if you look back in day 2 (yesterday) we did all the layout needed. however today we flushed out the power part of the schematic. we decided to buy the GPS part of the drone because after doing some research we found that it is basically impossible to do it ourselves. we now need to figure out what we need to buy. so we created the shopping list using google sheets. we found some items however we need to finish it up. after that ill get be using KiCAD until my computer dies 😭"}, {"post_id": 16072, "ts": "2026-06-26T03:50:04Z", "hours": 1.05, "text": "Devlog #2: Schematic Hell"}]...
|
Title: Drone ESC and FC by @puffiniac | Stardance
Title: Drone ESC and FC by @puffiniac | Stardance
Devlogs:
Devlog #2: Schematic Hell
Devlog #3 Looking for Products wait i didnt realize that i could type here 😭 so i guess ill explain the past 3 days the best that I can! the first day me and my friend figured out the best that we could on how we would but I completely blanked on the fact that i was supposed to be recording a timelapse of the process. because of that, a massive chunk of the mental heavy lifting is already done behind the scenes. if you look back in day 2 (yesterday) we did all the layout needed. however today we flushed out the power part of the schematic. we decided to buy the GPS part of the drone because after doing some research we found that it is basically impossible to do it ourselves. we now need to figure out what we need to buy. so we created the shopping list using google sheets. we found some items however we need to finish it up. after that ill get be using KiCAD until my computer dies 😭
Devlog #4 to push the drone to 200mph we laid out the architecture for a custom 4-in-1 Electronic Speed Controller (ESC) designed to handle extreme current. the last photo shows our design that we came up with. it was inspired by the design of the SpeedyBee F405 V5 55A. then we worked on creating our shopping list and things that we need to buy to flush out the drone. while doing this we realized how expensive this would get. Realizing this we asked Alfie however he redirected us to Max which i sent another message to, we shall see how this works out… next is to finish the shopping cart, see if we can/should continue then open up KiCAD!
Devlog #4 Talked about Outpost and talked about how we would code the drone. We need to finalize how we will do the code. + all of the important protocols that we need to use. After that we can both go on our individual ways to CAD/code the drone. We also talked about how we can implement PID into the software side of things. We might talk to a robotics person we know if he can help us. We were talking about how we can design each of the ESC’s. Turns out this might be easier that we expected… Overall productive session because we have not been working for a while.
Devlog #5 Day 6 was all about getting off the drawing board and starting the actual schematic wiring for the ESC. my friend started something about the code idrk… in the meantime, i was able to get one esc almost finished. it was getting late so im going to go to sleep however, the goal next time i lock in is to finish schematics and move on. im thinking about doing a copper pour to make my life a lot easier. i think it will also be better for the amount of power that is getting put into this thing. the screenshots show just ONE of the ESC’s. i feel like this was the only way that this would be manageable. (breaking it up into 4 smaller parts.) needed to do a lot a lot of research on what exactly all the pins did. was able to figure out most of them. if anyone sees any errors pleaseeee tell me i lwk dont want to cook my motherboard…
Devlog #6 Day 7 was all about adding critical passive components to the gate driver schematic so the hardware can actually boot up and run safely. These include capacitors and Resistors. In the Schematic we have: three 1µF 50V X7R ceramic capacitors (C1, C2, C3) separate decoupling capacitors (1µF and 0.1µF) to clean up electrical noise. a 200kΩ resistor to ground to lock in a 20 V/V gain threshold for tracking motor current for the CSAGAIN
Devlog #7 WE ARE DONE… with the schematic… :( I finally finished wiring up the entire schematic for this block and cleaned up all the remaining loose ends Used an 3V3 rail and renamed a ton of stuff Added a bunch of resistors and capacitors as a backup power just in case I am officially ready to move past the schematic capture phase and start the physical PCB layout
Devlog 8 Today I started off by completely organizing my project files because things were getting way too messy to actually work efficiently. Once that was cleaned up, I ran the schematic-to-PCB sync in KiCad to pull all my components into the PCB editor, which immediately helped me catch a few footprint issues. I realized I had accidentally mixed up the footprint for my DRV8329 driver chip with my MCU, so I went back and properly assigned the QFN footprint for the AT32 MCU and imported the custom library folder for the Bourns CRE2512 current shunt resistor. I also sorted out the final connector footprints, adding a 3-pin JST-SH vertical connector for the flight controller interface signals like DSHOT and raw power, plus solid through-hole test pads for the three motor phase outputs. After clearing out all the sync errors, every single component from the MCU down to the connectors has a valid physical footprint attached. The schematic is officially completely finished for real this time, and I am finally ready to jump straight into component placement and routing on the PCB.
Devlog 9 This was about 3 days of work, I did not have a lot of motivation to continue keep doing this however i was able to finally finish the ESC PCB. Please do not bully me about my via’s… I know that they are bad. That is one thing that I would like to work on when doing the flight controller. The copper pour that I did was only for GND. although this is very messy i hope to improve how i layout the flight controller because that is the next step. The size that i used was 40mm by 40mm. Although this is pretty big, I hope that it still is ok for the drone. Now its time to work on the flight controller, something that I am both excited about and scared, because now I have a set size that i can use. 40mm by 40mm… i hope that i can do this!
Devlog 10 wow we are in the double digits! Here is the most important parts! I am back after 2 months of not working on the project, I realized how much of a waste it would be if I don’t finish. However, there are some big changes. I will build the 4 in 1 ESC and a Flight Controller! I will not be able to finish the entire drone, however the 2 most important things will be finished! Anyway, here’s what happened, about 2 months ago I wanted to make the single ESC I had be a 4 in 1. Issue was that I did not know how the module and multi-channel tool worked… This made it so that I would be forced to had make everything. This was something I just could not bring myself to do. This was even worsened by the fact that school was beginning for me. I decided to rest on it for a while. But my friend brought it up with me and I started to properly learn about PCB’s and I think this is a little bit more possible for me now. I hopefully can finish this by the next devlog and then I can work on the flight controller. Here are some photos!...
|
1792633991.6727064
|
1793238791.6727064
|
|
57680
|
NTHS Website by @Summer22 | Stardance
|
Summer22
|
1
|
15.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T03:41:28Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a website for my high school’s NTHS (National Technical Honor Society) Chapter. I am very proud of how it turned out. The challenging part was probably getting the pictures to work, as I don’t use pictures in code much, so I didn’t know how to use them and had to work around the text and the picture overlapping.", "repo": "", "demo": ""}]...
|
[{"post_id": 74259, "ts": "202 [{"post_id": 74259, "ts": "2026-09-27T02:44:13Z", "hours": 1.0072, "text": "I finally finished the project"}, {"post_id": 73782, "ts": "2026-09-25T23:26:36Z", "hours": 2.1922, "text": "I added Javascript to the code to make it so that the people trying to join the club could see if they are eligable."}, {"post_id": 73614, "ts": "2026-09-25T14:12:39Z", "hours": 5.295, "text": "Ive forgotten to log in a while but I have completed the leadership and membership pages and got rid of the resources and events pages."}, {"post_id": 64599, "ts": "2026-09-09T03:30:59Z", "hours": 2.525, "text": "Added a logo and completed more visual aspects"}, {"post_id": 63333, "ts": "2026-09-07T03:03:25Z", "hours": 1.3142, "text": "I started the visual aspects of the about page"}, {"post_id": 62650, "ts": "2026-09-06T03:35:52Z", "hours": 0.2875, "text": "I have started creating the next page (the about page) on the website"}, {"post_id": 61301, "ts": "2026-09-04T04:26:55Z", "hours": 0.6758, "text": "I was able to add 2 sections to the project."}, {"post_id": 60622, "ts": "2026-09-03T02:29:54Z", "hours": 0.7806, "text": "I was able to fade some of the color together and add some extra sections"}, {"post_id": 60579, "ts": "2026-09-03T01:02:38Z", "hours": 1.2456, "text": "So far I have made a navigation bar, set the color scheme, and made the main header"}]...
|
Title: NTHS Website by @Summer22 | Stardance
Devl Title: NTHS Website by @Summer22 | Stardance
Devlogs:
So far I have made a navigation bar, set the color scheme, and made the main header
I was able to fade some of the color together and add some extra sections
I was able to add 2 sections to the project.
I have started creating the next page (the about page) on the website
I started the visual aspects of the about page
Added a logo and completed more visual aspects
Ive forgotten to log in a while but I have completed the leadership and membership pages and got rid of the resources and events pages.
I added Javascript to the code to make it so that the people trying to join the club could see if they are eligable.
I finally finished the project
Ships:
I made a website for my high school’s NTHS (National Technical Honor Society) Chapter. I am very proud of how it turned out. The challenging part was probably getting the pictures to work, as I don’t use pictures in code much, so I didn’t know how to use them and had to work around the text and the picture overlapping....
|
1793152294.690669
|
1793238694.690669
|
|
26966
|
My first slack bot! by @bobafrog282 | Stardance
|
bobafrog282
|
0
|
3.6
|
0
|
[]
|
[{"post_id": 74263, "ts": "202 [{"post_id": 74263, "ts": "2026-09-27T03:01:25Z", "hours": 0.4203, "text": "What did I do? I gave up on the Zelda command for now, and instead, I tried getting the bot to run 24/7, but that isn’t working either."}, {"post_id": 73824, "ts": "2026-09-26T03:22:52Z", "hours": 0.2636, "text": "What did I do today? Fix spelling issues, and check everything over!"}, {"post_id": 72063, "ts": "2026-09-22T03:12:32Z", "hours": 0.3025, "text": "What did I do? Tinkered around because I’m still trying to figure out how to format the Zelda API! I need some desperate help, because I don’t want to add unnecessary complicated things. I need to figure this out, more Googling will probably enlighten my path. What I need to do? More Googling!"}, {"post_id": 71603, "ts": "2026-09-21T04:17:40Z", "hours": 0.2697, "text": "What I did? Today, I didn’t really do much, I just worked on the actual text written when the command passes or fails to be more cool!"}, {"post_id": 70957, "ts": "2026-09-20T03:08:57Z", "hours": 0.3339, "text": "What I did? So for the past week or so, I’ve been struggling to get some of my commands to work, because they were using APIs. I modeled them off of the examples ones (since I’m doing the mission), and I got one to work! But the Zelda one, I realized (after using AI to troubleshoot) isn’t working because the link for the API is invalid. What’s next? I’m going to work on finding a reliable API link for the Zelda one, and I can FINALLY move on from this project, just finishing the last three steps in the guide for the Slack Bot!"}, {"post_id": 70393, "ts": "2026-09-19T03:05:21Z", "hours": 0.2667, "text": "Building Slack Bot: I didn’t get much sleep, and I made this devlog to log time, and make small, text based errors and we fixed the tiny errors in the code."}, {"post_id": 69942, "ts": "2026-09-18T03:12:48Z", "hours": 0.2811, "text": "Adding more commands The way that this was done is that I added more and more commands to the Slack API to create the rest of the commands! Still need to figure out the Zelda one!"}, {"post_id": 69447, "ts": "2026-09-17T02:20:23Z", "hours": 0.2711, "text": "Attempt at making my own command I created a Zelda themed command (like I’ve been saying for the past, what three days?). I looked at an example to see how I could model this, instead of just using the template given by the Stardance guide. So far, it is working, but I don’t know what link to use to fetch the API. I also don’t know if my code will work, but I still need to finish before running! Also, I decided that my slack bot is going to be animal themed, but also extremely random! Below are the animals (but not the exact ones I will use)."}, {"post_id": 68949, "ts": "2026-09-16T03:04:12Z", "hours": 0.2833, "text": "I didn’t really do much today, I tried experimenting, and seeing what was or wasn’t working, and so far, I have the two template API’s and I’m trying to use a Legend of Zelda API, but it’s not working. Going to try it out soon, with a lot of help form Google."}, {"post_id": 68414, "ts": "2026-09-15T02:27:41Z", "hours": 0.3056, "text": "I troubleshooted my project with some help with Ai, just because I didn’t know why my commands weren’t working. Turns out, I just needed to add the commands into Slack API, which I shortly discovered. This was done, and soon my project worked, but I’m kinda stuck of what theme to do it on: Zelda, random facts, something useful, etc. That will be a mission for next time! (attached is picture of Zelda BOTW, which I might theme the slack bot on)."}, {"post_id": 67380, "ts": "2026-09-13T14:01:21Z", "hours": 0.3117, "text": "What I did - I was following the guide, and I got up to the part by adding more commands, but it started giving me these errors. The bot is running through the ping command, but no anything else. Next time I work on this, I’m going to troubleshoot, comparing it to the guide, and if not, I might need some help."}, {"post_id": 66611, "ts": "2026-09-12T13:44:26Z", "hours": 0.2917, "text": "Slack Bot : I’ve been trying to create this project since June, and I finally picked it up again! I’m following the tuturial, but I’m facing some issues. I’m leaving the trouble shooting for another day!"}]...
|
Title: My first slack bot! by @bobafrog282 | Stard Title: My first slack bot! by @bobafrog282 | Stardance
Devlogs:
Slack Bot : I’ve been trying to create this project since June, and I finally picked it up again! I’m following the tuturial, but I’m facing some issues. I’m leaving the trouble shooting for another day!
What I did - I was following the guide, and I got up to the part by adding more commands, but it started giving me these errors. The bot is running through the ping command, but no anything else. Next time I work on this, I’m going to troubleshoot, comparing it to the guide, and if not, I might need some help.
I troubleshooted my project with some help with Ai, just because I didn’t know why my commands weren’t working. Turns out, I just needed to add the commands into Slack API, which I shortly discovered. This was done, and soon my project worked, but I’m kinda stuck of what theme to do it on: Zelda, random facts, something useful, etc. That will be a mission for next time! (attached is picture of Zelda BOTW, which I might theme the slack bot on).
I didn’t really do much today, I tried experimenting, and seeing what was or wasn’t working, and so far, I have the two template API’s and I’m trying to use a Legend of Zelda API, but it’s not working. Going to try it out soon, with a lot of help form Google.
Attempt at making my own command I created a Zelda themed command (like I’ve been saying for the past, what three days?). I looked at an example to see how I could model this, instead of just using the template given by the Stardance guide. So far, it is working, but I don’t know what link to use to fetch the API. I also don’t know if my code will work, but I still need to finish before running! Also, I decided that my slack bot is going to be animal themed, but also extremely random! Below are the animals (but not the exact ones I will use).
Adding more commands The way that this was done is that I added more and more commands to the Slack API to create the rest of the commands! Still need to figure out the Zelda one!
Building Slack Bot: I didn’t get much sleep, and I made this devlog to log time, and make small, text based errors and we fixed the tiny errors in the code.
What I did? So for the past week or so, I’ve been struggling to get some of my commands to work, because they were using APIs. I modeled them off of the examples ones (since I’m doing the mission), and I got one to work! But the Zelda one, I realized (after using AI to troubleshoot) isn’t working because the link for the API is invalid. What’s next? I’m going to work on finding a reliable API link for the Zelda one, and I can FINALLY move on from this project, just finishing the last three steps in the guide for the Slack Bot!
What I did? Today, I didn’t really do much, I just worked on the actual text written when the command passes or fails to be more cool!
What did I do? Tinkered around because I’m still trying to figure out how to format the Zelda API! I need some desperate help, because I don’t want to add unnecessary complicated things. I need to figure this out, more Googling will probably enlighten my path. What I need to do? More Googling!
What did I do today? Fix spelling issues, and check everything over!
What did I do? I gave up on the Zelda command for now, and instead, I tried getting the bot to run 24/7, but that isn’t working either....
|
1793202604.0142417
|
1793807404.0142417
|
|
52123
|
Cheap Replaceable Color Tank Printer by @lazerkat Cheap Replaceable Color Tank Printer by @lazerkat | Stardance...
|
lazerkat
|
0
|
22.34
|
0
|
[]
|
[{"post_id": 74269, "ts": "202 [{"post_id": 74269, "ts": "2026-09-27T03:22:53Z", "hours": 0.6194, "text": "Devlog #22 start dance needs a production folder apparently i have it now"}, {"post_id": 68368, "ts": "2026-09-15T00:57:11Z", "hours": 0.7336, "text": "Devlog #21! more printerrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr work the paper moves too far away from the grippers before the nozzle can get to it so i will rearrange"}, {"post_id": 67092, "ts": "2026-09-13T04:34:26Z", "hours": 0.9167, "text": "Devlog #20!!!!! i forgot about the motors so i wired them in in tinkercad. I will make v2 of the pcb at some point grrr"}, {"post_id": 65837, "ts": "2026-09-11T07:38:15Z", "hours": 1.2836, "text": "Devlog #19!! (and 20 hour milestone) i fixed the size of the lip at the top of the nozzle (it was too big)"}, {"post_id": 65774, "ts": "2026-09-11T04:21:26Z", "hours": 0.8336, "text": "Devlog #18!! started on the actual case and parts for the main printer (CHW-IP8-27G-EXP) i cant wait to get funding for whatever this is going to be lol"}, {"post_id": 65193, "ts": "2026-09-10T04:51:24Z", "hours": 1.1792, "text": "Devlog #17! I started on a little holder for the pcb not very necessary"}, {"post_id": 63375, "ts": "2026-09-07T05:03:57Z", "hours": 0.7811, "text": "Devlog #16!!! After wrestling with kicanvas and kicad, I got the files!! Turns out the converter I was using is only for kicad 6 so i guess i use kicad 6 now.. and kicanvas did not like working until i had done like 3 commits for some reason"}, {"post_id": 63292, "ts": "2026-09-07T01:22:27Z", "hours": 0.9, "text": "Devlog #15! trying to fix the kicad version of the pcb - the footprints didnt assign properly"}, {"post_id": 62637, "ts": "2026-09-06T03:13:08Z", "hours": 0.7214, "text": "Devlog #14!! Resubmitted because I didn’t put the .stp files in (I only had .stl’s and idk) and also I fully converted the pcb from easyeda to kicad which was interesting. I think it’s good to go now.. i hope."}, {"post_id": 57852, "ts": "2026-08-30T05:02:16Z", "hours": 1.0669, "text": "Devlog #13!!!!!!!!!!!!!! I AM READY TO SUBMIT FOR FUNDING ASDFGHJKL IM SO HAPPY I FINISHED THE ROUTING i hope it dosent explode"}, {"post_id": 56995, "ts": "2026-08-29T01:57:57Z", "hours": 0.8333, "text": "Devlog #12 routing is so annoying also i fixed up some naming stuff that i didn’t like"}, {"post_id": 56460, "ts": "2026-08-28T07:16:42Z", "hours": 0.9833, "text": "Devlog #12!!!!!!!!!!! I AM PCBING idk i just added some of the stuff to make it cooler also i got a power supply"}, {"post_id": 55376, "ts": "2026-08-27T05:29:36Z", "hours": 0.6669, "text": "Devlog #11! I am almost done with the pcb! I now need to add pulldown resistors and capacitors and fuses and things to make it very reliable! Also I untangled my wiring with netflags which are super cool!"}, {"post_id": 55322, "ts": "2026-08-27T02:07:49Z", "hours": 1.1336, "text": "Devlog #10! I worked on the pcb in easyeda which i will put in the repo soon! and i finished printing the printhead! it works very well on the first try which is new!"}, {"post_id": 54926, "ts": "2026-08-26T04:59:12Z", "hours": 0.7167, "text": "Devlog #9!! Today I printed the parts (i’m still waiting for them btw) and made the readme good to get funding! I really hope the stardance aura farmers (the shipwrights) like my project 🚣♂️ also i used @not-willem ‘s layout for broamp because i couldn’t find the doc for layout"}, {"post_id": 54245, "ts": "2026-08-25T04:04:20Z", "hours": 0.9336, "text": "Devlog #8!!! I modelled the printhead which holds eight nozzles and prettied up the readme!"}, {"post_id": 54060, "ts": "2026-08-24T20:33:07Z", "hours": 1.3333, "text": "Devlog #7! I worked on the manifold! it was very hard to print because my slicer kept missing the middle of the model which would have leaked"}, {"post_id": 52812, "ts": "2026-08-23T05:04:19Z", "hours": 1.4, "text": "Devlog #6! I MADE IT SCREW!!!!! I now need to make an inlet ring so the membrane can be mounted properly.. yes i know the camera angle is weird too"}, {"post_id": 52746, "ts": "2026-08-23T02:32:45Z", "hours": 1.1833, "text": "Devlog #5! I designed the main nozzle setup and 3d printed it on my bambu labs a1 mini! i will reprint bc it is too small…. and redesign"}, {"post_id": 52147, "ts": "2026-08-22T07:35:47Z", "hours": 0.8167, "text": "Devlog #4!!!!!!!!!!!!!!!!!!!!!!!!!!!!! I made the datasheet for my custom piezo based printer head (PX8-20H-01)!! and yes i made that name based on other printing companies systems"}, {"post_id": 52088, "ts": "2026-08-22T05:01:17Z", "hours": 1.4333, "text": "Devlog #3! I made an 8 piezo controller using arduino uno and some funky chip stuff it is 100v wowie"}, {"post_id": 51455, "ts": "2026-08-21T05:36:22Z", "hours": 1.5667, "text": "Devlog #2! I did research using deepseek lol I am going to make my own print head oof For now though, i will buy some piezos and wire it up to an arduino but step it up to 100v so it can flex enough to push water or smth through a small hole in a bottle cap. I will 3d print a case and use more piezos later"}, {"post_id": 51425, "ts": "2026-08-21T03:50:25Z", "hours": 0.305, "text": "Devlog #1! I wrote down some ideas for the printer! it is very yes"}]...
|
Title: Cheap Replaceable Color Tank Printer by @la Title: Cheap Replaceable Color Tank Printer by @lazerkat | Stardance
Devlogs:
Devlog #1! I wrote down some ideas for the printer! it is very yes
Devlog #2! I did research using deepseek lol I am going to make my own print head oof For now though, i will buy some piezos and wire it up to an arduino but step it up to 100v so it can flex enough to push water or smth through a small hole in a bottle cap. I will 3d print a case and use more piezos later
Devlog #3! I made an 8 piezo controller using arduino uno and some funky chip stuff it is 100v wowie
Devlog #4!!!!!!!!!!!!!!!!!!!!!!!!!!!!! I made the datasheet for my custom piezo based printer head (PX8-20H-01)!! and yes i made that name based on other printing companies systems
Devlog #5! I designed the main nozzle setup and 3d printed it on my bambu labs a1 mini! i will reprint bc it is too small…. and redesign
Devlog #6! I MADE IT SCREW!!!!! I now need to make an inlet ring so the membrane can be mounted properly.. yes i know the camera angle is weird too
Devlog #7! I worked on the manifold! it was very hard to print because my slicer kept missing the middle of the model which would have leaked
Devlog #8!!! I modelled the printhead which holds eight nozzles and prettied up the readme!
Devlog #9!! Today I printed the parts (i’m still waiting for them btw) and made the readme good to get funding! I really hope the stardance aura farmers (the shipwrights) like my project 🚣♂️ also i used @not-willem ‘s layout for broamp because i couldn’t find the doc for layout
Devlog #10! I worked on the pcb in easyeda which i will put in the repo soon! and i finished printing the printhead! it works very well on the first try which is new!
Devlog #11! I am almost done with the pcb! I now need to add pulldown resistors and capacitors and fuses and things to make it very reliable! Also I untangled my wiring with netflags which are super cool!
Devlog #12!!!!!!!!!!! I AM PCBING idk i just added some of the stuff to make it cooler also i got a power supply
Devlog #12 routing is so annoying also i fixed up some naming stuff that i didn’t like
Devlog #13!!!!!!!!!!!!!! I AM READY TO SUBMIT FOR FUNDING ASDFGHJKL IM SO HAPPY I FINISHED THE ROUTING i hope it dosent explode
Devlog #14!! Resubmitted because I didn’t put the .stp files in (I only had .stl’s and idk) and also I fully converted the pcb from easyeda to kicad which was interesting. I think it’s good to go now.. i hope.
Devlog #15! trying to fix the kicad version of the pcb - the footprints didnt assign properly
Devlog #16!!! After wrestling with kicanvas and kicad, I got the files!! Turns out the converter I was using is only for kicad 6 so i guess i use kicad 6 now.. and kicanvas did not like working until i had done like 3 commits for some reason
Devlog #17! I started on a little holder for the pcb not very necessary
Devlog #18!! started on the actual case and parts for the main printer (CHW-IP8-27G-EXP) i cant wait to get funding for whatever this is going to be lol
Devlog #19!! (and 20 hour milestone) i fixed the size of the lip at the top of the nozzle (it was too big)
Devlog #20!!!!! i forgot about the motors so i wired them in in tinkercad. I will make v2 of the pcb at some point grrr
Devlog #21! more printerrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr work the paper moves too far away from the grippers before the nozzle can get to it so i will rearrange
Devlog #22 start dance needs a production folder apparently i have it now...
|
1792698454.886961
|
1793303254.886961
|
|
12006
|
Sh’elah by @akiva_yevdayev | Stardance
|
akiva_yevdayev
|
1
|
96.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T04:13:30Z", "hours": 96.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did I make? I made Sh’elah (shelah.org) — the Torah Encyclopedia, literally. a searchable library of Torah and judaic texts and commentary (all powered by Sefaria’s texts and made to feel easy to use), an AI assistant that answers questions on Jewish law (halachah) by pulling information from primary sources like the Torah and judaic texts instead of just guessing, and the practical stuff people actually need everyday — live prayer times (zmanim), a Hebrew calendar, and how different communities observe different customs. The AI is built to always point you back to your own rabbi for anything that’s actually a different based on community and needs a ruling, and it steps out of the way entirely for anything medical or safety-related, and has safeguards to protect it from answering strange or unrelated questions or from being prompt injected (because we don’t want our site to get hacked lol). The prayer-times/calendar run off of your exact location, and the calendar shows the weekly Torah portion and candle lighting times too. What was challenging for me? Getting the AI to have safeguards, not hallucinate, follow judaic law and texts, and all set up took way longer than I had originally expected. It’s easy to make a chatbot that sounds confident; it’s much harder to make one that cites where an answer actually comes from, doesn’t quietly make things up, and knows when to deflect a question or malicious prompt. I also spent a lot of time on things nobody will ever see directly — locking down who can access what in the database, making sure a runaway request can’t rack up a huge AI bill (because this site is made for the public to be free, and not to make me go broke °~°), keeping the site fast and not-broken in English and Hebrew, light and dark mode, and working/looking well on phone or tablet-sized screens. Giving the AI real tool-use so it reaches for live prayer times/calendar/texts itself was its own project, and I found out at one point my login system and database weren’t even linked correctly, silently breaking database reads/writes (was a pain to fix…). There’s also a bug where the page jumped up by 5-10 chapters at once which I fixed (and have been trying to fix that issue for MONTHS!) What am I proud of? That it actually exists as an actual product and as a solution instead of just an idea living inside someone’s head. Every page has a real link you can share — a specific judaic text, an AI answer, a specific calendar day— and it opens back up exactly the way you left it. The commentary and translations are genuinely fast now (they were super buggy and slow before), the calendar actually gives candle-lighting times and areas in my app where the torah portions are and had a huge glow-up. I also went from 60% test coverage to over 99%, with nearly 4,000 tests passing cleanly. Keep in mind the whole thing was built by myself (yes ofc was built using ai but without that it would’ve taken years to make), end to end, including a real test suite, real security practices, accessibility support, and full legal documentation and copyright license, and not just a prototype held together by hopes and prayers. What should people know so they can test it? Try asking it an actual halacha question (but since most of you guys aren’t Jewish ask it a question you’ve had on the old testament or on Judaism maybe) that you may have wondered about and see if it gives you a real answer with sources instead of a vague and incorrect answer. Open a Torah portion and look at commentaries or a translation of a specific word. Switch it into Hebrew and make sure nothing breaks. Try it on your phone. See the prayer times based on location. Look at the calendar. Go bananas! Just know that if there is any issue at all, contact me through my email [email protected] and I’ll try my best to fix it as soon as I can.", "repo": "https://github.com/akivayevdayev-debug/Shelah", "demo": "https://shelah.org"}]...
|
[{"post_id": 74270, "ts": "202 [{"post_id": 74270, "ts": "2026-09-27T03:25:18Z", "hours": 4.7697, "text": "Sh’elah — Devlog 8 WE FINALLY SHIP TODAY!!!!!!!!!!!!!!!!!!!!!!!! Over the past week or so, I had… Redesigned parts of the ai look again so that it doesn’t look like ai slop :) Gave the whole site links and web addresses whic h means any page or ai chat or settings u have and wanna give someone the link they can open to the same place as you (major issue fixed!). Added /signin and /profile as real pages that layer on top of whatever you’re looking at, so signing in from a legal or help page brings you right back where you started. Found and fixed why the AI sometimes gave no answer at all: the sign-in check between the site and the database was rejecting valid logins, which quietly broke saving your conversations and preferences. (YAY MORE BUGS FIXED) Sped up word/translation lookups. A word Sefaria didn’t recognize used to try several spellings against the dictionary and then several more against translation, one at a time — now it takes a second (maybe 2 if needs more sources). Fixed animation and fading issues, as well as issues when switching reading layout, switching commentary verses, and jumping to a cited passage (which, it turned out, didn’t actually highlight anything yet). Fixed the reader losing its place. Scrolling to load more text, or loading a previous chapter, could silently jump the page’s address to the wrong chapter. It now tracks what you’re actually reading, not just whichever paragraph happened to load first. (I’VE BEEN TRYNA FIX THAT ISSUE FOR MONTHS!) Cleaned up account and privacy details: a smaller profile menu, a delete-account warning that isn’t half-pink in dark mode, and your data export now actually includes your AI chats. Fixed a leftover database error that had been showing up in the logs from a migrations table that never existed — it’s created properly now, with the right access rules attached. WE SHIP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"}, {"post_id": 73745, "ts": "2026-09-25T20:42:53Z", "hours": 12.4672, "text": "Sh’elah — Devlog 7 — WE SHIP THIS WEEK!!!!! Over the past week or so, I had… Gave every page of the site its own real address. Any text, prayer, calendar day or AI answer now has its own link that opens straight to that page, even on a refresh. Old-style links still work too. Made AI answers shareable. Anyone can hit Copy Link to send a specific answer, or open it as its own page, and it stays out of search engines unless it’s meant to be public. Went through a 15-item punch list end to end: infinite scroll no longer jumps around, the commentary sidebar loads way faster and lighter, various calendar issues are fixed, parashah and commentary names are now accurate and properly ranked, community pages have full Hebrew translations, the header date now follows your actual location, loading spinners recover on their own when a connection drops, and implemented a bunch of Hebrew translate and bolding fixes. Completely Redid EVERYTHING about the AI: Redid the AI window’s entrance animation so it grows out of the Ask button on desktop instead of just popping in, and rises as a proper sheet on phones. Moved the Ask button onto the phone’s top bar instead of hiding it behind a Search tap, and gave the bottom tabs real icons above their labels with even spacing. Added a new ai small window, new ai fullscreen window, and new ai chat sharing links that legitimately work. Polished motion sitewide: screens fade up, buttons get a proper hover/press/focus feel, every emoji became a matching icon, and calendar hover states got fixed instead of going backwards (the close button used to lighten on hover, now it darkens like everything else). Built a real holiday detail card for the calendar, with accurate clock times and links straight into the reader. Fixed prayer and reader text losing its bold and italic formatting when pulled from the source library. Fixed the reader jumping around when loading earlier text, and gave it a slimmer bar with commentary that preloads before you tap it. Locked down the AI’s spending: the plain (non-agentic) chat route was quietly skipping the budget check, and a bug in the model-calling code could leak the API key. Both are fixed, and every path now respects the daily budget. Added a circuit breaker to the rate limiter so a database lag can’t take the whole site down with it, and made sure static files are never rate-limited. Cleared out SonarCloud’s entire backlog again: dead code removed, regexes hardened against slowdowns, and a chunk of new tests written along the way. Made Turnstile (the invisible spam check) actually invisible instead of showing its widget. Reconciled a stack of parallel work — calendar icons, i18n, reader fixes, security fixes — that had drifted across a few branches, merged clean. Let me know if there is anything y’all wanna see on my site in the future p.s. WE ARE ALMOST SHIPPED, but i still want those hours to count so this is not the last devlog."}, {"post_id": 70879, "ts": "2026-09-19T22:38:15Z", "hours": 11.8378, "text": "Sh’elah — Devlog 6 Over the past week or so, I had… Fixed certain dark mode values so they match the overall theme of the site. Added an ai symbol in the shape of a star and added animations to the searchbar when the ai is thinking, adding an ai feedback button, and fixed spacing and other issues with the ai answers. Added a commentary button to the reader’s top bar to show people how to use it Fixed zmanim (prayer/holiday times) on Holidays and fast days, added fast start and end times, and gave the AI Hebrew-date math tools. Finalized the legal pages with real operator info, registered a DMCA agent, and added an age confirmation. Went through every SonarCloud finding and the quality gate now passes, with the security and reliability ratings both at A. Wrote a big batch of new tests. Coverage went from 60% to about 84% overall, and all 3517 tests (yes ik its a lot of tests) pass cleanly. (yes somehow it was 60% before when I explicitly added tests for 93% coverage · ~ ·) Rotated the leaked Gemini key and cleaned it out of the repo history. (correcty this time), and merged two drifting copies of the code, so shared pieces like the AI answer builder now live in one place. Rewrote the README, added a changelog, documented every environment variable, and regenerated the database docs from the live schema. Let me know if there is anything y’all wanna see on my site in the future p.s. shipping v1.00 in a day or two!!!!!! FINALLY!!!!! (This may take longer than two days but hopefully not!)"}, {"post_id": 68421, "ts": "2026-09-15T02:54:39Z", "hours": 14.2753, "text": "Sh’elah — Devlog 5 Over the past week or so, I had… Gave the AI real tool-use, allowing it to get live prayer times, calendar dates, and texts as it needs them, instead of having everything be pre-loaded at each request. Finalized the legal pages and filed my site for DMCA Copyright protection for 3 years. Added self-serve privacy controls, where you can now export or delete your own account and data yourself. Added a feedback button on AI answers so people can flag bad ones directly. Added accessibility keyboard/screen-reader support along with their appropriate tests in CI. Fixed a security issue where a malicious AI-cited link could execute code, and added a bot-check in front of the AI endpoint to cut down on abuse. Fixed the caching bug from last devlog this time; pages get served from cache properly now instead of requesting from the server on every load. Fixed a bunch of small little annoying bugs like the page jumping back while scrolling, the wrong section getting highlighted, calendar color glitches, and animations not loading. Fixed a security-check script that had quietly been failing every single scheduled run for over a week. Spent alot of time simplifying complex functions across the codebase to make it more reliable. Let me know if there is anything y’all wanna see on my site in the future p.s. getting closer to that v1.00 site goal every day — planning on achieving it next week!"}, {"post_id": 61981, "ts": "2026-09-05T05:45:36Z", "hours": 10.3361, "text": "Sh’elah — Devlog 4 Over the past week or so, I had… Fixed an issue with RLS in Supabase so that one user doesn’t see another user’s personal info, as well as security issues with Vercel and Clerk (Which was a pain to fix :<) Found out my login system and database weren’t linked to each other correctly, which was breaking authenticated reads/writes, and fixed it Added an ai usage tracker and fixed old usage records so the spending log is correct, and so I don’t go broke when other people use my site’s ai My webhook (discord error bot) was malfunctioning (and still kinda is in clerk :<) and no longer is! YAY MORE ERRORS FOR ME! (at least I’ll know why they happen :|) Fixed a bug where the site was incorrectly caching files in browsers, making things slower and more expensive (yay less money to spend!!!!!) Ran accessibility tests and fixed any issues they found, and made my site more ready for releasing v1.00! Removed old files Fixed some legal documentation issues (like my Privacy Policy and ToS) so I don’t get sued!!! Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out."}, {"post_id": 55408, "ts": "2026-08-27T06:56:47Z", "hours": 10.6378, "text": "Sh’elah — Devlog 3 Over the past week or so, I had… Fixed a bug where a malformed cache config could crash the whole app on startup. Split a file that handled AI question-answering into smaller, cleaner, more compact files, and added tests to make sure that both versions (one for gemini and one for claude) always answered the same way with the same guardrails. Sped up busy/resource heavy pages (library, prayers, texts, daily study, and the calendar lookup) by adding a shared caching layer, so they don’t request the database on every single request anymore. Added rate limiting across the whole site instead of having it scattered in different places. Cleaned up a batch of files that were referenced in the code which was uncommitted and caused boot errors. Simplified a few functions that had been made too complex to safely maintain. Sped up cold starts by delaying AI library imports until they’re actually needed. Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out."}, {"post_id": 51996, "ts": "2026-08-22T00:35:52Z", "hours": 9.3681, "text": "Sh’elah — Devlog 2 Over the past 9 hours or so, I had… Removed a leftover routing rule in Vercel that was returning a 404 error in my production site. Added a server-side daily budget per user, so if someone goes past it and heavily uses the AI past what’s normal, they get rate limited and can’t spam multiple requests at once. Also fixed an issue where AI usage was being reported as $0 when it wasn’t. Updated my site’s README.md on GitHub, fixed a license mismatch, and added a CONTRIBUTING.md and a code of conduct. Old logs and history get deleted on a schedule now, so trash doesn’t build up over time. Built a dark-mode accessibility checker and fixed contrast issues. Also integrated circuit breakers so when an external resource fails the site doesn’t crash. Added About/Help/glossary pages, a sitemap, a feedback widget, and analytics that you can opt into. Added CI checks and Vercel Speed Insights to track loading times. Swapped the GPS permission for zmanim (prayer times) based on location to cookie/IP-based location instead. Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out."}, {"post_id": 49112, "ts": "2026-08-17T18:53:44Z", "hours": 22.1481, "text": "Sh’elah — First Devlog: I’ve been working on Sh’elah for a while now and finally uploaded it here. It’s a Jewish learning app that combines a searchable Torah library (similar to Sefaria) with an AI tool designed to actually answer your halacha questions. Instead of just throwing related sources at you that don’t end up answering the question, it walks you through the actual answer, explains the reasoning, cites the sources, and tailors everything based on your community’s specific customs. What it does today Answers questions across any area of Jewish law using primary sources rather than generic guesses. Allows you to search the library with customs broken out by community (Ashkenazi, Sefardi, Teimani, and others). Calculates live zmanim (prayer times) and a Hebrew calendar based on your exact location. Ends every answer with a clear reminder: this is for learning purposes, not an official ruling, and real questions should always go to your rabbi. It works right now, but it’s still in the early stages, so I want to be upfront about what still needs work before calling it a complete release. Making the AI reach for things, not just recite them Right now, the AI only knows what gets put into the prompt ahead of time. I am working on moving it toward real tool use so it can pull zmanim, calendar dates, commentaries, and community customs dynamically as needed. Judaic texts and laws will always remain the main priority, with web searching kept strictly as a last resort. Getting the safety layer right (in progress) Halacha touches sensitive material, and I want to make sure a younger user doesn’t receive graphic content when the real answer should simply be “ask your rabbi for details.” Any queries related to medical issues, mental health, or abuse will automatically route to real professional resources rather than generating an AI ruling. Behind-the-scenes technical updates Breaking down a backend file that got way too large so the code is easier to maintain and debug. Securing the caching layer so it handles concurrent load safely. Adding circuit breakers to prevent a third-party outage from crashing the whole platform. What needs to happen before full launch Verifying every feature works properly while keeping the user experience smooth and simple. Completing a thorough security review (already finished). Setting up error tracking and rate limiting to protect the site from abuse. Performing a full accessibility audit. Building this isn’t going to be easy, and the order of these steps will probably shift around. However, this is the general direction of the project, and I’ll share more updates as new features roll out."}]...
|
Title: Sh’elah by @akiva_yevdayev | Stardance
Dev Title: Sh’elah by @akiva_yevdayev | Stardance
Devlogs:
Sh’elah — First Devlog: I’ve been working on Sh’elah for a while now and finally uploaded it here. It’s a Jewish learning app that combines a searchable Torah library (similar to Sefaria) with an AI tool designed to actually answer your halacha questions. Instead of just throwing related sources at you that don’t end up answering the question, it walks you through the actual answer, explains the reasoning, cites the sources, and tailors everything based on your community’s specific customs. What it does today Answers questions across any area of Jewish law using primary sources rather than generic guesses. Allows you to search the library with customs broken out by community (Ashkenazi, Sefardi, Teimani, and others). Calculates live zmanim (prayer times) and a Hebrew calendar based on your exact location. Ends every answer with a clear reminder: this is for learning purposes, not an official ruling, and real questions should always go to your rabbi. It works right now, but it’s still in the early stages, so I want to be upfront about what still needs work before calling it a complete release. Making the AI reach for things, not just recite them Right now, the AI only knows what gets put into the prompt ahead of time. I am working on moving it toward real tool use so it can pull zmanim, calendar dates, commentaries, and community customs dynamically as needed. Judaic texts and laws will always remain the main priority, with web searching kept strictly as a last resort. Getting the safety layer right (in progress) Halacha touches sensitive material, and I want to make sure a younger user doesn’t receive graphic content when the real answer should simply be “ask your rabbi for details.” Any queries related to medical issues, mental health, or abuse will automatically route to real professional resources rather than generating an AI ruling. Behind-the-scenes technical updates Breaking down a backend file that got way too large so the code is easier to maintain and debug. Securing the caching layer so it handles concurrent load safely. Adding circuit breakers to prevent a third-party outage from crashing the whole platform. What needs to happen before full launch Verifying every feature works properly while keeping the user experience smooth and simple. Completing a thorough security review (already finished). Setting up error tracking and rate limiting to protect the site from abuse. Performing a full accessibility audit. Building this isn’t going to be easy, and the order of these steps will probably shift around. However, this is the general direction of the project, and I’ll share more updates as new features roll out.
Sh’elah — Devlog 2 Over the past 9 hours or so, I had… Removed a leftover routing rule in Vercel that was returning a 404 error in my production site. Added a server-side daily budget per user, so if someone goes past it and heavily uses the AI past what’s normal, they get rate limited and can’t spam multiple requests at once. Also fixed an issue where AI usage was being reported as $0 when it wasn’t. Updated my site’s README.md on GitHub, fixed a license mismatch, and added a CONTRIBUTING.md and a code of conduct. Old logs and history get deleted on a schedule now, so trash doesn’t build up over time. Built a dark-mode accessibility checker and fixed contrast issues. Also integrated circuit breakers so when an external resource fails the site doesn’t crash. Added About/Help/glossary pages, a sitemap, a feedback widget, and analytics that you can opt into. Added CI checks and Vercel Speed Insights to track loading times. Swapped the GPS permission for zmanim (prayer times) based on location to cookie/IP-based location instead. Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out.
Sh’elah — Devlog 3 Over the past week or so, I had… Fixed a bug where a malformed cache config could crash the whole app on startup. Split a file that handled AI question-answering into smaller, cleaner, more compact files, and added tests to make sure that both versions (one for gemini and one for claude) always answered the same way with the same guardrails. Sped up busy/resource heavy pages (library, prayers, texts, daily study, and the calendar lookup) by adding a shared caching layer, so they don’t request the database on every single request anymore. Added rate limiting across the whole site instead of having it scattered in different places. Cleaned up a batch of files that were referenced in the code which was uncommitted and caused boot errors. Simplified a few functions that had been made too complex to safely maintain. Sped up cold starts by delaying AI library imports until they’re actually needed. Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out.
Sh’elah — Devlog 4 Over the past week or so, I had… Fixed an issue with RLS in Supabase so that one user doesn’t see another user’s personal info, as well as security issues with Vercel and Clerk (Which was a pain to fix :<) Found out my login system and database weren’t linked to each other correctly, which was breaking authenticated reads/writes, and fixed it Added an ai usage tracker and fixed old usage records so the spending log is correct, and so I don’t go broke when other people use my site’s ai My webhook (discord error bot) was malfunctioning (and still kinda is in clerk :<) and no longer is! YAY MORE ERRORS FOR ME! (at least I’ll know why they happen :|) Fixed a bug where the site was incorrectly caching files in browsers, making things slower and more expensive (yay less money to spend!!!!!) Ran accessibility tests and fixed any issues they found, and made my site more ready for releasing v1.00! Removed old files Fixed some legal documentation issues (like my Privacy Policy and ToS) so I don’t get sued!!! Let me know if there is anything y’all wanna see on my site in the future p.s. I’m planning a huge commit soon announcing version 1.00 of my website so if you haven’t seen my first devlog announcing that, go check it out.
Sh’elah — Devlog 5 Over the past week or so, I had… Gave the AI real tool-use, allowing it to get live prayer times, calendar dates, and texts as it needs them, instead of having everything be pre-loaded at each request. Finalized the legal pages and filed my site for DMCA Copyright protection for 3 years. Added self-serve privacy controls, where you can now export or delete your own account and data yourself. Added a feedback button on AI answers so people can flag bad ones directly. Added accessibility keyboard/screen-reader support along with their appropriate tests in CI. Fixed a security issue where a malicious AI-cited link could execute code, and added a bot-check in front of the AI endpoint to cut down on abuse. Fixed the caching bug from last devlog this time; pages get served from cache properly now instead of requesting from the server on every load. Fixed a bunch of small little annoying bugs like the page jumping back while scrolling, the wrong section getting highlighted, calendar color glitches, and animations not loading. Fixed a security-check script that had quietly been failing every single scheduled run for over a week. Spent alot of time simplifying complex functions across the codebase to make it more reliable. Let me know if there is anything y’all wanna see on my site in the future p.s. getting closer to that v1.00 site goal every day — planning on achieving it next week!
Sh’elah — Devlog 6 Over the past week or so, I had… Fixed certain dark mode values so they match the overall theme of the site. Added an ai symbol in the shape of a star and added animations to the searchbar when the ai is thinking, adding an ai feedback button, and fixed spacing and other issues with the ai answers. Added a commentary button to the reader’s top bar to show people how to use it Fixed zmanim (prayer/holiday times) on Holidays and fast days, added fast start and end times, and gave the AI Hebrew-date math tools. Finalized the legal pages with real operator info, registered a DMCA agent, and added an age confirmation. Went through every SonarCloud finding and the quality gate now passes, with the security and reliability ratings both at A. Wrote a big batch of new tests. Coverage went from 60% to about 84% overall, and all 3517 tests (yes ik its a lot of tests) pass cleanly. (yes somehow it was 60% before when I explicitly added tests for 93% coverage · ~ ·) Rotated the leaked Gemini key and cleaned it out of the repo history. (correcty this time), and merged two drifting copies of the code, so shared pieces like the AI answer builder now live in one place. Rewrote the README, added a changelog, documented every environment variable, and regenerated the database docs from the live schema. Let me know if there is anything y’all wanna see on my site in the future p.s. shipping v1.00 in a day or two!!!!!! FINALLY!!!!! (This may take longer than two days but hopefully not!)
Sh’elah — Devlog 7 — WE SHIP THIS WEEK!!!!! Over the past week or so, I had… Gave every page of the site its own real address. Any text, prayer, calendar day or AI answer now has its own link that opens straight to that page, even on a refresh. Old-style links still work too. Made AI answers shareable. Anyone can hit Copy Link to send a specific answer, or open it as its own page, and it stays out of search engines unless it’s meant to be public. Went through a 15-item punch list end to end: infinite scroll no longer jumps around, the commentary sidebar loads way faster and lighter, various calendar issues are fixed, parashah and commentary names are now accurate and properly ranked, community pages have full Hebrew translations, the header date now follows your actual location, loading spinners recover on their own when a connection drops, and implemented a bunch of Hebrew translate and bolding fixes. Completely Redid EVERYTHING about the AI: Redid the AI window’s entrance animation so it grows out of the Ask button on desktop instead of just popping in, and rises as a proper sheet on phones. Moved the Ask button onto the phone’s top bar instead of hiding it behind a Search tap, and gave the bottom tabs real icons above their labels with even spacing. Added a new ai small window, new ai fullscreen window, and new ai chat sharing links that legitimately work. Polished motion sitewide: screens fade up, buttons get a proper hover/press/focus feel, every emoji became a matching icon, and calendar hover states got fixed instead of going backwards (the close button used to lighten on hover, now it darkens like everything else). Built a real holiday detail card for the calendar, with accurate clock times and links straight into the reader. Fixed prayer and reader text losing its bold and italic formatting when pulled from the source library. Fixed the reader jumping around when loading earlier text, and gave it a slimmer bar with commentary that preloads before you tap it. Locked down the AI’s spending: the plain (non-agentic) chat route was quietly skipping the budget check, and a bug in the model-calling code could leak the API key. Both are fixed, and every path now respects the daily budget. Added a circuit breaker to the rate limiter so a database lag can’t take the whole site down with it, and made sure static files are never rate-limited. Cleared out SonarCloud’s entire backlog again: dead code removed, regexes hardened against slowdowns, and a chunk of new tests written along the way. Made Turnstile (the invisible spam check) actually invisible instead of showing its widget. Reconciled a stack of parallel work — calendar icons, i18n, reader fixes, security fixes — that had drifted across a few branches, merged clean. Let me know if there is anything y’all wanna see on my site in the future p.s. WE ARE ALMOST SHIPPED, but i still want those hours to count so this is not the last devlog.
Sh’elah — Devlog 8 WE FINALLY SHIP TODAY!!!!!!!!!!!!!!!!!!!!!!!! Over the past week or so, I had… Redesigned parts of the ai look again so that it doesn’t look like ai slop :) Gave the whole site links and web addresses whic h means any page or ai chat or settings u have and wanna give someone the link they can open to the same place as you (major issue fixed!). Added /signin and /profile as real pages that layer on top of whatever you’re looking at, so signing in from a legal or help page brings you right back where you started. Found and fixed why the AI sometimes gave no answer at all: the sign-in check between the site and the database was rejecting valid logins, which quietly broke saving your conversations and preferences. (YAY MORE BUGS FIXED) Sped up word/translation lookups. A word Sefaria didn’t recognize used to try several spellings against the dictionary and then several more against translation, one at a time — now it takes a second (maybe 2 if needs more sources). Fixed animation and fading issues, as well as issues when switching reading layout, switching commentary verses, and jumping to a cited passage (which, it turned out, didn’t actually highlight anything yet). Fixed the reader losing its place. Scrolling to load more text, or loading a previous chapter, could silently jump the page’s address to the wrong chapter. It now tracks what you’re actually reading, not just whichever paragraph happened to load first. (I’VE BEEN TRYNA FIX THAT ISSUE FOR MONTHS!) Cleaned up account and privacy details: a smaller profile menu, a delete-account warning that isn’t half-pink in dark mode, and your data export now actually includes your AI chats. Fixed a leftover database error that had been showing up in the logs from a migrations table that never existed — it’s created properly now, with the right access rules attached. WE SHIP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ships:
What did I make? I made Sh’elah (shelah.org) — the Torah Encyclopedia, literally. a searchable library of Torah and judaic texts and commentary (all powered by Sefaria’s texts and made to feel easy to use), an AI assistant that answers questions on Jewish law (halachah) by pulling information from primary sources like the Torah and judaic texts instead of just guessing, and the practical stuff people actually need everyday — live prayer times (zmanim), a Hebrew calendar, and how different communities observe different customs. The AI is built to always point you back to your own rabbi for anything that’s actually a different based on community and needs a ruling, and it steps out of the way entirely for anything medical or safety-related, and has safeguards to protect it from answering strange or unrelated questions or from being prompt injected (because we don’t want our site to get hacked lol). The prayer-times/calendar run off of your exact location, and the calendar shows the weekly Torah portion and candle lighting times too. What was challenging for me? Getting the AI to have safeguards, not hallucinate, follow judaic law and texts, and all set up took way longer than I had originally expected. It’s easy to make a chatbot that sounds confident; it’s much harder to make one that cites where an answer actually comes from, doesn’t quietly make things up, and knows when to deflect a question or malicious prompt. I also spent a lot of time on things nobody will ever see directly — locking down who can access what in the database, making sure a runaway request can’t rack up a huge AI bill (because this site is made for the public to be free, and not to make me go broke °~°), keeping the site fast and not-broken in English and Hebrew, light and dark mode, and working/looking well on phone or tablet-sized screens. Giving the AI real tool-use so it reaches for live prayer times/calendar/texts itself was its own project, and I found out at one point my login system and database weren’t even linked correctly, silently breaking database reads/writes (was a pain to fix…). There’s also a bug where the page jumped up by 5-10 chapters at once which I fixed (and have been trying to fix that issue for MONTHS!) What am I proud of? That it actually exists as an actual product and as a solution instead of just an idea living inside someone’s head. Every page has a real link you can share — a specific judaic text, an AI answer, a specific calendar day— and it opens back up exactly the way you left it. The commentary and translations are genuinely fast now (they were super buggy and slow before), the calendar actually gives candle-lighting times and areas in my app where the torah portions are and had a huge glow-up. I also went from 60% test coverage to over 99%, with nearly 4,000 tests passing cleanly. Keep in mind the whole thing was built by myself (yes ofc was built using ai but without that it would’ve taken years to make), end to end, including a real test suite, real security practices, accessibility support, and full legal documentation and copyright license, and not just a prototype held together by hopes and prayers. What should people know so they can test it? Try asking it an actual halacha question (but since most of you guys aren’t Jewish ask it a question you’ve had on the old testament or on Judaism maybe) that you may have wondered about and see if it gives you a real answer with sources instead of a vague and incorrect answer. Open a Torah portion and look at commentaries or a translation of a specific word. Switch it into Hebrew and make sure nothing breaks. Try it on your phone. See the prayer times based on location. Look at the calendar. Go bananas! Just know that if there is any issue at all, contact me through my email [email protected] and I’ll try my best to fix it as soon as I can....
|
1793336143.3657858
|
1793422543.3657858
|
|
65324
|
Kira Clock by @kira_iovenko | Stardance
|
kira_iovenko
|
0
|
2.82
|
0
|
[]
|
[{"post_id": 74271, "ts": "202 [{"post_id": 74271, "ts": "2026-09-27T03:28:10Z", "hours": 2.8167, "text": "I started a new project to build my own alarm clock. I created the schematic in KiCad and then routed the PCB. Then I aligned all the components in fusion 360 before starting the case design. Next, I’’m going to design the case and fit everything together."}]...
|
Title: Kira Clock by @kira_iovenko | Stardance
De Title: Kira Clock by @kira_iovenko | Stardance
Devlogs:
I started a new project to build my own alarm clock. I created the schematic in KiCad and then routed the PCB. Then I aligned all the components in fusion 360 before starting the case design. Next, I’’m going to design the case and fit everything together....
|
1793087255.1533284
|
1793692055.1533284
|
|
14863
|
WebOS by OS :) by @TXJ_PROGRAMER | Stardance
|
TXJ_PROGRAMER
|
4
|
34.0
|
74
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T03:32:59Z", "hours": 10.0, "multiplier": 6.27, "payout": 61, "blessing": "neutral", "text": "i added more features and fixed some bugs . Ii added games like snake, 2048, minesweeper", "repo": "https://github.com/srinj-ai/WebOS-portfolio", "demo": "https://web-os-portfolio-lake.vercel.app/"}, {"ship_num": 2, "ts": "2026-08-26T14:06:12Z", "hours": 23.0, "multiplier": 2.91, "payout": 11, "blessing": "neutral", "text": "Its a WebOS made to experement and experence a OS ina website.", "repo": "https://github.com/srinj-ai/WebOS-portfolio", "demo": "https://web-os-portfolio-lake.vercel.app/"}, {"ship_num": 3, "ts": "2026-06-23T10:02:08Z", "hours": 0.0, "multiplier": 8.23, "payout": 2, "blessing": "neutral", "text": "Its a WebOS made to experement and experence a OS ina website.", "repo": "https://github.com/srinj-ai/WebOS-portfolio", "demo": "https://web-os-portfolio-lake.vercel.app/"}, {"ship_num": 4, "ts": "2026-06-23T05:03:46Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Its a WebOS made to experement and experence a OS ina website.", "repo": "https://github.com/srinj-ai/WebOS-portfolio", "demo": "https://web-os-portfolio-lake.vercel.app/"}]...
|
[{"post_id": 74272, "ts": "202 [{"post_id": 74272, "ts": "2026-09-27T03:30:56Z", "hours": 5.0336, "text": "Dev Vlog #10 — Added Minesweeper! 💣 Hey everyone, welcome back to another WebOS update! This time I made another classic game, Minesweeper . Some lines of code to make the mines and tile revealing work, like: const revealCell = ( row : number , col : number ) => { if ( board [ row ][ col ]. isMine ) { setGameStatus ( ' lost ' ); return ; } const newBoard = board . map (( r ) => [... r ]); newBoard [ row ][ col ]. isRevealed = true ; setBoard ( newBoard ); }; The game now has tile movement, merging tiles, and adding new tiles after each move. it was too hard to set the tile screen and mines & it still have bugs , but its good for now and i am gona a ship it 😋😋"}, {"post_id": 73917, "ts": "2026-09-26T09:54:03Z", "hours": 1.1503, "text": "JUST A QUICK CAPUP just to remind u guys to I fixed some lag issue abt 2048 and snake and added both to CMD :)"}, {"post_id": 73124, "ts": "2026-09-24T13:18:57Z", "hours": 0.3172, "text": "Dev Vlog #9 — Added 2048 Game! Hey everyone, welcome back to another WebOS update! This time I made another popular game, 2048 . Some lines of code to make the tiles move and merge, like: const moveRow = ( row : number []) => { const filtered = row . filter (( value ) => value !== 0 ); const result : number [] = []; for ( let i = 0 ; i < filtered . length ; i ++ ) { if ( filtered [ i ] === filtered [ i + 1 ]) { result . push ( filtered [ i ] * 2 ); i ++ ; } else { result . push ( filtered [ i ]); } } while ( result . length < 4 ) { result . push ( 0 ); } return result ; }; I changed my mind at last to shift form minesweeper It was pretty fun making 2048 and getting the tile movement and merging to work properly inside WebOS. i will make minesweeper now!!!!!!"}, {"post_id": 62751, "ts": "2026-09-06T08:28:04Z", "hours": 3.295, "text": "Dev Vlog #9 — Added Snake Game! Hey everyone, welcome back to another WebOS update! This time I made a game, quite a popular one, Snake Game. Some lines of code to make its movement and food growth work, like: currentWindows . map (( appWindow ) => { const game = appWindow . gameState ?. snake ; if ( ! game || game . status !== ' playing ' ) return appWindow ; const head = game . body [ 0 ]; const direction = game . nextDirection ; const nextHead = { x : ( head . x + direction . x + SNAKE_SIZE ) % SNAKE_SIZE , y : ( head . y + direction . y + SNAKE_SIZE ) % SNAKE_SIZE , }; const hitSelf = game . body . some ( ( point ) => point . x === nextHead . x && point . y === nextHead . y ); if ( hitSelf ) { return { ... appWindow , gameState : { ... appWindow . gameState , snake : { ... game , status : ' lost ' }, }, }; } It does not die when it hits the wall, but ends up on the other side of the screen. It dies when it hits itself. OK then , its all for today if will make minesweeper next it may take AI to help , but i will try my best 🤧🤧"}, {"post_id": 54533, "ts": "2026-08-25T15:44:14Z", "hours": 20.9406, "text": "Dev Vlog #8 — Finally Working! Hey everyone, welcome back to another WebOS update! I have fully compleated my terminal and going for a ship please support and enjoy thank u all and bye!!! XD"}, {"post_id": 23367, "ts": "2026-07-06T09:14:41Z", "hours": 0.6261, "text": "Dev Vlog #7 — Terminal is Finally Working! Hey everyone, welcome back to another WebOS update! This time I finished one of the apps I was most excited abt the : Terminal . It can now run basic commands and works right inside the WebOS window system. Current commands include: help — Shows all available commands clear — Clears the terminal about — Gives a short description about the project XD date — Shows the current date and time apps — Shows all the available apps files — Shows all available files stored open notepad — Opens Notepad open calculator — Opens Calculator open files — Opens Files open portfolio — Redirects website to my portfolio https://srinj-ai.github.io/MY-PORTFOLIO/ XD Getting all of these commands working took a lot more logic than I expected, but it was definitely worth it. Next, I’m planning to add more commands, improve the desktop, and keep making WebOS feel more like a real operating system. thank u all and bye!!! XD"}, {"post_id": 22678, "ts": "2026-07-05T07:18:57Z", "hours": 0.6128, "text": "Dev Vlog #6 — File Explorer is Finally Done! Hey everyone, welcome back to another WebOS update! it took longer than I expected, but it finally work . it Stores the file created by notebook and displaces it in file explorer NEXT Next, I’ll be working on adding more apps like CMD ( i think so). There’s still a lot I want to add, and plese give me suggestion what to add next. bye see in the next one !!"}, {"post_id": 17428, "ts": "2026-06-28T06:26:47Z", "hours": 0.3492, "text": "DevLog #5 Minor bug fix and Notepad update Hey everyone, welcome back to another WebOS update! i have fix some bugs related to calcylator and notepad i also changed the colour of text in notepad so you gays can have a hacker vibe :)"}, {"post_id": 14266, "ts": "2026-06-23T09:21:18Z", "hours": 0.2822, "text": "Dev Vlog #4 — Last-Minute Fixes Before Release 🚀 Hey everyone, welcome back to another WebOS update! This update was mostly about fixing things before release. Changes Made Fixed photo issues Fixed source code issues Honestly, there’s not much to show in this update, but these fixes were important to get done before shipping. Hopefully everything goes well and it gets accepted Project Status: 🟢 Release Ready"}, {"post_id": 12961, "ts": "2026-06-21T06:45:19Z", "hours": 0.5425, "text": "Dev Vlog #3 — WebOS is Ready to Ship 🚀 After weeks of coding, fixing bugs, and adding features, WebOS is finally finished and ready to ship! WebOS is a browser-based desktop experience built with React, TypeScript, and Vite. The goal was simple: make something that feels like a real operating system while running entirely in the browser. Features Desktop-style operating system interface Draggable and focusable application windows Notepad Calculator About/Welcome App Start Menu Live taskbar clock Active window management Window controls (open, close) Responsive design With everything planned now completed, WebOS v1 is officially finished and ready to ship. 🎉 Thanks to everyone who followed the project and read the devlogs along the way. This is the end of the WebOS v1 journey, and now let’s see if all the hard work pays off and how people react to it. Project Status: 🟢 Ready to Ship"}, {"post_id": 12386, "ts": "2026-06-20T06:54:44Z", "hours": 0.4369, "text": "Dev Vlog #2 — Calculator is Done! Hey everyone, welcome back to another WebOS update! Since the last devlog, I’ve finished the second app : a Calculator !!! . It can: Perform basic calculations Use multiple operators in one expression Handle parentheses correctly Display accurate results Run inside the WebOS window system One thing I’m pretty happy with is that it doesn’t use JavaScript’s built-in eval() function. Instead, it processes expressions itself, which gives me more control over how calculations work. Next, I’ll be improving the window system and starting work on a File Explorer. Project Status: 🟡 Early Development ALSO FOLLOW MY “VORTEX AI” PROJECT"}, {"post_id": 6211, "ts": "2026-06-10T13:02:02Z", "hours": 0.3842, "text": "Dev Vlog #1 — Notepad is Done! 🚀 Hey everyone, welcome to the first WebOS devlog! I’ve finished the first app for WebOS: Notepad . Right now, it lets you: Open it from the desktop Type and edit text Use it as a simple note-taking app Experience the first working WebOS window I’m also working on improving the desktop, fixing bugs, and planning the next features. Next up: Taskbar Calculator WebOS is still in the very early stages, but it’s nice to finally have the first app up and running. Project Status: 🟡 Early Development"}]...
|
Title: WebOS by OS :) by @TXJ_PROGRAMER | Stardanc Title: WebOS by OS :) by @TXJ_PROGRAMER | Stardance
Devlogs:
Dev Vlog #1 — Notepad is Done! 🚀 Hey everyone, welcome to the first WebOS devlog! I’ve finished the first app for WebOS: Notepad . Right now, it lets you: Open it from the desktop Type and edit text Use it as a simple note-taking app Experience the first working WebOS window I’m also working on improving the desktop, fixing bugs, and planning the next features. Next up: Taskbar Calculator WebOS is still in the very early stages, but it’s nice to finally have the first app up and running. Project Status: 🟡 Early Development
Dev Vlog #2 — Calculator is Done! Hey everyone, welcome back to another WebOS update! Since the last devlog, I’ve finished the second app : a Calculator !!! . It can: Perform basic calculations Use multiple operators in one expression Handle parentheses correctly Display accurate results Run inside the WebOS window system One thing I’m pretty happy with is that it doesn’t use JavaScript’s built-in eval() function. Instead, it processes expressions itself, which gives me more control over how calculations work. Next, I’ll be improving the window system and starting work on a File Explorer. Project Status: 🟡 Early Development ALSO FOLLOW MY “VORTEX AI” PROJECT
Dev Vlog #3 — WebOS is Ready to Ship 🚀 After weeks of coding, fixing bugs, and adding features, WebOS is finally finished and ready to ship! WebOS is a browser-based desktop experience built with React, TypeScript, and Vite. The goal was simple: make something that feels like a real operating system while running entirely in the browser. Features Desktop-style operating system interface Draggable and focusable application windows Notepad Calculator About/Welcome App Start Menu Live taskbar clock Active window management Window controls (open, close) Responsive design With everything planned now completed, WebOS v1 is officially finished and ready to ship. 🎉 Thanks to everyone who followed the project and read the devlogs along the way. This is the end of the WebOS v1 journey, and now let’s see if all the hard work pays off and how people react to it. Project Status: 🟢 Ready to Ship
Dev Vlog #4 — Last-Minute Fixes Before Release 🚀 Hey everyone, welcome back to another WebOS update! This update was mostly about fixing things before release. Changes Made Fixed photo issues Fixed source code issues Honestly, there’s not much to show in this update, but these fixes were important to get done before shipping. Hopefully everything goes well and it gets accepted Project Status: 🟢 Release Ready
DevLog #5 Minor bug fix and Notepad update Hey everyone, welcome back to another WebOS update! i have fix some bugs related to calcylator and notepad i also changed the colour of text in notepad so you gays can have a hacker vibe :)
Dev Vlog #6 — File Explorer is Finally Done! Hey everyone, welcome back to another WebOS update! it took longer than I expected, but it finally work . it Stores the file created by notebook and displaces it in file explorer NEXT Next, I’ll be working on adding more apps like CMD ( i think so). There’s still a lot I want to add, and plese give me suggestion what to add next. bye see in the next one !!
Dev Vlog #7 — Terminal is Finally Working! Hey everyone, welcome back to another WebOS update! This time I finished one of the apps I was most excited abt the : Terminal . It can now run basic commands and works right inside the WebOS window system. Current commands include: help — Shows all available commands clear — Clears the terminal about — Gives a short description about the project XD date — Shows the current date and time apps — Shows all the available apps files — Shows all available files stored open notepad — Opens Notepad open calculator — Opens Calculator open files — Opens Files open portfolio — Redirects website to my portfolio https://srinj-ai.github.io/MY-PORTFOLIO/ XD Getting all of these commands working took a lot more logic than I expected, but it was definitely worth it. Next, I’m planning to add more commands, improve the desktop, and keep making WebOS feel more like a real operating system. thank u all and bye!!! XD
Dev Vlog #8 — Finally Working! Hey everyone, welcome back to another WebOS update! I have fully compleated my terminal and going for a ship please support and enjoy thank u all and bye!!! XD
Dev Vlog #9 — Added Snake Game! Hey everyone, welcome back to another WebOS update! This time I made a game, quite a popular one, Snake Game. Some lines of code to make its movement and food growth work, like: currentWindows . map (( appWindow ) => { const game = appWindow . gameState ?. snake ; if ( ! game || game . status !== ' playing ' ) return appWindow ; const head = game . body [ 0 ]; const direction = game . nextDirection ; const nextHead = { x : ( head . x + direction . x + SNAKE_SIZE ) % SNAKE_SIZE , y : ( head . y + direction . y + SNAKE_SIZE ) % SNAKE_SIZE , }; const hitSelf = game . body . some ( ( point ) => point . x === nextHead . x && point . y === nextHead . y ); if ( hitSelf ) { return { ... appWindow , gameState : { ... appWindow . gameState , snake : { ... game , status : ' lost ' }, }, }; } It does not die when it hits the wall, but ends up on the other side of the screen. It dies when it hits itself. OK then , its all for today if will make minesweeper next it may take AI to help , but i will try my best 🤧🤧
Dev Vlog #9 — Added 2048 Game! Hey everyone, welcome back to another WebOS update! This time I made another popular game, 2048 . Some lines of code to make the tiles move and merge, like: const moveRow = ( row : number []) => { const filtered = row . filter (( value ) => value !== 0 ); const result : number [] = []; for ( let i = 0 ; i < filtered . length ; i ++ ) { if ( filtered [ i ] === filtered [ i + 1 ]) { result . push ( filtered [ i ] * 2 ); i ++ ; } else { result . push ( filtered [ i ]); } } while ( result . length < 4 ) { result . push ( 0 ); } return result ; }; I changed my mind at last to shift form minesweeper It was pretty fun making 2048 and getting the tile movement and merging to work properly inside WebOS. i will make minesweeper now!!!!!!
JUST A QUICK CAPUP just to remind u guys to I fixed some lag issue abt 2048 and snake and added both to CMD :)
Dev Vlog #10 — Added Minesweeper! 💣 Hey everyone, welcome back to another WebOS update! This time I made another classic game, Minesweeper . Some lines of code to make the mines and tile revealing work, like: const revealCell = ( row : number , col : number ) => { if ( board [ row ][ col ]. isMine ) { setGameStatus ( ' lost ' ); return ; } const newBoard = board . map (( r ) => [... r ]); newBoard [ row ][ col ]. isRevealed = true ; setBoard ( newBoard ); }; The game now has tile movement, merging tiles, and adding new tiles after each move. it was too hard to set the tile screen and mines & it still have bugs , but its good for now and i am gona a ship it 😋😋
Ships:
Its a WebOS made to experement and experence a OS ina website.
Its a WebOS made to experement and experence a OS ina website.
Its a WebOS made to experement and experence a OS ina website.
i added more features and fixed some bugs . Ii added games like snake, 2048, minesweeper...
|
1793318092.1846201
|
1793404492.1846201
|
|
66020
|
Guest Discord Bot by @Beh | Stardance
|
Beh
|
0
|
1.8
|
0
|
[]
|
[{"post_id": 74275, "ts": "202 [{"post_id": 74275, "ts": "2026-09-27T03:34:12Z", "hours": 1.8028, "text": "Finished the first version of the bot! I hate SQL with every bone in my body but managed to get through it. This was also my first time dabbling with slash commands in a discord bot and I’m very glad how this came out."}]...
|
Title: Guest Discord Bot by @Beh | Stardance
Devl Title: Guest Discord Bot by @Beh | Stardance
Devlogs:
Finished the first version of the bot! I hate SQL with every bone in my body but managed to get through it. This was also my first time dabbling with slash commands in a discord bot and I’m very glad how this came out....
|
1793094582.008506
|
1793699382.008506
|
|
60240
|
Mosaic by @ok | Stardance
|
ok
|
0
|
6.91
|
0
|
[]
|
[{"post_id": 74278, "ts": "202 [{"post_id": 74278, "ts": "2026-09-27T03:36:00Z", "hours": 4.0642, "text": "the psuedo of codes.Basically, I added psuedocode for only Mosaic in general which I finished but Im now working on finish the python code. the logic is pretty easy to understand the only bad thing is that I need to find a way to standardize stuff, test stuff, train models, write a paper. (this is for science fair). im really sorry for the code picture i don’t like them too but once i run it and get graphs that will replace code."}, {"post_id": 64860, "ts": "2026-09-09T15:34:57Z", "hours": 2.8492, "text": "definitions & psuedocode. Defined math variables mainly in definitions.md then im starting to work on psuedocode which will take a very very very very very very long time im really sorry for the bad photo i don’t have anything else to show really"}]...
|
Title: Mosaic by @ok | Stardance
Devlogs:
definit Title: Mosaic by @ok | Stardance
Devlogs:
definitions & psuedocode. Defined math variables mainly in definitions.md then im starting to work on psuedocode which will take a very very very very very very long time im really sorry for the bad photo i don’t have anything else to show really
the psuedo of codes.Basically, I added psuedocode for only Mosaic in general which I finished but Im now working on finish the python code. the logic is pretty easy to understand the only bad thing is that I need to find a way to standardize stuff, test stuff, train models, write a paper. (this is for science fair). im really sorry for the code picture i don’t like them too but once i run it and get graphs that will replace code....
|
1793033353.5540037
|
1793638153.5540037
|
|
59368
|
Bits OS Web by @IshanWarrior2012 | Stardance
|
IshanWarrior2012
|
0
|
3.34
|
0
|
[]
|
[{"post_id": 74280, "ts": "202 [{"post_id": 74280, "ts": "2026-09-27T03:40:48Z", "hours": 2.5139, "text": "I made the first user command work.🥳🥳🎉🎉. I made the terminal create input areas automatically when the page opens for a command is executed. My first user command is “print”. Here is a glance of the project."}, {"post_id": 74037, "ts": "2026-09-26T16:02:51Z", "hours": 0.8283, "text": "I added Terminal Welcome screen with a big a*s ASCII. I am making it command line first then when someone types a command it will reboot with GUI"}]...
|
Title: Bits OS Web by @IshanWarrior2012 | Stardanc Title: Bits OS Web by @IshanWarrior2012 | Stardance
Devlogs:
I added Terminal Welcome screen with a big a*s ASCII. I am making it command line first then when someone types a command it will reboot with GUI
I made the first user command work.🥳🥳🎉🎉. I made the terminal create input areas automatically when the page opens for a command is executed. My first user command is “print”. Here is a glance of the project....
|
1792795915.8363209
|
1793400715.8363209
|
|
64032
|
deadbot by @arsenal4eva | Stardance
|
arsenal4eva
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T03:56:24Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Had to debug a lot due to my git branches being messed up but now they finally work. Sytemctl wa quite annoying as well", "repo": "https://github.com/arsenal4eva/deadbot", "demo": "https://app.slack.com/client/E09V59WQY1E/C0C4TBCFATB"}]...
|
[{"post_id": 74285, "ts": "202 [{"post_id": 74285, "ts": "2026-09-27T03:53:44Z", "hours": 0.9964, "text": "Finally finished my slack bot"}]...
|
Title: deadbot by @arsenal4eva | Stardance
Devlog Title: deadbot by @arsenal4eva | Stardance
Devlogs:
Finally finished my slack bot
Ships:
Had to debug a lot due to my git branches being messed up but now they finally work. Sytemctl wa quite annoying as well...
|
1792957996.6239367
|
1793821996.6239367
|
|
61397
|
Jazil-personal-manager by @Jazil | Stardance
|
Jazil
|
1
|
2.43
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-25T17:28:35Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "My only faced problem is this is my first time but this give knowledge of server using", "repo": "https://github.com/JazilJafar/my-slack-bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0C46LFAFK9"}]...
|
[{"post_id": 74286, "ts": "202 [{"post_id": 74286, "ts": "2026-09-27T03:53:52Z", "hours": 0.4322, "text": "i think five commands is over but bug is not stoping but stopped"}, {"post_id": 71661, "ts": "2026-09-21T08:13:53Z", "hours": 0.48, "text": "I added 5 commands in my slack bot and i am shipping pls comment new command to add"}, {"post_id": 70008, "ts": "2026-09-18T08:27:55Z", "hours": 0.3011, "text": "i added three commands to my bot"}, {"post_id": 68946, "ts": "2026-09-16T02:56:17Z", "hours": 0.8411, "text": "My bot started working"}]...
|
Title: Jazil-personal-manager by @Jazil | Stardanc Title: Jazil-personal-manager by @Jazil | Stardance
Devlogs:
My bot started working
i added three commands to my bot
I added 5 commands in my slack bot and i am shipping pls comment new command to add
i think five commands is over but bug is not stoping but stopped
Ships:
My only faced problem is this is my first time but this give knowledge of server using...
|
1793209718.0122414
|
1793296118.0122414
|
|
65249
|
Fruit OS by @weborbit1980 | Stardance
|
weborbit1980
|
1
|
4.62
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-25T15:58:49Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Fruit OS I made fruit OS, a web based desktop environment where you can open and move different windows around. I added a Notes app with multiple notes and session storage, a calculator, and a live clock. The hardest part was getting the draggable windows and state management to work properly without everything breaking. I am most proud of making it feel like an actual desktop rather than just a nomral webpage. I also added features like the Notes app and calculator that were not part of the basic guide", "repo": "https://github.com/vinitkumarsingh632-creator/Fruit-OS", "demo": "https://fruit-os.vercel.app/"}]...
|
[{"post_id": 74287, "ts": "202 [{"post_id": 74287, "ts": "2026-09-27T03:54:36Z", "hours": 0.625, "text": "#5 - Made Some Changes in UI My project got rejected due to heavy use of AI in UI. Therefore, i have made some changes in UI of notes and calculator app."}, {"post_id": 73638, "ts": "2026-09-25T15:43:22Z", "hours": 1.3142, "text": "#4 - Successfully Completed the Fruit OS I have built two apps, one is notes and another is calculator. Notes: It uses session storage."}, {"post_id": 73568, "ts": "2026-09-25T12:37:16Z", "hours": 0.8986, "text": "#3 - Completed building Clock Today, I have completed building the clock and background part. It was not much hard. Challenges: Updating time, applying glassmorphism. Next: Building apps."}, {"post_id": 72999, "ts": "2026-09-24T06:00:51Z", "hours": 1.4281, "text": "#2 - Completed Welcome Page Today, I have completed building welcome page. While building welcome page, I have lots of challenges. Challenges: To find alphabets of fruits. I have used photopea and mask the background with alphabets. Learnings: I have learned basics of photo editing on photopea. Next: I will start building the actual web OS."}, {"post_id": 72896, "ts": "2026-09-23T23:45:50Z", "hours": 0.3375, "text": "#1 - Starting Fruit OS Today I have started working on Fruit OS, a small experimental OS project with fruit themed project. Right now I am setting the project structure and building the first UI component Next: Building the welcome page."}]...
|
Title: Fruit OS by @weborbit1980 | Stardance
Devl Title: Fruit OS by @weborbit1980 | Stardance
Devlogs:
#1 - Starting Fruit OS Today I have started working on Fruit OS, a small experimental OS project with fruit themed project. Right now I am setting the project structure and building the first UI component Next: Building the welcome page.
#2 - Completed Welcome Page Today, I have completed building welcome page. While building welcome page, I have lots of challenges. Challenges: To find alphabets of fruits. I have used photopea and mask the background with alphabets. Learnings: I have learned basics of photo editing on photopea. Next: I will start building the actual web OS.
#3 - Completed building Clock Today, I have completed building the clock and background part. It was not much hard. Challenges: Updating time, applying glassmorphism. Next: Building apps.
#4 - Successfully Completed the Fruit OS I have built two apps, one is notes and another is calculator. Notes: It uses session storage.
#5 - Made Some Changes in UI My project got rejected due to heavy use of AI in UI. Therefore, i have made some changes in UI of notes and calculator app.
Ships:
Fruit OS I made fruit OS, a web based desktop environment where you can open and move different windows around. I added a Notes app with multiple notes and session storage, a calculator, and a live clock. The hardest part was getting the draggable windows and state management to work properly without everything breaking. I am most proud of making it feel like an actual desktop rather than just a nomral webpage. I also added features like the Notes app and calculator that were not part of the basic guide...
|
1793213715.7268288
|
1793300115.7268288
|
|
60850
|
RC 3d printer filament by @dominict3 | Stardance
|
dominict3
|
0
|
10.92
|
0
|
[]
|
[{"post_id": 74289, "ts": "202 [{"post_id": 74289, "ts": "2026-09-27T03:57:15Z", "hours": 0.7878, "text": "GitHub stuff - I worked on adding more stuff to the GitHub and making it nice and pretty. This was my first time using GitHub and I hope I got everything right. It is also my first time making a somewhat difficult project so I also hope I got everything right with that as well."}, {"post_id": 69603, "ts": "2026-09-17T12:15:54Z", "hours": 0.9903, "text": "Final CAD + drawings. I finished the cad for this project as well as making some pretty looking drawings, and a BOM."}, {"post_id": 69416, "ts": "2026-09-17T00:29:44Z", "hours": 7.3622, "text": "remote control filament, more cad complete. Im building a remote controllable standard roll of filament (basically prophunt). I’m using 2 DC motors being driven by an esp32, most of the parts are suspended in the inner assembly by 2 bearings, allowing them to be free spinning. (basically the gyro balls from Jurassic park)."}, {"post_id": 65717, "ts": "2026-09-11T01:52:22Z", "hours": 1.7786, "text": "remote control 3d printer filament spool"}]...
|
Title: RC 3d printer filament by @dominict3 | Star Title: RC 3d printer filament by @dominict3 | Stardance
Devlogs:
remote control 3d printer filament spool
remote control filament, more cad complete. Im building a remote controllable standard roll of filament (basically prophunt). I’m using 2 DC motors being driven by an esp32, most of the parts are suspended in the inner assembly by 2 bearings, allowing them to be free spinning. (basically the gyro balls from Jurassic park).
Final CAD + drawings. I finished the cad for this project as well as making some pretty looking drawings, and a BOM.
GitHub stuff - I worked on adding more stuff to the GitHub and making it nice and pretty. This was my first time using GitHub and I hope I got everything right. It is also my first time making a somewhat difficult project so I also hope I got everything right with that as well....
|
1793037067.2444
|
1793641867.2444
|
|
32480
|
Pac-Man by @raslanyossif | Stardance
|
raslanyossif
|
1
|
95.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T04:21:15Z", "hours": 95.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Pac-man but with power ups and more ghosts as you proceed to level up. challenging part was making the maze I struggled a lot. I’m proud that I was able to complete such a project. When you get one of the power ups which is Shield your Pac-man becomes blue, so the ghosts can’t eat you and you can’t eat them. It isn’t a bug I made it that way.", "repo": "https://github.com/Yossifraslan/Pac-Man", "demo": "https://yossifraslan.github.io/Pac-Man/"}]...
|
[{"post_id": 74295, "ts": "202 [{"post_id": 74295, "ts": "2026-09-27T04:15:28Z", "hours": 9.2853, "text": "It’s DEVLOG TIME:» Just pushed a much-needed update to the project! First up, I finally tracked down and killed a frustrating maze error in Level 10 that was completely breaking the game right near the finish line—so the final levels are officially working and playable now. While I was at it, I also took the time to write a proper README. It covers everything from setup instructions to gameplay mechanics, making the codebase a lot more welcoming and less of a black box for anyone who wants to test it out or contribute. Next up is getting some feedback and seeing how quickly people can break it! Also, when you are shielded for the power up, you can’t eat the ghosts."}, {"post_id": 49457, "ts": "2026-08-18T09:45:17Z", "hours": 9.5264, "text": "IT’S DEVLOG TIMEE :»> It’s been a tough few days trying to figure out how to fix the MAZE, but I finally figured out how to do it through A* pathfinding. Fixed all the maps. Which took me so longggg. Also, Fixed speed inconsistency bugs and collision detection to eliminate Pac-Man getting stuck at maze tiles - movement now uses tile-based physics that checks every frame with no edge-case stalls, plus input buffering lets players queue moves ahead for responsive controls. Implemented proper ghost freeze behavior where frozen ghosts stop completely for 5 seconds, stay visible, and remain killable while frozen. Made the Extra Life now work on the screen when you get an Extra life it will update in the UI top middle and see a new Pac-man face get added. On the side of the Maps you can see there is no wall blocking, because now I made it a teleport to the other side."}, {"post_id": 46650, "ts": "2026-08-14T01:56:32Z", "hours": 9.1808, "text": "Fixed all six power-up behaviours this session. Speed boost and double points were already working. The main rework was on shield, freeze, and slow. Shield now stays active until a ghost physically touches the player, when that happens, the ghost turns scared/blue instead of the player dying, and the shield remains active for future hits on a 15-second timer. Freeze keeps ghosts in their normal colour but completely stops their movement for 3 seconds - they’re still killable while frozen. Slow keeps ghosts at their normal appearance but skips movement every other frame, effectively halving their speed for 5 seconds. Also implemented proper ghost spawn behavior. Ghosts now spawn at the center of the maze (on or near the ghost house tiles) and release one by one first ghost after 2 seconds, then one every 3 seconds. While waiting to release they bob up and down inside the house. After death, the release sequence resets so ghosts trickle out again rather than all rushing at once. Pac-Man now spawns at a random open tile at least a third of the maze width away from the centre, so every life and every game starts from a different position. Maze connectivity fix was attempted this session but not completed - some maps still have corridors that can trap the player. Carrying this into the next session"}, {"post_id": 43330, "ts": "2026-08-08T15:07:17Z", "hours": 9.7428, "text": "I fixed up my previous issues with lives resetting to 3 for each level completed as well as start Game taking you back to level 1 rather than starting at the highest level you’ve unlocked. The ghost speed has been halved (from 2px to 1px/frame) which makes everything seem much more balanced with me running around at 60fps! I’ve added a proper pause menu overlay along with options to toggle Music & SFX - I had previously run into an issue where if you paused the game then played again the menu music would keep playing. To fix this I’m keeping track of all active WebAudio Oscillators and automatically stop them whenever we begin gameplay. We’ve added some really nice little touches too! For example, when you die Pac-Man will close his mouth, spin twice and slowly shrink away over 80 frames before disappearing completely. You’ll also get a sweet animation when you spawn growing up from 0 to full size over 40 frames. We originally couldn’t get the death animation working because we’d set our global variable gameActive = false during dying which turned off the entire update loop so I’ve updated Pac-Man’s update method to continue updating even when he’s dying / spawning. Finally, I made sure to make Pac-Man disappear once he dies to ensure no weird visuals happen after respawning. We added a yellow flash on finishing a level. Floating score popups show up every time you eat a ghost. Now there’s an animated HUD that shows your current score. Previously, canvas animations were off due to transform translation applied twice (once during animation and once more when drawing). Now we translate to our sprite’s center before applying any additional transformation."}, {"post_id": 40526, "ts": "2026-08-04T03:32:16Z", "hours": 9.2125, "text": "DEVLOG TIME:> During this session, I incorporated complete mobile compatibility. The directional pad appears automatically on touch devices through (pointer:coarse) through CSS thus eliminating the need for any device detection as it will be shown as soon as the browser detects a device with touch input. Each button utilizes touchstart instead of click , so there is no 300ms tap delay that would make the controls slow or laggy. I also introduced swipe detection on the canvas as a substitute for the directional pad. The minimum distance for swipe detection is 30px, filtering unintended touches and also utilizing the main axis (horizontal or vertical) in order to identify the direction even in case of diagonal swipes. I added responsive CSS for screens smaller than 480px thus allowing the fonts, buttons, and HUD to resize, so no overflowing occurs on small screens. I verified this by checking the local network IP through my mobile, as both devices were connected to the same Wi-Fi network. The InputManager is now capable of working with three types of input in one place - keyboard, touch directional pad, and swipe, all of them leading to a single nextDirection property, which is accessed by the main game loop."}, {"post_id": 39312, "ts": "2026-08-02T06:34:55Z", "hours": 9.3164, "text": "Added an audio system using the WebAudio API. No external sound files everything is generated programmatically using oscillators and gain nodes. Each game event has its sound: a short square wave blip for eating dots a sawtooth drop for eating pellets, a triangle tone for eating ghosts a descending three-note jingle for death and a rising three-note fanfare for level complete. The main menu has a looping chiptune melody. 25 Notes scheduled ahead of time using ctx.currentTime, which avoids timing drift that would happen with repeated setTimeout calls. It loops by scheduling the playthrough when the current one ends. The trickiest part was the browser autoplay policy. Browsers block AudioContext from making sound until the user interacts with the page. The fix was checking ctx.state === suspended on the click and calling ctx.resume() before trying to play anything. Finished power-up effects. Freeze and slow work via frame timers (_frozenTimer _slowTimer) set directly on each monster. The monster update method checks these at the top before doing anything effectively pausing or slowing it without touching core movement logic. Known issue: menu music doesn’t stop immediately when the game starts. There’s a 1-2 overlap before it cuts out. Will fix session along with, in-game sound effects not always triggering. Investigating AudioContext state management across the menu-> game transition."}, {"post_id": 33922, "ts": "2026-07-24T07:11:48Z", "hours": 9.5589, "text": "DEVLOG TIME!!! Added ghosts to the game this session. The ghost AI has 4 behavior types - chaser, ambusher, predictor, and patroller, targeting player based on various positions. Also added A* path finding to have the ghosts go around walls instead of choosing adjacent tiles that are closer to them. Majority of time in this session was spent debugging the movement. It turned out to be a floating-point problem where, when the ghost speed is not divisible by the tile size (20 px), the pixelX % tileSize is never equal to 0 and therefore the alignment function is never called resulting in the ghost moving for 2 px per frame. Fixed this by making the ghost speed fixed at an integer value (2) that is divisible by 20. Eating the power pellet causes the ghost to go into the frighten state which makes the ghost turn blue and move randomly. The player receives 200 points and the respawn timer starts when a ghost in the frighten state is eaten."}, {"post_id": 31207, "ts": "2026-07-19T12:53:56Z", "hours": 9.6542, "text": "WHAT’s NEW:> Devlog Time!!! Got Pac-Man actually moving through the maze this session. Built the Player class with grid-based movement - Pac-Man only changes direction when pixel position is exactly aligned to a tile, which prevents clipping through walls. Added direction queuing so if you press a turn slightly early it still registers when the next tile is reached, making controls feel responsive instead of stiff. Also split out InputManager , CollisionSystem , and UIManager into their own modules. Dot collection works - eating a dot removes it from the array, updates the grid, and increments score. Level completes when all dots and pellets are cleared, with a 500 x level bonus. One thing worth noting from Devlog 2 - the maze connectivity issue. After designing all 10 maze layouts, levels 3-10 had isolated sections where dots were completely unreachable. Wrote a flood-fill validator that BFS traverses from the first dot and counts how many dots are reachable. Then wrote an auto-fixer that finds disconnected sections and carves the shortest Manhattan path between them. All 10 levels now pass with 100% dots reachable."}, {"post_id": 29256, "ts": "2026-07-16T01:45:12Z", "hours": 9.4397, "text": "DEVLOG TIME:> !! I have improved the maze system used in my game, Pac-Man. Originally, I thought of not only using one maze and having a full leveling system. In this, I calculated and created 10 mazes with different sizes, difficulties, and complexity levels. In addition, I modified the class MazeManager in such a way that our game automatically changes levels without requiring a manual change of the mazes. In testing new mazes, I introduced a checking mechanism so that we will know whether our mazes have any unreachable dots. For some reason, it turned out that some parts of the maze were blocked. Maze validation: 195/218 dots reachable Blocked sections were identified. Some of the dots can’t be accessed. Interestingly, the maze looked perfectly okay visually, but the navigation test indicated that some of the areas of my maze were not accessible. At the moment, I plan on fixing the blocked paths and test out each level. I might also change some things later once the game is fully playable and I can properly test the difficulty, such as: maze layouts ghost difficulty level progression number of ghosts/speed scaling Right now the goal is getting the core gameplay working first, then balancing everything afterwards."}, {"post_id": 26506, "ts": "2026-07-11T10:41:25Z", "hours": 9.9617, "text": "I’ve been really busy but here is the first DEVLOG for Pac-man:> I’m planning on doing unique things in this Pac-man it won’t be a normal Pac-man. What I did: Built all 5 screens for the game - main menu, level select, how to play, game screen and game over. No gameplay yet, just the full UI shell. Screen switching works by toggling a single. active class, all screens live in the DOM simultaneously. Biggest challenge was the SVG ghosts. Drew them in pure SVG using and so the shape is defined once and reused everywhere with different colors via a CSS variable –gc. Also styled elements in the How to Play screen to look like actual keyboard keys. Ghost bobbing animation on the menu uses staggered animation-delay so they move in a wave instead of all at once."}]...
|
Title: Pac-Man by @raslanyossif | Stardance
Devlo Title: Pac-Man by @raslanyossif | Stardance
Devlogs:
I’ve been really busy but here is the first DEVLOG for Pac-man:> I’m planning on doing unique things in this Pac-man it won’t be a normal Pac-man. What I did: Built all 5 screens for the game - main menu, level select, how to play, game screen and game over. No gameplay yet, just the full UI shell. Screen switching works by toggling a single. active class, all screens live in the DOM simultaneously. Biggest challenge was the SVG ghosts. Drew them in pure SVG using and so the shape is defined once and reused everywhere with different colors via a CSS variable –gc. Also styled elements in the How to Play screen to look like actual keyboard keys. Ghost bobbing animation on the menu uses staggered animation-delay so they move in a wave instead of all at once.
DEVLOG TIME:> !! I have improved the maze system used in my game, Pac-Man. Originally, I thought of not only using one maze and having a full leveling system. In this, I calculated and created 10 mazes with different sizes, difficulties, and complexity levels. In addition, I modified the class MazeManager in such a way that our game automatically changes levels without requiring a manual change of the mazes. In testing new mazes, I introduced a checking mechanism so that we will know whether our mazes have any unreachable dots. For some reason, it turned out that some parts of the maze were blocked. Maze validation: 195/218 dots reachable Blocked sections were identified. Some of the dots can’t be accessed. Interestingly, the maze looked perfectly okay visually, but the navigation test indicated that some of the areas of my maze were not accessible. At the moment, I plan on fixing the blocked paths and test out each level. I might also change some things later once the game is fully playable and I can properly test the difficulty, such as: maze layouts ghost difficulty level progression number of ghosts/speed scaling Right now the goal is getting the core gameplay working first, then balancing everything afterwards.
WHAT’s NEW:> Devlog Time!!! Got Pac-Man actually moving through the maze this session. Built the Player class with grid-based movement - Pac-Man only changes direction when pixel position is exactly aligned to a tile, which prevents clipping through walls. Added direction queuing so if you press a turn slightly early it still registers when the next tile is reached, making controls feel responsive instead of stiff. Also split out InputManager , CollisionSystem , and UIManager into their own modules. Dot collection works - eating a dot removes it from the array, updates the grid, and increments score. Level completes when all dots and pellets are cleared, with a 500 x level bonus. One thing worth noting from Devlog 2 - the maze connectivity issue. After designing all 10 maze layouts, levels 3-10 had isolated sections where dots were completely unreachable. Wrote a flood-fill validator that BFS traverses from the first dot and counts how many dots are reachable. Then wrote an auto-fixer that finds disconnected sections and carves the shortest Manhattan path between them. All 10 levels now pass with 100% dots reachable.
DEVLOG TIME!!! Added ghosts to the game this session. The ghost AI has 4 behavior types - chaser, ambusher, predictor, and patroller, targeting player based on various positions. Also added A* path finding to have the ghosts go around walls instead of choosing adjacent tiles that are closer to them. Majority of time in this session was spent debugging the movement. It turned out to be a floating-point problem where, when the ghost speed is not divisible by the tile size (20 px), the pixelX % tileSize is never equal to 0 and therefore the alignment function is never called resulting in the ghost moving for 2 px per frame. Fixed this by making the ghost speed fixed at an integer value (2) that is divisible by 20. Eating the power pellet causes the ghost to go into the frighten state which makes the ghost turn blue and move randomly. The player receives 200 points and the respawn timer starts when a ghost in the frighten state is eaten.
Added an audio system using the WebAudio API. No external sound files everything is generated programmatically using oscillators and gain nodes. Each game event has its sound: a short square wave blip for eating dots a sawtooth drop for eating pellets, a triangle tone for eating ghosts a descending three-note jingle for death and a rising three-note fanfare for level complete. The main menu has a looping chiptune melody. 25 Notes scheduled ahead of time using ctx.currentTime, which avoids timing drift that would happen with repeated setTimeout calls. It loops by scheduling the playthrough when the current one ends. The trickiest part was the browser autoplay policy. Browsers block AudioContext from making sound until the user interacts with the page. The fix was checking ctx.state === suspended on the click and calling ctx.resume() before trying to play anything. Finished power-up effects. Freeze and slow work via frame timers (_frozenTimer _slowTimer) set directly on each monster. The monster update method checks these at the top before doing anything effectively pausing or slowing it without touching core movement logic. Known issue: menu music doesn’t stop immediately when the game starts. There’s a 1-2 overlap before it cuts out. Will fix session along with, in-game sound effects not always triggering. Investigating AudioContext state management across the menu-> game transition.
DEVLOG TIME:> During this session, I incorporated complete mobile compatibility. The directional pad appears automatically on touch devices through (pointer:coarse) through CSS thus eliminating the need for any device detection as it will be shown as soon as the browser detects a device with touch input. Each button utilizes touchstart instead of click , so there is no 300ms tap delay that would make the controls slow or laggy. I also introduced swipe detection on the canvas as a substitute for the directional pad. The minimum distance for swipe detection is 30px, filtering unintended touches and also utilizing the main axis (horizontal or vertical) in order to identify the direction even in case of diagonal swipes. I added responsive CSS for screens smaller than 480px thus allowing the fonts, buttons, and HUD to resize, so no overflowing occurs on small screens. I verified this by checking the local network IP through my mobile, as both devices were connected to the same Wi-Fi network. The InputManager is now capable of working with three types of input in one place - keyboard, touch directional pad, and swipe, all of them leading to a single nextDirection property, which is accessed by the main game loop.
I fixed up my previous issues with lives resetting to 3 for each level completed as well as start Game taking you back to level 1 rather than starting at the highest level you’ve unlocked. The ghost speed has been halved (from 2px to 1px/frame) which makes everything seem much more balanced with me running around at 60fps! I’ve added a proper pause menu overlay along with options to toggle Music & SFX - I had previously run into an issue where if you paused the game then played again the menu music would keep playing. To fix this I’m keeping track of all active WebAudio Oscillators and automatically stop them whenever we begin gameplay. We’ve added some really nice little touches too! For example, when you die Pac-Man will close his mouth, spin twice and slowly shrink away over 80 frames before disappearing completely. You’ll also get a sweet animation when you spawn growing up from 0 to full size over 40 frames. We originally couldn’t get the death animation working because we’d set our global variable gameActive = false during dying which turned off the entire update loop so I’ve updated Pac-Man’s update method to continue updating even when he’s dying / spawning. Finally, I made sure to make Pac-Man disappear once he dies to ensure no weird visuals happen after respawning. We added a yellow flash on finishing a level. Floating score popups show up every time you eat a ghost. Now there’s an animated HUD that shows your current score. Previously, canvas animations were off due to transform translation applied twice (once during animation and once more when drawing). Now we translate to our sprite’s center before applying any additional transformation.
Fixed all six power-up behaviours this session. Speed boost and double points were already working. The main rework was on shield, freeze, and slow. Shield now stays active until a ghost physically touches the player, when that happens, the ghost turns scared/blue instead of the player dying, and the shield remains active for future hits on a 15-second timer. Freeze keeps ghosts in their normal colour but completely stops their movement for 3 seconds - they’re still killable while frozen. Slow keeps ghosts at their normal appearance but skips movement every other frame, effectively halving their speed for 5 seconds. Also implemented proper ghost spawn behavior. Ghosts now spawn at the center of the maze (on or near the ghost house tiles) and release one by one first ghost after 2 seconds, then one every 3 seconds. While waiting to release they bob up and down inside the house. After death, the release sequence resets so ghosts trickle out again rather than all rushing at once. Pac-Man now spawns at a random open tile at least a third of the maze width away from the centre, so every life and every game starts from a different position. Maze connectivity fix was attempted this session but not completed - some maps still have corridors that can trap the player. Carrying this into the next session
IT’S DEVLOG TIMEE :»> It’s been a tough few days trying to figure out how to fix the MAZE, but I finally figured out how to do it through A* pathfinding. Fixed all the maps. Which took me so longggg. Also, Fixed speed inconsistency bugs and collision detection to eliminate Pac-Man getting stuck at maze tiles - movement now uses tile-based physics that checks every frame with no edge-case stalls, plus input buffering lets players queue moves ahead for responsive controls. Implemented proper ghost freeze behavior where frozen ghosts stop completely for 5 seconds, stay visible, and remain killable while frozen. Made the Extra Life now work on the screen when you get an Extra life it will update in the UI top middle and see a new Pac-man face get added. On the side of the Maps you can see there is no wall blocking, because now I made it a teleport to the other side.
It’s DEVLOG TIME:» Just pushed a much-needed update to the project! First up, I finally tracked down and killed a frustrating maze error in Level 10 that was completely breaking the game right near the finish line—so the final levels are officially working and playable now. While I was at it, I also took the time to write a proper README. It covers everything from setup instructions to gameplay mechanics, making the codebase a lot more welcoming and less of a black box for anyone who wants to test it out or contribute. Next up is getting some feedback and seeing how quickly people can break it! Also, when you are shielded for the power up, you can’t eat the ghosts.
Ships:
I made a Pac-man but with power ups and more ghosts as you proceed to level up. challenging part was making the maze I struggled a lot. I’m proud that I was able to complete such a project. When you get one of the power ups which is Shield your Pac-man becomes blue, so the ghosts can’t eat you and you can’t eat them. It isn’t a bug I made it that way....
|
1793152567.1850388
|
1793238967.1850388
|
|
28931
|
ploot by @yay | Stardance
|
yay
|
1
|
21.0
|
257
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T04:44:39Z", "hours": 21.0, "multiplier": 12.18, "payout": 257, "blessing": "neutral", "text": "this is ploot, an ai powered planner that helps you allocate time to your tasks. you drag your availability on the calendar, write down your tasks in the rich text editor, then it gives you an editable calendar that you can export to a real calendar app(.ics format)! this was my first time making an app like this, so i used a bit of ai in the debugging process, especially for small things that i didn’t notice. there were a lot of challenges, but some of the especially annoying ones were the models returning errors, having signup errors, and timezone mismatches. what i really like about this is that its actually usable in my daily life :D its not something i make and then leave to rot, and is really useful for my indecisiveness. things to note beforehand: its passwordless and uses magic link login, is very slow in loading events(so pls be patient), and the generated schedules are not saved into a database or anything so once you refresh the page they’re gone. also (this probably wont happen) but you might get ratelimited", "repo": "https://github.com/nxzeh727/ploot", "demo": "https://ploot1.vercel.app"}]...
|
[{"post_id": 74296, "ts": "202 [{"post_id": 74296, "ts": "2026-09-27T04:18:39Z", "hours": 4.8806, "text": "ploot devlog #3 :D i added a modifications section so that you can modify your schedule to how you would want it to be. i also changed the ai models so that it would be better and cleaned up remaining bugs. its almost ready to ship! :D"}, {"post_id": 62279, "ts": "2026-09-05T15:58:02Z", "hours": 6.3167, "text": "devlog #2 :D i fixed the ui :D and also got rid of a bunch of bugs related to scheduling and signup/login i also added a dashboard but theres nothing in it so far there are still some problems though, since the ai doesn’t generate schedules half the time. after this, i mostly plan on adding a modification part for the schedule, a place to save the calendar and check it, and some stuff in the dashboard. :D I’m also planning on upgrading the text place into a proper todo-list thanks for reading :D"}, {"post_id": 42754, "ts": "2026-08-07T17:03:52Z", "hours": 9.8656, "text": "ploot devlog #1: so far, I’ve added a lot of things: the basic funciton(a calendar where you select the times available, a somewhat formatted editor where you can put what you need to do for that day, and an AI schedule generated from these pieces of information). i also created authentication(using maigc link only). initially, i stored the events and resulting schedule in a json, but i changed the inputs and put them into a database, and then converted the resulting schedule into .ics format so you can download it. as of right now, its a bit ugly, but that will be fixed in the future!"}]...
|
Title: ploot by @yay | Stardance
Devlogs:
ploot d Title: ploot by @yay | Stardance
Devlogs:
ploot devlog #1: so far, I’ve added a lot of things: the basic funciton(a calendar where you select the times available, a somewhat formatted editor where you can put what you need to do for that day, and an AI schedule generated from these pieces of information). i also created authentication(using maigc link only). initially, i stored the events and resulting schedule in a json, but i changed the inputs and put them into a database, and then converted the resulting schedule into .ics format so you can download it. as of right now, its a bit ugly, but that will be fixed in the future!
devlog #2 :D i fixed the ui :D and also got rid of a bunch of bugs related to scheduling and signup/login i also added a dashboard but theres nothing in it so far there are still some problems though, since the ai doesn’t generate schedules half the time. after this, i mostly plan on adding a modification part for the schedule, a place to save the calendar and check it, and some stuff in the dashboard. :D I’m also planning on upgrading the text place into a proper todo-list thanks for reading :D
ploot devlog #3 :D i added a modifications section so that you can modify your schedule to how you would want it to be. i also changed the ai models so that it would be better and cleaned up remaining bugs. its almost ready to ship! :D
Ships:
this is ploot, an ai powered planner that helps you allocate time to your tasks. you drag your availability on the calendar, write down your tasks in the rich text editor, then it gives you an editable calendar that you can export to a real calendar app(.ics format)! this was my first time making an app like this, so i used a bit of ai in the debugging process, especially for small things that i didn’t notice. there were a lot of challenges, but some of the especially annoying ones were the models returning errors, having signup errors, and timezone mismatches. what i really like about this is that its actually usable in my daily life :D its not something i make and then leave to rot, and is really useful for my indecisiveness. things to note beforehand: its passwordless and uses magic link login, is very slow in loading events(so pls be patient), and the generated schedules are not saved into a database or anything so once you refresh the page they’re gone. also (this probably wont happen) but you might get ratelimited...
|
1793148831.091194
|
1793235231.091194
|
|
27377
|
AI-Powered Adventure Text Game by @jeremyngai | St AI-Powered Adventure Text Game by @jeremyngai | Stardance...
|
jeremyngai
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T08:27:12Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is an AI-powered text adventure device using an ESP32, an e-paper display and a rotary encoder. It is powered by Gemini to generate infinite stories and choices. It uses ESP32-C3 microcontroller to connect to WiFi and query the Gemini API. Gemini generates an interactive story segment and choices for the player in JSON format. Then the text is shown on the e-paper display. The user can use the rotary encoder to scroll through the text and select their next action. Each choice is returned to the history buffer on the ESP32 and is sent back to Gemini to generate the next story segment. Personally the most enjoyable part is when the PCB worked after i soldered them, however the coding part is hell cuz i sucks at coding lol. It haven’t got an enclosure yet, i will work on it soon! Now I can play this in my free time!", "repo": "https://github.com/Jeremy-Ngai-Sew-Poh/InkQuest", "demo": ""}]...
|
[{"post_id": 74300, "ts": "202 [{"post_id": 74300, "ts": "2026-09-27T04:39:13Z", "hours": 1.6014, "text": "I worked on the game loop system so the story is infinite. after you selected your choice your response will be sent back to gemini api to generate next story! now its actually infinite loop"}, {"post_id": 38642, "ts": "2026-08-01T04:29:45Z", "hours": 4.8872, "text": "Spent the last few days implementing gemini api into the code and formatting json data like text, choice into the e paper display :) I’ll take a break from this project as i have joined other competition. so stay tuned!"}, {"post_id": 31150, "ts": "2026-07-19T10:08:00Z", "hours": 2.8883, "text": "GAH DAMN MY PCB IS WORKING!!! Timelapse below! I spent the last few hours carefully soldering my new PCB. I decided to use 0805 for all smd component cuz in my last project, I used 0603 ones and it was PURE TORTURE to solder them all lol. lessen learnt! Overall, I absolutely love the pcb outcome its nicer than I expected especially the ws2812b led and all those smd resistor (they look so sci-fi xD). However there was one flaw, I forgot about the ESP32 antenna. I’m forced to awkwardly fit the antenna on the pcb back (right beside my Great Wave silkscreen print). Luckily it didn’t block it lol. This is something I needa keep in mind the next time! You might be wondering what’s that tiny pin header I used there. It’s just a pin header, but for the design, I wanted it to be ultra slim, so I designed a PCB sandwich layout. The battery fits perfectly between the e-paper pcb and my pcb. However the problem with normal pin headers is that they are super chunky, they have like 9mm gap. That instantly ruin the whole vibe… So after hours of digging in aliexpress, I found those low profile pin header. They are SUPER PERFECT for my project (6mm gap), which is exactly my battery thickness!!! Anyways the low profile pin header was NOT CHEAP at all… well at least its so worth it. Other than soldering the PCB, I did a few adjustment to the firmware, including: rotary encoder logic improvement - I used interrupt pin logic to read it, they place the rotary encoder at the toppest priority (if theres any changes in pin state, the esp32 instantly ignore everything and focus on the encoder). That’s all for now, stay tuned! its so fun"}, {"post_id": 30648, "ts": "2026-07-18T12:04:16Z", "hours": 1.4833, "text": "Today I worked on a WiFi prompt to let user choose whether they want to connect to a different wifi or existing one, because this device is supposed to be portable, working anywhere, so this is very important. However, I’m still figuring out how to show the WiFi name… wm.getWiFiSSID() didn’t work though. Btw, all my hardware had already arrived just now!! (after slow ahh aliexpress) I can’t wait to solder them, so stay tuned lol XD"}, {"post_id": 30125, "ts": "2026-07-17T13:25:32Z", "hours": 4.3369, "text": "In the last few days, I made a few changes to my project: I decided to switch the idea from the initial quiz game concept into a choice-based adventure text game, it’s basically an infinite “choose your own adventure” concept. I feel like it’s way more fun! I worked with the WiFiManager library to make the wifi setup more accessible and easy. We now don’t need to hardcode wifi password into the code, the device will launch a hotspot captive portal and you can just connect any of your device to setup wifi at anytime anywhere. portable, isn’t it? Since this game concept will need the e-paper display to show a long text, I used a serif font and coded an automatic text wrapping and an adaptive scroll bar at the side so you can know the length of the text I also added a low battery and data parsing error page for the user alongside with an ok button to shutdown the device. What’s next? After the text formatting is stable, i’ll be focusing on text generation and choice logic!! xD"}, {"post_id": 27138, "ts": "2026-07-12T12:49:33Z", "hours": 2.3742, "text": "Added automatic text wrapping, improved code logic and added low battery screen"}, {"post_id": 26595, "ts": "2026-07-11T14:50:08Z", "hours": 0.6044, "text": "Sent PCB design to JLCPCB for manufacturing (the silkscreen boutta look fire!!)"}, {"post_id": 26395, "ts": "2026-07-11T05:00:22Z", "hours": 1.8842, "text": "Finalised PCB schematics and tested with breadboard. PCB is ready to be manufactured!!"}, {"post_id": 24655, "ts": "2026-07-08T11:42:57Z", "hours": 1.2667, "text": "Added WS2812B Neopixel on the PCB and rerouted PCB"}, {"post_id": 22722, "ts": "2026-07-05T09:35:39Z", "hours": 2.0708, "text": "Finalised schematics circuit, now starting PCB layout!!"}, {"post_id": 22147, "ts": "2026-07-04T13:36:10Z", "hours": 0.4381, "text": "Updated UI interface to fit longer question and answer"}, {"post_id": 21968, "ts": "2026-07-04T05:52:14Z", "hours": 1.4556, "text": "Designed first schematics for custom PCB"}, {"post_id": 21501, "ts": "2026-07-03T14:21:54Z", "hours": 0.3519, "text": "Added ADC reading from battery pin to calculate percentage"}, {"post_id": 19185, "ts": "2026-06-30T13:32:47Z", "hours": 0.3486, "text": "I implemented random seed for Gemini and reinforced the prompt because the AI keep generating the same question and answer over and over again"}, {"post_id": 19168, "ts": "2026-06-30T12:51:47Z", "hours": 1.8264, "text": "Finally implemented Gemini 3.1 Flash Lite into my e-paper ai quiz! Took a long long time debugging errors. Next I’m gonna optimise the ui"}, {"post_id": 18247, "ts": "2026-06-29T10:07:48Z", "hours": 0.7272, "text": "Removed variable dummy placeholder to prepare for API implementation. Also fixed navigation bug when switching pages."}, {"post_id": 17501, "ts": "2026-06-28T09:50:58Z", "hours": 0.6828, "text": "Added hourglass loading screen and improved code logic"}, {"post_id": 17459, "ts": "2026-06-28T07:44:51Z", "hours": 0.7906, "text": "Implemented full quiz logic in Arduino IDE (Gemini API yet to do)"}, {"post_id": 17431, "ts": "2026-06-28T06:34:17Z", "hours": 0.5061, "text": "Added logic pages system using partial refresh in Arduino IDE"}, {"post_id": 17370, "ts": "2026-06-28T04:02:32Z", "hours": 0.4453, "text": "Initialise e-paper screen and wifi in Arduino IDE"}, {"post_id": 17359, "ts": "2026-06-28T03:34:17Z", "hours": 0.3494, "text": "UI Design for quiz interface"}]...
|
Title: AI-Powered Adventure Text Game by @jeremyng Title: AI-Powered Adventure Text Game by @jeremyngai | Stardance
Devlogs:
UI Design for quiz interface
Initialise e-paper screen and wifi in Arduino IDE
Added logic pages system using partial refresh in Arduino IDE
Implemented full quiz logic in Arduino IDE (Gemini API yet to do)
Added hourglass loading screen and improved code logic
Removed variable dummy placeholder to prepare for API implementation. Also fixed navigation bug when switching pages.
Finally implemented Gemini 3.1 Flash Lite into my e-paper ai quiz! Took a long long time debugging errors. Next I’m gonna optimise the ui
I implemented random seed for Gemini and reinforced the prompt because the AI keep generating the same question and answer over and over again
Added ADC reading from battery pin to calculate percentage
Designed first schematics for custom PCB
Updated UI interface to fit longer question and answer
Finalised schematics circuit, now starting PCB layout!!
Added WS2812B Neopixel on the PCB and rerouted PCB
Finalised PCB schematics and tested with breadboard. PCB is ready to be manufactured!!
Sent PCB design to JLCPCB for manufacturing (the silkscreen boutta look fire!!)
Added automatic text wrapping, improved code logic and added low battery screen
In the last few days, I made a few changes to my project: I decided to switch the idea from the initial quiz game concept into a choice-based adventure text game, it’s basically an infinite “choose your own adventure” concept. I feel like it’s way more fun! I worked with the WiFiManager library to make the wifi setup more accessible and easy. We now don’t need to hardcode wifi password into the code, the device will launch a hotspot captive portal and you can just connect any of your device to setup wifi at anytime anywhere. portable, isn’t it? Since this game concept will need the e-paper display to show a long text, I used a serif font and coded an automatic text wrapping and an adaptive scroll bar at the side so you can know the length of the text I also added a low battery and data parsing error page for the user alongside with an ok button to shutdown the device. What’s next? After the text formatting is stable, i’ll be focusing on text generation and choice logic!! xD
Today I worked on a WiFi prompt to let user choose whether they want to connect to a different wifi or existing one, because this device is supposed to be portable, working anywhere, so this is very important. However, I’m still figuring out how to show the WiFi name… wm.getWiFiSSID() didn’t work though. Btw, all my hardware had already arrived just now!! (after slow ahh aliexpress) I can’t wait to solder them, so stay tuned lol XD
GAH DAMN MY PCB IS WORKING!!! Timelapse below! I spent the last few hours carefully soldering my new PCB. I decided to use 0805 for all smd component cuz in my last project, I used 0603 ones and it was PURE TORTURE to solder them all lol. lessen learnt! Overall, I absolutely love the pcb outcome its nicer than I expected especially the ws2812b led and all those smd resistor (they look so sci-fi xD). However there was one flaw, I forgot about the ESP32 antenna. I’m forced to awkwardly fit the antenna on the pcb back (right beside my Great Wave silkscreen print). Luckily it didn’t block it lol. This is something I needa keep in mind the next time! You might be wondering what’s that tiny pin header I used there. It’s just a pin header, but for the design, I wanted it to be ultra slim, so I designed a PCB sandwich layout. The battery fits perfectly between the e-paper pcb and my pcb. However the problem with normal pin headers is that they are super chunky, they have like 9mm gap. That instantly ruin the whole vibe… So after hours of digging in aliexpress, I found those low profile pin header. They are SUPER PERFECT for my project (6mm gap), which is exactly my battery thickness!!! Anyways the low profile pin header was NOT CHEAP at all… well at least its so worth it. Other than soldering the PCB, I did a few adjustment to the firmware, including: rotary encoder logic improvement - I used interrupt pin logic to read it, they place the rotary encoder at the toppest priority (if theres any changes in pin state, the esp32 instantly ignore everything and focus on the encoder). That’s all for now, stay tuned! its so fun
Spent the last few days implementing gemini api into the code and formatting json data like text, choice into the e paper display :) I’ll take a break from this project as i have joined other competition. so stay tuned!
I worked on the game loop system so the story is infinite. after you selected your choice your response will be sent back to gemini api to generate next story! now its actually infinite loop
Ships:
This is an AI-powered text adventure device using an ESP32, an e-paper display and a rotary encoder. It is powered by Gemini to generate infinite stories and choices. It uses ESP32-C3 microcontroller to connect to WiFi and query the Gemini API. Gemini generates an interactive story segment and choices for the player in JSON format. Then the text is shown on the e-paper display. The user can use the rotary encoder to scroll through the text and select their next action. Each choice is returned to the history buffer on the ESP32 and is sent back to Gemini to generate the next story segment. Personally the most enjoyable part is when the PCB worked after i soldered them, however the coding part is hell cuz i sucks at coding lol. It haven’t got an enclosure yet, i will work on it soon! Now I can play this in my free time!...
|
1793152278.702267
|
1793238678.702267
|
|
33896
|
UNSW Antweight Battle Bot by @Haiiitsme | Stardanc UNSW Antweight Battle Bot by @Haiiitsme | Stardance...
|
Haiiitsme
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T04:59:32Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Competition Day Overview Cat-Aclysm was an amazing bot to fight, and I thoroughly enjoyed the build process, so thank you to everyone for your support, whether you helped me buid it, liked or viewed my devlogs, or just wanted to see some custom RC cars destroy each other. It did not place as well in the competition as I would have liked, but I do have lots of good feedback and stuff to improve. Placement Cat-Aclysm placed 12th out of 18 robots in the plastic ant class, winning 1 battle and losing 3. On the first day, the bot’s weapon unfortunately blew up in every single battle due to a structural issue, which was promptly fixed through lotsa overnight work and no sleep, and then Cataclysm won its first battle on the second day! TIME TO SHIP! The battle bot is finally complete, and I will be shipping the project after this final devlog! Attached below is one of the fights with my bot, as unfortunately the rest of them are too heavy to attach. If you would like them, as well as some much more explosive fights, DM me on slack for the full videos! Enjoy! New Bots Are Coming I will be continuing the hobby of combat robotics, so look out for some of my new robot designs that will be coming soon! A video of my bot fighting is attached on my last video, so if you want to check that out, go to my profile or click on the project! Thank you!", "repo": "https://github.com/CoolMetalClaws/UNSW-Ant-Weight-Battle-Bot", "demo": ""}]...
|
[{"post_id": 74304, "ts": "202 [{"post_id": 74304, "ts": "2026-09-27T04:55:30Z", "hours": 0.3339, "text": "Competition Day Overview Cat-Aclysm was an amazing bot to fight, and I thoroughly enjoyed the build process, so thank you to everyone for your support, whether you helped me buid it, liked or viewed my devlogs, or just wanted to see some custom RC cars destroy each other. It did not place as well in the competition as I would have liked, but I do have lots of good feedback and stuff to improve. Placement Cat-Aclysm placed 12th out of 18 robots in the plastic ant class, winning 1 battle and losing 3. On the first day, the bot’s weapon unfortunately blew up in every single battle due to a structural issue, which was promptly fixed through lotsa overnight work and no sleep, and then Cataclysm won its first battle on the second day! TIME TO SHIP! The battle bot is finally complete, and I will be shipping the project after this final devlog! Attached below is one of the fights with my bot, as unfortunately the rest of them are too heavy to attach. If you would like them, as well as some much more explosive fights, DM me on slack for the full videos! Enjoy! New Bots Are Coming I will be continuing the hobby of combat robotics, so look out for some of my new robot designs that will be coming soon!"}, {"post_id": 69579, "ts": "2026-09-17T10:52:00Z", "hours": 3.7086, "text": "Most likely final Log Thank you! Firstly, before i keep going on about what i did to finalise my bot, i want to thank everyone who followed along for the journey, liked my devlogs, gave me a comment, or took the time to read the nonsnse i type. Thanks for all of the support and im so excited for this bot to fight this weekend! I will upload videos for anyone whos interested! Wheels dont FITT! The wheels that i purchased unfortunately did not fit on the motor, so i had to design my own, with rubber grips. It was a pretty quick process, and i got the sizes perfect first try, and solved that problem pretty quick! Battery doesn’t FITT! Unfortunately for me, i forgot to account for the space the wiring would require, so there wasn’t enough space left for the battery to fit. To accomodate for this, i did a pretty makeshift solution, and slightly raised the section above the battery to allow it to fit! SLIGHT miscalculations I have suprisingly made a mistake when calculating the weight, as the bot is severely underweight, weighing in at 130.98g! This is nothing to worry about, the weight is well below the 150g limit, and provides me with a bit of buffer in case something happens. Soldering I soldered together all the components of the bot at UNSW, and unfortunately did not lapse my lead fume filled hours spent attaching wires to more wires. I suprisingly got the circuit right the first time, and it funtions perfectly! Thank you again! Thanks for reading this log if you made it this far, and hope you will be supporting my bot for this competetion! Ty! An image of the bot is attached below!"}, {"post_id": 64652, "ts": "2026-09-09T06:51:51Z", "hours": 3.9603, "text": "Final Tweaks Maths is over! My maths test is finally done, so now i have some extra time to work on this! Sorry i havent posted a devlog in a while. 4hrs of tweaks Im logging 4hrs of tweaking the design, making tiny changes to make it ready for printing with ABS! Some of the things i changed were; Different type of N20 motor mounts Added weapon motor mounts Made the weapon struts removable and replaceable Added routing for the weapon motor’s wires Added screw holes DECIDED UPON A NAME!!! This bot is officially registered into the competetion in 2 weeks as… drumroll…..Cat Aclysm! This name was chosen since the bot looks kinda like a cat from the top profile. Soldering I began to solder together the parts of the bot, involving very intricate wire splicing because i thought it would be fun to add 2 LEDs instead of the required 1. :/ Thats It! Thats it for this devlog! Thank you for reading if you made it this far!"}, {"post_id": 57220, "ts": "2026-08-29T10:07:17Z", "hours": 2.6781, "text": "Partss! Funding Approved Thank you soo much @RR for approving funding for my project! Sorry I haven’t posted a devlog in a while, I was ordering parts and doing the final tweaks to the design. All the parts have been ordered, and I’m currently waiting for delivery. Lower Chassis I lowered the chassis by making the wheels closer to the floor, and sloped the front armour to restrict my bot from getting picked up from the front or outmanoeuvred. This also allows my bot to scoop up other bots and guide them into my weapon blade. Mouting the BE1806 motor I split the chassis struts into seperate parts so they can be printed flat, which makes them stronger vertically. Then I added mounting holes for M2 screws, which directly screw into the motor. Then a channel was extruded to route the motor wires back through the chassis and to the ESC and the Malenki. Break This project will be taking a back seat for the next week as I wait for parts to deliver and due to upcoming exams! I’ll finish the build pretty soon after though, as the event I’m competing in is on 20th September! Controller I also purchased the controller for the bot, and will need to set it up myself soon! It is a Jumper T16 with replaced ribbons. An annoying thing is that i have to charge the batteries using a specific LiPo charger that I don’t have, so I’ll need to get that. Thank you! Thanks for reading this devlog if u made it this far! Hope you’re as excited for this bot as I am! P.S: I still need a name, so please suggest me some names in the comments below! Thank you!"}, {"post_id": 49476, "ts": "2026-08-18T10:38:35Z", "hours": 0.3056, "text": "Test Rig CAD I quickly CADed up a test rig adaptor for the weapon, to allow me to test the weapon’s centre of gravity and damage using a small 3V motor i had lying around while i wait for the approval of funding so i can buy the brushless motor it was designed for. The 3V motor only reaches around 8000 RPM, which is much lower than the 20,000 RPM the BLDC can provide. Making the Rig I 3D printed the adaptor with some PLA, and assembled the rig with a stable base. I used the motor mount that came with the 3V motor to secure it to a wooden block (and yes, your eyes do not deceive you, it’s a massive domino peice), so it doesn’t move around while testing. An Image of the rig is attached below. Now we wait… I have everything ready to test, now i just need to wait for my funding to be approved so i can purchase the required fillament for the Robot! As soon as i get the fillament and print the part, i will be releasing a devlog showing the testing of the weapon on the rig!!! Thank you for reading this far lol! I hope i get the funding soon so i can begin building!"}, {"post_id": 48621, "ts": "2026-08-17T02:48:19Z", "hours": 0.7328, "text": "Problems have arisen Switch Cover design While I was waiting for the project to get approved for funding, I decided to add a small cover for the screw switch, and generally touch up the design. I countersunk the screw holes for M3 screws I bought (hopefully I can get re-imbursed for these as well) and designed 2 types of covers for the screw switch on the robot that turns it on. The two designs are attached in the image below, so please tell me which one I should keep on the bot! (Spikes or the flat, boring, plain cover) Weight Issues My bot is slightly overweight, around 5 grams over, and I need to drop dead weight, especially from the chassis. I tried hollowing out the front prongs, but this actually increased the weight as it added more walls, meaning a denser design. I then adjusted some slicer settings and thinned the walls of my bot, which got the weight back under the limit. Unfortunately, I would prefer to have some margin as I still need to add hot glue to stick in the motors and the PCB, and my bot is currently 149.8 grams (the limit is 150g). To solve this issue, I plan to make the blade thinner, which does mean it will have a lesser reach. If anyone has better suggestions to drop weight, pls let me know in the comments since I really would prefer to keep a wider blade."}, {"post_id": 45612, "ts": "2026-08-12T06:54:18Z", "hours": 0.4417, "text": "Just a lil extra thing i was working on that i wanted to share! Below is the image for my robot team’s (just me so far) logo; Robo Sapiens! Lol I found this so amusing I had to make a devlog about it! P.s if anyone has name suggestions for my bot, pls tell me down in the comments, i currently have no idea what in going to name it"}, {"post_id": 45048, "ts": "2026-08-11T09:18:26Z", "hours": 0.4786, "text": "Chosen Design After careful consideration, I chose the aggressive vertical front spinner as my final design. I have moderate to extensive experience in Onshape, so i used that to begin designing. Before beginning to design, i found STEP files for N20 motors and used the dimensions from my planning stage to place in the electronic components. Then i began with a roughly shaped sketch of the design, which i extruded to the desired length. Then I shelled it out with a 2mm wall to allow space for the electronics. Weapon design My weapon blade design is based off James KIrby’s D.E.S blade. The weapon support struts are extremely thick as many bots have lost their weapons due to broken struts. The weapon uses a BE1806 motor and a 20Ah ESC to drive it. The weapon unfortunately was not big enough to house the motor, so adjustments had to be made to allow a larger weapon. Feedback and Re-iteration An extremely helpful individual from the university provided me extensive feedback upon the design, which significantly improved my design and allowed my robot to remain under the weight category. Thank you! Specific Design modifications through feedback; Changed Malenki nano orientation to vertical just behind weapon Allowed the wheels to protrude slighly from the back so the bot doesnt get stuck on its back Smaller chassis for lesser weight (Removed unecessary space) Added Mounts for screw switch and LED If you made it this far, thank you for reading! If you have any suggestions for my bot, I’m always willing to improve, so please tell me in the comments below. Thanks! Final Design is attached below along with a wiring diagram (It should be unless theres something else to fix) P.s there’s a cover on the bot, i just dont have it visible in the renders"}, {"post_id": 44479, "ts": "2026-08-10T08:21:47Z", "hours": 13.5217, "text": "Sketching Robot Designs and Parts with Dimensions Inspiration I’ve always been intrigued by battle robots, and when I discovered that there is a competition near by that hosts mini battle bots, I was immediately drawn to it. I did lots of research into it and discovered there were many categories and classes. I decided to make a bot for the Antweight plastic class category, and one that would easily be upgraded to the open class category. An example battle bot is shown below (not mine). Overview The Antweight Battle Bot competition is a miniature combat robotics event where custom-built remote-controlled machines face off in a bulletproof, enclosed arena. This weight class serves as the ultimate entry point for engineering hobbyists due to its low cost, minimal space requirements, and strict design constraints. Weapon and drive motor sketches with dimensions I first sketched out the motors and electronic components used for the battle bot at a 1:1 scale with dimensions, to give me a better sense of the sizing of the parts and to start thinking of the arrangements. Bot concept sketches After planning a base robot in my mind, I finalised 3 main robot designs I liked. I sketched these 3 out and asked for input from a few people who have experience in this field, including Angus from makers muse (the YouTuber). I decided upon the vertical spinner design with aggressive front forks. My 3 bot sketches are attached below. Version 1: Viper Version 2: (Unamed) Version 3: Skull Krusher"}]...
|
Title: UNSW Antweight Battle Bot by @Haiiitsme | S Title: UNSW Antweight Battle Bot by @Haiiitsme | Stardance
Devlogs:
Sketching Robot Designs and Parts with Dimensions Inspiration I’ve always been intrigued by battle robots, and when I discovered that there is a competition near by that hosts mini battle bots, I was immediately drawn to it. I did lots of research into it and discovered there were many categories and classes. I decided to make a bot for the Antweight plastic class category, and one that would easily be upgraded to the open class category. An example battle bot is shown below (not mine). Overview The Antweight Battle Bot competition is a miniature combat robotics event where custom-built remote-controlled machines face off in a bulletproof, enclosed arena. This weight class serves as the ultimate entry point for engineering hobbyists due to its low cost, minimal space requirements, and strict design constraints. Weapon and drive motor sketches with dimensions I first sketched out the motors and electronic components used for the battle bot at a 1:1 scale with dimensions, to give me a better sense of the sizing of the parts and to start thinking of the arrangements. Bot concept sketches After planning a base robot in my mind, I finalised 3 main robot designs I liked. I sketched these 3 out and asked for input from a few people who have experience in this field, including Angus from makers muse (the YouTuber). I decided upon the vertical spinner design with aggressive front forks. My 3 bot sketches are attached below. Version 1: Viper Version 2: (Unamed) Version 3: Skull Krusher
Chosen Design After careful consideration, I chose the aggressive vertical front spinner as my final design. I have moderate to extensive experience in Onshape, so i used that to begin designing. Before beginning to design, i found STEP files for N20 motors and used the dimensions from my planning stage to place in the electronic components. Then i began with a roughly shaped sketch of the design, which i extruded to the desired length. Then I shelled it out with a 2mm wall to allow space for the electronics. Weapon design My weapon blade design is based off James KIrby’s D.E.S blade. The weapon support struts are extremely thick as many bots have lost their weapons due to broken struts. The weapon uses a BE1806 motor and a 20Ah ESC to drive it. The weapon unfortunately was not big enough to house the motor, so adjustments had to be made to allow a larger weapon. Feedback and Re-iteration An extremely helpful individual from the university provided me extensive feedback upon the design, which significantly improved my design and allowed my robot to remain under the weight category. Thank you! Specific Design modifications through feedback; Changed Malenki nano orientation to vertical just behind weapon Allowed the wheels to protrude slighly from the back so the bot doesnt get stuck on its back Smaller chassis for lesser weight (Removed unecessary space) Added Mounts for screw switch and LED If you made it this far, thank you for reading! If you have any suggestions for my bot, I’m always willing to improve, so please tell me in the comments below. Thanks! Final Design is attached below along with a wiring diagram (It should be unless theres something else to fix) P.s there’s a cover on the bot, i just dont have it visible in the renders
Just a lil extra thing i was working on that i wanted to share! Below is the image for my robot team’s (just me so far) logo; Robo Sapiens! Lol I found this so amusing I had to make a devlog about it! P.s if anyone has name suggestions for my bot, pls tell me down in the comments, i currently have no idea what in going to name it
Problems have arisen Switch Cover design While I was waiting for the project to get approved for funding, I decided to add a small cover for the screw switch, and generally touch up the design. I countersunk the screw holes for M3 screws I bought (hopefully I can get re-imbursed for these as well) and designed 2 types of covers for the screw switch on the robot that turns it on. The two designs are attached in the image below, so please tell me which one I should keep on the bot! (Spikes or the flat, boring, plain cover) Weight Issues My bot is slightly overweight, around 5 grams over, and I need to drop dead weight, especially from the chassis. I tried hollowing out the front prongs, but this actually increased the weight as it added more walls, meaning a denser design. I then adjusted some slicer settings and thinned the walls of my bot, which got the weight back under the limit. Unfortunately, I would prefer to have some margin as I still need to add hot glue to stick in the motors and the PCB, and my bot is currently 149.8 grams (the limit is 150g). To solve this issue, I plan to make the blade thinner, which does mean it will have a lesser reach. If anyone has better suggestions to drop weight, pls let me know in the comments since I really would prefer to keep a wider blade.
Test Rig CAD I quickly CADed up a test rig adaptor for the weapon, to allow me to test the weapon’s centre of gravity and damage using a small 3V motor i had lying around while i wait for the approval of funding so i can buy the brushless motor it was designed for. The 3V motor only reaches around 8000 RPM, which is much lower than the 20,000 RPM the BLDC can provide. Making the Rig I 3D printed the adaptor with some PLA, and assembled the rig with a stable base. I used the motor mount that came with the 3V motor to secure it to a wooden block (and yes, your eyes do not deceive you, it’s a massive domino peice), so it doesn’t move around while testing. An Image of the rig is attached below. Now we wait… I have everything ready to test, now i just need to wait for my funding to be approved so i can purchase the required fillament for the Robot! As soon as i get the fillament and print the part, i will be releasing a devlog showing the testing of the weapon on the rig!!! Thank you for reading this far lol! I hope i get the funding soon so i can begin building!
Partss! Funding Approved Thank you soo much @RR for approving funding for my project! Sorry I haven’t posted a devlog in a while, I was ordering parts and doing the final tweaks to the design. All the parts have been ordered, and I’m currently waiting for delivery. Lower Chassis I lowered the chassis by making the wheels closer to the floor, and sloped the front armour to restrict my bot from getting picked up from the front or outmanoeuvred. This also allows my bot to scoop up other bots and guide them into my weapon blade. Mouting the BE1806 motor I split the chassis struts into seperate parts so they can be printed flat, which makes them stronger vertically. Then I added mounting holes for M2 screws, which directly screw into the motor. Then a channel was extruded to route the motor wires back through the chassis and to the ESC and the Malenki. Break This project will be taking a back seat for the next week as I wait for parts to deliver and due to upcoming exams! I’ll finish the build pretty soon after though, as the event I’m competing in is on 20th September! Controller I also purchased the controller for the bot, and will need to set it up myself soon! It is a Jumper T16 with replaced ribbons. An annoying thing is that i have to charge the batteries using a specific LiPo charger that I don’t have, so I’ll need to get that. Thank you! Thanks for reading this devlog if u made it this far! Hope you’re as excited for this bot as I am! P.S: I still need a name, so please suggest me some names in the comments below! Thank you!
Final Tweaks Maths is over! My maths test is finally done, so now i have some extra time to work on this! Sorry i havent posted a devlog in a while. 4hrs of tweaks Im logging 4hrs of tweaking the design, making tiny changes to make it ready for printing with ABS! Some of the things i changed were; Different type of N20 motor mounts Added weapon motor mounts Made the weapon struts removable and replaceable Added routing for the weapon motor’s wires Added screw holes DECIDED UPON A NAME!!! This bot is officially registered into the competetion in 2 weeks as… drumroll…..Cat Aclysm! This name was chosen since the bot looks kinda like a cat from the top profile. Soldering I began to solder together the parts of the bot, involving very intricate wire splicing because i thought it would be fun to add 2 LEDs instead of the required 1. :/ Thats It! Thats it for this devlog! Thank you for reading if you made it this far!
Most likely final Log Thank you! Firstly, before i keep going on about what i did to finalise my bot, i want to thank everyone who followed along for the journey, liked my devlogs, gave me a comment, or took the time to read the nonsnse i type. Thanks for all of the support and im so excited for this bot to fight this weekend! I will upload videos for anyone whos interested! Wheels dont FITT! The wheels that i purchased unfortunately did not fit on the motor, so i had to design my own, with rubber grips. It was a pretty quick process, and i got the sizes perfect first try, and solved that problem pretty quick! Battery doesn’t FITT! Unfortunately for me, i forgot to account for the space the wiring would require, so there wasn’t enough space left for the battery to fit. To accomodate for this, i did a pretty makeshift solution, and slightly raised the section above the battery to allow it to fit! SLIGHT miscalculations I have suprisingly made a mistake when calculating the weight, as the bot is severely underweight, weighing in at 130.98g! This is nothing to worry about, the weight is well below the 150g limit, and provides me with a bit of buffer in case something happens. Soldering I soldered together all the components of the bot at UNSW, and unfortunately did not lapse my lead fume filled hours spent attaching wires to more wires. I suprisingly got the circuit right the first time, and it funtions perfectly! Thank you again! Thanks for reading this log if you made it this far, and hope you will be supporting my bot for this competetion! Ty! An image of the bot is attached below!
Competition Day Overview Cat-Aclysm was an amazing bot to fight, and I thoroughly enjoyed the build process, so thank you to everyone for your support, whether you helped me buid it, liked or viewed my devlogs, or just wanted to see some custom RC cars destroy each other. It did not place as well in the competition as I would have liked, but I do have lots of good feedback and stuff to improve. Placement Cat-Aclysm placed 12th out of 18 robots in the plastic ant class, winning 1 battle and losing 3. On the first day, the bot’s weapon unfortunately blew up in every single battle due to a structural issue, which was promptly fixed through lotsa overnight work and no sleep, and then Cataclysm won its first battle on the second day! TIME TO SHIP! The battle bot is finally complete, and I will be shipping the project after this final devlog! Attached below is one of the fights with my bot, as unfortunately the rest of them are too heavy to attach. If you would like them, as well as some much more explosive fights, DM me on slack for the full videos! Enjoy! New Bots Are Coming I will be continuing the hobby of combat robotics, so look out for some of my new robot designs that will be coming soon!
Ships:
Competition Day Overview Cat-Aclysm was an amazing bot to fight, and I thoroughly enjoyed the build process, so thank you to everyone for your support, whether you helped me buid it, liked or viewed my devlogs, or just wanted to see some custom RC cars destroy each other. It did not place as well in the competition as I would have liked, but I do have lots of good feedback and stuff to improve. Placement Cat-Aclysm placed 12th out of 18 robots in the plastic ant class, winning 1 battle and losing 3. On the first day, the bot’s weapon unfortunately blew up in every single battle due to a structural issue, which was promptly fixed through lotsa overnight work and no sleep, and then Cataclysm won its first battle on the second day! TIME TO SHIP! The battle bot is finally complete, and I will be shipping the project after this final devlog! Attached below is one of the fights with my bot, as unfortunately the rest of them are too heavy to attach. If you would like them, as well as some much more explosive fights, DM me on slack for the full videos! Enjoy! New Bots Are Coming I will be continuing the hobby of combat robotics, so look out for some of my new robot designs that will be coming soon! A video of my bot fighting is attached on my last video, so if you want to check that out, go to my profile or click on the project! Thank you!...
|
1793155718.5787492
|
1793242118.5787492
|
|
58819
|
Tab Rot VS Code by @madushankarajapaksha999 | Star Tab Rot VS Code by @madushankarajapaksha999 | Stardance...
|
madushankarajapaksha999
|
1
|
15.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T05:23:53Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Tab Rot, a VS Code extension that makes your files visually decay if you ignore them. The most annoying part was mocking the VS Code API to write unit tests, plus fixing a random Node js crash when I tried to publish. Im super proud of the actual visual rot effect and that the state save even if you restart VS Code. If you wanna test it, just drop the decay timer in the setting to like 1 minute, otherwise you’ll be waiting an hour to see it work.", "repo": "https://github.com/MadushankaRajapaksha/Tab-Rot-VS-Code", "demo": "https://github.com/MadushankaRajapaksha/Tab-Rot-VS-Code/releases/tag/v1.0.1"}]...
|
[{"post_id": 74312, "ts": "202 [{"post_id": 74312, "ts": "2026-09-27T05:12:52Z", "hours": 1.1833, "text": "deployed manually with vsce publish instead. Wrote a full README with install guide, all settings, presets, and troubleshooting. Extension is live on the Repo Releases.."}, {"post_id": 73902, "ts": "2026-09-26T09:16:51Z", "hours": 0.7158, "text": "Fixedd command registration, compilation paths, settings panel display, and database state persistence acrosssrc/extension.ts`, src/settingsPanel.ts, and src/tabTracker.ts"}, {"post_id": 73863, "ts": "2026-09-26T06:49:16Z", "hours": 2.0989, "text": "I built a proper settings webview panel for Tab Rot because asking users to edit raw JSON for threhold values felt hostile. Made a settingsPanel.ts that opens a dedicated webview tab with a clean form — three number inputs for the decay thresholds (stage 1, 2, 3 in minute), three toggle switches for decorations, status bar, and notifications. The whole thing uses VS Code’s CSS variables so it automatically matches the user’s theme — dark mode, light mode, high contrast, whatever. It looks native.The panel is a singleton — if you already have it open, running the command again just focuses the existing panel instead of spawning duplicates. The HTML is inline because it’s small enough that a separate file feels like overkill, but it’s structured with proper labels, hints explaining what each value means, and a little visual preview of the three decay stages as colored badges. The toggles are custom CSS switches that feels nicer than raw checkboxes."}, {"post_id": 73539, "ts": "2026-09-25T10:57:58Z", "hours": 1.6992, "text": "Testing today I finally sat down to write unit tests for tabTracker.ts. I’ve been putting this off becaus, honestly, testing feels like homework when you just want to see the thing work. But I knew if I didn’t write tests now, Id never catch the bug s hiding in the decay logic."}, {"post_id": 72968, "ts": "2026-09-24T04:05:08Z", "hours": 2.2619, "text": "built the sidebar tree view for Tab Rot. Made a decayView.ts with a DecayTreeProvider that implements VS Code s TreeDataProvider interface. It pulls all decayed tabs from the tracker, sorts them by stage with the worst rot first, and renders each one as a DecayItem with the filename as the label, a stage emoji + name as the description (like “🍂 Faded” or “💀 Cracked”), and a tooltip showing how long it’s been since the file was last visited. Each item gets a stage-specific SVG icon and clicking it’s opens the file in the editor.I also created four littl SVG leaf icons in resources/icons/ — a green one for fresh tabs, orange-yellow for faded, brown with dots for grainy, and a dark cracked one for stage 3. They’re just simple leaf shapes but the color coding makes the sidebar immediately scannable.Wired the tree provider into extension.ts and registered it under the view ID tabRot.decayedTabs in package.json. The view lives in the Explorer sidebar and only shows up when there are actually decayed tabs, thanks to a context key tabRot.hasDecayedTabs that I set on every refresh. So if all your tabs are fresh, the sidebar section disappears completely instead of sitting there empty and sad.Added a tabRot.openDecayedTab command that the tree items use to open files when clicked. Since opening the file triggers onDidChangeActiveTextEditor, the tab gets touched and restored automatically, complete with the green flash animation from Phase 5. So the flow is: see rotting tab in sidebar → click it → file opens → green flash → tab is fresh again. Very satisfying.I also updated all the refresh calls so the sidebar stays in sync — it refreshes after every tab touch, close, restore command, and interval tick. And the showDecayedTabs command from Phase 4 now actually works because the view is registered, so that unhandled rejection error is gone."}, {"post_id": 69019, "ts": "2026-09-16T07:07:50Z", "hours": 0.6325, "text": "I builts the restoration flash animation today because instantly snapping from cracked stage-3 to pristine stage-0 felt robotic. I wanted a little “healing” moment — like the file is literally coming back to life. Added a flashRestore() method to tabDecorator.ts that chains two temporary decoration flashes: a bright green pulse at 0ms, a softer second pulse at 300ms, then clear at 600ms. The tab breathes green for a second and then settles into its clean state. I also added a “✨ Tab restored!” info message because I’m a sucker for positive feedback.I wired the flash into two places: when you actively switch to a decayed tab (it detects the old stage was > 0, touches it, then flashes), and when you run the restoreTab comand manually. So whether you click into a rotting file or hit the command palette, you get the dopamine hit.I also added an optional decay notification system. Every 60 seconds during the interval tick, it checks if any tab crossed into a higher decay stage. If tabRot.showNotifications is enabled, it pops a toast like “📉 utils.ts reached stage 2 (unvisited for 1440 minutes)”. I defaulted it to false because getting spammed every minute that your tabs are dying would make people uninstall immediatey. But for accountability masochists, its there."}, {"post_id": 68591, "ts": "2026-09-15T11:16:32Z", "hours": 1.4983, "text": "I built the status bar and command layer for Tab Rot. Made a statusBar.ts that creates a StatusBarItem shoved over to the right side of the bar at priority 100. It shows a little 🍂 leaf emoji followed by how many tabs are rotting — like “🍂 3 rotting” — but only when there’s actually something decaying. When the count hits zero it hides itself completely so it’s not sitting there being useless and cluttering the bar. Clicking it is supposed to focus the sidebar view later, but since I haven’t built the sidebar yet, it’s basically a button that promises something it can’t deliver. I also gated it behind the tabRot.enableStatusBar config so people can kill it if they want.Registered three commands in package.json — tabRot.restoreTab to freshen up whatever file I’m currently staring at, tabRot.restoreAllTabs to reset every tracked tab back to stage 0, and tabRot.showDecayedTabs which is supposed to focus the sidebar. I wired all the handlers in extension.ts. restoreTab grabs the active editor URI, calls tracker.restoreTab(), then immediately refreshes the decorations and status bar so the rot vanishes right away. restoreAllTabs does the same thing but for everything and pops up a little info message saying “✨ All tabs restored!” because I wanted it to feel satisfying. showDecayedTabs tries to execute tabRot.decayedTabs.focus which is a VS Code auto-generated command for tree views.I also added a context menu to contributes.menus.editor/title/context so when you right-click in the editor area you get “Restore Tab” and “Restore All Tabs” right there without having to open the Command Palette. I grouped them under 9_tabRot so they sit in their own little section instead of getting drowned in the giant VS Code right-click menu."}, {"post_id": 65256, "ts": "2026-09-10T08:09:52Z", "hours": 1.3453, "text": "Implimented Visual Decay Decorations I built the entire visual decay layer for Tab Rot over the past two days. Created tabDecorator.ts with three TextEditorDecorationTyp instances one for each decay stage. Stage 1 is a slight washout with opacity: 0.75 and a warm background tint. Stage 2 gets heavier with opacity: 0.55, a dashed brown border, and a darker background. Stage 3 is the nasty one — opacity: 0.4, solid border, wavy strikethrough, and a dark background that makes the code genuinely look abandoned. The updateDecorations() method loops through all visibleTextEditors, grabs the decay stage from the tracker, clears any previous decorations (super important so they dont stack), and applies a full-document Range if the stage is above zero. I register all decoration types in context.subscriptions so VS Code cleans them up on deactivate. I also registered custom theme colors in package.json under contributes.colors — background tints and overview ruler colors for all three stages, with separate defaults for dark, light, and high-contrast themes. Then I swapped out all the hardcoded rgba() values in the decorator for new vscode.ThemeColor(…) so user can customize the palette in their settings.json if they want. Wired everything into extension.ts — updateDecorations() gets called after activation, after every onDidChangeActiveTextEditor (so visiting a tab instantly removes the rot), after onDidCloseTextDocument (cleanup), inside the 60-second interval (so decay progresses live), and on onDidChangeVisibleTextEditors (for split views)."}, {"post_id": 64655, "ts": "2026-09-09T07:04:21Z", "hours": 0.8492, "text": "Wiring the Engine + Config Schema I wired up the TabTracker into the actual extension entry point today. Made an extension.ts that instantiates the trackr when VS Code activates the extension, then immediately scans all already-open text documents and registers them with touchTab() so nothing gets lost if the user already has files open. I hooked into onDidChangeActiveTextEditr to call touchTab() every time the user switches tabs, and onDidCloseTextDocument to remove tabs when files close. I also set up a setInterval that fires every 60 second to call updateAllStages() so the decay actually progresses in real time without waiting for someone to interact.I also completely redid the configuration schem in package.json. Instead of the array-based thresholds I had before, I switched to individual keys : tabRot.stage1Threshold, stage2Threshold, and stage3Threshold with defaults of 60, 1440, and 10080 minutes respectively. That maps to 1 hour, 1 day, and 1 week which feels way more intuitive than the old array. I also added two boolean flags — enableDecorations and enableStatusBar — so users can toggle the UI features later without digging through code.I updated tabTracker.ts to read from the individual config key instead of the array, and kept the hot-reload listener so if someone edits their settings the thresholds update live. I peppered console.log everywhere for debugging — activation messages, tab touch events, removals, and a periodic log of how many decayed tabs exist."}, {"post_id": 63613, "ts": "2026-09-07T15:18:58Z", "hours": 1.4383, "text": "Core State Engine — tabTracker.ts I finally started the actual VS Code extension part of Tab Rot after planning everything out. Today’s goal was just the core state engine — basically tracking when each file was last visited and making sure it survives if you close and reopen VS Code. I made a tabTracker.ts file that has a TabState interface and a TabTracker class. The interface is super strict with the decay stages locked to 0 | 1 | 2 | 3 which felt like good TypeScript practice but also kind of a pain later.The tracker uses a Map to hold everything in memory, but it loads from and saves to context.workspaceState so the data persists across restarts. I added all the main methods — touchTab() to mark something as visited right now, removeTab() when a file closes, getDecayStage() to figure out how rotten a tab is based on the time thresholds, and getDecayedTabs() to spit out everything that’s stage 1 or higher sorted by how dead it is. I also threw in restoreTab() and restoreAllTabs() for when you want to pretend you never abandoned that file.I set it up to read the decay thresholds from VS Code settings (tabRot.decayThresholds) and even made it hot-reload when you change the config without restarting the whole editor. Oh and I added a debounced save because I realized it would be stupid to write to disk every single time you switch tab"}, {"post_id": 63394, "ts": "2026-09-07T06:24:47Z", "hours": 0.5092, "text": "Planned the Tab Root Project Today, I planned the development roadmap for my Tab Root VS Code extension. After finishing the initial project setup, I broke the project into smaller tasks and subtasks so I can develop the extenssion step by step.I created a task list covering the main parts of the project, including tab tracking, the decay system, tab activity detection, visual tab changes, restore functionality, user configuration, testing, documentation, and the final release.Breaking the project into small tasks should make it easier to track my progress and understand what I need to work on next. I also organized the tasks into diffarent phase so I can focus on building the core functionality before moving on to the UI and release."}, {"post_id": 62927, "ts": "2026-09-06T13:53:50Z", "hours": 0.7317, "text": "Implemented Project Structure What I worked on:Today, I started working on my first VS Code extension, called Tab Root. I initialized the project and set up Git for version control. I also created the basic file and folder structure for the extension and configured the project to use TypeScript.After setting everything up, I created my first working VS Code extension. I added a basic VS Code command and tested it successfully inside VS Code. This was my first time creating and running an extension, so getting the basic setup working was an important first step for the project."}]...
|
Title: Tab Rot VS Code by @madushankarajapaksha999 Title: Tab Rot VS Code by @madushankarajapaksha999 | Stardance
Devlogs:
Implemented Project Structure What I worked on:Today, I started working on my first VS Code extension, called Tab Root. I initialized the project and set up Git for version control. I also created the basic file and folder structure for the extension and configured the project to use TypeScript.After setting everything up, I created my first working VS Code extension. I added a basic VS Code command and tested it successfully inside VS Code. This was my first time creating and running an extension, so getting the basic setup working was an important first step for the project.
Planned the Tab Root Project Today, I planned the development roadmap for my Tab Root VS Code extension. After finishing the initial project setup, I broke the project into smaller tasks and subtasks so I can develop the extenssion step by step.I created a task list covering the main parts of the project, including tab tracking, the decay system, tab activity detection, visual tab changes, restore functionality, user configuration, testing, documentation, and the final release.Breaking the project into small tasks should make it easier to track my progress and understand what I need to work on next. I also organized the tasks into diffarent phase so I can focus on building the core functionality before moving on to the UI and release.
Core State Engine — tabTracker.ts I finally started the actual VS Code extension part of Tab Rot after planning everything out. Today’s goal was just the core state engine — basically tracking when each file was last visited and making sure it survives if you close and reopen VS Code. I made a tabTracker.ts file that has a TabState interface and a TabTracker class. The interface is super strict with the decay stages locked to 0 | 1 | 2 | 3 which felt like good TypeScript practice but also kind of a pain later.The tracker uses a Map to hold everything in memory, but it loads from and saves to context.workspaceState so the data persists across restarts. I added all the main methods — touchTab() to mark something as visited right now, removeTab() when a file closes, getDecayStage() to figure out how rotten a tab is based on the time thresholds, and getDecayedTabs() to spit out everything that’s stage 1 or higher sorted by how dead it is. I also threw in restoreTab() and restoreAllTabs() for when you want to pretend you never abandoned that file.I set it up to read the decay thresholds from VS Code settings (tabRot.decayThresholds) and even made it hot-reload when you change the config without restarting the whole editor. Oh and I added a debounced save because I realized it would be stupid to write to disk every single time you switch tab
Wiring the Engine + Config Schema I wired up the TabTracker into the actual extension entry point today. Made an extension.ts that instantiates the trackr when VS Code activates the extension, then immediately scans all already-open text documents and registers them with touchTab() so nothing gets lost if the user already has files open. I hooked into onDidChangeActiveTextEditr to call touchTab() every time the user switches tabs, and onDidCloseTextDocument to remove tabs when files close. I also set up a setInterval that fires every 60 second to call updateAllStages() so the decay actually progresses in real time without waiting for someone to interact.I also completely redid the configuration schem in package.json. Instead of the array-based thresholds I had before, I switched to individual keys : tabRot.stage1Threshold, stage2Threshold, and stage3Threshold with defaults of 60, 1440, and 10080 minutes respectively. That maps to 1 hour, 1 day, and 1 week which feels way more intuitive than the old array. I also added two boolean flags — enableDecorations and enableStatusBar — so users can toggle the UI features later without digging through code.I updated tabTracker.ts to read from the individual config key instead of the array, and kept the hot-reload listener so if someone edits their settings the thresholds update live. I peppered console.log everywhere for debugging — activation messages, tab touch events, removals, and a periodic log of how many decayed tabs exist.
Implimented Visual Decay Decorations I built the entire visual decay layer for Tab Rot over the past two days. Created tabDecorator.ts with three TextEditorDecorationTyp instances one for each decay stage. Stage 1 is a slight washout with opacity: 0.75 and a warm background tint. Stage 2 gets heavier with opacity: 0.55, a dashed brown border, and a darker background. Stage 3 is the nasty one — opacity: 0.4, solid border, wavy strikethrough, and a dark background that makes the code genuinely look abandoned. The updateDecorations() method loops through all visibleTextEditors, grabs the decay stage from the tracker, clears any previous decorations (super important so they dont stack), and applies a full-document Range if the stage is above zero. I register all decoration types in context.subscriptions so VS Code cleans them up on deactivate. I also registered custom theme colors in package.json under contributes.colors — background tints and overview ruler colors for all three stages, with separate defaults for dark, light, and high-contrast themes. Then I swapped out all the hardcoded rgba() values in the decorator for new vscode.ThemeColor(…) so user can customize the palette in their settings.json if they want. Wired everything into extension.ts — updateDecorations() gets called after activation, after every onDidChangeActiveTextEditor (so visiting a tab instantly removes the rot), after onDidCloseTextDocument (cleanup), inside the 60-second interval (so decay progresses live), and on onDidChangeVisibleTextEditors (for split views).
I built the status bar and command layer for Tab Rot. Made a statusBar.ts that creates a StatusBarItem shoved over to the right side of the bar at priority 100. It shows a little 🍂 leaf emoji followed by how many tabs are rotting — like “🍂 3 rotting” — but only when there’s actually something decaying. When the count hits zero it hides itself completely so it’s not sitting there being useless and cluttering the bar. Clicking it is supposed to focus the sidebar view later, but since I haven’t built the sidebar yet, it’s basically a button that promises something it can’t deliver. I also gated it behind the tabRot.enableStatusBar config so people can kill it if they want.Registered three commands in package.json — tabRot.restoreTab to freshen up whatever file I’m currently staring at, tabRot.restoreAllTabs to reset every tracked tab back to stage 0, and tabRot.showDecayedTabs which is supposed to focus the sidebar. I wired all the handlers in extension.ts. restoreTab grabs the active editor URI, calls tracker.restoreTab(), then immediately refreshes the decorations and status bar so the rot vanishes right away. restoreAllTabs does the same thing but for everything and pops up a little info message saying “✨ All tabs restored!” because I wanted it to feel satisfying. showDecayedTabs tries to execute tabRot.decayedTabs.focus which is a VS Code auto-generated command for tree views.I also added a context menu to contributes.menus.editor/title/context so when you right-click in the editor area you get “Restore Tab” and “Restore All Tabs” right there without having to open the Command Palette. I grouped them under 9_tabRot so they sit in their own little section instead of getting drowned in the giant VS Code right-click menu.
I builts the restoration flash animation today because instantly snapping from cracked stage-3 to pristine stage-0 felt robotic. I wanted a little “healing” moment — like the file is literally coming back to life. Added a flashRestore() method to tabDecorator.ts that chains two temporary decoration flashes: a bright green pulse at 0ms, a softer second pulse at 300ms, then clear at 600ms. The tab breathes green for a second and then settles into its clean state. I also added a “✨ Tab restored!” info message because I’m a sucker for positive feedback.I wired the flash into two places: when you actively switch to a decayed tab (it detects the old stage was > 0, touches it, then flashes), and when you run the restoreTab comand manually. So whether you click into a rotting file or hit the command palette, you get the dopamine hit.I also added an optional decay notification system. Every 60 seconds during the interval tick, it checks if any tab crossed into a higher decay stage. If tabRot.showNotifications is enabled, it pops a toast like “📉 utils.ts reached stage 2 (unvisited for 1440 minutes)”. I defaulted it to false because getting spammed every minute that your tabs are dying would make people uninstall immediatey. But for accountability masochists, its there.
built the sidebar tree view for Tab Rot. Made a decayView.ts with a DecayTreeProvider that implements VS Code s TreeDataProvider interface. It pulls all decayed tabs from the tracker, sorts them by stage with the worst rot first, and renders each one as a DecayItem with the filename as the label, a stage emoji + name as the description (like “🍂 Faded” or “💀 Cracked”), and a tooltip showing how long it’s been since the file was last visited. Each item gets a stage-specific SVG icon and clicking it’s opens the file in the editor.I also created four littl SVG leaf icons in resources/icons/ — a green one for fresh tabs, orange-yellow for faded, brown with dots for grainy, and a dark cracked one for stage 3. They’re just simple leaf shapes but the color coding makes the sidebar immediately scannable.Wired the tree provider into extension.ts and registered it under the view ID tabRot.decayedTabs in package.json. The view lives in the Explorer sidebar and only shows up when there are actually decayed tabs, thanks to a context key tabRot.hasDecayedTabs that I set on every refresh. So if all your tabs are fresh, the sidebar section disappears completely instead of sitting there empty and sad.Added a tabRot.openDecayedTab command that the tree items use to open files when clicked. Since opening the file triggers onDidChangeActiveTextEditor, the tab gets touched and restored automatically, complete with the green flash animation from Phase 5. So the flow is: see rotting tab in sidebar → click it → file opens → green flash → tab is fresh again. Very satisfying.I also updated all the refresh calls so the sidebar stays in sync — it refreshes after every tab touch, close, restore command, and interval tick. And the showDecayedTabs command from Phase 4 now actually works because the view is registered, so that unhandled rejection error is gone.
Testing today I finally sat down to write unit tests for tabTracker.ts. I’ve been putting this off becaus, honestly, testing feels like homework when you just want to see the thing work. But I knew if I didn’t write tests now, Id never catch the bug s hiding in the decay logic.
I built a proper settings webview panel for Tab Rot because asking users to edit raw JSON for threhold values felt hostile. Made a settingsPanel.ts that opens a dedicated webview tab with a clean form — three number inputs for the decay thresholds (stage 1, 2, 3 in minute), three toggle switches for decorations, status bar, and notifications. The whole thing uses VS Code’s CSS variables so it automatically matches the user’s theme — dark mode, light mode, high contrast, whatever. It looks native.The panel is a singleton — if you already have it open, running the command again just focuses the existing panel instead of spawning duplicates. The HTML is inline because it’s small enough that a separate file feels like overkill, but it’s structured with proper labels, hints explaining what each value means, and a little visual preview of the three decay stages as colored badges. The toggles are custom CSS switches that feels nicer than raw checkboxes.
Fixedd command registration, compilation paths, settings panel display, and database state persistence acrosssrc/extension.ts`, src/settingsPanel.ts, and src/tabTracker.ts
deployed manually with vsce publish instead. Wrote a full README with install guide, all settings, presets, and troubleshooting. Extension is live on the Repo Releases..
Ships:
I built Tab Rot, a VS Code extension that makes your files visually decay if you ignore them. The most annoying part was mocking the VS Code API to write unit tests, plus fixing a random Node js crash when I tried to publish. Im super proud of the actual visual rot effect and that the state save even if you restart VS Code. If you wanna test it, just drop the decay timer in the setting to like 1 minute, otherwise you’ll be waiting an hour to see it work....
|
1793152512.4805284
|
1793238912.4805284
|
|
66164
|
animeos by @shauz | Stardance
|
shauz
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T05:35:49Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "So, here i have finnaly completed the anime webOS which is obviously a web os but anime themed, i made ive added wallpaper, added apps such as paint, notepad, watch list and a really cool chakra animation app. ive made a taskbar with real time clock and a start menu with the ability to pin apps to taskbar(just click it in the start menu) ive used some japanese to for the icons and the taskbar since this was anime themed and it looks cool so thats about it. css was bit challenging so ive used some ai help for css part and debugging. Thanks", "repo": "https://github.com/wowaidummy/animeos", "demo": "https://animeos-rust.vercel.app/"}]...
|
[{"post_id": 74313, "ts": "202 [{"post_id": 74313, "ts": "2026-09-27T05:15:22Z", "hours": 0.4189, "text": "so i revamped the css, ive added more apps, paint, notepad, watch history, a cool chakra app (it doesnt have a big funtion but has a cool animation) ive also implemented taskbar, clock , start menue and pin to taskbar feature. since the app is anime theme i decided to use my japanese skills and made the logos in japanese i think this is cool and complete"}, {"post_id": 74283, "ts": "2026-09-27T03:49:29Z", "hours": 0.3342, "text": "so i succesfully made this completly anime themes i hope you like it"}, {"post_id": 74268, "ts": "2026-09-27T03:15:49Z", "hours": 0.2803, "text": "so i have started this anime os project today and created a basic os now were gonna add elements to it PS: (i realised in the editor i was making it didnt have hackatime linked :( so only 16 mins it says)"}]...
|
Title: animeos by @shauz | Stardance
Devlogs:
so Title: animeos by @shauz | Stardance
Devlogs:
so i have started this anime os project today and created a basic os now were gonna add elements to it PS: (i realised in the editor i was making it didnt have hackatime linked :( so only 16 mins it says)
so i succesfully made this completly anime themes i hope you like it
so i revamped the css, ive added more apps, paint, notepad, watch history, a cool chakra app (it doesnt have a big funtion but has a cool animation) ive also implemented taskbar, clock , start menue and pin to taskbar feature. since the app is anime theme i decided to use my japanese skills and made the logos in japanese i think this is cool and complete
Ships:
So, here i have finnaly completed the anime webOS which is obviously a web os but anime themed, i made ive added wallpaper, added apps such as paint, notepad, watch list and a really cool chakra animation app. ive made a taskbar with real time clock and a start menu with the ability to pin apps to taskbar(just click it in the start menu) ive used some japanese to for the icons and the taskbar since this was anime themed and it looks cool so thats about it. css was bit challenging so ive used some ai help for css part and debugging. Thanks...
|
1793216911.2957158
|
1793303311.2957158
|
|
65379
|
Voxel Four by @o5oul | Stardance
|
o5oul
|
0
|
3.95
|
0
|
[]
|
[{"post_id": 74314, "ts": "202 [{"post_id": 74314, "ts": "2026-09-27T05:17:50Z", "hours": 0.4489, "text": "Finished the project, edited the case slightly and finished off with writing some simple code."}, {"post_id": 73598, "ts": "2026-09-25T13:22:25Z", "hours": 1.9589, "text": "Worked and improved on the case design. Standoffs were annoying to work with, but I was able to resolve the issues with tolerances eventually by finding workarounds and editing the KiCad PCB."}, {"post_id": 73512, "ts": "2026-09-25T08:44:07Z", "hours": 1.5378, "text": "Voxel FOUR KiCad schematic"}]...
|
Title: Voxel Four by @o5oul | Stardance
Devlogs:
Title: Voxel Four by @o5oul | Stardance
Devlogs:
Voxel FOUR KiCad schematic
Worked and improved on the case design. Standoffs were annoying to work with, but I was able to resolve the issues with tolerances eventually by finding workarounds and editing the KiCad PCB.
Finished the project, edited the case slightly and finished off with writing some simple code....
|
1793087355.3064601
|
1793692155.3064601
|
|
65621
|
nova by @thejasvik2 | Stardance
|
thejasvik2
|
0
|
1.46
|
0
|
[]
|
[{"post_id": 74332, "ts": "202 [{"post_id": 74332, "ts": "2026-09-27T05:49:41Z", "hours": 1.4633, "text": "NOVA AI Assistant + MemoryAdded a Gemini-powered AI assistant to NOVA. The assistant can now have conversations and maintain conversation history. I also integrated SQLite storage to save chat messages so NOVA can eventually retain conversations between sessions."}]...
|
Title: nova by @thejasvik2 | Stardance
Devlogs:
N Title: nova by @thejasvik2 | Stardance
Devlogs:
NOVA AI Assistant + MemoryAdded a Gemini-powered AI assistant to NOVA. The assistant can now have conversations and maintain conversation history. I also integrated SQLite storage to save chat messages so NOVA can eventually retain conversations between sessions....
|
1793090875.647091
|
1793695675.647091
|
|
64512
|
simple slackyy botty by @Ahad_Ghanchi | Stardance
|
Ahad_Ghanchi
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T06:30:09Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I make a slack bot that helps you to talk and command what ever you want,It has six features weather lookup by city 2.Birthday tracking data base 3.Jokes 4.Cat fact 5.It take quizzes 6.It shows ping", "repo": "https://github.com/codewith876/simple-slackyyy-botty", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354"}]...
|
[{"post_id": 74341, "ts": "202 [{"post_id": 74341, "ts": "2026-09-27T06:19:32Z", "hours": 0.3153, "text": "Devlog #1: Building Simple Slackyyy Botty Hey everyone! I’ve been working on a Slack bot for the Hack Club workspace, and I wanted to share how it’s coming along. Meet Simple Slackyyy Botty — a bot that started as a basic ping-check and has grown into a little assistant with six commands. THE COMMANDS SO FAR /simple-slackyyy-botty-ping — the simplest one. Just checks how fast the bot responds, useful for making sure everything’s alive and working. /simple-slackyyy-botty-catfact — pulls a random cat fact from a public API (catfact.ninja) and posts it. Small, silly, but a good first “real” feature since it taught me how to fetch data from outside APIs. /simple-slackyyy-botty-joke — same idea, but for jokes, pulling from the official-joke-api. This one needed a different HTTP library (axios) than the cat facts did, which was a good lesson in how there’s more than one way to make a web request in Node.js. /simple-slackyyy-botty-weather [city name] — this one leveled up a lot. It started as a fixed-location weather check, but now you can type any city and it’ll geocode the name into coordinates, then fetch live weather for it — including things like temperature, air quality, and UV index. It also posts publicly in the channel instead of just to me, so everyone can see it. /simple-slackyyy-botty-birthday [MM-DD] — probably the feature I’m proudest of. You save your birthday, and the bot remembers it — not in a temporary file, but in an actual SQLite database using better-sqlite3. Every day at 9 AM, it checks the database and posts a birthday shoutout for anyone whose day it is, tagging them directly in the channel. /simple-slackyyy-botty-quiz — the newest addition, letting people pick a subject, difficulty, and number of questions to test their knowledge. WHAT I LEARNED How to call external APIs and handle their responses The difference between file-based storage (JSON) and a real database (SQLite), and why the database is more reliable How scheduled tasks work (cron jobs) to make the bot do things automatically, not just respond to commands A lot of patience debugging — copy-pasting code in the wrong spot, duplicate lines, and other small mistakes that taught me to read my code more carefully before running it WHAT’S NEXT Get the bot running 24/7 instead of just on my own machine Push the whole project to GitHub Keep polishing the help command and maybe add a few more fun commands That’s it for devlog #1 — more updates soon as I keep building!"}]...
|
Title: simple slackyy botty by @Ahad_Ghanchi | Sta Title: simple slackyy botty by @Ahad_Ghanchi | Stardance
Devlogs:
Devlog #1: Building Simple Slackyyy Botty Hey everyone! I’ve been working on a Slack bot for the Hack Club workspace, and I wanted to share how it’s coming along. Meet Simple Slackyyy Botty — a bot that started as a basic ping-check and has grown into a little assistant with six commands. THE COMMANDS SO FAR /simple-slackyyy-botty-ping — the simplest one. Just checks how fast the bot responds, useful for making sure everything’s alive and working. /simple-slackyyy-botty-catfact — pulls a random cat fact from a public API (catfact.ninja) and posts it. Small, silly, but a good first “real” feature since it taught me how to fetch data from outside APIs. /simple-slackyyy-botty-joke — same idea, but for jokes, pulling from the official-joke-api. This one needed a different HTTP library (axios) than the cat facts did, which was a good lesson in how there’s more than one way to make a web request in Node.js. /simple-slackyyy-botty-weather [city name] — this one leveled up a lot. It started as a fixed-location weather check, but now you can type any city and it’ll geocode the name into coordinates, then fetch live weather for it — including things like temperature, air quality, and UV index. It also posts publicly in the channel instead of just to me, so everyone can see it. /simple-slackyyy-botty-birthday [MM-DD] — probably the feature I’m proudest of. You save your birthday, and the bot remembers it — not in a temporary file, but in an actual SQLite database using better-sqlite3. Every day at 9 AM, it checks the database and posts a birthday shoutout for anyone whose day it is, tagging them directly in the channel. /simple-slackyyy-botty-quiz — the newest addition, letting people pick a subject, difficulty, and number of questions to test their knowledge. WHAT I LEARNED How to call external APIs and handle their responses The difference between file-based storage (JSON) and a real database (SQLite), and why the database is more reliable How scheduled tasks work (cron jobs) to make the bot do things automatically, not just respond to commands A lot of patience debugging — copy-pasting code in the wrong spot, duplicate lines, and other small mistakes that taught me to read my code more carefully before running it WHAT’S NEXT Get the bot running 24/7 instead of just on my own machine Push the whole project to GitHub Keep polishing the help command and maybe add a few more fun commands That’s it for devlog #1 — more updates soon as I keep building!
Ships:
I make a slack bot that helps you to talk and command what ever you want,It has six features weather lookup by city 2.Birthday tracking data base 3.Jokes 4.Cat fact 5.It take quizzes 6.It shows ping...
|
1793213599.62755
|
1793299999.62755
|
|
42916
|
willie and lue :D by @lueyun | Stardance
|
lueyun
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T06:50:31Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "hello guys! i present to you my personal website!! this project introduced me to many things, and some of them include how much variety there is to the world of coding. there is so much you can do, and also many places to start. i hope you like this (boring-ish) personal website about my characters and me!!", "repo": "https://github.com/lueyun0110/willie-and-lue-website", "demo": "https://lueyun0110.github.io/willie-and-lue-website/website/"}]...
|
[{"post_id": 74347, "ts": "202 [{"post_id": 74347, "ts": "2026-09-27T06:47:02Z", "hours": 0.6217, "text": "day 6? HIII i finally figured out my dilemma with my shipping issue!! even though this personalized website isn’t that extraordinary, i hope you get to understand my ocs (+ me)!"}, {"post_id": 72103, "ts": "2026-09-22T05:28:08Z", "hours": 0.7317, "text": "day 5 haha short update- i just added the final touch-ups: new page to show you guys their latest adventures new button to direct you to it now i need to figure out how to ship this 🥲🥲"}, {"post_id": 72081, "ts": "2026-09-22T04:06:24Z", "hours": 2.6869, "text": "day 4 hello!! im back 😎😎 ive been very off lately due to school but its alright. i really wanted to keep on doing this, so here i am! heres what i did: added CSS (color, font, sizing, etc) added gifs to make this website have personality lol changed the instagram link to just instagram username i’m planning on making final touches as this is close to being finished (imo lol)"}, {"post_id": 65225, "ts": "2026-09-10T06:35:56Z", "hours": 1.1033, "text": "day 3 hi guys!! long time no see…. ive been recently busy with many things. i have no clue what to do so this project will take longer than expected. 😓😓 anyways, i added: -more for their backstory -added a NEW page about myself since this website is a personal one to introduce the world to yourself hahaa…. -finally using css to format this website i hope to continue more on the format because rn, this looks so bright 😭"}, {"post_id": 39892, "ts": "2026-08-03T05:31:21Z", "hours": 0.8778, "text": "day 2 heh this is where i wanted to add more, but i truly didn’t know how, so i decided to go with some lore/background info about them. i added a new page with buttons to go back and forth with so everything can be kept organized. the lore is currently incomplete as i made them all in the spot (💀) so im planning on updating them soon (not very soon though). as for the visuals, i plan on doing them later since i want to get the main stuff done :D"}, {"post_id": 39838, "ts": "2026-08-03T02:57:15Z", "hours": 0.4386, "text": "starting a personal website for willie and lue! its my first time coding html btw ahah but heres a simple introduction of my two adventurous ocs!! i want to expand on this by documenting more about their adventures than posting on insta 😅 as for right now, i added a title, brief introduction, image to see who they are, and outside links if you want to check out some of their adventures im planning on (well attempting to) create something interactive that will bring both characters alive… idk when that will be so we shall seee 👀✨"}]...
|
Title: willie and lue :D by @lueyun | Stardance
D Title: willie and lue :D by @lueyun | Stardance
Devlogs:
starting a personal website for willie and lue! its my first time coding html btw ahah but heres a simple introduction of my two adventurous ocs!! i want to expand on this by documenting more about their adventures than posting on insta 😅 as for right now, i added a title, brief introduction, image to see who they are, and outside links if you want to check out some of their adventures im planning on (well attempting to) create something interactive that will bring both characters alive… idk when that will be so we shall seee 👀✨
day 2 heh this is where i wanted to add more, but i truly didn’t know how, so i decided to go with some lore/background info about them. i added a new page with buttons to go back and forth with so everything can be kept organized. the lore is currently incomplete as i made them all in the spot (💀) so im planning on updating them soon (not very soon though). as for the visuals, i plan on doing them later since i want to get the main stuff done :D
day 3 hi guys!! long time no see…. ive been recently busy with many things. i have no clue what to do so this project will take longer than expected. 😓😓 anyways, i added: -more for their backstory -added a NEW page about myself since this website is a personal one to introduce the world to yourself hahaa…. -finally using css to format this website i hope to continue more on the format because rn, this looks so bright 😭
day 4 hello!! im back 😎😎 ive been very off lately due to school but its alright. i really wanted to keep on doing this, so here i am! heres what i did: added CSS (color, font, sizing, etc) added gifs to make this website have personality lol changed the instagram link to just instagram username i’m planning on making final touches as this is close to being finished (imo lol)
day 5 haha short update- i just added the final touch-ups: new page to show you guys their latest adventures new button to direct you to it now i need to figure out how to ship this 🥲🥲
day 6? HIII i finally figured out my dilemma with my shipping issue!! even though this personalized website isn’t that extraordinary, i hope you get to understand my ocs (+ me)!
Ships:
hello guys! i present to you my personal website!! this project introduced me to many things, and some of them include how much variety there is to the world of coding. there is so much you can do, and also many places to start. i hope you like this (boring-ish) personal website about my characters and me!!...
|
1793145333.3192992
|
1793231733.3192992
|
|
65773
|
//Kua_vr||OS|| by @K_muistaa501 | Stardance
|
K_muistaa501
|
0
|
0.58
|
0
|
[]
|
[{"post_id": 74350, "ts": "202 [{"post_id": 74350, "ts": "2026-09-27T06:52:26Z", "hours": 0.5803, "text": "Part 1: Just Started!! Just started. builded a sick welcome screen."}]...
|
Title: //Kua_vr||OS|| by @K_muistaa501 | Stardance Title: //Kua_vr||OS|| by @K_muistaa501 | Stardance
Devlogs:
Part 1: Just Started!! Just started. builded a sick welcome screen....
|
1793091090.259093
|
1793695890.259093
|
|
49808
|
My own site! by @tawsif | Stardance
|
tawsif
|
0
|
1.15
|
0
|
[]
|
[{"post_id": 74356, "ts": "202 [{"post_id": 74356, "ts": "2026-09-27T07:18:48Z", "hours": 0.2569, "text": "Working on the fromt end and annimations"}, {"post_id": 73953, "ts": "2026-09-26T12:06:43Z", "hours": 0.6228, "text": "Figuring out the backend of my portfolio"}, {"post_id": 73013, "ts": "2026-09-24T06:55:42Z", "hours": 0.2733, "text": "I am working on building myself a portfolio website"}]...
|
Title: My own site! by @tawsif | Stardance
Devlog Title: My own site! by @tawsif | Stardance
Devlogs:
I am working on building myself a portfolio website
Figuring out the backend of my portfolio
Working on the fromt end and annimations...
|
1792605297.2168226
|
1793469297.2168226
|
|
12674
|
Nata - Nano by taisan11 by @taisan11 | Stardance
|
taisan11
|
0
|
4.23
|
0
|
[]
|
[{"post_id": 7436, "ts": "2026 [{"post_id": 7436, "ts": "2026-06-12T11:46:04Z", "hours": 0.8936, "text": "I added more fine-grained key bindings and improved the UX. However, when I tried enabling the setting to make Mac’s Ctrl key behave like Command, it conflicted with terminal shortcuts and ended up being more annoying than helpful :) Tomorrow, I plan to focus on performance optimization and code refactoring."}, {"post_id": 6182, "ts": "2026-06-10T11:58:38Z", "hours": 0.5564, "text": "The Config system is complete!! It’s highly extensible and lightweight thanks to Zero Deps libraries!!"}, {"post_id": 5478, "ts": "2026-06-09T08:46:54Z", "hours": 1.9428, "text": "Features like string highlighting and Japanese input support proved particularly challenging to implement for input processing."}, {"post_id": 4848, "ts": "2026-06-08T11:46:42Z", "hours": 0.8344, "text": "I’ve got the initial stages working, but it’s tricky. Next, I’ll need to implement support for loading configurations and such."}]...
|
Title: Nata - Nano by taisan11 by @taisan11 | Star Title: Nata - Nano by taisan11 by @taisan11 | Stardance
Devlogs:
I’ve got the initial stages working, but it’s tricky. Next, I’ll need to implement support for loading configurations and such.
Features like string highlighting and Japanese input support proved particularly challenging to implement for input processing.
The Config system is complete!! It’s highly extensible and lightweight thanks to Zero Deps libraries!!
I added more fine-grained key bindings and improved the UX. However, when I tried enabling the setting to make Mac’s Ctrl key behave like Command, it conflicted with terminal shortcuts and ended up being more annoying than helpful :) Tomorrow, I plan to focus on performance optimization and code refactoring....
|
1793267269.6787457
|
1793872069.6787457
|
|
66174
|
Solar-Electric Auto stabilized Glider by @Madhanra Solar-Electric Auto stabilized Glider by @Madhanraj | Stardance...
|
Madhanraj
|
0
|
1.98
|
0
|
[]
|
[{"post_id": 74364, "ts": "202 [{"post_id": 74364, "ts": "2026-09-27T07:44:35Z", "hours": 1.375, "text": "Starting with the wing, we created a 2.4 m main wing, subdivided it into sections, shaped it into a swept and tapered planform, added 3D thickness using a Solidify modifier, corrected the sweep direction toward the tail, and positioned it through the fuselage. We then created and sized a smaller rear horizontal tail plane for stability."}, {"post_id": 74333, "ts": "2026-09-27T05:54:23Z", "hours": 0.6044, "text": "I started developing a custom solar-electric glider focused on efficient, stable, and long-endurance flight. The aircraft is being designed from the ground up rather than directly copying an existing aircraft."}]...
|
Title: Solar-Electric Auto stabilized Glider by @M Title: Solar-Electric Auto stabilized Glider by @Madhanraj | Stardance
Devlogs:
I started developing a custom solar-electric glider focused on efficient, stable, and long-endurance flight. The aircraft is being designed from the ground up rather than directly copying an existing aircraft.
Starting with the wing, we created a 2.4 m main wing, subdivided it into sections, shaped it into a swept and tapered planform, added 3D thickness using a Solidify modifier, corrected the sweep direction toward the tail, and positioned it through the fuselage. We then created and sized a smaller rear horizontal tail plane for stability....
|
1793094795.9445686
|
1793699595.9445686
|
|
66228
|
memorizor by @baibhavrajacharya | Stardance
|
baibhavrajacharya
|
0
|
1.08
|
0
|
[]
|
[{"post_id": 74365, "ts": "202 [{"post_id": 74365, "ts": "2026-09-27T07:46:18Z", "hours": 1.0767, "text": "memorizor"}]...
|
Title: memorizor by @baibhavrajacharya | Stardance Title: memorizor by @baibhavrajacharya | Stardance
Devlogs:
memorizor...
|
1793094889.5507188
|
1793699689.5507188
|
|
9443
|
Better Music by @muntean_andrew | Stardance
|
muntean_andrew
|
2
|
33.0
|
323
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T09:14:00Z", "hours": 20.0, "multiplier": 8.54, "payout": 202, "blessing": "neutral", "text": "I built Better Music, a lightweight music player designed for seamless audio playback and intuitive library management. It features an instant search-as-you-type engine, interactive queue management, customizable playlist/album details, detailed listening activity tracking, can read synced/unsynced lyrics tags from the music files and show them like Spotify, a “Permanent Queue” (PQ) feature for when you want listen to a list of particular songs for just that one moment and don’t want to create a whole new playlist for it and you can customize it’s color palette and even the base border radius to your liking in the settings. To bring this to life, I combined the desktop application capabilities of Electron with a robust local relational database powered by SQLite 3, all wrapped in a sleek, responsive frontend built using HTML5, CSS, SCSS and JavaScript. This is just an update and the majority of the time spent on the project was used to make improvements in the backend management of the song objects and to make the UI better reflect and update according to the data in the backend. But also I’ve added lyrics support and if your music files have lyrics tags embedded in them the app will take full advantage of them by enabling you to see each verse when it is singed and also skip to that one part you like the most just by clicking on your favorite line in the track. Testing the app is incredibly simple—there is no need to clone deep source code dependencies or set up a complex development build environment. Where to get it: Head straight over to the Releases section of this repository. How to run it: Download the compiled .zip file for your platform, extract its contents into any folder on your computer, and double-click the main application executable (e.g., Better-Music.exe). Note on Updates: If you are testing store-packaged builds or encountered deployment errors (like MSIX package revision conflicts in the Partner Center), utilizing the raw ZIP release is the fastest, cleanest way to experience the app right now.", "repo": "https://github.com/AliendsOG/Better-Music", "demo": "https://github.com/AliendsOG/Better-Music/releases/tag/better-music"}, {"ship_num": 2, "ts": "2026-06-15T15:17:37Z", "hours": 13.0, "multiplier": 9.67, "payout": 121, "blessing": "neutral", "text": "I built Better Music, a lightweight music player designed for seamless audio playback and intuitive library management. It features an instant search-as-you-type engine, interactive queue management, customizable playlist/album details, detailed listening activity tracking, a “Permanent Queue” (PQ) feature for when you want listen to a list of particular songs for just that one moment and don’t want to create a whole new playlist for it and you can customize it’s color palette to your liking in the settings. To bring this to life, I combined the desktop application capabilities of Electron with a robust local relational database powered by SQLite 3, all wrapped in a sleek, responsive frontend built using HTML5, CSS, SCSS and JavaScript. The challenging part was the steep learning curve as I hadn’t done anything on this scale before. I had to learn to connect the 2 Electron processes together seamlessly. Furthermore I had to dive into the world of databases with SQLite 3, which was uncharted territory for me. I had to use AI to help me learn these things and also to brainstorm ideas about hoe to optimize the app. For instance, when the idea of the search-as-you-type feature came up to me I envisioned a kind of tree structure with letters and that for every song, album, playlist name the app would create the branches in the tree so it would be a very fast and efficient search algorithm, and when I talked to the AI about it I found out that this kind of structure is called a trie. I am really proud that I’ve managed to build a clean, responsive and fast music player that tracks the user’s listening activity and stores it on device. Also it was very exciting when I tested the search feature and it worked perfectly. I’m also proud of the engineering journey itself. I utilized Gemini as an active learning collaborator to help me unpack the architectural patterns of Electron and master data persistence with SQLite 3. Turning that complex technical guidance into a functional, polished desktop product was incredibly rewarding. Testing the app is incredibly simple—there is no need to clone deep source code dependencies or set up a complex development build environment. Where to get it: Head straight over to the Releases section of this repository. How to run it: Download the compiled .zip file for your platform, extract its contents into any folder on your computer, and double-click the main application executable (e.g., Better-Music.exe). Note on Updates: If you are testing store-packaged builds or encountered deployment errors (like MSIX package revision conflicts in the Partner Center), utilizing the raw ZIP release is the fastest, cleanest way to experience the app right now.", "repo": "https://github.com/AliendsOG/Better-Music", "demo": "https://github.com/AliendsOG/Better-Music/releases/tag/better-music"}]...
|
[{"post_id": 74382, "ts": "202 [{"post_id": 74382, "ts": "2026-09-27T09:04:01Z", "hours": 1.0467, "text": "This is the last devlog before shipping the project update. This has been an exciting journey and I am very satisfied with the result! I do wish there would be a bit more time left for the event to continue so I could ship even more things but all good things must come to an end, and this one is a happy ending. I’ve made the necessary last minute touches to make sure that everything works as it should."}, {"post_id": 74114, "ts": "2026-09-26T18:26:03Z", "hours": 1.6697, "text": "Added new ways to customize the player to the user’s liking and fixed that prevented the app from reading the user_version of the database which in return made the app “update” the DB everytime it started."}, {"post_id": 73281, "ts": "2026-09-24T18:58:58Z", "hours": 0.4853, "text": "YEEEEEESS, FINALLLYYYYYY, we have synced lyrics in the app. I know it’s not the most glamorous UI at the moment, but it is still something, and the other music players don’t even do this, like at most they show the lyrics with the timestamps and that’s it, no scaling of the verse, nothing. In future updates certainly I’ll make the UI more polished because it need a lot of it. Still I am happy that I’ve made it this far and after a bit of clean up and maybe some optimizations I’ll ship the project."}, {"post_id": 73261, "ts": "2026-09-24T18:10:26Z", "hours": 1.5067, "text": "I’ve finally found the culprit that prevented me from getting the synced lyrics, now the app can read the synced lyrics from music filed. YEEEEEEE Now the “only” thing is to make the UI for them, which I hope would be easy and fast. 😅"}, {"post_id": 73191, "ts": "2026-09-24T15:40:21Z", "hours": 2.4517, "text": "Trying to add lyrics to the app. But it is a bit of a mess cause in the Samsung Music and Apple Music apps these files contain time stamps for each verse and so I was thinking to read those time stamps and to highlight the verse that is played at that time, but my app doesn’t read those things and I don’t know why. An explanation might be that those apps ping free open source databases of lyrics based on the song details, but I am not really sure."}, {"post_id": 69252, "ts": "2026-09-16T17:55:55Z", "hours": 4.7486, "text": "Another day, another restructuring I guess. 😅 I’ve decided to give each album an id instead of relying on it’s name as the identifier as I did previously. Also I’ve changed the Play function to work with song ids and album ids instead of names. This is because if the name of the song or the album had any of these 2 characters: ’ or “ it would mess up with the HTML structure and the song would not play if the user clicked on it. Not gonna lie, I think that my code now is a little spaghetti and for sure someone with more experience and knowledge on how to structure a music player would have done a much better job than me at this, but still. The main caveat that I think could appear in the future is that the Play function can’t take numbered ids for playlists and I have to rely in the playlist’s name because the function would have no way to distinguish between them at the moment and I don’t want to make another spaghetti to fix this. 😅 In other news, I have successfully changed the backend to update the DB version for the user of the older version of the app and to add the new “lyrics” column and also the app can read the embedded lyrics from the music files. Now the “only” thing remaining is to add the lyrics to the UI and to parse the strings and make the verses synchronize with the song and this feature would be fully implemented."}, {"post_id": 57422, "ts": "2026-08-29T15:54:13Z", "hours": 2.9864, "text": "After successfully changing the song objects management under the hood from the previous devlog I now added an indicator for which song is currently playing. For now I’ve just set the background of the song to be the primary color selected by the user. Also I’ve changed the border radius for everything to be based on one variable so that the user could change it in the settings (but didn’t yet implement the UI for that) cause everyone has their own preference for these things. The first screenshot is with the border radius set a bit higher (30px) than my default one (23px), and the second one is with the border radius set to 0. Additionally I am changing the SQLite db in the backend to support lyrics because I want to add them to the app."}, {"post_id": 56489, "ts": "2026-08-28T08:43:54Z", "hours": 4.7514, "text": "I am currently working on optimizing the code so that changes like adding songs to a playlist or liking a song update instantly across all pages because this was a flaw of my old architecture of the app cause I didn’t just have 1 list of song objects that every album and artist referenced to but instead every album and artist had their own song objects and the list of favorite songs was also composed of song object. So it was a mess of duplicate song objects. Now I am changing things so that there is only one list of song object and albums have just a list of song ids in them so they reference the song object list, this way each change is global. This would hopefully fix the current synchronization issues that sometimes occur in the current version. This change would also allow me to add an indicator that a song is playing when the user looks at an album from which a song plays currently. Additionally I want to add a listening history page where the user can see their listening activity on the app and also maybe add some rewards depending on how much time they spent listening to an artist or album to gamify the experience a little."}, {"post_id": 8658, "ts": "2026-06-14T11:47:22Z", "hours": 0.4289, "text": "Solving some App Manifest problems"}, {"post_id": 8040, "ts": "2026-06-13T12:20:46Z", "hours": 1.7347, "text": "Updating the package on the Microsoft Store"}, {"post_id": 7956, "ts": "2026-06-13T08:50:15Z", "hours": 1.2564, "text": "Added some customization options and a settings menu"}, {"post_id": 7328, "ts": "2026-06-12T06:33:15Z", "hours": 1.7297, "text": "Updating the interface a little"}, {"post_id": 4874, "ts": "2026-06-08T13:08:06Z", "hours": 3.1572, "text": "Implemented search functionality"}, {"post_id": 3541, "ts": "2026-06-06T15:01:03Z", "hours": 2.7919, "text": "Adding clear queue button and a Permanent Queue or Temporary Playlist feature that saves the songs that you add to the queue even after you listen to them so you can set it to repeat all and still have the songs that you wanted"}, {"post_id": 3394, "ts": "2026-06-06T09:28:56Z", "hours": 1.4672, "text": "I implemented the function of changing the name and cover of a playlist"}]...
|
Title: Better Music by @muntean_andrew | Stardance Title: Better Music by @muntean_andrew | Stardance
Devlogs:
I implemented the function of changing the name and cover of a playlist
Adding clear queue button and a Permanent Queue or Temporary Playlist feature that saves the songs that you add to the queue even after you listen to them so you can set it to repeat all and still have the songs that you wanted
Implemented search functionality
Updating the interface a little
Added some customization options and a settings menu
Updating the package on the Microsoft Store
Solving some App Manifest problems
I am currently working on optimizing the code so that changes like adding songs to a playlist or liking a song update instantly across all pages because this was a flaw of my old architecture of the app cause I didn’t just have 1 list of song objects that every album and artist referenced to but instead every album and artist had their own song objects and the list of favorite songs was also composed of song object. So it was a mess of duplicate song objects. Now I am changing things so that there is only one list of song object and albums have just a list of song ids in them so they reference the song object list, this way each change is global. This would hopefully fix the current synchronization issues that sometimes occur in the current version. This change would also allow me to add an indicator that a song is playing when the user looks at an album from which a song plays currently. Additionally I want to add a listening history page where the user can see their listening activity on the app and also maybe add some rewards depending on how much time they spent listening to an artist or album to gamify the experience a little.
After successfully changing the song objects management under the hood from the previous devlog I now added an indicator for which song is currently playing. For now I’ve just set the background of the song to be the primary color selected by the user. Also I’ve changed the border radius for everything to be based on one variable so that the user could change it in the settings (but didn’t yet implement the UI for that) cause everyone has their own preference for these things. The first screenshot is with the border radius set a bit higher (30px) than my default one (23px), and the second one is with the border radius set to 0. Additionally I am changing the SQLite db in the backend to support lyrics because I want to add them to the app.
Another day, another restructuring I guess. 😅 I’ve decided to give each album an id instead of relying on it’s name as the identifier as I did previously. Also I’ve changed the Play function to work with song ids and album ids instead of names. This is because if the name of the song or the album had any of these 2 characters: ’ or “ it would mess up with the HTML structure and the song would not play if the user clicked on it. Not gonna lie, I think that my code now is a little spaghetti and for sure someone with more experience and knowledge on how to structure a music player would have done a much better job than me at this, but still. The main caveat that I think could appear in the future is that the Play function can’t take numbered ids for playlists and I have to rely in the playlist’s name because the function would have no way to distinguish between them at the moment and I don’t want to make another spaghetti to fix this. 😅 In other news, I have successfully changed the backend to update the DB version for the user of the older version of the app and to add the new “lyrics” column and also the app can read the embedded lyrics from the music files. Now the “only” thing remaining is to add the lyrics to the UI and to parse the strings and make the verses synchronize with the song and this feature would be fully implemented.
Trying to add lyrics to the app. But it is a bit of a mess cause in the Samsung Music and Apple Music apps these files contain time stamps for each verse and so I was thinking to read those time stamps and to highlight the verse that is played at that time, but my app doesn’t read those things and I don’t know why. An explanation might be that those apps ping free open source databases of lyrics based on the song details, but I am not really sure.
I’ve finally found the culprit that prevented me from getting the synced lyrics, now the app can read the synced lyrics from music filed. YEEEEEEE Now the “only” thing is to make the UI for them, which I hope would be easy and fast. 😅
YEEEEEESS, FINALLLYYYYYY, we have synced lyrics in the app. I know it’s not the most glamorous UI at the moment, but it is still something, and the other music players don’t even do this, like at most they show the lyrics with the timestamps and that’s it, no scaling of the verse, nothing. In future updates certainly I’ll make the UI more polished because it need a lot of it. Still I am happy that I’ve made it this far and after a bit of clean up and maybe some optimizations I’ll ship the project.
Added new ways to customize the player to the user’s liking and fixed that prevented the app from reading the user_version of the database which in return made the app “update” the DB everytime it started.
This is the last devlog before shipping the project update. This has been an exciting journey and I am very satisfied with the result! I do wish there would be a bit more time left for the event to continue so I could ship even more things but all good things must come to an end, and this one is a happy ending. I’ve made the necessary last minute touches to make sure that everything works as it should.
Ships:
I built Better Music, a lightweight music player designed for seamless audio playback and intuitive library management. It features an instant search-as-you-type engine, interactive queue management, customizable playlist/album details, detailed listening activity tracking, a “Permanent Queue” (PQ) feature for when you want listen to a list of particular songs for just that one moment and don’t want to create a whole new playlist for it and you can customize it’s color palette to your liking in the settings. To bring this to life, I combined the desktop application capabilities of Electron with a robust local relational database powered by SQLite 3, all wrapped in a sleek, responsive frontend built using HTML5, CSS, SCSS and JavaScript. The challenging part was the steep learning curve as I hadn’t done anything on this scale before. I had to learn to connect the 2 Electron processes together seamlessly. Furthermore I had to dive into the world of databases with SQLite 3, which was uncharted territory for me. I had to use AI to help me learn these things and also to brainstorm ideas about hoe to optimize the app. For instance, when the idea of the search-as-you-type feature came up to me I envisioned a kind of tree structure with letters and that for every song, album, playlist name the app would create the branches in the tree so it would be a very fast and efficient search algorithm, and when I talked to the AI about it I found out that this kind of structure is called a trie. I am really proud that I’ve managed to build a clean, responsive and fast music player that tracks the user’s listening activity and stores it on device. Also it was very exciting when I tested the search feature and it worked perfectly. I’m also proud of the engineering journey itself. I utilized Gemini as an active learning collaborator to help me unpack the architectural patterns of Electron and master data persistence with SQLite 3. Turning that complex technical guidance into a functional, polished desktop product was incredibly rewarding. Testing the app is incredibly simple—there is no need to clone deep source code dependencies or set up a complex development build environment. Where to get it: Head straight over to the Releases section of this repository. How to run it: Download the compiled .zip file for your platform, extract its contents into any folder on your computer, and double-click the main application executable (e.g., Better-Music.exe). Note on Updates: If you are testing store-packaged builds or encountered deployment errors (like MSIX package revision conflicts in the Partner Center), utilizing the raw ZIP release is the fastest, cleanest way to experience the app right now.
I built Better Music, a lightweight music player designed for seamless audio playback and intuitive library management. It features an instant search-as-you-type engine, interactive queue management, customizable playlist/album details, detailed listening activity tracking, can read synced/unsynced lyrics tags from the music files and show them like Spotify, a “Permanent Queue” (PQ) feature for when you want listen to a list of particular songs for just that one moment and don’t want to create a whole new playlist for it and you can customize it’s color palette and even the base border radius to your liking in the settings. To bring this to life, I combined the desktop application capabilities of Electron with a robust local relational database powered by SQLite 3, all wrapped in a sleek, responsive frontend built using HTML5, CSS, SCSS and JavaScript. This is just an update and the majority of the time spent on the project was used to make improvements in the backend management of the song objects and to make the UI better reflect and update according to the data in the backend. But also I’ve added lyrics support and if your music files have lyrics tags embedded in them the app will take full advantage of them by enabling you to see each verse when it is singed and also skip to that one part you like the most just by clicking on your favorite line in the track. Testing the app is incredibly simple—there is no need to clone deep source code dependencies or set up a complex development build environment. Where to get it: Head straight over to the Releases section of this repository. How to run it: Download the compiled .zip file for your platform, extract its contents into any folder on your computer, and double-click the main application executable (e.g., Better-Music.exe). Note on Updates: If you are testing store-packaged builds or encountered deployment errors (like MSIX package revision conflicts in the Partner Center), utilizing the raw ZIP release is the fastest, cleanest way to experience the app right now....
|
1793220754.6954992
|
1793307154.6954992
|
|
32423
|
Hackpad for GD by @Jacube1234 | Stardance
|
Jacube1234
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T10:07:23Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did I make? I made the GD Hackpad—a custom 4-key macro pad with a rotary encoder designed specifically for playing Geometry Dash Platformer levels (basically a DIY Sayo Device). It features a 3-piece 3D-printed angled case designed in Fusion 360, a custom PCB featuring a skull silkscreen created in KiCad, and is powered by a Seeed XIAO RP2040 running KMK firmware. What was challenging? Learning KiCad from scratch since I was originally much more comfortable with Fusion 360. Learning the stardance process and this general hackclub stuff. What are you proud of? How well the 3D-printed case fits together using M3 bolts and heat-set inserts, adding a custom skull emoji silkscreen to the PCB, and getting everything running smoothly with 100% tested code. What should people know so they can test your project? Everything you need to replicate it is in the repository, including the 3D print production files, Gerber files for ordering the PCB, the BOM, and a full guide on setting up CircuitPython and KMK firmware. Note: The photos of my physical build ldon’t have the RGB LEDs due to an early board error, but the updated KiCad and Gerber files in the repo feature the corrected LED routing!", "repo": "https://github.com/Jacube1234/GD-Hackpad", "demo": ""}]...
|
[{"post_id": 74394, "ts": "202 [{"post_id": 74394, "ts": "2026-09-27T09:56:29Z", "hours": 0.3356, "text": "Fixed up some other small readme stuff. I changed the kicanvas link, and added the yt video I posted in the last log. I’m only allowed one demo video so I changed it to me actually using the hackpad. The other link is https://youtu.be/eFOGvQzMtF8 if you want to see me explaining the project. I will hopefully promise to myself to not make anymore changes and just finish the project. Ima ship it. idk how this works. bye now."}, {"post_id": 73482, "ts": "2026-09-25T06:53:54Z", "hours": 0.5617, "text": "Realised I used the wrong footprint for the leds. SO I abandoned them :/ I fixed the kicad files and updated the gerbers, in different respective folders. https://youtu.be/FZbB-Cm0QQ0 video of me playing a level"}, {"post_id": 64086, "ts": "2026-09-08T08:15:43Z", "hours": 4.5919, "text": "Finally finished (I guess). I redesigned the case because I made some silly errors. In reality, my pcb sat lower than my CAD model so I fixed that. CAD model also used surface mounted SEEED XIAO RP2040 so there was a height change. Moved the port down twice. No longer silly circles on the lid because I made the top part way to thin in the first place. My knob was too tall so I sanded it down (I just wanted to get this project done 🫠) You can check my soldering process and stuff here if you really want. Idk how these images will order themselves but here are what they are. Me putting in a heatset insert (so satifying) the top plate underside with a notch for the rotary encoder weird bit Assembled thing Me playing GD Slicer Random completion photos"}, {"post_id": 54331, "ts": "2026-08-25T09:09:18Z", "hours": 2.5036, "text": "Got my parts. Quick fit and sanity check. Did I make my top plate to thin? I will look at the Orphues pad real quick. Please tell me if you get any info about normal heights or something."}, {"post_id": 26808, "ts": "2026-07-11T20:17:59Z", "hours": 0.6908, "text": "Added little bump at the top so a heatset insert can fit because the top shell is not thick enough. Added Gerber files."}, {"post_id": 26286, "ts": "2026-07-11T00:09:51Z", "hours": 1.9836, "text": "Added all 3d models to Kicad, and exported it into Fusion. (idk why gif is so cooked). Flipped the microcontroller so the usb port wasn’t inside the plate. Moved usb outlet on base to match the new location. Comment what I should do to let the led’s to shine through"}, {"post_id": 26219, "ts": "2026-07-10T21:40:34Z", "hours": 0.6361, "text": "Adding 3d models to Kicad"}, {"post_id": 25624, "ts": "2026-07-10T00:46:38Z", "hours": 1.3475, "text": "Added rotary knob. Made silkscreen art smaller"}, {"post_id": 25222, "ts": "2026-07-09T10:41:48Z", "hours": 1.0642, "text": "Sorted Github files and realised my LED’s were the wrong way lol"}, {"post_id": 25054, "ts": "2026-07-09T00:33:07Z", "hours": 2.0003, "text": "Built the case. Added a bunch of fillets and a chamfer to edges. Hole at the back for the USB port. About to code it and make the Github Repo. (This will probbaly take me ages because the tutorial doesn’t show how to program it)"}, {"post_id": 24632, "ts": "2026-07-08T11:02:27Z", "hours": 2.8, "text": "Building the case. Tutorial kinda sucks though so I am referencing qcoral’s “Orpheuspad” fusion model."}, {"post_id": 24546, "ts": "2026-07-08T05:22:14Z", "hours": 2.0336, "text": "Looked at qcorals 3d model to look at the pcb. Started connecting components together."}, {"post_id": 24504, "ts": "2026-07-08T03:02:46Z", "hours": 1.6833, "text": "Placing keys in the arrow key layout. about to wire them up. Also trying to add rgb lighting"}]...
|
Title: Hackpad for GD by @Jacube1234 | Stardance
Title: Hackpad for GD by @Jacube1234 | Stardance
Devlogs:
Placing keys in the arrow key layout. about to wire them up. Also trying to add rgb lighting
Looked at qcorals 3d model to look at the pcb. Started connecting components together.
Building the case. Tutorial kinda sucks though so I am referencing qcoral’s “Orpheuspad” fusion model.
Built the case. Added a bunch of fillets and a chamfer to edges. Hole at the back for the USB port. About to code it and make the Github Repo. (This will probbaly take me ages because the tutorial doesn’t show how to program it)
Sorted Github files and realised my LED’s were the wrong way lol
Added rotary knob. Made silkscreen art smaller
Adding 3d models to Kicad
Added all 3d models to Kicad, and exported it into Fusion. (idk why gif is so cooked). Flipped the microcontroller so the usb port wasn’t inside the plate. Moved usb outlet on base to match the new location. Comment what I should do to let the led’s to shine through
Added little bump at the top so a heatset insert can fit because the top shell is not thick enough. Added Gerber files.
Got my parts. Quick fit and sanity check. Did I make my top plate to thin? I will look at the Orphues pad real quick. Please tell me if you get any info about normal heights or something.
Finally finished (I guess). I redesigned the case because I made some silly errors. In reality, my pcb sat lower than my CAD model so I fixed that. CAD model also used surface mounted SEEED XIAO RP2040 so there was a height change. Moved the port down twice. No longer silly circles on the lid because I made the top part way to thin in the first place. My knob was too tall so I sanded it down (I just wanted to get this project done 🫠) You can check my soldering process and stuff here if you really want. Idk how these images will order themselves but here are what they are. Me putting in a heatset insert (so satifying) the top plate underside with a notch for the rotary encoder weird bit Assembled thing Me playing GD Slicer Random completion photos
Realised I used the wrong footprint for the leds. SO I abandoned them :/ I fixed the kicad files and updated the gerbers, in different respective folders. https://youtu.be/FZbB-Cm0QQ0 video of me playing a level
Fixed up some other small readme stuff. I changed the kicanvas link, and added the yt video I posted in the last log. I’m only allowed one demo video so I changed it to me actually using the hackpad. The other link is https://youtu.be/eFOGvQzMtF8 if you want to see me explaining the project. I will hopefully promise to myself to not make anymore changes and just finish the project. Ima ship it. idk how this works. bye now.
Ships:
What did I make? I made the GD Hackpad—a custom 4-key macro pad with a rotary encoder designed specifically for playing Geometry Dash Platformer levels (basically a DIY Sayo Device). It features a 3-piece 3D-printed angled case designed in Fusion 360, a custom PCB featuring a skull silkscreen created in KiCad, and is powered by a Seeed XIAO RP2040 running KMK firmware. What was challenging? Learning KiCad from scratch since I was originally much more comfortable with Fusion 360. Learning the stardance process and this general hackclub stuff. What are you proud of? How well the 3D-printed case fits together using M3 bolts and heat-set inserts, adding a custom skull emoji silkscreen to the PCB, and getting everything running smoothly with 100% tested code. What should people know so they can test your project? Everything you need to replicate it is in the repository, including the 3D print production files, Gerber files for ordering the PCB, the BOM, and a full guide on setting up CircuitPython and KMK firmware. Note: The photos of my physical build ldon’t have the RGB LEDs due to an early board error, but the updated KiCad and Gerber files in the repo feature the corrected LED routing!...
|
1793152490.4483535
|
1793238890.4483535
|
|
64003
|
my-alarm-clock by @antek042 | Stardance
|
antek042
|
0
|
1.42
|
0
|
[]
|
[{"post_id": 74402, "ts": "202 [{"post_id": 74402, "ts": "2026-09-27T10:10:53Z", "hours": 0.5469, "text": "I’ve added whole code structure to my ino file and it compiles without any errors."}, {"post_id": 72872, "ts": "2026-09-23T22:09:28Z", "hours": 0.6175, "text": "I’ve done some basic classes structure, i must to add bodies to methods so basic alarm staff will work soon."}, {"post_id": 71986, "ts": "2026-09-21T22:22:23Z", "hours": 0.2564, "text": "I’ve created pcb and cad model for my blare. Now i will create some basic firmware and write some future plans for it."}]...
|
Title: my-alarm-clock by @antek042 | Stardance
De Title: my-alarm-clock by @antek042 | Stardance
Devlogs:
I’ve created pcb and cad model for my blare. Now i will create some basic firmware and write some future plans for it.
I’ve done some basic classes structure, i must to add bodies to methods so basic alarm staff will work soon.
I’ve added whole code structure to my ino file and it compiles without any errors....
|
1793058479.4015083
|
1793663279.4015083
|
|
57525
|
DIY JOYSTICK by @Pirajin | Stardance
|
Pirajin
|
0
|
6.96
|
0
|
[]
|
[{"post_id": 74404, "ts": "202 [{"post_id": 74404, "ts": "2026-09-27T10:16:01Z", "hours": 0.3814, "text": "Finally Completed the project, check the github url…… Go and try it…."}, {"post_id": 74061, "ts": "2026-09-26T16:42:45Z", "hours": 0.83, "text": "#Devlog 5 I think - Today, i finally made the controller work with my own game created for it. So, the only step remaining is to update the game to perfection and ship it. STAY TUNED in my GitHub to get the game and controller instructions and code for free…."}, {"post_id": 73951, "ts": "2026-09-26T12:03:48Z", "hours": 1.5894, "text": "#Devlog - 4 I guess - Today i made it connect through wifi because bluetooth was not comfortable and I realised that cannot make it universal for all games, so i created my own game for this, and it will be open source soon… Stay tuned…"}, {"post_id": 73567, "ts": "2026-09-25T12:35:13Z", "hours": 1.1492, "text": "#Devlog 3 - Today i added bluetooth to it and now android powered devices can read it as a controller. And im going to test it with the game TRAFFIC RIDER. So stay tuned!"}, {"post_id": 73144, "ts": "2026-09-24T14:12:49Z", "hours": 2.0572, "text": "Devlog 2 - Im working on making a joystick that can sense the tilt and has a normal joystick controls, and can be connected via bluetooth."}, {"post_id": 60385, "ts": "2026-09-02T17:56:45Z", "hours": 0.9483, "text": "#Devlog 1 - I am working on a joystick model which can be connected wirelessly to any device to play video games… This is the first devlog for this and today i connected the joystick module to an ESP32 and tried to calculate the x and y axis and got many errors, some were corrected and didnt."}]...
|
Title: DIY JOYSTICK by @Pirajin | Stardance
Devlo Title: DIY JOYSTICK by @Pirajin | Stardance
Devlogs:
#Devlog 1 - I am working on a joystick model which can be connected wirelessly to any device to play video games… This is the first devlog for this and today i connected the joystick module to an ESP32 and tried to calculate the x and y axis and got many errors, some were corrected and didnt.
Devlog 2 - Im working on making a joystick that can sense the tilt and has a normal joystick controls, and can be connected via bluetooth.
#Devlog 3 - Today i added bluetooth to it and now android powered devices can read it as a controller. And im going to test it with the game TRAFFIC RIDER. So stay tuned!
#Devlog - 4 I guess - Today i made it connect through wifi because bluetooth was not comfortable and I realised that cannot make it universal for all games, so i created my own game for this, and it will be open source soon… Stay tuned…
#Devlog 5 I think - Today, i finally made the controller work with my own game created for it. So, the only step remaining is to update the game to perfection and ship it. STAY TUNED in my GitHub to get the game and controller instructions and code for free….
Finally Completed the project, check the github url…… Go and try it…....
|
1792709552.2901223
|
1793314352.2901223
|
|
66254
|
Instagram Blocker by @louisevincent289 | Stardance
|
louisevincent289
|
0
|
2.76
|
0
|
[]
|
[{"post_id": 74408, "ts": "202 [{"post_id": 74408, "ts": "2026-09-27T10:25:14Z", "hours": 2.7633, "text": "I have successfully updated all the XPATH’s so that the program works with instagram’s current html setup, unfortunatley they regularly change it so I had to seperate the variables so that it can easily be changed in the future."}]...
|
Title: Instagram Blocker by @louisevincent289 | St Title: Instagram Blocker by @louisevincent289 | Stardance
Devlogs:
I have successfully updated all the XPATH’s so that the program works with instagram’s current html setup, unfortunatley they regularly change it so I had to seperate the variables so that it can easily be changed in the future....
|
1793098111.631897
|
1793702911.631897
|
|
11586
|
My awesome macropad! by @nouxinf | Stardance
|
nouxinf
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-12T13:39:49Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is my submission for the hackpad mission! This is my first time doing hardware design, so I’m not very experienced. Decided to make this because I wanted to speed up some things on my PC and this macropad is configured to use keys F13-F19, which are not present on a normal keyboard but can be used. It features: 7 keys An OLED 0.91” display A bongo cat animation to go with it The BOM is available in the readme or in bom.csv", "repo": "https://github.com/nouxinf/hackpad", "demo": ""}]...
|
[{"post_id": 7441, "ts": "2026 [{"post_id": 7441, "ts": "2026-06-12T12:00:38Z", "hours": 1.1294, "text": "I’ve been working on my hackpad project lately, and I’m finally finished with it now! I’ve never made any PCB or 3D printed project before, so this is a massive leap for me when it comes to skill. First step was designing in KiCad. I kept it simple by adding 7 switches, and an OLED display to show bongo cat. Then made the PCB, which is a pretty fun part of the process, as its basically just wiring stuff together as it tells you to. Third step was designing the case which was probably the hardest, getting everything aligned and all. Fourth step was writing the firmware, this part was fairly easy, and I put some code into that which I found on github to add a bongo cat animation, that makes the cat use the bongo drums when pressing a key on it. The keys are set to F13-F19, keys that are unbound by default."}]...
|
Title: My awesome macropad! by @nouxinf | Stardanc Title: My awesome macropad! by @nouxinf | Stardance
Devlogs:
I’ve been working on my hackpad project lately, and I’m finally finished with it now! I’ve never made any PCB or 3D printed project before, so this is a massive leap for me when it comes to skill. First step was designing in KiCad. I kept it simple by adding 7 switches, and an OLED display to show bongo cat. Then made the PCB, which is a pretty fun part of the process, as its basically just wiring stuff together as it tells you to. Third step was designing the case which was probably the hardest, getting everything aligned and all. Fourth step was writing the firmware, this part was fairly easy, and I put some code into that which I found on github to add a bongo cat animation, that makes the cat use the bongo drums when pressing a key on it. The keys are set to F13-F19, keys that are unbound by default.
Ships:
This is my submission for the hackpad mission! This is my first time doing hardware design, so I’m not very experienced. Decided to make this because I wanted to speed up some things on my PC and this macropad is configured to use keys F13-F19, which are not present on a normal keyboard but can be used. It features: 7 keys An OLED 0.91” display A bongo cat animation to go with it The BOM is available in the readme or in bom.csv...
|
1793278588.5480888
|
1793364988.5480888
|
|
60680
|
Planet Simulator by @valdtaniem | Stardance
|
valdtaniem
|
1
|
12.6
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T10:40:14Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "HELLO! I made a planet simulation in C. the planets merge when they collide and there are some cool spark effects. I think the GUI looks pretty cool, It has a custom font you could change by swapping the .ttf files. This project only compiles for linux so if you are on windows you’ll have to do with the demo video ):", "repo": "https://git.tuxworld.nl/valdtaniem/PlanetSimulator", "demo": "https://git.tuxworld.nl/valdtaniem/PlanetSimulator/releases"}]...
|
[{"post_id": 74415, "ts": "202 [{"post_id": 74415, "ts": "2026-09-27T10:46:32Z", "hours": 0.5972, "text": "font files in executable the font files don’t have to be in a folder with the binary, still only linux is supported"}, {"post_id": 71131, "ts": "2026-09-20T10:35:42Z", "hours": 3.1358, "text": "i think it is done the collision system is revamped and now merges the planet with some spark effects. the Readme is now also complete with a demo video and compilation instructions. (i also discovered emogiis lol )"}, {"post_id": 66829, "ts": "2026-09-12T18:55:54Z", "hours": 1.7058, "text": "I added a font (8 bit operator) to all the text. But the path is just hard-coded to ../font.ttf so you have to place the font in the correct folder. I also wrote a little README"}, {"post_id": 66679, "ts": "2026-09-12T15:28:45Z", "hours": 6.815, "text": "I got the raylib library working and the GUI for planets. i am pretty proud of the place planet feature where you can drag to give the planet velocity, as you can see in the screenshot. there is also a list of planets and a planet creaton model. also you can select a planet and follow it. you can also move the camera and zoom in/out by scrolling. i’ll try to log more frequently in the future (: for the next log i’m going to write the read-me. I also want to improve the planet collisions, cuz now they just bounce of each other or in a spiral of death and accelerate to mach 1 million."}]...
|
Title: Planet Simulator by @valdtaniem | Stardance Title: Planet Simulator by @valdtaniem | Stardance
Devlogs:
I got the raylib library working and the GUI for planets. i am pretty proud of the place planet feature where you can drag to give the planet velocity, as you can see in the screenshot. there is also a list of planets and a planet creaton model. also you can select a planet and follow it. you can also move the camera and zoom in/out by scrolling. i’ll try to log more frequently in the future (: for the next log i’m going to write the read-me. I also want to improve the planet collisions, cuz now they just bounce of each other or in a spiral of death and accelerate to mach 1 million.
I added a font (8 bit operator) to all the text. But the path is just hard-coded to ../font.ttf so you have to place the font in the correct folder. I also wrote a little README
i think it is done the collision system is revamped and now merges the planet with some spark effects. the Readme is now also complete with a demo video and compilation instructions. (i also discovered emogiis lol )
font files in executable the font files don’t have to be in a folder with the binary, still only linux is supported
Ships:
HELLO! I made a planet simulation in C. the planets merge when they collide and there are some cool spark effects. I think the GUI looks pretty cool, It has a custom font you could change by swapping the .ttf files. This project only compiles for linux so if you are on windows you’ll have to do with the demo video ):...
|
1793206500.050392
|
1793292900.050392
|
|
40300
|
BeerReact by @siemvk | Stardance
|
siemvk
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-29T14:31:37Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a react wrapper for beercss. The hardest part was making the types work for input fields.", "repo": "https://github.com/siemvk/veryCoolGoogleUiV3", "demo": "https://beerreact-demo.netlify.app/"}]...
|
[{"post_id": 74422, "ts": "202 [{"post_id": 74422, "ts": "2026-09-27T11:09:54Z", "hours": 1.0622, "text": "I made StyledIcon so you don’t have to do much to use the icons displayed on the homepage and fixed tooltips for buttons."}, {"post_id": 74184, "ts": "2026-09-26T21:20:23Z", "hours": 0.9306, "text": "Made a small new homepage and resources page. Images are missing but its better then just having the demo be tests."}, {"post_id": 74161, "ts": "2026-09-26T20:02:58Z", "hours": 4.2781, "text": "Made steppers, added centered to NavRail , added spread to NavBar , fixed a bug where clicking ON a dialog popup made it close, made the wrapper for Steppers , and updated classNames"}, {"post_id": 37736, "ts": "2026-07-30T17:26:36Z", "hours": 1.9006, "text": "I asked gemini to make me a demo site then fixed a few bugs in it and started work on classNames this will contain all classnames you can use in beer css. its for when custom css is overkill but weird to include in the main project"}, {"post_id": 37509, "ts": "2026-07-30T09:42:50Z", "hours": 2.1039, "text": "technically this is v2 bc of how versioning works Nav is now NavRail , NavBar and NavTabs You can now use <Flex> for flexboxes I made <List> <SplitButton> now has better types (I am now extending <Button> instead of <button> ) I remade <Card> so you have more options You can now use no-space under size at <Space> There is still lots of work to do but I am happy with how development is going!"}, {"post_id": 36332, "ts": "2026-07-28T11:47:32Z", "hours": 1.28, "text": "fixed a bug where you could not give form items all of the prams they have and I wrote some docs"}, {"post_id": 35417, "ts": "2026-07-26T20:10:33Z", "hours": 20.7669, "text": "Wow look a project i forgot to add to a YSWS but is like kinda cool and not jet done (it looks done but its not)"}]...
|
Title: BeerReact by @siemvk | Stardance
Devlogs:
Title: BeerReact by @siemvk | Stardance
Devlogs:
Wow look a project i forgot to add to a YSWS but is like kinda cool and not jet done (it looks done but its not)
fixed a bug where you could not give form items all of the prams they have and I wrote some docs
technically this is v2 bc of how versioning works Nav is now NavRail , NavBar and NavTabs You can now use <Flex> for flexboxes I made <List> <SplitButton> now has better types (I am now extending <Button> instead of <button> ) I remade <Card> so you have more options You can now use no-space under size at <Space> There is still lots of work to do but I am happy with how development is going!
I asked gemini to make me a demo site then fixed a few bugs in it and started work on classNames this will contain all classnames you can use in beer css. its for when custom css is overkill but weird to include in the main project
Made steppers, added centered to NavRail , added spread to NavBar , fixed a bug where clicking ON a dialog popup made it close, made the wrapper for Steppers , and updated classNames
Made a small new homepage and resources page. Images are missing but its better then just having the demo be tests.
I made StyledIcon so you don’t have to do much to use the icons displayed on the homepage and fixed tooltips for buttons.
Ships:
I made a react wrapper for beercss. The hardest part was making the types work for input fields....
|
1793285820.139115
|
1793372220.139115
|
|
66255
|
personal website by @niyattt | Stardance
|
niyattt
|
1
|
6.0
|
17
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T11:14:32Z", "hours": 6.0, "multiplier": 2.84, "payout": 17, "blessing": "neutral", "text": "Finished building a simple, brief personal website built to introduce myself and my interests, and serve as my first coding project and introduction to coding Features About me section Music interests section Hobbies section Currently learning section Simple, visually appealing design Invertible colours for accessibility Built with: HTML, CSS and JavaScript", "repo": "https://github.com/AltereddStudios/personal-website", "demo": "https://altereddstudios.github.io/personal-website/"}]...
|
[{"post_id": 74423, "ts": "202 [{"post_id": 74423, "ts": "2026-09-27T11:12:07Z", "hours": 0.2939, "text": "Finished site, introduced invert colours button for accessibility"}, {"post_id": 74411, "ts": "2026-09-27T10:35:06Z", "hours": 5.6672, "text": "Personal Website - First draft Spent a solid hour trying to figure out how to use html + css, then started building this first draft of the site. Overall very close to completion, plan to introduce an interactive element such as a colour inverter for accessibility and to make the site feel more complete"}]...
|
Title: personal website by @niyattt | Stardance
D Title: personal website by @niyattt | Stardance
Devlogs:
Personal Website - First draft Spent a solid hour trying to figure out how to use html + css, then started building this first draft of the site. Overall very close to completion, plan to introduce an interactive element such as a colour inverter for accessibility and to make the site feel more complete
Finished site, introduced invert colours button for accessibility
Ships:
Finished building a simple, brief personal website built to introduce myself and my interests, and serve as my first coding project and introduction to coding Features About me section Music interests section Hobbies section Currently learning section Simple, visually appealing design Invertible colours for accessibility Built with: HTML, CSS and JavaScript...
|
1793216917.3504348
|
1793303317.3504348
|
|
17064
|
Dawned App by @aamir_pa2009 | Stardance
|
aamir_pa2009
|
0
|
0.26
|
0
|
[]
|
[{"post_id": 7443, "ts": "2026 [{"post_id": 7443, "ts": "2026-06-12T12:14:27Z", "hours": 0.255, "text": "Finally Finished The Theme Bugs In Dawned. Still in open Beta Testing. dawned.app"}]...
|
Title: Dawned App by @aamir_pa2009 | Stardance
De Title: Dawned App by @aamir_pa2009 | Stardance
Devlogs:
Finally Finished The Theme Bugs In Dawned. Still in open Beta Testing. dawned.app...
|
1793134334.3433695
|
1793739134.3433695
|
|
64317
|
StreetOS by @GMM | Stardance
|
GMM
|
5
|
11.0
|
27
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T11:45:10Z", "hours": 1.0, "multiplier": 8.56, "payout": 5, "blessing": "neutral", "text": "For this ship, I added a EASTER EGG (kinda, because the photo tells a lot), delete every icon to discover, and I updated the README. I just want to clarify some things that people rated that I didn’t understood: The wallpaper is not AI, just search in google, you’ll find it. The icons have a white background because I like (why would I make it transparent then?), just see the dev log changes. Some people said it don’t look I passed that much hours, I completely understand, but I passed more, if you count when I was learning, keep in mind I’m new. I made it japanese style, because, to me, Tokyo is the representation of street style, but of course there will be others country’s references (see my “bio”, I like pop with letters).", "repo": "https://github.com/GuilhermeMartins-GMM/StreetOS", "demo": "https://guilhermemartins-gmm.github.io/StreetOS/"}, {"ship_num": 2, "ts": "2026-09-26T20:13:35Z", "hours": 0.0, "multiplier": 12.33, "payout": 3, "blessing": "neutral", "text": "For this ship, I focused on organizing the UI and improving usability: Deletion: I implemented a ‘drag to delete’ feature. Now, you can delete icons by simply dragging them to the bottom center of the screen. Standardization: I standardized all the icons for a more consistent look. Window Spawn: I adjusted the exact positions where windows appear when they are opened so they don’t clutter the screen (almost all reviews said that). Also, NEW JOKES. Now I’m working to improve the paint app (trying to put new colors and saving when closing the window).", "repo": "https://github.com/GuilhermeMartins-GMM/StreetOS", "demo": "https://guilhermemartins-gmm.github.io/StreetOS/"}, {"ship_num": 3, "ts": "2026-09-26T03:24:01Z", "hours": 0.0, "multiplier": 3.46, "payout": 1, "blessing": "neutral", "text": "This is my second ship of the web os 2. I just made some quick adjustments that people noticed a lot: I changed the disabled cursor style in the close button and made the windows “spawn” in the right side of the screen. I’m really happy with the ratings, but I want some more suggestions.", "repo": "https://github.com/GuilhermeMartins-GMM/StreetOS", "demo": "https://guilhermemartins-gmm.github.io/StreetOS/"}, {"ship_num": 4, "ts": "2026-09-24T01:45:21Z", "hours": 7.0, "multiplier": 5.23, "payout": 18, "blessing": "neutral", "text": "I’m finally shipping my web os - version 2. I am really proud of the updates. A lot of them. I added a calculator, a game, an awesome loading screen, a search app, paint, the weather now is available for every city, a jokes genarator and my favorite: MUSIC!! It’s my playlist so I would be thankful if you listen (just a bit 🙃). If you’re going to test I really want you to pay attention to the UI details I tried to make. Also, I think this site is the proof of my improvement (my first time coding that was not in c++ was here in stardance),", "repo": "https://github.com/GuilhermeMartins-GMM/StreetOS", "demo": "https://guilhermemartins-gmm.github.io/StreetOS/"}, {"ship_num": 5, "ts": "2026-09-21T21:47:13Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an OS to the web. The challenging part was doing the real time synchronization and the draggeble window. It’s still missing some features that I’d like it to have (spotify, calculator and a game) but I pretend to do on a remastered version. But, overall, I liked the result and I think it looks like me.", "repo": "https://github.com/GuilhermeMartins-GMM/StreetOS", "demo": "https://guilhermemartins-gmm.github.io/StreetOS/"}]...
|
[{"post_id": 74431, "ts": "202 [{"post_id": 74431, "ts": "2026-09-27T11:24:32Z", "hours": 1.0792, "text": "A lot of people said they didn’t like the way the icons are organized. But since that’s how I originally thought of it, I decided to keep it, but I added an ‘easter egg’: delete every icon if you want their organization to change."}, {"post_id": 74147, "ts": "2026-09-26T19:33:05Z", "hours": 0.4822, "text": "I made the windows “spawn” separately (a lot of people recommended that that). And added some jokes (to me, really good ones)."}, {"post_id": 73285, "ts": "2026-09-24T19:18:56Z", "hours": 0.3031, "text": "I fixed the window popping under the icons. I also made the icons delet in the midle of the screen."}, {"post_id": 72922, "ts": "2026-09-24T01:42:12Z", "hours": 2.9817, "text": "I think I just finished the improvements, and I’m very happy with them. In web os 1, I only had: notes and weather(only one city). In this second version I added search, calculator, music, all city’s weather and more. (the code is from the jokes app)"}, {"post_id": 72433, "ts": "2026-09-22T22:51:06Z", "hours": 2.55, "text": "I currently added some new cool features, like the loading screen (matching the japan street theme) and a game (that I exported from my other site)."}, {"post_id": 72029, "ts": "2026-09-22T00:58:23Z", "hours": 1.3539, "text": "I am improving my OS, right now I added: a calculator, a music player and a search the city (on the weather app). I also changed the design a bit."}, {"post_id": 71957, "ts": "2026-09-21T21:07:27Z", "hours": 0.4464, "text": "I actually ended up adding a search “app” and remodeling the window’s design, made it look like glass."}, {"post_id": 71941, "ts": "2026-09-21T20:26:03Z", "hours": 0.3317, "text": "I ended up changing the features, I put a search, notes, and a “welcome” app. I think I’m going to focus on the design before adding new features. The photo is the only one I found that’s beautiful and in 4k, so I prolly won’t make a change the wallpaper feature."}, {"post_id": 71773, "ts": "2026-09-21T14:53:45Z", "hours": 2.3775, "text": "This is just a “checkpoint”, I ended making the base, now I’m going to implement the features, probably a calculator and a notes “app”. I changed the theme 3 times, but now I think I found the one I like the most, the street vibe."}]...
|
Title: StreetOS by @GMM | Stardance
Devlogs:
This Title: StreetOS by @GMM | Stardance
Devlogs:
This is just a “checkpoint”, I ended making the base, now I’m going to implement the features, probably a calculator and a notes “app”. I changed the theme 3 times, but now I think I found the one I like the most, the street vibe.
I ended up changing the features, I put a search, notes, and a “welcome” app. I think I’m going to focus on the design before adding new features. The photo is the only one I found that’s beautiful and in 4k, so I prolly won’t make a change the wallpaper feature.
I actually ended up adding a search “app” and remodeling the window’s design, made it look like glass.
I am improving my OS, right now I added: a calculator, a music player and a search the city (on the weather app). I also changed the design a bit.
I currently added some new cool features, like the loading screen (matching the japan street theme) and a game (that I exported from my other site).
I think I just finished the improvements, and I’m very happy with them. In web os 1, I only had: notes and weather(only one city). In this second version I added search, calculator, music, all city’s weather and more. (the code is from the jokes app)
I fixed the window popping under the icons. I also made the icons delet in the midle of the screen.
I made the windows “spawn” separately (a lot of people recommended that that). And added some jokes (to me, really good ones).
A lot of people said they didn’t like the way the icons are organized. But since that’s how I originally thought of it, I decided to keep it, but I added an ‘easter egg’: delete every icon if you want their organization to change.
Ships:
I made an OS to the web. The challenging part was doing the real time synchronization and the draggeble window. It’s still missing some features that I’d like it to have (spotify, calculator and a game) but I pretend to do on a remastered version. But, overall, I liked the result and I think it looks like me.
I’m finally shipping my web os - version 2. I am really proud of the updates. A lot of them. I added a calculator, a game, an awesome loading screen, a search app, paint, the weather now is available for every city, a jokes genarator and my favorite: MUSIC!! It’s my playlist so I would be thankful if you listen (just a bit 🙃). If you’re going to test I really want you to pay attention to the UI details I tried to make. Also, I think this site is the proof of my improvement (my first time coding that was not in c++ was here in stardance),
This is my second ship of the web os 2. I just made some quick adjustments that people noticed a lot: I changed the disabled cursor style in the close button and made the windows “spawn” in the right side of the screen. I’m really happy with the ratings, but I want some more suggestions.
For this ship, I focused on organizing the UI and improving usability: Deletion: I implemented a ‘drag to delete’ feature. Now, you can delete icons by simply dragging them to the bottom center of the screen. Standardization: I standardized all the icons for a more consistent look. Window Spawn: I adjusted the exact positions where windows appear when they are opened so they don’t clutter the screen (almost all reviews said that). Also, NEW JOKES. Now I’m working to improve the paint app (trying to put new colors and saving when closing the window).
For this ship, I added a EASTER EGG (kinda, because the photo tells a lot), delete every icon to discover, and I updated the README. I just want to clarify some things that people rated that I didn’t understood: The wallpaper is not AI, just search in google, you’ll find it. The icons have a white background because I like (why would I make it transparent then?), just see the dev log changes. Some people said it don’t look I passed that much hours, I completely understand, but I passed more, if you count when I was learning, keep in mind I’m new. I made it japanese style, because, to me, Tokyo is the representation of street style, but of course there will be others country’s references (see my “bio”, I like pop with letters)....
|
1793213555.7970493
|
1793299955.7970493
|
|
66267
|
FUNNY QUIZ by @LeFi | Stardance
|
LeFi
|
1
|
9.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T12:07:58Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "It’s a simple quiz based Codesistency’s vido on yt. I had so much fun making it my own. I feel like i have the power to make anything and it feel incredible!!!", "repo": "https://github.com/LeFi2312/quitz", "demo": "https://lefi2312.github.io/quitz/"}]...
|
[{"post_id": 74432, "ts": "202 [{"post_id": 74432, "ts": "2026-09-27T11:26:45Z", "hours": 8.7439, "text": "it’s pretty much done.. idk if i should add smth but i like how it turned out"}]...
|
Title: FUNNY QUIZ by @LeFi | Stardance
Devlogs:
i Title: FUNNY QUIZ by @LeFi | Stardance
Devlogs:
it’s pretty much done.. idk if i should add smth but i like how it turned out
Ships:
It’s a simple quiz based Codesistency’s vido on yt. I had so much fun making it my own. I feel like i have the power to make anything and it feel incredible!!!...
|
1793216921.1270297
|
1793303321.1270297
|
|
59793
|
KestrelOS by @hien | Stardance
|
hien
|
0
|
1.46
|
0
|
[]
|
[{"post_id": 74437, "ts": "202 [{"post_id": 74437, "ts": "2026-09-27T11:38:40Z", "hours": 0.3069, "text": "Music synthesizer rework Reowkred the music maker to have three tabs: drums, lead and bass and 4 different types of waves(they affect how the beat sounds): saw, square, tri and sin along with other features!"}, {"post_id": 74390, "ts": "2026-09-27T09:31:07Z", "hours": 1.1486, "text": "Terminal and browser rework Updated the terminal to actually be able to run some commands and added a working code editor! Also made the browser actually searchable(but still in progress to load apps like youtube,…) and made a README. To benchmark the capabilities of the code editor, I was about to load kestrelOS inside of kestrelOS!!!"}]...
|
Title: KestrelOS by @hien | Stardance
Devlogs:
Te Title: KestrelOS by @hien | Stardance
Devlogs:
Terminal and browser rework Updated the terminal to actually be able to run some commands and added a working code editor! Also made the browser actually searchable(but still in progress to load apps like youtube,…) and made a README. To benchmark the capabilities of the code editor, I was about to load kestrelOS inside of kestrelOS!!!
Music synthesizer rework Reowkred the music maker to have three tabs: drums, lead and bass and 4 different types of waves(they affect how the beat sounds): saw, square, tri and sin along with other features!...
|
1793029897.8633323
|
1793634697.8633323
|
|
62112
|
PDF-Tools by @Dev_L_K | Stardance
|
Dev_L_K
|
3
|
7.0
|
19
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T11:46:03Z", "hours": 1.0, "multiplier": 4.24, "payout": 6, "blessing": "neutral", "text": "PDF TOOLS This is a simple web app with useful Pdf tools built with html css and js. it has a home screen where all tools can be accessed. Now it has 3 tools. In later ships more tools will be added. PDF Merger Merge multiple pdfs into a single one directly from browser. Features Select multiple Pdfs at once add more pdfs later remove files if needed PDF Compressor Reduce the size of pdf using rasterization. It has different levels low medium and high to control the file size. Features None of your data never leaves your browser/device There might need a small compromise in the quality. when reducing more size. The pdf pages are converted into jpeg and recombined. IMAGE TO PDF Upload many images and pack them as a single pdf. Using jsPdf library. Split PDF Upload a pdf and split it into chunks. Features You can upload multiple files at once. None of your data never leaves your device. Images are converted to pdf without any compromise in quality. Tech used HTML CSS JS GITHUB PAGES PDF-lib.js PDF worker.js jsPdf.js Live at https://pdf.devlkakkoth.me", "repo": "https://github.com/dev-l-k/pdf-tools", "demo": "https://pdf.devlkakkoth.me"}, {"ship_num": 2, "ts": "2026-09-16T16:34:20Z", "hours": 3.0, "multiplier": 4.32, "payout": 7, "blessing": "neutral", "text": "PDF TOOLS it is a multifunctional pdf tools. That has some sub apps Pdf Merger Merge multiple number of PDFs to a single one Pdf Compressor Reduce the size of a pdf using rasterization Image to PDF Upload Images and convert them into a single PDF. Every tool had its own difficulties and challenges. I am only a beginner to js. So ai helped me to understand and debug my errors. I hasn’t used direct ai in this project. Please read my readme and my GitHub commits too. Hopes this one helps you In future ships more features will be added. Rate this project", "repo": "https://github.com/dev-l-k/pdf-tools", "demo": "https://pdf.devlkakkoth.me"}, {"ship_num": 3, "ts": "2026-09-14T18:10:31Z", "hours": 3.0, "multiplier": 4.35, "payout": 6, "blessing": "neutral", "text": "PDF TOOLS WEB APP This is a collection of web based pdf tools Now it has only 1 tool Pdf merger. More tools will be added in the future. You can upload any file into it and the app will merge them and outputs a single pdf. None of your data never leaves your browser. I have used ai just in pdf merger app’s pdf merging js code only. Other css and html and all are written by me itself. Merging pdf js code was a little challenging.", "repo": "https://github.com/dev-l-k/pdf-tools", "demo": "https://pdf.devlkakkoth.me"}]...
|
[{"post_id": 74438, "ts": "202 [{"post_id": 74438, "ts": "2026-09-27T11:43:17Z", "hours": 1.3678, "text": "Devlog Pdf tools Split PDF Two features split each page of a pdf as PDFs split at certain range Live at https://pdf.devlkakkoth.me/split"}, {"post_id": 69209, "ts": "2026-09-16T16:27:23Z", "hours": 0.315, "text": "Devlog 8 PDF TOOLS README Updated readme.md connected sub apps with home app Going for 2nd ship Live at https://pdf.devlkakkoth.me"}, {"post_id": 69188, "ts": "2026-09-16T15:43:01Z", "hours": 0.7047, "text": "Devlog 7 PDF TOOLS IMAGE TO PDF upload multiple images none of your data leaves the browser Status : completed debugged LIVE AT https://pdf.devlkakkoth.me/imgtopdf"}, {"post_id": 69161, "ts": "2026-09-16T14:30:56Z", "hours": 0.3319, "text": "Devlog 6 PDF TOOLS Image to PDF Added html structure to code it utilizes same css for the home screen. So no css now gonna work for JS to make it functional Live at https://pdf.devlkakkoth.me/imgtopdf"}, {"post_id": 69119, "ts": "2026-09-16T12:45:39Z", "hours": 0.9508, "text": "Devlog 5 PDF TOOLS PDF COMPRESSOR Status: Completed Features Upload a pdf and compress it using rasterization supports both portrait and landscape orientation. you can select needed amount for compression. Live at https://pdf.devlkakkoth.me/pdfcompress"}, {"post_id": 69090, "ts": "2026-09-16T11:00:52Z", "hours": 0.25, "text": "Devlog 4 PDF TOOLS PDF COMPRESS worked on css for the project no seprate css file for it same file of index.html Added additional styling for level buttons Live at https://pdf.devlkakkoth.me/pdfcompress"}, {"post_id": 68919, "ts": "2026-09-16T01:37:30Z", "hours": 0.6539, "text": "Devlog 3 PDF TOOLS PDF Compress completed html structure for pdf compress now gonna work for the css. used common same css so some styles already exist Added buttons to control compression Uses Rasterization method to compress pdf. Live at : https://pdf.devlkakkoth.me/pdfcompress"}, {"post_id": 68187, "ts": "2026-09-14T17:50:16Z", "hours": 1.5014, "text": "Devlog 2 Pdf Tools Added a new sub app pdf merger you can upload more that 1 PDFs and merge it to single one"}, {"post_id": 68122, "ts": "2026-09-14T15:37:28Z", "hours": 1.1467, "text": "Devlog 1 PDFTools Added a home screen for the web app. Also added a new subapp pdf merger currently pdf merger is on work."}]...
|
Title: PDF-Tools by @Dev_L_K | Stardance
Devlogs: Title: PDF-Tools by @Dev_L_K | Stardance
Devlogs:
Devlog 1 PDFTools Added a home screen for the web app. Also added a new subapp pdf merger currently pdf merger is on work.
Devlog 2 Pdf Tools Added a new sub app pdf merger you can upload more that 1 PDFs and merge it to single one
Devlog 3 PDF TOOLS PDF Compress completed html structure for pdf compress now gonna work for the css. used common same css so some styles already exist Added buttons to control compression Uses Rasterization method to compress pdf. Live at : https://pdf.devlkakkoth.me/pdfcompress
Devlog 4 PDF TOOLS PDF COMPRESS worked on css for the project no seprate css file for it same file of index.html Added additional styling for level buttons Live at https://pdf.devlkakkoth.me/pdfcompress
Devlog 5 PDF TOOLS PDF COMPRESSOR Status: Completed Features Upload a pdf and compress it using rasterization supports both portrait and landscape orientation. you can select needed amount for compression. Live at https://pdf.devlkakkoth.me/pdfcompress
Devlog 6 PDF TOOLS Image to PDF Added html structure to code it utilizes same css for the home screen. So no css now gonna work for JS to make it functional Live at https://pdf.devlkakkoth.me/imgtopdf
Devlog 7 PDF TOOLS IMAGE TO PDF upload multiple images none of your data leaves the browser Status : completed debugged LIVE AT https://pdf.devlkakkoth.me/imgtopdf
Devlog 8 PDF TOOLS README Updated readme.md connected sub apps with home app Going for 2nd ship Live at https://pdf.devlkakkoth.me
Devlog Pdf tools Split PDF Two features split each page of a pdf as PDFs split at certain range Live at https://pdf.devlkakkoth.me/split
Ships:
PDF TOOLS WEB APP This is a collection of web based pdf tools Now it has only 1 tool Pdf merger. More tools will be added in the future. You can upload any file into it and the app will merge them and outputs a single pdf. None of your data never leaves your browser. I have used ai just in pdf merger app’s pdf merging js code only. Other css and html and all are written by me itself. Merging pdf js code was a little challenging.
PDF TOOLS it is a multifunctional pdf tools. That has some sub apps Pdf Merger Merge multiple number of PDFs to a single one Pdf Compressor Reduce the size of a pdf using rasterization Image to PDF Upload Images and convert them into a single PDF. Every tool had its own difficulties and challenges. I am only a beginner to js. So ai helped me to understand and debug my errors. I hasn’t used direct ai in this project. Please read my readme and my GitHub commits too. Hopes this one helps you In future ships more features will be added. Rate this project
PDF TOOLS This is a simple web app with useful Pdf tools built with html css and js. it has a home screen where all tools can be accessed. Now it has 3 tools. In later ships more tools will be added. PDF Merger Merge multiple pdfs into a single one directly from browser. Features Select multiple Pdfs at once add more pdfs later remove files if needed PDF Compressor Reduce the size of pdf using rasterization. It has different levels low medium and high to control the file size. Features None of your data never leaves your browser/device There might need a small compromise in the quality. when reducing more size. The pdf pages are converted into jpeg and recombined. IMAGE TO PDF Upload many images and pack them as a single pdf. Using jsPdf library. Split PDF Upload a pdf and split it into chunks. Features You can upload multiple files at once. None of your data never leaves your device. Images are converted to pdf without any compromise in quality. Tech used HTML CSS JS GITHUB PAGES PDF-lib.js PDF worker.js jsPdf.js Live at https://pdf.devlkakkoth.me...
|
1793209926.0808246
|
1793296326.0808246
|
|
65291
|
MY first first slack bot (obito) by @Obito | Stard MY first first slack bot (obito) by @Obito | Stardance...
|
Obito
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T12:56:55Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made my slack bot which is very easy to write the code compared to its deployment process which made me to work for more than 18 hours", "repo": "https://github.com/tharunkumarCYSEC/my-first-slack-bot", "demo": "https://app.slack.com/client/T0C3X8PP7K5/D0C4W6DK8PN"}]...
|
[{"post_id": 74441, "ts": "202 [{"post_id": 74441, "ts": "2026-09-27T11:47:32Z", "hours": 0.575, "text": "i finally completed this its a frustraing project that the coding code is very simple but the deployment is so frustrating"}]...
|
Title: MY first first slack bot (obito) by @Obito Title: MY first first slack bot (obito) by @Obito | Stardance
Devlogs:
i finally completed this its a frustraing project that the coding code is very simple but the deployment is so frustrating
Ships:
i made my slack bot which is very easy to write the code compared to its deployment process which made me to work for more than 18 hours...
|
1793213739.113164
|
1793300139.113164
|
|
2265
|
Bean2Space (DIY Rocket) by @TGA25dev | Stardance
|
TGA25dev
|
0
|
44.29
|
0
|
[]
|
[{"post_id": 74447, "ts": "202 [{"post_id": 74447, "ts": "2026-09-27T12:09:07Z", "hours": 1.2717, "text": "Devlog # 15 What’s new ? Parachute ! I’ve worked an hour on the parachute design and I think it came pretty good, I’ve tested it from a very low altitude and it seems to work well so I’m pretty happy with it. It’s made out of a tyvek security suit and I’ve used nylon cables for the lines."}, {"post_id": 74412, "ts": "2026-09-27T10:36:40Z", "hours": 1.1864, "text": "Devlog #14.1 What’s new ? Nothing really important in this devlog tbh, again lot’s of tests in the code, debugging and trying new things (that didn’t worked..) I’ve also replaced the imu temperature value in the live telemetry by the mcu temperature because it’s a more important value to know and monitor. Cool things are coming! (like the parachute design )"}, {"post_id": 73492, "ts": "2026-09-25T07:23:31Z", "hours": 2.6869, "text": "Devlog #14 What’s new ? I’ve been working mainly on software those days, I had a few issues with the program running on battery, once it was started I couldn’t connect it again with the cable. To fix that I’ve added another main script that runs when the chip is powered on and adds a timer to et me interrupt boot sequence if needed. Then, I’ve worked on a collector for the ground station whose role is to grab the data of the other esp32 by serial and save it to a csv file (it can then be readed by the dashboard for example) Due to the collector needing a new telemetry parsing structure I’ve also updated how telemetry sequences are written and printed in the ground station main file Also, I’ve been doing some tests with the state detection algorithm to try if it detected well the different flight states (I literally threw the electronics in the air and almost smashed them on the ground, but it’s ok at least it worked well) See you for the next devlog!"}, {"post_id": 70864, "ts": "2026-09-19T21:49:22Z", "hours": 3.7017, "text": "Devlog #13 What’s new ? A lot of work today as I’ve finished the soldering part!! Now the flight computer is done and mounted into the 3D printed sled, it was my first time soldering like that and I think it came pretty decent (though cable management looks horrible to me). The only thing that didn’t work when I powered it was the led, I spent a long time trying to understand what was wrong to finally realize that I had fried it… I replaced it with a new one and the issue was solved! (also changed the color by the way) Appart from soldering I’ve also added a setting to disable buzzer or led on startup and an internal temperature watchdog to monitor the temperature and prevent the chip from overheating What’s next ? As I said earlier the project is almost finished! Yet I still need to add a few more features, fix some bugs and print the last parts"}, {"post_id": 70602, "ts": "2026-09-19T13:03:41Z", "hours": 3.0914, "text": "Devlog #12 Wow it’s really been a while since last devlog.. so ? What’s new ? Well I’ve been working on a dasboard for the rocket, it uses Streamlit to display data and gathers data from a csv file that is saved on the computer. csv file is written by a local script that uses serial to catch data from the ground station via usb-c I’ve also been improving CAD model a little bit, that includes fillets for the fins and modifications to the instruments rack Also fixed a bug where calibration offsets weren’t applied properly, optimized some code and tried a lot of things in the main script. What’s next ? Last week I’ve started soldering the components to the perfboard so Lapse devlog is coming very soon, I’m planning to finish this in a few days Once soldering is done I will test out the software in “real” conditions and print the missing parts of the rocket Stay tuned ! ✨"}, {"post_id": 55639, "ts": "2026-08-27T16:28:56Z", "hours": 4.0294, "text": "Devlog #11 What’s new? I initially planned on adding an SD Card module but after fighting with it for almost two hours I couldn’t get it to work, it uses SPI but I don’t know why it refused cooperate.. Then I improved the wireless transmission system by adding sequence numbers and the rocket state to the packets. Everything was working fine until it totally stopped working. I spent another hour trying to debug only to finally plug the external antenas into both ESPs which fixed the issue.. Finally I’ve moved the rocket state detection to a separate module so the main file remains clean and is easier to debug What’s next? Now that those issues are solved I’m going to create a nice dashboard I will run on my computer to display live data charts and logs, I don’t know how I’m going to design it but hopefully it will look great On the screenshot you can see on the left logs from the rocket and on the right the live data that is pulled from the ground station by serial connection."}, {"post_id": 53065, "ts": "2026-08-23T13:58:43Z", "hours": 1.4889, "text": "Devlog #10 What’s new ? First of all I now have the missing funds to complete the project, that’s pretty insane and I’m really happy and proud about it Second, I’v been working again on the external pods as the measurements for the camera were wrong and it didn’t fitted at all. I’m going to print that part to test it out but it should now be fixed."}, {"post_id": 47185, "ts": "2026-08-14T22:02:08Z", "hours": 3.4086, "text": "Devlog #9.2 What’s new ? Some tweaks on CAD README ! I’v spent quite a lot of time writing the readme file, hope it’s good! I’v added several sections with a lot of details and renders from Fusion."}, {"post_id": 41273, "ts": "2026-08-05T11:52:29Z", "hours": 0.4667, "text": "Devlog #9.1 What’s new ? I’v added a mount for the shock cord, I will put a screw and attach the cord to it. the screw will go in those holes. Both mounts will be printed separately and then glued with expoxy On the bottom of the engine stage I’v also added 4 holes to attach the cord to"}, {"post_id": 41245, "ts": "2026-08-05T10:25:58Z", "hours": 1.9014, "text": "Devlog #9 What’s new ? CAD: I’v updated the top cover of the trigger system box because the new fire button I’v chose needed a bigger hole Wirings: I’v made two schematics, one for the flight computer on wokwi and another for the trigger station on draw.io. Took me a bit of time to understand how to create both diagrams since it’s the first time I use those websites but I think it came pretty good. What’s nex ? First I’m gonna address some issues I’v seen on the design especially in the engine stage Then when it’s done I’ll double check my BOM file is correct and I will probably submit for funding"}, {"post_id": 40804, "ts": "2026-08-04T15:43:03Z", "hours": 4.6297, "text": "Devlog #8 What’s new ? This time I’v designed the component’s sled/rack: The sled will first slide in the main tube and then be attached using 4 M3 screws as you can see on both sides (I’ll also use 4 other screws to secure the soldering board on the rack itself.) I will then add heat inserts when building. On the other side of the sled the lipo battery will be secured using velcro straps. And on the middle I’v added 2 “windows” for cable management. As you can see I’v also added 3 holes (the triangle pattern) on the main tube, they’r static port holes and will be used to ensure the pressure inside the rocket is the same as outside (for the pressure sensor to get correct data) EDIT: I just realized I forgot to upload the screenshot showing that and now I can’t… What’s next ? I think I might now submit the project for funding as I am missing some critical pieces to build the rocket. I’ll also probably tweak some things in the design and log a few hours more. After than I will continue to code the flight computer. Stay tuned! 🚀"}, {"post_id": 38862, "ts": "2026-08-01T12:57:15Z", "hours": 5.9436, "text": "Devlog #7 What’s new ? I worked a lot on CAD for the past 10h of work, lot’s of headaches because of the pods (and because I forgot to hit record on lapse) but here’s what I made : It took me a lot of time to work on the pods because I couldn’t find a good aerodynamic design. So I designed it, re-designed it and re-re-redisigned it. Finally I have something working though it’s not perfect, I should tweak some things to make it even better. I also worked on designing the ground trigger system, basically it’s a box that will host the batteries to ignite the rocket, a security lock with a key and the fire button. It wasn’t very hard but it also took me a bit of time to find the correct diameters for the components. What’s next ? Well I think I will polish the designs perhaps add new things and fix some others, once thats done I will submit for funding to get the rest of the components I need. Stay tuned!"}, {"post_id": 27079, "ts": "2026-07-12T09:53:23Z", "hours": 1.1592, "text": "Devlog #6 What’s new ? The rocket has now a state tracking system, what this does is that it takes the altitude, calculates the velocity and then deduces the rocket’s state (iddle, in flight, descending etc etc..) It took me some time to understand how velocity could be used and calculated and I also had to implement smpoothing systems to prevent the noise from the sensors to give me weird values I’v also added a “demo mode”, it simulates fake telemetry (altitude) so I can test the status tracking system What’s next ? Well I don’t really know, I’v been strugling with live logs and I don’t really know how I could implement that, I’ll see what’s missing and what I can do to improve the rocket Below is a screenshot of the terminal’s output, because I’m not going to take another picture of the harware as nothing really changed.. I’ll try to do better next devlog!"}, {"post_id": 19365, "ts": "2026-06-30T17:17:45Z", "hours": 1.9311, "text": "Devlog #5 CAD!! Well so today I opened Fusion360 and entirely remodeled all the parts of the rocket. I had mesh files from OpenRocket but I needed to turn them into solid shapes. I will probably have to spend more time on Fusion because I’m not sure the shoulder for the main stage is well designed and will fit properly. Also, I might need to design something to keep the engine inside the tube so it doesn’t move."}, {"post_id": 16833, "ts": "2026-06-27T10:23:39Z", "hours": 1.815, "text": "Devlog #4 What’s new On each run the rocket is now assigned a random flight number for better identification (also added in transmitted packets, you’l see later why) Zombie connections are now killed before starting everything to prevent issues with unclosed sockets Clock chip frequency has been reduced (the esp is heating a lot I need to find why and fix the performances..) I’v added new telemetry packet flags to distinguish between telemetry and messages (I’ll probably forward live logs from the rocket to the ground station using that) What’s coming Well, pretty much everything I said before (performances, live logs, telemetry saving in csv files, charts..) Also going to try to start the CAD in Fusion360"}, {"post_id": 15646, "ts": "2026-06-25T13:22:40Z", "hours": 2.2681, "text": "Devlog #3 What’s new I was looking at the telemetry data and noticed relative pressure mesurement was uncorrect so I fixed it (took me a moment to understand why..) - Also fixed gyro x value calculation that was wrong Now the main chip broadcasts it’s telemetry so it can be read by the other chip on the ground I’v added new buttons to the dashboard to stop Wifi and start ESPNow transmission Anddd last but not least, the rocket has now an internal clock which is for now used as timestamp when packets are sent What’s on the picture The “ground station” (white cable) which is an ESP32 C3 My breadboard with all the components which will be in the rocket (just noticed buzzer cable was disconnected)"}, {"post_id": 15539, "ts": "2026-06-25T08:01:32Z", "hours": 1.2831, "text": "Devlog #2 What’s new I’v started working on live wireless transmission so I could have live data transmission from the rocket to a ground station (another ESP32). I can now broadcast data from the rocket and it’s read by the ground station. I’v added new options on the dashboard, I can now remotely start the calibration process – it will be useful on ground before the launch And now ? Now I am going to improve the dashboard by addind new options and probably telemetry Probably going to cleanup some code and put things in other files for better readability"}, {"post_id": 12518, "ts": "2026-06-20T13:17:26Z", "hours": 2.0281, "text": "1st devlog! Made basic CAD in OpenRocket software to design the rocket’s body and fins. It helped me understanding how aerodynamics will affect the rocket during the flight Started the software part, I use Python paired with a XIAO ESP32 S3 as main flight computer. I also have a BMP280 and an MPU6050 as main flight instruments. I’v added getter functions for telemetry and setters for calibration. Also added the main file with a startup function and wifi manager for wireless ground control."}]...
|
Title: Bean2Space (DIY Rocket) by @TGA25dev | Star Title: Bean2Space (DIY Rocket) by @TGA25dev | Stardance
Devlogs:
1st devlog! Made basic CAD in OpenRocket software to design the rocket’s body and fins. It helped me understanding how aerodynamics will affect the rocket during the flight Started the software part, I use Python paired with a XIAO ESP32 S3 as main flight computer. I also have a BMP280 and an MPU6050 as main flight instruments. I’v added getter functions for telemetry and setters for calibration. Also added the main file with a startup function and wifi manager for wireless ground control.
Devlog #2 What’s new I’v started working on live wireless transmission so I could have live data transmission from the rocket to a ground station (another ESP32). I can now broadcast data from the rocket and it’s read by the ground station. I’v added new options on the dashboard, I can now remotely start the calibration process – it will be useful on ground before the launch And now ? Now I am going to improve the dashboard by addind new options and probably telemetry Probably going to cleanup some code and put things in other files for better readability
Devlog #3 What’s new I was looking at the telemetry data and noticed relative pressure mesurement was uncorrect so I fixed it (took me a moment to understand why..) - Also fixed gyro x value calculation that was wrong Now the main chip broadcasts it’s telemetry so it can be read by the other chip on the ground I’v added new buttons to the dashboard to stop Wifi and start ESPNow transmission Anddd last but not least, the rocket has now an internal clock which is for now used as timestamp when packets are sent What’s on the picture The “ground station” (white cable) which is an ESP32 C3 My breadboard with all the components which will be in the rocket (just noticed buzzer cable was disconnected)
Devlog #4 What’s new On each run the rocket is now assigned a random flight number for better identification (also added in transmitted packets, you’l see later why) Zombie connections are now killed before starting everything to prevent issues with unclosed sockets Clock chip frequency has been reduced (the esp is heating a lot I need to find why and fix the performances..) I’v added new telemetry packet flags to distinguish between telemetry and messages (I’ll probably forward live logs from the rocket to the ground station using that) What’s coming Well, pretty much everything I said before (performances, live logs, telemetry saving in csv files, charts..) Also going to try to start the CAD in Fusion360
Devlog #5 CAD!! Well so today I opened Fusion360 and entirely remodeled all the parts of the rocket. I had mesh files from OpenRocket but I needed to turn them into solid shapes. I will probably have to spend more time on Fusion because I’m not sure the shoulder for the main stage is well designed and will fit properly. Also, I might need to design something to keep the engine inside the tube so it doesn’t move.
Devlog #6 What’s new ? The rocket has now a state tracking system, what this does is that it takes the altitude, calculates the velocity and then deduces the rocket’s state (iddle, in flight, descending etc etc..) It took me some time to understand how velocity could be used and calculated and I also had to implement smpoothing systems to prevent the noise from the sensors to give me weird values I’v also added a “demo mode”, it simulates fake telemetry (altitude) so I can test the status tracking system What’s next ? Well I don’t really know, I’v been strugling with live logs and I don’t really know how I could implement that, I’ll see what’s missing and what I can do to improve the rocket Below is a screenshot of the terminal’s output, because I’m not going to take another picture of the harware as nothing really changed.. I’ll try to do better next devlog!
Devlog #7 What’s new ? I worked a lot on CAD for the past 10h of work, lot’s of headaches because of the pods (and because I forgot to hit record on lapse) but here’s what I made : It took me a lot of time to work on the pods because I couldn’t find a good aerodynamic design. So I designed it, re-designed it and re-re-redisigned it. Finally I have something working though it’s not perfect, I should tweak some things to make it even better. I also worked on designing the ground trigger system, basically it’s a box that will host the batteries to ignite the rocket, a security lock with a key and the fire button. It wasn’t very hard but it also took me a bit of time to find the correct diameters for the components. What’s next ? Well I think I will polish the designs perhaps add new things and fix some others, once thats done I will submit for funding to get the rest of the components I need. Stay tuned!
Devlog #8 What’s new ? This time I’v designed the component’s sled/rack: The sled will first slide in the main tube and then be attached using 4 M3 screws as you can see on both sides (I’ll also use 4 other screws to secure the soldering board on the rack itself.) I will then add heat inserts when building. On the other side of the sled the lipo battery will be secured using velcro straps. And on the middle I’v added 2 “windows” for cable management. As you can see I’v also added 3 holes (the triangle pattern) on the main tube, they’r static port holes and will be used to ensure the pressure inside the rocket is the same as outside (for the pressure sensor to get correct data) EDIT: I just realized I forgot to upload the screenshot showing that and now I can’t… What’s next ? I think I might now submit the project for funding as I am missing some critical pieces to build the rocket. I’ll also probably tweak some things in the design and log a few hours more. After than I will continue to code the flight computer. Stay tuned! 🚀
Devlog #9 What’s new ? CAD: I’v updated the top cover of the trigger system box because the new fire button I’v chose needed a bigger hole Wirings: I’v made two schematics, one for the flight computer on wokwi and another for the trigger station on draw.io. Took me a bit of time to understand how to create both diagrams since it’s the first time I use those websites but I think it came pretty good. What’s nex ? First I’m gonna address some issues I’v seen on the design especially in the engine stage Then when it’s done I’ll double check my BOM file is correct and I will probably submit for funding
Devlog #9.1 What’s new ? I’v added a mount for the shock cord, I will put a screw and attach the cord to it. the screw will go in those holes. Both mounts will be printed separately and then glued with expoxy On the bottom of the engine stage I’v also added 4 holes to attach the cord to
Devlog #9.2 What’s new ? Some tweaks on CAD README ! I’v spent quite a lot of time writing the readme file, hope it’s good! I’v added several sections with a lot of details and renders from Fusion.
Devlog #10 What’s new ? First of all I now have the missing funds to complete the project, that’s pretty insane and I’m really happy and proud about it Second, I’v been working again on the external pods as the measurements for the camera were wrong and it didn’t fitted at all. I’m going to print that part to test it out but it should now be fixed.
Devlog #11 What’s new? I initially planned on adding an SD Card module but after fighting with it for almost two hours I couldn’t get it to work, it uses SPI but I don’t know why it refused cooperate.. Then I improved the wireless transmission system by adding sequence numbers and the rocket state to the packets. Everything was working fine until it totally stopped working. I spent another hour trying to debug only to finally plug the external antenas into both ESPs which fixed the issue.. Finally I’ve moved the rocket state detection to a separate module so the main file remains clean and is easier to debug What’s next? Now that those issues are solved I’m going to create a nice dashboard I will run on my computer to display live data charts and logs, I don’t know how I’m going to design it but hopefully it will look great On the screenshot you can see on the left logs from the rocket and on the right the live data that is pulled from the ground station by serial connection.
Devlog #12 Wow it’s really been a while since last devlog.. so ? What’s new ? Well I’ve been working on a dasboard for the rocket, it uses Streamlit to display data and gathers data from a csv file that is saved on the computer. csv file is written by a local script that uses serial to catch data from the ground station via usb-c I’ve also been improving CAD model a little bit, that includes fillets for the fins and modifications to the instruments rack Also fixed a bug where calibration offsets weren’t applied properly, optimized some code and tried a lot of things in the main script. What’s next ? Last week I’ve started soldering the components to the perfboard so Lapse devlog is coming very soon, I’m planning to finish this in a few days Once soldering is done I will test out the software in “real” conditions and print the missing parts of the rocket Stay tuned ! ✨
Devlog #13 What’s new ? A lot of work today as I’ve finished the soldering part!! Now the flight computer is done and mounted into the 3D printed sled, it was my first time soldering like that and I think it came pretty decent (though cable management looks horrible to me). The only thing that didn’t work when I powered it was the led, I spent a long time trying to understand what was wrong to finally realize that I had fried it… I replaced it with a new one and the issue was solved! (also changed the color by the way) Appart from soldering I’ve also added a setting to disable buzzer or led on startup and an internal temperature watchdog to monitor the temperature and prevent the chip from overheating What’s next ? As I said earlier the project is almost finished! Yet I still need to add a few more features, fix some bugs and print the last parts
Devlog #14 What’s new ? I’ve been working mainly on software those days, I had a few issues with the program running on battery, once it was started I couldn’t connect it again with the cable. To fix that I’ve added another main script that runs when the chip is powered on and adds a timer to et me interrupt boot sequence if needed. Then, I’ve worked on a collector for the ground station whose role is to grab the data of the other esp32 by serial and save it to a csv file (it can then be readed by the dashboard for example) Due to the collector needing a new telemetry parsing structure I’ve also updated how telemetry sequences are written and printed in the ground station main file Also, I’ve been doing some tests with the state detection algorithm to try if it detected well the different flight states (I literally threw the electronics in the air and almost smashed them on the ground, but it’s ok at least it worked well) See you for the next devlog!
Devlog #14.1 What’s new ? Nothing really important in this devlog tbh, again lot’s of tests in the code, debugging and trying new things (that didn’t worked..) I’ve also replaced the imu temperature value in the live telemetry by the mcu temperature because it’s a more important value to know and monitor. Cool things are coming! (like the parachute design )
Devlog # 15 What’s new ? Parachute ! I’ve worked an hour on the parachute design and I think it came pretty good, I’ve tested it from a very low altitude and it seems to work well so I’m pretty happy with it. It’s made out of a tyvek security suit and I’ve used nylon cables for the lines....
|
1793238859.5300665
|
1793843659.5300665
|