|
24500
|
My portfolio by @fraa2a | Stardance
|
fraa2a
|
1
|
3.0
|
25
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-23T11:41:00Z", "hours": 3.0, "multiplier": 7.23, "payout": 25, "blessing": "neutral", "text": "Today I built my first simple portfolio.I had never really learned frontend development before, but today felt different. I actually enjoyed working on something personal: a small, minimal and efficient portfolio that represents me.I know it is simple, but that is exactly what I wanted. I like things that are clean, direct and minimal. No unnecessary noise, just something that works and feels mine. I learnt how to better use CSS (i knew 0 css before this project). I used iconify icons dependency for the icons. I implemented a simple localstorage save for the theme color preferency. I honestly did not expect to have fun writing CSS, but somehow I did. Im still thinking in improving my portfolio in the future!", "repo": "https://github.com/fraa2a/portfolio/", "demo": "https://fraa2a.top"}]...
|
[{"post_id": 14284, "ts": "202 [{"post_id": 14284, "ts": "2026-06-23T10:34:29Z", "hours": 3.4456, "text": "Today I built my first simple portfolio.I had never really learned frontend development before, but today felt different. I actually enjoyed working on something personal: a small, minimal and efficient portfolio that represents me.I know it is simple, but that is exactly what I wanted. I like things that are clean, direct and minimal. No unnecessary noise, just something that works and feels mine. I learnt how to better use CSS (i knew 0 css before this project). I used iconify icons dependency for the icons. I implemented a simple localstorage save for the theme color preferency. I honestly did not expect to have fun writing CSS, but somehow I did."}]...
|
Title: My portfolio by @fraa2a | Stardance
Devlog Title: My portfolio by @fraa2a | Stardance
Devlogs:
Today I built my first simple portfolio.I had never really learned frontend development before, but today felt different. I actually enjoyed working on something personal: a small, minimal and efficient portfolio that represents me.I know it is simple, but that is exactly what I wanted. I like things that are clean, direct and minimal. No unnecessary noise, just something that works and feels mine. I learnt how to better use CSS (i knew 0 css before this project). I used iconify icons dependency for the icons. I implemented a simple localstorage save for the theme color preferency. I honestly did not expect to have fun writing CSS, but somehow I did.
Ships:
Today I built my first simple portfolio.I had never really learned frontend development before, but today felt different. I actually enjoyed working on something personal: a small, minimal and efficient portfolio that represents me.I know it is simple, but that is exactly what I wanted. I like things that are clean, direct and minimal. No unnecessary noise, just something that works and feels mine. I learnt how to better use CSS (i knew 0 css before this project). I used iconify icons dependency for the icons. I implemented a simple localstorage save for the theme color preferency. I honestly did not expect to have fun writing CSS, but somehow I did. Im still thinking in improving my portfolio in the future!...
|
1793292910.5272186
|
1793379310.5272186
|
|
24518
|
FAST by @Slayer | Stardance
|
Slayer
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T06:36:40Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I have built a single page website for the students. Students who just passed their Fsc exams are now willing to take admission in the universties. FAST NUCES is one of the top universties of Pakistan. They conduct their own entry test. My website will help students to calculate thier aggegate according to thier test marks, matric and fsc marks.", "repo": "https://github.com/SlayerArman/FAST", "demo": "https://slayerarman.github.io/FAST/"}]...
|
[{"post_id": 15508, "ts": "202 [{"post_id": 15508, "ts": "2026-06-25T06:25:35Z", "hours": 3.0, "text": "So the project is finally finished and I am gonna ship it. I hope it get a good review. All the error and the calculation problems are fixed now. It shows correct aggregate according to the policy of FAST NUCES Entry Test Program. As the tests are happening now students can use this website to calculate their aggregate easily. They could also check the previous merit lists of the universty."}, {"post_id": 15182, "ts": "2026-06-24T17:48:05Z", "hours": 3.0, "text": "Added the buttons for better user interaction. This website helps students to calculate merits of FAST Universty."}, {"post_id": 14823, "ts": "2026-06-24T02:24:06Z", "hours": 2.0, "text": "No AI Copy Pasting. Pure 330+ lines typed with my fingers in 2h."}]...
|
Title: FAST by @Slayer | Stardance
Devlogs:
No AI Title: FAST by @Slayer | Stardance
Devlogs:
No AI Copy Pasting. Pure 330+ lines typed with my fingers in 2h.
Added the buttons for better user interaction. This website helps students to calculate merits of FAST Universty.
So the project is finally finished and I am gonna ship it. I hope it get a good review. All the error and the calculation problems are fixed now. It shows correct aggregate according to the policy of FAST NUCES Entry Test Program. As the tests are happening now students can use this website to calculate their aggregate easily. They could also check the previous merit lists of the universty.
Ships:
I have built a single page website for the students. Students who just passed their Fsc exams are now willing to take admission in the universties. FAST NUCES is one of the top universties of Pakistan. They conduct their own entry test. My website will help students to calculate thier aggegate according to thier test marks, matric and fsc marks....
|
1792878806.0805485
|
1793742806.0805485
|
|
24532
|
BARM by @priyanshu | Stardance
|
priyanshu
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T14:20:58Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Recently I was not available to finish this project or ship. I want not physically fine. This project will help you to build webapps faster as i have created a plugin that you can use with better auth to create resources that eventually help in building apps faster. i have also wrote a simple docs here https://barm.p8labs.in/ nothing more Thanks for reviewing!", "repo": "https://github.com/P8labs/barm", "demo": "https://npmjs.com/package/@p8labs/barm"}]...
|
[{"post_id": 68082, "ts": "202 [{"post_id": 68082, "ts": "2026-09-14T14:19:33Z", "hours": 0.2758, "text": "Added docs to finish this project so anyone can use it"}, {"post_id": 57258, "ts": "2026-08-29T11:23:40Z", "hours": 0.7411, "text": "I have published this plugin to npm and currently it is very early to use but it works for smaller applications like if you want to make simple todo app or simple crud application this will work fine."}, {"post_id": 54923, "ts": "2026-08-26T04:39:57Z", "hours": 4.0556, "text": "Finally it is working but there are alot of bugs and problems to fix like currently developer need to pass all the fields including id, created and updated at dates etc while creating resource instead i want to refine it more in terms of input schema"}, {"post_id": 46167, "ts": "2026-08-13T06:12:44Z", "hours": 2.7639, "text": "I am building a resource management plugin for better auth so we no longer need to create APIs manually instead just need to define what is needed so far I have setup a testbench of todo app and plugin connected to it."}]...
|
Title: BARM by @priyanshu | Stardance
Devlogs:
I Title: BARM by @priyanshu | Stardance
Devlogs:
I am building a resource management plugin for better auth so we no longer need to create APIs manually instead just need to define what is needed so far I have setup a testbench of todo app and plugin connected to it.
Finally it is working but there are alot of bugs and problems to fix like currently developer need to pass all the fields including id, created and updated at dates etc while creating resource instead i want to refine it more in terms of input schema
I have published this plugin to npm and currently it is very early to use but it works for smaller applications like if you want to make simple todo app or simple crud application this will work fine.
Added docs to finish this project so anyone can use it
Ships:
Recently I was not available to finish this project or ship. I want not physically fine. This project will help you to build webapps faster as i have created a plugin that you can use with better auth to create resources that eventually help in building apps faster. i have also wrote a simple docs here https://barm.p8labs.in/ nothing more Thanks for reviewing!...
|
1793148739.5163207
|
1793235139.5163207
|
|
24536
|
App Overlay by @Gamer123 | Stardance
|
Gamer123
|
1
|
7.0
|
65
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T07:02:10Z", "hours": 7.0, "multiplier": 9.67, "payout": 65, "blessing": "neutral", "text": "IT’S SHIP TIME! The whole goal of this project was to solve a real problem for me, and hopefully for others as well. What the project does is allow for any app to be overlayed onto your screen to help you in other programs or games! For example, inspiration while doing art, or notes on how to complete a level! (my tool is always on top, making it better than things like split screen, you save screen space and it works great) Throughout this project, I encountered a lot of problems that needed a ton of research. That is how any percent of AI ended up in this project. I had little knowledge of how to get mirroring to actually work! But with some research and help from AI, it is working and functioning, and it doesn’t look too bad at that. I can say I am pretty proud of this, as it took effort and time, and solved a real problem. How to Test: Press try project, then download the exe and run it (give it a second to configure everything) And boom, it works right out of the box! (credit to @FlyingCow on youtube for the minecraft build)", "repo": "https://github.com/SquirrelEnjoyer23/Overlay-App", "demo": "https://github.com/SquirrelEnjoyer23/Overlay-App/releases/tag/V1.0"}]...
|
[{"post_id": 15478, "ts": "202 [{"post_id": 15478, "ts": "2026-06-25T05:07:44Z", "hours": 0.4772, "text": "Dev Log #4 Final revisions! I have been working on polishing up the project, now the print functions are removed, changed it so now the settings txt file is under a folder named “Overlay-App” just so it looks nicer. as well now it doesn’t give you the option to overlay the error message and some other small little fixes!"}, {"post_id": 15451, "ts": "2026-06-25T03:47:05Z", "hours": 0.9647, "text": "Dev Log #3 Its looking fancy! I have since the last devlog, updated the UI to have a change mode button as well as the structure to allow the feature to work, now there is a changeable light mode/dark mode and the settings saves through a system i created which can create a settings file, as well as read and write to it to save the users desired mode."}, {"post_id": 14972, "ts": "2026-06-24T09:53:24Z", "hours": 2.8422, "text": "Dev Log #2 Its Finally looking good! I made some changes visually to it as well as now it can hold more buttons as there is a scrolling frame All of this made in python As well as several bugs were fixed! And now there is an icon! Just a few more features to go and it will be done, such as adding light mode vs dark mode."}, {"post_id": 14854, "ts": "2026-06-24T03:45:31Z", "hours": 2.4469, "text": "Dev Log #1 The goal of this project is to let you overlay what ever you want onto your screen, So far i have developed the basic UI and the overlay does work (with help of AI) However, the project doesn’t feel very polished, since it functionally works now its time to make it feel like a real app! Image displayed is what it currently looks like when you go to select a app to overlay."}]...
|
Title: App Overlay by @Gamer123 | Stardance
Devlo Title: App Overlay by @Gamer123 | Stardance
Devlogs:
Dev Log #1 The goal of this project is to let you overlay what ever you want onto your screen, So far i have developed the basic UI and the overlay does work (with help of AI) However, the project doesn’t feel very polished, since it functionally works now its time to make it feel like a real app! Image displayed is what it currently looks like when you go to select a app to overlay.
Dev Log #2 Its Finally looking good! I made some changes visually to it as well as now it can hold more buttons as there is a scrolling frame All of this made in python As well as several bugs were fixed! And now there is an icon! Just a few more features to go and it will be done, such as adding light mode vs dark mode.
Dev Log #3 Its looking fancy! I have since the last devlog, updated the UI to have a change mode button as well as the structure to allow the feature to work, now there is a changeable light mode/dark mode and the settings saves through a system i created which can create a settings file, as well as read and write to it to save the users desired mode.
Dev Log #4 Final revisions! I have been working on polishing up the project, now the print functions are removed, changed it so now the settings txt file is under a folder named “Overlay-App” just so it looks nicer. as well now it doesn’t give you the option to overlay the error message and some other small little fixes!
Ships:
IT’S SHIP TIME! The whole goal of this project was to solve a real problem for me, and hopefully for others as well. What the project does is allow for any app to be overlayed onto your screen to help you in other programs or games! For example, inspiration while doing art, or notes on how to complete a level! (my tool is always on top, making it better than things like split screen, you save screen space and it works great) Throughout this project, I encountered a lot of problems that needed a ton of research. That is how any percent of AI ended up in this project. I had little knowledge of how to get mirroring to actually work! But with some research and help from AI, it is working and functioning, and it doesn’t look too bad at that. I can say I am pretty proud of this, as it took effort and time, and solved a real problem. How to Test: Press try project, then download the exe and run it (give it a second to configure everything) And boom, it works right out of the box! (credit to @FlyingCow on youtube for the minecraft build)...
|
1793274738.6671696
|
1793361138.6671696
|
|
24549
|
scretUI by @kan411 | Stardance
|
kan411
|
1
|
8.0
|
21
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T23:06:56Z", "hours": 8.0, "multiplier": 5.0, "payout": 21, "blessing": "neutral", "text": "scretUI is a phone case with built-in 4.2” e-ink display that can display current time, date, to-do list, 7-hour forecast and dynamic landscape. It uses ESP32-S3 to connect to a mobile app via BLE every 5 minutes. Thanks to 1500mAh battery, it can last around one week on a single charge. I think the hardest part was getting BLE to work reliably, but soldering in such a tight space was also pretty hard (especially because I’m not that good at soldering). The whole case adds around 5 mm compared to standard case, and I’m pretty satisfied with it because first iterations added twice as much. Most of this space is occupied by polycarbonate that is protecting the e-ink display so unfortunately I couldn’t shrink it more without losing durability. I managed to accomplish main goals of this project (not getting in the way of main camera and minimum 4 day battery life).", "repo": "https://github.com/kanal411/scretUI", "demo": ""}]...
|
[{"post_id": 16536, "ts": "202 [{"post_id": 16536, "ts": "2026-06-26T21:56:22Z", "hours": 0.3, "text": "Devlog #4 - Fixed few last bugs before shipping project, recorded demo."}, {"post_id": 15895, "ts": "2026-06-25T20:37:42Z", "hours": 2.6392, "text": "Devlog #3 - Today I mainly worked on bug that occured after lask devlog (the phone wasn’t connecting to esp32 after first connection) and changed app language to engilsh so I can publish it on my github."}, {"post_id": 15008, "ts": "2026-06-24T11:58:01Z", "hours": 3.3725, "text": "Devlog #2 – Apart from fixing minor bugs, since the last update I replaced my schedule with a to-do list (because holidays in my country are starting next week). I redesigned the app so I can now add and remove tasks from the to-do list. I also worked on dynamic clouds: depending on the cloud cover, the screen now displays 0–10 clouds, and I made sure they don’t overlap. I replaced hard-coded localization with the phone’s current locale. Lastly, I made it so that after sunset, instead of a sun icon in the weather forecast, a moon icon is displayed."}, {"post_id": 14570, "ts": "2026-06-23T18:55:18Z", "hours": 2.1019, "text": "I started this project before (around 2 weeks ago) I found out about hack club so those are things I made for this project and aren’t logged here: I designed and 3d printed (in tpu 90a) case (i think it is final version) with space for: xiao seed ESP32 s3 that controls whole device 4.2 inch e-ink (white and black) 1500mAh lipo battery (in white petg housing so it has better protection and doesn’t overheat) button to turn on and off the ESP32 voltage divider so I can read battery voltage directly from ESP32 analog pins - PC for e-ink protection Basic firmware that every 5 minutes connect to my phone and display: 7 hour weather forecast (temp and rain probability) current time (+/- 5 minutes) simple logo that is replaced with error code if something goes wrong My schedule current sun position (that is replaced by night sky after sunset) simple cloud that slowly moves throught the sky (place where sun position is displayed) Added dark mode (which turns on after sunset)"}]...
|
Title: scretUI by @kan411 | Stardance
Devlogs:
I Title: scretUI by @kan411 | Stardance
Devlogs:
I started this project before (around 2 weeks ago) I found out about hack club so those are things I made for this project and aren’t logged here: I designed and 3d printed (in tpu 90a) case (i think it is final version) with space for: xiao seed ESP32 s3 that controls whole device 4.2 inch e-ink (white and black) 1500mAh lipo battery (in white petg housing so it has better protection and doesn’t overheat) button to turn on and off the ESP32 voltage divider so I can read battery voltage directly from ESP32 analog pins - PC for e-ink protection Basic firmware that every 5 minutes connect to my phone and display: 7 hour weather forecast (temp and rain probability) current time (+/- 5 minutes) simple logo that is replaced with error code if something goes wrong My schedule current sun position (that is replaced by night sky after sunset) simple cloud that slowly moves throught the sky (place where sun position is displayed) Added dark mode (which turns on after sunset)
Devlog #2 – Apart from fixing minor bugs, since the last update I replaced my schedule with a to-do list (because holidays in my country are starting next week). I redesigned the app so I can now add and remove tasks from the to-do list. I also worked on dynamic clouds: depending on the cloud cover, the screen now displays 0–10 clouds, and I made sure they don’t overlap. I replaced hard-coded localization with the phone’s current locale. Lastly, I made it so that after sunset, instead of a sun icon in the weather forecast, a moon icon is displayed.
Devlog #3 - Today I mainly worked on bug that occured after lask devlog (the phone wasn’t connecting to esp32 after first connection) and changed app language to engilsh so I can publish it on my github.
Devlog #4 - Fixed few last bugs before shipping project, recorded demo.
Ships:
scretUI is a phone case with built-in 4.2” e-ink display that can display current time, date, to-do list, 7-hour forecast and dynamic landscape. It uses ESP32-S3 to connect to a mobile app via BLE every 5 minutes. Thanks to 1500mAh battery, it can last around one week on a single charge. I think the hardest part was getting BLE to work reliably, but soldering in such a tight space was also pretty hard (especially because I’m not that good at soldering). The whole case adds around 5 mm compared to standard case, and I’m pretty satisfied with it because first iterations added twice as much. Most of this space is occupied by polycarbonate that is protecting the e-ink display so unfortunately I couldn’t shrink it more without losing durability. I managed to accomplish main goals of this project (not getting in the way of main camera and minimum 4 day battery life)....
|
1793242475.7568662
|
1793328875.7568662
|
|
24553
|
SOEPBot (Slack) by @poepoepipi | Stardance
|
poepoepipi
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T14:22:27Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "SOEPBot is a Slack bot designed to make your day a little better. To do that, I added a few fun commands such as catfact , joke , and meme . It also includes some more technical commands, like server , which displays server information, and ping , which shows the bot’s latency. I have included screenshots of all the commands in action. Even though this is a relatively small project, I learned a lot while building it. One thing that surprised me was how much documentation I ended up writing. It wasn’t the most exciting part of the project, but it was great practice and will definitely help when I work on larger projects in the future.", "repo": "https://github.com/poepoepipi/SOEPBot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BPBFP1L2U"}]...
|
[{"post_id": 41336, "ts": "202 [{"post_id": 41336, "ts": "2026-08-05T14:18:34Z", "hours": 0.8858, "text": "documentation done, now going to ship! (this is so that the documentation time also gets registered)"}, {"post_id": 41280, "ts": "2026-08-05T12:10:59Z", "hours": 0.8597, "text": "Lately I’ve been finishing up some old projects, and this is one of them. I added a few extra commands and will probably ship it soon once I’ve fixed the remaining bugs and finished the documentation. I won’t go into too much detail just yet, but my favorite addition is the ‘meme’ command. Building it taught me how to send images to slack through code, which was a lot of fun to figure out. In the screenshots you can also see some of the other commands I’ve added. I made this as a fun Slack bot, so it includes jokes, memes, random facts, and ideas for when you’re bored. I’ll be shipping it today or tomorrow."}, {"post_id": 14365, "ts": "2026-06-23T13:59:54Z", "hours": 0.7331, "text": "Just built my first project, super fun. Took ~30 mins to build, then another 30 because Node.js wasn’t working properly due to using VS Code Flatpak instead of the official version. And I think that a Slack bot is one of the best starter projects."}]...
|
Title: SOEPBot (Slack) by @poepoepipi | Stardance
Title: SOEPBot (Slack) by @poepoepipi | Stardance
Devlogs:
Just built my first project, super fun. Took ~30 mins to build, then another 30 because Node.js wasn’t working properly due to using VS Code Flatpak instead of the official version. And I think that a Slack bot is one of the best starter projects.
Lately I’ve been finishing up some old projects, and this is one of them. I added a few extra commands and will probably ship it soon once I’ve fixed the remaining bugs and finished the documentation. I won’t go into too much detail just yet, but my favorite addition is the ‘meme’ command. Building it taught me how to send images to slack through code, which was a lot of fun to figure out. In the screenshots you can also see some of the other commands I’ve added. I made this as a fun Slack bot, so it includes jokes, memes, random facts, and ideas for when you’re bored. I’ll be shipping it today or tomorrow.
documentation done, now going to ship! (this is so that the documentation time also gets registered)
Ships:
SOEPBot is a Slack bot designed to make your day a little better. To do that, I added a few fun commands such as catfact , joke , and meme . It also includes some more technical commands, like server , which displays server information, and ping , which shows the bot’s latency. I have included screenshots of all the commands in action. Even though this is a relatively small project, I learned a lot while building it. One thing that surprised me was how much documentation I ended up writing. It wasn’t the most exciting part of the project, but it was great practice and will definitely help when I work on larger projects in the future....
|
1792882109.175093
|
1793746109.175093
|
|
24558
|
NeuroFlow by @Hertty10 | Stardance
|
Hertty10
|
1
|
2.0
|
6
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T17:55:21Z", "hours": 2.0, "multiplier": 2.57, "payout": 6, "blessing": "neutral", "text": "I made task tracker that can help people who have a hard time keeping on work and tasks because they cant focus or dont hv the energy stay on track. The coding was challenging since im not great at it. im proud i cud actually do smthng like this. ppl shud know that u hv to scroll to see everything", "repo": "https://github.com/Hertty15/NeuroFlow", "demo": "https://hertty15.github.io/NeuroFlow/"}]...
|
[{"post_id": 15793, "ts": "202 [{"post_id": 15793, "ts": "2026-06-25T17:51:41Z", "hours": 0.2889, "text": "added done button"}, {"post_id": 15755, "ts": "2026-06-25T17:05:43Z", "hours": 1.1786, "text": "added a timer"}, {"post_id": 14578, "ts": "2026-06-23T19:00:33Z", "hours": 0.2997, "text": "Added the add task part"}, {"post_id": 14550, "ts": "2026-06-23T18:25:49Z", "hours": 0.5583, "text": "This is the starting idea"}]...
|
Title: NeuroFlow by @Hertty10 | Stardance
Devlogs Title: NeuroFlow by @Hertty10 | Stardance
Devlogs:
This is the starting idea
Added the add task part
added a timer
added done button
Ships:
I made task tracker that can help people who have a hard time keeping on work and tasks because they cant focus or dont hv the energy stay on track. The coding was challenging since im not great at it. im proud i cud actually do smthng like this. ppl shud know that u hv to scroll to see everything...
|
1792878861.7763755
|
1793742861.7763755
|
|
24562
|
IDE by @JoonHyuk | Stardance
|
JoonHyuk
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-17T02:42:05Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a lightweight code editor from scratch in Python/PyQt6, with a real extension system: extensions are just Python files that expose an activate(api) function, and the API lets them register commands, add toolbar buttons, hook into file-open events, and print to the built-in terminal. I also built a Marketplace panel that reads a JSON catalog and installs extensions into the app with one click. The hardest part was debugging an environment issue that had nothing to do with my code — Windows Smart App Control was silently blocking PyQt6’s native Qt DLLs from loading because they aren’t signed with a certificate Microsoft’s reputation service recognizes. Traced it through the Korean-language error message down to the exact Windows security policy before I could even get the app running again. I’m proud of the extension API design — it’s small (four methods) but already enough to let a sample extension add its own button and command without touching core app code. To test it: clone the repo, pip install PyQt6, run python main.py. Click “Extensions” to open the Marketplace and install the sample extension, then use the toolbar button it adds. You can also open/edit files from the sidebar and run code directly with the ▶ button.", "repo": "https://github.com/coder1529/IDE", "demo": "https://github.com/coder1529/IDE/releases"}]...
|
[{"post_id": 29905, "ts": "202 [{"post_id": 29905, "ts": "2026-07-17T02:29:58Z", "hours": 0.5625, "text": "Finished the IDE!"}, {"post_id": 14325, "ts": "2026-06-23T12:42:01Z", "hours": 1.0711, "text": "Made A working file loading system and made file link and pip import"}, {"post_id": 14300, "ts": "2026-06-23T11:29:19Z", "hours": 1.51, "text": "Making mt own ide!"}]...
|
Title: IDE by @JoonHyuk | Stardance
Devlogs:
Maki Title: IDE by @JoonHyuk | Stardance
Devlogs:
Making mt own ide!
Made A working file loading system and made file link and pip import
Finished the IDE!
Ships:
I built a lightweight code editor from scratch in Python/PyQt6, with a real extension system: extensions are just Python files that expose an activate(api) function, and the API lets them register commands, add toolbar buttons, hook into file-open events, and print to the built-in terminal. I also built a Marketplace panel that reads a JSON catalog and installs extensions into the app with one click. The hardest part was debugging an environment issue that had nothing to do with my code — Windows Smart App Control was silently blocking PyQt6’s native Qt DLLs from loading because they aren’t signed with a certificate Microsoft’s reputation service recognizes. Traced it through the Korean-language error message down to the exact Windows security policy before I could even get the app running again. I’m proud of the extension API design — it’s small (four methods) but already enough to let a sample extension add its own button and command without touching core app code. To test it: clone the repo, pip install PyQt6, run python main.py. Click “Extensions” to open the Marketplace and install the sample extension, then use the toolbar button it adds. You can also open/edit files from the sidebar and run code directly with the ▶ button....
|
1793310893.078661
|
1793397293.078661
|
|
24566
|
Gamble This Website! by @forkosssa | Stardance
|
forkosssa
|
1
|
31.0
|
526
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-19T15:32:19Z", "hours": 31.0, "multiplier": 17.02, "payout": 526, "blessing": "neutral", "text": "A site where you gamble it’s budget and if you lose too much money it will impact the websites look and feel!", "repo": "https://github.com/Fork0n/gamble-this-site", "demo": "https://gamble-this-website.vercel.app/"}]...
|
[{"post_id": 31270, "ts": "202 [{"post_id": 31270, "ts": "2026-07-19T15:25:40Z", "hours": 4.92, "text": "so i’ve decided to finally end this project.it was fun but i think it’s already production ready, i’ve been working hard lately and i think it’s finished. i’ve finished the core mechanic of the site getting shittier and i’m really proud of my work. surely there are some bugs and other things that i’d love to change/fix but i’mma ship it as is.anyways, have fun playing!"}, {"post_id": 26127, "ts": "2026-07-10T18:55:01Z", "hours": 2.5892, "text": "So I’ve decided to finally address the elephant in the room and draw the sprites; apparently I’ve bitten off more than I can chew, and the sprites came out… shitty (who could’ve guessed). Even though it recorded only like 2 hrs, it was more like 2 hrs + 10+ hrs in Krita. Drawing sprites is apparently extremely hard sooooo idk if I will finish all the sprites before shipping. Anyways, I’ve done sprites for “normal” and “poor” statuses, and I guess I have to do the rich as well, since bankrupt will have no CSS anyways, and I’ll invent something for the filthy rich."}, {"post_id": 22958, "ts": "2026-07-05T17:10:47Z", "hours": 6.4067, "text": "soooo it was quite a long time from the last update (about 5 days)all this time i was working mostly on aesthetics and implementing the core feature of the variable design, anyway i added SFX (mostly so that i can remove them on bankruptcy…). Also i added 3 new modals ready to be implemented! ServiceShutoffNoticeCSS.vue, ServiceShutoffNoticeSound.vue and GameFinishedNotice.vue! also it’s pretty misc and minor but now i added a bunch of typewriter fonts to use!"}, {"post_id": 19197, "ts": "2026-06-30T13:44:48Z", "hours": 2.7144, "text": "HUUUUUUUUUGE README.md updata and minor changes1) added clickable links for the hotline2) revisioned some code3) addedd personal infoa and portfolio4) finally made a half as decent README.md"}, {"post_id": 18346, "ts": "2026-06-29T13:47:20Z", "hours": 2.9567, "text": "I took the weekend half off and now i’ve practically finished the projectI updated some stuff, refined some designs like the heads/tails oneAlso besides that I added the stuff that i’ve been trying to add sine i finished the coinflip: now we see a spinning roulette sprite! Yay I just have to draw a few sprites and i guess it’s ready to be shipped!(ah, yes, don’t mind the placeholder that i used, i needed to check if it would spin the way i need, i’ll make a sprite for it some day) also i’ll probably ship the project before jul 2, the last thing i want is codding on my birthday, or maybe i will, who knows, anyways there’s not that much codding left to do, only sprites"}, {"post_id": 16411, "ts": "2026-06-26T18:13:55Z", "hours": 1.6192, "text": "added not that much1) revisioned the tilting kickflip and kickflip, added neo versions that are… maybe not linearly improved but are a kind of evolution2) added warning when restarting or closing (except when the budget is 1000; it helps when developing and is generally redundant since $1000 is the initial budget)3) added a disclaimer to the coinflip modal (a bug when the coin side image updates with a delay)4) added a general disclaimer as well as a gambling addiction disclaimer with auto country and hotline fetching5) brainstormed adding “past due” warnings when budget is low"}, {"post_id": 15780, "ts": "2026-06-25T17:31:29Z", "hours": 3.2533, "text": "added another shit ton of stuff1) modals for: coinflip animation; coinflip side selector; roulette animation; also added arrows and stuff2) made sprites for normal coin head & tail3) added the ability to select a coin side before betting (yeah, forgot about it last time)4) made so that on coinflip (when you press the flip button) it plays the animation in a modal, the animation actually corresponds to your bet and the status (won/lost) and ypur bet amount!5) finally addressing the elephant in the room:you can now kickflip the logo! yes… also that brought a rework of the tilting script + now we have tilting-kickflip.ts because it wasn’t working good enough with both stacked and kickflip.ts in case you don’t need tilting at all"}, {"post_id": 15304, "ts": "2026-06-24T21:10:31Z", "hours": 4.0117, "text": "added a shit ton of stuff1) modals for betting, selecting roulette number and a template for the game modal but i’ll add that later (maybe)2) uhm i made gambling working? yes, now you can bet and only guess if it’s working fine or if it has a severe bug3) refined the layout (probably)4) added /sandbox to test and develop stuff5) that’s it ig, fine for 3-4hrs? maybe"}, {"post_id": 15011, "ts": "2026-06-24T12:02:47Z", "hours": 1.0928, "text": "added tilting to the title, and buttonsadded a working budget counterthe placeholder now serves the purpose of debug: bet adds $100 to the budget and roll subs $100next update should add at least some working mechanics on gambling, and then i will leave the aesthetics and the core mechanic of the design getting better or worse to the end ( i still have to draw the sprites…)"}, {"post_id": 14502, "ts": "2026-06-23T17:21:01Z", "hours": 1.3697, "text": "as of now it’s not more than a demo of the design and layout, i haven’t even decided on what the third came should be, i guess for an hour it’s quite good"}]...
|
Title: Gamble This Website! by @forkosssa | Starda Title: Gamble This Website! by @forkosssa | Stardance
Devlogs:
as of now it’s not more than a demo of the design and layout, i haven’t even decided on what the third came should be, i guess for an hour it’s quite good
added tilting to the title, and buttonsadded a working budget counterthe placeholder now serves the purpose of debug: bet adds $100 to the budget and roll subs $100next update should add at least some working mechanics on gambling, and then i will leave the aesthetics and the core mechanic of the design getting better or worse to the end ( i still have to draw the sprites…)
added a shit ton of stuff1) modals for betting, selecting roulette number and a template for the game modal but i’ll add that later (maybe)2) uhm i made gambling working? yes, now you can bet and only guess if it’s working fine or if it has a severe bug3) refined the layout (probably)4) added /sandbox to test and develop stuff5) that’s it ig, fine for 3-4hrs? maybe
added another shit ton of stuff1) modals for: coinflip animation; coinflip side selector; roulette animation; also added arrows and stuff2) made sprites for normal coin head & tail3) added the ability to select a coin side before betting (yeah, forgot about it last time)4) made so that on coinflip (when you press the flip button) it plays the animation in a modal, the animation actually corresponds to your bet and the status (won/lost) and ypur bet amount!5) finally addressing the elephant in the room:you can now kickflip the logo! yes… also that brought a rework of the tilting script + now we have tilting-kickflip.ts because it wasn’t working good enough with both stacked and kickflip.ts in case you don’t need tilting at all
added not that much1) revisioned the tilting kickflip and kickflip, added neo versions that are… maybe not linearly improved but are a kind of evolution2) added warning when restarting or closing (except when the budget is 1000; it helps when developing and is generally redundant since $1000 is the initial budget)3) added a disclaimer to the coinflip modal (a bug when the coin side image updates with a delay)4) added a general disclaimer as well as a gambling addiction disclaimer with auto country and hotline fetching5) brainstormed adding “past due” warnings when budget is low
I took the weekend half off and now i’ve practically finished the projectI updated some stuff, refined some designs like the heads/tails oneAlso besides that I added the stuff that i’ve been trying to add sine i finished the coinflip: now we see a spinning roulette sprite! Yay I just have to draw a few sprites and i guess it’s ready to be shipped!(ah, yes, don’t mind the placeholder that i used, i needed to check if it would spin the way i need, i’ll make a sprite for it some day) also i’ll probably ship the project before jul 2, the last thing i want is codding on my birthday, or maybe i will, who knows, anyways there’s not that much codding left to do, only sprites
HUUUUUUUUUGE README.md updata and minor changes1) added clickable links for the hotline2) revisioned some code3) addedd personal infoa and portfolio4) finally made a half as decent README.md
soooo it was quite a long time from the last update (about 5 days)all this time i was working mostly on aesthetics and implementing the core feature of the variable design, anyway i added SFX (mostly so that i can remove them on bankruptcy…). Also i added 3 new modals ready to be implemented! ServiceShutoffNoticeCSS.vue, ServiceShutoffNoticeSound.vue and GameFinishedNotice.vue! also it’s pretty misc and minor but now i added a bunch of typewriter fonts to use!
So I’ve decided to finally address the elephant in the room and draw the sprites; apparently I’ve bitten off more than I can chew, and the sprites came out… shitty (who could’ve guessed). Even though it recorded only like 2 hrs, it was more like 2 hrs + 10+ hrs in Krita. Drawing sprites is apparently extremely hard sooooo idk if I will finish all the sprites before shipping. Anyways, I’ve done sprites for “normal” and “poor” statuses, and I guess I have to do the rich as well, since bankrupt will have no CSS anyways, and I’ll invent something for the filthy rich.
so i’ve decided to finally end this project.it was fun but i think it’s already production ready, i’ve been working hard lately and i think it’s finished. i’ve finished the core mechanic of the site getting shittier and i’m really proud of my work. surely there are some bugs and other things that i’d love to change/fix but i’mma ship it as is.anyways, have fun playing!
Ships:
A site where you gamble it’s budget and if you lose too much money it will impact the websites look and feel!...
|
1793292637.022486
|
1793379037.022486
|
|
24568
|
Simple C CLI Bot by @Qazi | Stardance
|
Qazi
|
1
|
1.0
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T16:52:07Z", "hours": 1.0, "multiplier": 1.11, "payout": 1, "blessing": "neutral", "text": "A simple CLI bot using C. The most challenging part was coding on a phone and fighting with UI. The bot is very easy to use.", "repo": "https://github.com/Qazi-01/Simple-C-CLI-Bot", "demo": "https://github.com/Qazi-01/Simple-C-CLI-Bot/releases/tag/v1.0.0"}]...
|
[{"post_id": 15695, "ts": "202 [{"post_id": 15695, "ts": "2026-06-25T14:54:41Z", "hours": 1.1819, "text": "I just built a very simple cli bot with 3 functions in C."}]...
|
Title: Simple C CLI Bot by @Qazi | Stardance
Devl Title: Simple C CLI Bot by @Qazi | Stardance
Devlogs:
I just built a very simple cli bot with 3 functions in C.
Ships:
A simple CLI bot using C. The most challenging part was coding on a phone and fighting with UI. The bot is very easy to use....
|
1793296626.3693497
|
1793383026.3693497
|
|
24570
|
ZeroG-KIT by @otzpt | Stardance
|
otzpt
|
1
|
22.0
|
167
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-05T09:56:16Z", "hours": 22.0, "multiplier": 7.67, "payout": 167, "blessing": "neutral", "text": "ZeroG-KIT is a Windows CLI toolkit that includes 20 tools divided into five categories: system cleanup, utilities, security, network, and text/data tools. It is built in Python and automatically gains admin access when launched, so no GUI is required. One challenge was maintaining consistency across the 20 tools in five separate modules. Every tool that interacts with files, the network, or system calls needed solid error handling. This meant using try/except blocks to prevent crashes with bad input. During the project, I also reorganized the code from a single utilities.py into a proper module structure. It took time, but it made the codebase much cleaner. I’m proud of the final scope. What began as a few basic tools has grown into a toolkit I actually use. It now includes a process killer, a firewall check, AES encryption, a LAN scanner, all in one place. To test it, clone the repo, run pip install -r requirements.txt, and then run python main.py. It only works on Windows and will prompt for admin access on launch. Check out the network scanner, the encryption tool, or the process killer; those are the most interesting features.", "repo": "https://github.com/otzpt/ZeroG-Kit-", "demo": "https://github.com/otzpt/ZeroG-Kit-/releases/tag/realese1"}]...
|
[{"post_id": 19351, "ts": "202 [{"post_id": 19351, "ts": "2026-06-30T17:02:32Z", "hours": 2.1925, "text": "Three more tools went in, plus a structural change that’s probably the bigger story this time. The regex tester is straightforward, take a pattern, take a text, run re.findall(), wrapped in a try/except to catch re.error for bad patterns instead of crashing. Nothing fancy but it’s the kind of utility that earns its keep. Lorem ipsum generator was a chance to use random.choices() properly, a fixed word bank, pick k words at random with replacement, join with spaces. Simple, but it’s the first tool that leans on random instead of secrets. Process killer is the one I’m happiest with. It pulls every running process via psutil.process_iter(), sorts by memory usage, and prints a clean top-30 table. A second function, kill_process(), takes a process name, loops through and terminates matches, with try/except for NoSuchProcess and AccessDenied so it doesn’t blow up on protected system processes. Eventually want a GUI version of this with a red kill button next to the list, but that’s a later project, not blocking this one. The bigger change: split the single utilities.py into proper modules. utilities.py now holds system/image/QR/password/unit-convert/process tools, security.py has hashing, password checking, encryption, vuln scanning, and firewall checks, network.py has the network tools, and text_tools.py has base64, JSON, case conversion, regex, and lorem ipsum. main.py got restructured into category submenus (System, Utilities, Security, Network, Text & Data) instead of one flat list. Toolkit is sitting at 20 tools now and the codebase is a lot easier to navigate. Only thing left before this ships: menu polish, colorama for color, cleaner separators, and a version number in the header."}, {"post_id": 16828, "ts": "2026-06-27T10:08:50Z", "hours": 9.4711, "text": "Three more tools implemented and the toolkit is now at 17. Base64 encode/decode was the simplest one. Python has it built in with the base64 module, so it was mostly about building a clean submenu and making sure the output was readable instead of raw bytes. Same pattern as the encryption tool, encode() on the way in and decode() on the way out. The JSON formatter took a bit more. It reads a file path from the user, opens it, parses the JSON, and prints it back with 4-space indentation. The important part was wrapping the whole thing in a try/except — if the file doesn’t exist or the JSON is malformed it gives a clear error message instead of crashing. Something I’ve been doing more naturally now without thinking about it. Text case converter was probably the most fun. UPPER and lower are trivial, Title Case is one method call, but camelCase and snake_case required actually thinking through the logic, split by spaces, transform each word, join with different separators. Doing snake_case first made camelCase easier to see. 19 hours in. Still have regex tester, lorem ipsum, process killer, and menu polish left before this is ready to ship."}, {"post_id": 15757, "ts": "2026-06-25T17:07:13Z", "hours": 2.0628, "text": "The network section kept growing faster than I expected. After the ping checker and IP viewer, I added a port checker. You provide a host and a port, and it tries to connect with a 3-second timeout. It tells you if the port is open or closed. It’s simple, but I actually use this. It’s much quicker than Googling “how to check if port X is open” every time. I had to wrap it in try/except because if the port is closed, the connection throws an exception and crashes everything. I learned that the hard way. Building the IP scanner was the most satisfying part. It grabs your local IP and removes the last number to get the network prefix. Then, it pings every address from 1 to 255. The first version printed the full ping output for every single address, resulting in 255 walls of text. I fixed this by switching from os.system to os.popen, which allowed me to capture the output and show only the IPs that actually replied. I ran it on my network and discovered 5 devices. One of them I didn’t even know was connected. Now, I have 15 tools total. The network section is done."}, {"post_id": 15276, "ts": "2026-06-24T20:17:53Z", "hours": 3.2436, "text": "The security section is done, network tools are in, and the program now handles admin privileges on its own.The security section is done, network tools are in, and the program now handles admin privileges on its own. For the network side I added two things. A ping checker that sends 4 packets to whatever host you type in, and an IP viewer that shows your local IP using Python’s socket module and your public IP by calling curl ifconfig.me. Both are things I actually use all the time and was tired of opening a separate terminal for. The firewall assistant checks if all three Windows profiles are active and whether port 3389 is exposed. That last one matters — leaving Remote Desktop open is one of the most common security mistakes on Windows machines. The self-elevation part was probably the most satisfying to figure out. Some tools need admin rights to work properly, and instead of making the user remember to right-click and run as admin, the script checks on startup and relaunches itself elevated if needed. My machine has auto-UAC so I don’t see the popup, but it works. 14 tools now. Ready to submit."}, {"post_id": 15161, "ts": "2026-06-24T17:04:18Z", "hours": 3.8214, "text": "The toolkit kept growing faster than I expected. After the first batch of tools, I started getting into stuff I hadn’t touched before — cryptography, QR codes, and digging into Windows internals. First I added the QR code generator. Honestly easier than I thought — create a QRCode object, feed it data, save the image. Done in a few lines. Then I moved into the security section, which ended up being the most interesting part of this devlog. The password strength checker evaluates five criteria and returns a rating. The vulnerability scanner reads a .py file and flags dangerous patterns like eval(), exec(), and pickle.loads() — each one is a separate if so it catches everything, not just the first issue it finds. The encryption tool was the trickiest one. I used Python’s cryptography library with AES via Fernet. The user’s key gets hashed with SHA-256 to get a proper 32-byte key, then Fernet handles the rest. The annoying part was the output — Python was printing b’…’ around the encrypted string which broke the decryption input. Fixed it with .decode(). The firewall assistant uses netsh advfirewall to check if the firewall is active on all three Windows profiles and whether Remote Desktop port 3389 is open. Something I’ll actually use. 13 tools now. Security section is done."}, {"post_id": 14476, "ts": "2026-06-23T16:38:03Z", "hours": 1.1403, "text": "ZeroG-KIT started as a simple idea — instead of opening a bunch of different tools or googling converters every time, why not have everything in one place from the terminal? The name comes from zero gravity, no resistance, no friction, things just flow. I built the main menu first, a while loop with a bordered ASCII interface to keep it clean. From there I added the first batch of features. A temp file cleaner that wipes %TEMP%, Windows\\Temp, and Prefetch in one go, a clipboard viewer, and a batch image converter using Pillow that handles format issues like RGBA to JPG automatically. For the utilities side I added a password generator using Python’s secrets module for actual cryptographic randomness, a SHA-256 text hasher, and a full unit converter covering temperature, weight, length, and data size. Those live in a separate utilities.py to keep the main file readable. 6 out of 6 planned tools are working. Next up is system info and some polish."}]...
|
Title: ZeroG-KIT by @otzpt | Stardance
Devlogs:
Z Title: ZeroG-KIT by @otzpt | Stardance
Devlogs:
ZeroG-KIT started as a simple idea — instead of opening a bunch of different tools or googling converters every time, why not have everything in one place from the terminal? The name comes from zero gravity, no resistance, no friction, things just flow. I built the main menu first, a while loop with a bordered ASCII interface to keep it clean. From there I added the first batch of features. A temp file cleaner that wipes %TEMP%, Windows\Temp, and Prefetch in one go, a clipboard viewer, and a batch image converter using Pillow that handles format issues like RGBA to JPG automatically. For the utilities side I added a password generator using Python’s secrets module for actual cryptographic randomness, a SHA-256 text hasher, and a full unit converter covering temperature, weight, length, and data size. Those live in a separate utilities.py to keep the main file readable. 6 out of 6 planned tools are working. Next up is system info and some polish.
The toolkit kept growing faster than I expected. After the first batch of tools, I started getting into stuff I hadn’t touched before — cryptography, QR codes, and digging into Windows internals. First I added the QR code generator. Honestly easier than I thought — create a QRCode object, feed it data, save the image. Done in a few lines. Then I moved into the security section, which ended up being the most interesting part of this devlog. The password strength checker evaluates five criteria and returns a rating. The vulnerability scanner reads a .py file and flags dangerous patterns like eval(), exec(), and pickle.loads() — each one is a separate if so it catches everything, not just the first issue it finds. The encryption tool was the trickiest one. I used Python’s cryptography library with AES via Fernet. The user’s key gets hashed with SHA-256 to get a proper 32-byte key, then Fernet handles the rest. The annoying part was the output — Python was printing b’…’ around the encrypted string which broke the decryption input. Fixed it with .decode(). The firewall assistant uses netsh advfirewall to check if the firewall is active on all three Windows profiles and whether Remote Desktop port 3389 is open. Something I’ll actually use. 13 tools now. Security section is done.
The security section is done, network tools are in, and the program now handles admin privileges on its own.The security section is done, network tools are in, and the program now handles admin privileges on its own. For the network side I added two things. A ping checker that sends 4 packets to whatever host you type in, and an IP viewer that shows your local IP using Python’s socket module and your public IP by calling curl ifconfig.me. Both are things I actually use all the time and was tired of opening a separate terminal for. The firewall assistant checks if all three Windows profiles are active and whether port 3389 is exposed. That last one matters — leaving Remote Desktop open is one of the most common security mistakes on Windows machines. The self-elevation part was probably the most satisfying to figure out. Some tools need admin rights to work properly, and instead of making the user remember to right-click and run as admin, the script checks on startup and relaunches itself elevated if needed. My machine has auto-UAC so I don’t see the popup, but it works. 14 tools now. Ready to submit.
The network section kept growing faster than I expected. After the ping checker and IP viewer, I added a port checker. You provide a host and a port, and it tries to connect with a 3-second timeout. It tells you if the port is open or closed. It’s simple, but I actually use this. It’s much quicker than Googling “how to check if port X is open” every time. I had to wrap it in try/except because if the port is closed, the connection throws an exception and crashes everything. I learned that the hard way. Building the IP scanner was the most satisfying part. It grabs your local IP and removes the last number to get the network prefix. Then, it pings every address from 1 to 255. The first version printed the full ping output for every single address, resulting in 255 walls of text. I fixed this by switching from os.system to os.popen, which allowed me to capture the output and show only the IPs that actually replied. I ran it on my network and discovered 5 devices. One of them I didn’t even know was connected. Now, I have 15 tools total. The network section is done.
Three more tools implemented and the toolkit is now at 17. Base64 encode/decode was the simplest one. Python has it built in with the base64 module, so it was mostly about building a clean submenu and making sure the output was readable instead of raw bytes. Same pattern as the encryption tool, encode() on the way in and decode() on the way out. The JSON formatter took a bit more. It reads a file path from the user, opens it, parses the JSON, and prints it back with 4-space indentation. The important part was wrapping the whole thing in a try/except — if the file doesn’t exist or the JSON is malformed it gives a clear error message instead of crashing. Something I’ve been doing more naturally now without thinking about it. Text case converter was probably the most fun. UPPER and lower are trivial, Title Case is one method call, but camelCase and snake_case required actually thinking through the logic, split by spaces, transform each word, join with different separators. Doing snake_case first made camelCase easier to see. 19 hours in. Still have regex tester, lorem ipsum, process killer, and menu polish left before this is ready to ship.
Three more tools went in, plus a structural change that’s probably the bigger story this time. The regex tester is straightforward, take a pattern, take a text, run re.findall(), wrapped in a try/except to catch re.error for bad patterns instead of crashing. Nothing fancy but it’s the kind of utility that earns its keep. Lorem ipsum generator was a chance to use random.choices() properly, a fixed word bank, pick k words at random with replacement, join with spaces. Simple, but it’s the first tool that leans on random instead of secrets. Process killer is the one I’m happiest with. It pulls every running process via psutil.process_iter(), sorts by memory usage, and prints a clean top-30 table. A second function, kill_process(), takes a process name, loops through and terminates matches, with try/except for NoSuchProcess and AccessDenied so it doesn’t blow up on protected system processes. Eventually want a GUI version of this with a red kill button next to the list, but that’s a later project, not blocking this one. The bigger change: split the single utilities.py into proper modules. utilities.py now holds system/image/QR/password/unit-convert/process tools, security.py has hashing, password checking, encryption, vuln scanning, and firewall checks, network.py has the network tools, and text_tools.py has base64, JSON, case conversion, regex, and lorem ipsum. main.py got restructured into category submenus (System, Utilities, Security, Network, Text & Data) instead of one flat list. Toolkit is sitting at 20 tools now and the codebase is a lot easier to navigate. Only thing left before this ships: menu polish, colorama for color, cleaner separators, and a version number in the header.
Ships:
ZeroG-KIT is a Windows CLI toolkit that includes 20 tools divided into five categories: system cleanup, utilities, security, network, and text/data tools. It is built in Python and automatically gains admin access when launched, so no GUI is required. One challenge was maintaining consistency across the 20 tools in five separate modules. Every tool that interacts with files, the network, or system calls needed solid error handling. This meant using try/except blocks to prevent crashes with bad input. During the project, I also reorganized the code from a single utilities.py into a proper module structure. It took time, but it made the codebase much cleaner. I’m proud of the final scope. What began as a few basic tools has grown into a toolkit I actually use. It now includes a process killer, a firewall check, AES encryption, a LAN scanner, all in one place. To test it, clone the repo, run pip install -r requirements.txt, and then run python main.py. It only works on Windows and will prompt for admin access on launch. Check out the network scanner, the encryption tool, or the process killer; those are the most interesting features....
|
1793252869.366165
|
1793339269.366165
|
|
24598
|
GRAM by @yashs | Stardance
|
yashs
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-23T12:29:25Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Built a decentralized marketplace for farmers, where no single entity controls any transaction. there’s no leader and we use complex (really complex B-) algorithm to connect right buyers and sellers", "repo": "https://github.com/yashclouded/GRAM", "demo": "https://bright-tanuki-f14338.netlify.app/"}]...
|
[{"post_id": 14313, "ts": "202 [{"post_id": 14313, "ts": "2026-06-23T12:19:27Z", "hours": 7.4597, "text": "Completed the UI!"}]...
|
Title: GRAM by @yashs | Stardance
Devlogs:
Comple Title: GRAM by @yashs | Stardance
Devlogs:
Completed the UI!
Ships:
Built a decentralized marketplace for farmers, where no single entity controls any transaction. there’s no leader and we use complex (really complex B-) algorithm to connect right buyers and sellers...
|
1793253279.1327865
|
1793339679.1327865
|
|
24625
|
Puzzle by @Max_ | Stardance
|
Max_
|
1
|
2.27
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-29T21:24:06Z", "hours": 2.0, "multiplier": 6.88, "payout": 16, "blessing": "neutral", "text": "I made a puzzle software. I learned a lot of things about python :D . It was quite fun and interesting to make and I had many troubles, while I coded it, but it was very entertaining :). You need to have python and PIL library to able to try it out. I appreciate your time you take to test out my project.", "repo": "https://github.com/OgArkad/puzzle", "demo": "https://github.com/OgArkad/puzzle/releases/tag/v1.0.0"}]...
|
[{"post_id": 20241, "ts": "202 [{"post_id": 20241, "ts": "2026-07-01T19:47:59Z", "hours": 0.2667, "text": "made the demo!"}, {"post_id": 18677, "ts": "2026-06-29T21:19:59Z", "hours": 2.0072, "text": "I will ship my project, I did lots thing to it. For example: picture cutting, UI"}, {"post_id": 14358, "ts": "2026-06-23T13:47:57Z", "hours": 0.36, "text": "I want to create a python game, where you can choose a selected picture and puzzle it. I would like to use python. I would want to look like something like this:"}]...
|
Title: Puzzle by @Max_ | Stardance
Devlogs:
I wan Title: Puzzle by @Max_ | Stardance
Devlogs:
I want to create a python game, where you can choose a selected picture and puzzle it. I would like to use python. I would want to look like something like this:
I will ship my project, I did lots thing to it. For example: picture cutting, UI
made the demo!
Ships:
I made a puzzle software. I learned a lot of things about python :D . It was quite fun and interesting to make and I had many troubles, while I coded it, but it was very entertaining :). You need to have python and PIL library to able to try it out. I appreciate your time you take to test out my project....
|
1793311038.6175044
|
1793397438.6175044
|
|
24636
|
HaloSense by @Aran | Stardance
|
Aran
|
1
|
0.0
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T16:25:13Z", "hours": 0.0, "multiplier": 3.34, "payout": 1, "blessing": "neutral", "text": "HaloSense Ship Devlog I built HaloSense , a Windows desktop PC health dashboard that helps users understand their system health in one clean place. The problem I wanted to solve is that Windows spreads important PC information across too many tools. CPU and memory are in Task Manager, storage is in Settings, security is in Windows Security, and background apps can be confusing to track. HaloSense brings the most useful information into one dashboard. HaloSense shows: CPU usage GPU usage Memory usage Storage usage Temperatures when supported Network status Power information Display information Windows Security status Uptime Top memory apps Overall PC health score I spent multiple days building and improving the project, but I did not have it properly connected to the Hackatime servers during most of the work. Because of that, the tracked time may not show the full amount of time I actually spent building, testing, fixing, and shipping HaloSense. The biggest quality-of-life improvement is that users do not need to jump between multiple Windows menus. They can open HaloSense and quickly understand what is happening on their PC. I also added Task Manager-style graphs with a clear 0–100% scale. These graphs make it easier to see CPU, GPU, memory, storage, and temperature trends over time instead of only seeing one number. Another major feature is the smart safe optimizer. It helps reduce unnecessary background activity while staying conservative. It avoids important system processes and protects RGB or lighting apps like SignalRGB, OpenRGB, iCUE, Razer apps, Armoury Crate, Logitech apps, SteelSeries apps, and NZXT CAM. I also polished the desktop experience by replacing the default Electron title bar with a custom HaloSense title bar and custom minimize, maximize, and close buttons. HaloSense was built with Electron, Node.js, HTML, CSS, JavaScript, PowerShell system queries, GitHub, and electron-builder. I shipped the project by publishing it to GitHub, writing a README, building a Windows installer, and creating releases so users can download the .exe installer directly. Overall, HaloSense is a working Windows desktop app that makes PC health easier to understand, safer to optimize, and faster to check.", "repo": "https://github.com/aran-b-colani-neb/HaloSense", "demo": "https://github.com/aran-b-colani-neb/HaloSense/releases/latest"}]...
|
[{"post_id": 15131, "ts": "202 [{"post_id": 15131, "ts": "2026-06-24T16:15:49Z", "hours": 0.2675, "text": "HaloSense Devlog — Project Overview I built HaloSense , a Windows desktop PC health dashboard designed to make system monitoring easier, cleaner, and more understandable. The problem I wanted to solve is that Windows spreads PC health information across too many different places. CPU and memory are in Task Manager, storage is in Settings, security is in Windows Security, display info is somewhere else, and background apps can be hard to understand. I wanted HaloSense to bring the most important information into one clean dashboard. HaloSense shows live system information including: CPU usage GPU usage Memory usage Storage usage Temperatures when available Network status Power information Display information Windows Security status Uptime Top memory apps Overall PC health score One of the main quality-of-life improvements is that the user does not need to open multiple Windows tools just to understand what is happening on their PC. HaloSense puts the most useful information in one place and presents it in a cleaner way. I also added Task Manager-style graphs with a 0–100% usage scale so users can see performance trends over time instead of only seeing one number. This makes it easier to notice spikes, heavy usage, or performance pressure. Another major improvement is the smart safe optimizer. The optimizer is designed to help reduce unnecessary background activity while staying conservative. It avoids important system processes and protects RGB or lighting apps so the user’s PC lighting and device-control software do not accidentally turn off. I also spent time polishing the desktop experience. I replaced the default Electron title bar with a custom frameless HaloSense title bar and added custom minimize, maximize, and close buttons. This made the app feel more like a finished Windows desktop product. HaloSense was built with: Electron Node.js HTML CSS JavaScript PowerShell system queries GitHub electron-builder I also packaged the app into a Windows installer, published the source code on GitHub, wrote a professional README, and prepared releases so users can download the .exe installer directly. Overall, HaloSense is a working quality-of-life tool that helps users understand their PC health faster and with less confusion."}]...
|
Title: HaloSense by @Aran | Stardance
Devlogs:
Ha Title: HaloSense by @Aran | Stardance
Devlogs:
HaloSense Devlog — Project Overview I built HaloSense , a Windows desktop PC health dashboard designed to make system monitoring easier, cleaner, and more understandable. The problem I wanted to solve is that Windows spreads PC health information across too many different places. CPU and memory are in Task Manager, storage is in Settings, security is in Windows Security, display info is somewhere else, and background apps can be hard to understand. I wanted HaloSense to bring the most important information into one clean dashboard. HaloSense shows live system information including: CPU usage GPU usage Memory usage Storage usage Temperatures when available Network status Power information Display information Windows Security status Uptime Top memory apps Overall PC health score One of the main quality-of-life improvements is that the user does not need to open multiple Windows tools just to understand what is happening on their PC. HaloSense puts the most useful information in one place and presents it in a cleaner way. I also added Task Manager-style graphs with a 0–100% usage scale so users can see performance trends over time instead of only seeing one number. This makes it easier to notice spikes, heavy usage, or performance pressure. Another major improvement is the smart safe optimizer. The optimizer is designed to help reduce unnecessary background activity while staying conservative. It avoids important system processes and protects RGB or lighting apps so the user’s PC lighting and device-control software do not accidentally turn off. I also spent time polishing the desktop experience. I replaced the default Electron title bar with a custom frameless HaloSense title bar and added custom minimize, maximize, and close buttons. This made the app feel more like a finished Windows desktop product. HaloSense was built with: Electron Node.js HTML CSS JavaScript PowerShell system queries GitHub electron-builder I also packaged the app into a Windows installer, published the source code on GitHub, wrote a professional README, and prepared releases so users can download the .exe installer directly. Overall, HaloSense is a working quality-of-life tool that helps users understand their PC health faster and with less confusion.
Ships:
HaloSense Ship Devlog I built HaloSense , a Windows desktop PC health dashboard that helps users understand their system health in one clean place. The problem I wanted to solve is that Windows spreads important PC information across too many tools. CPU and memory are in Task Manager, storage is in Settings, security is in Windows Security, and background apps can be confusing to track. HaloSense brings the most useful information into one dashboard. HaloSense shows: CPU usage GPU usage Memory usage Storage usage Temperatures when supported Network status Power information Display information Windows Security status Uptime Top memory apps Overall PC health score I spent multiple days building and improving the project, but I did not have it properly connected to the Hackatime servers during most of the work. Because of that, the tracked time may not show the full amount of time I actually spent building, testing, fixing, and shipping HaloSense. The biggest quality-of-life improvement is that users do not need to jump between multiple Windows menus. They can open HaloSense and quickly understand what is happening on their PC. I also added Task Manager-style graphs with a clear 0–100% scale. These graphs make it easier to see CPU, GPU, memory, storage, and temperature trends over time instead of only seeing one number. Another major feature is the smart safe optimizer. It helps reduce unnecessary background activity while staying conservative. It avoids important system processes and protects RGB or lighting apps like SignalRGB, OpenRGB, iCUE, Razer apps, Armoury Crate, Logitech apps, SteelSeries apps, and NZXT CAM. I also polished the desktop experience by replacing the default Electron title bar with a custom HaloSense title bar and custom minimize, maximize, and close buttons. HaloSense was built with Electron, Node.js, HTML, CSS, JavaScript, PowerShell system queries, GitHub, and electron-builder. I shipped the project by publishing it to GitHub, writing a README, building a Windows installer, and creating releases so users can download the .exe installer directly. Overall, HaloSense is a working Windows desktop app that makes PC health easier to understand, safer to optimize, and faster to check....
|
1793246106.4780412
|
1793332506.4780412
|
|
24643
|
SOEPOS by @poepoepipi | Stardance
|
poepoepipi
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-27T18:31:37Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Web operating system that i use as my personal portfolio. It has stuff like a terminal, an about page, a calculator, and a projects browser. I am very proud of myself because it is my first ever self coded website, previously I always used AI if I needed a website for something, but now I did it myself (except small parts of the CSS), There aren’t really any problems that I can still remember, which is good. I am still going to work on this project after ship, but right now I want to do something else with my newly learnt HTML/JS knowledge.", "repo": "https://github.com/poepoepipi/WebOS", "demo": "https://poepoepipi.github.io/webOS/"}]...
|
[{"post_id": 17066, "ts": "202 [{"post_id": 17066, "ts": "2026-06-27T18:24:12Z", "hours": 1.1269, "text": "Today I mostly worked on polishing things up and fixing bugs to get everything ready for Ship. I’ll definitely keep improving it after Ship, but right now I really want to work on some other projects (and I want those free stickers you get for shipping before the weekend ends 😄)."}, {"post_id": 16460, "ts": "2026-06-26T19:50:48Z", "hours": 1.8203, "text": "Today I made it so you start in a terminal and need to type a command to enter the GUI. I also added a few extra commands there and updated the UI theme, I like it more now. Next, I’m planning to add a proper terminal app inside the GUI so you can run commands while using the desktop. I also want to add window resizing, and maybe even a settings app later on."}, {"post_id": 15000, "ts": "2026-06-24T11:37:44Z", "hours": 1.3433, "text": "Today I made some apps and added movable windows to the OS. I removed the profile picture for now, but I think I’m going to add it back tomorrow. Tomorrow I also want to add a taskbar with app icons, improve the calculator by adding actual buttons, add more information about myself, and create a browser app that lets you explore my projects. It’s still very early, but it’s starting to come together!"}, {"post_id": 14569, "ts": "2026-06-23T18:55:08Z", "hours": 1.2783, "text": "Hey everyone!I just made the first few parts of my browser-based operating system where you can learn more about me and my projects. It’s nothing special yet (although the clock updates live 😄), but I’m signing off for the day so I thought I’d share what I have so far.You might also notice there’s a lot of grass. I kind of love grass. I’m not sure yet if I’ll keep that theme forever, but it might be a good way to finally get other programmers to touch some grass. 😉"}]...
|
Title: SOEPOS by @poepoepipi | Stardance
Devlogs: Title: SOEPOS by @poepoepipi | Stardance
Devlogs:
Hey everyone!I just made the first few parts of my browser-based operating system where you can learn more about me and my projects. It’s nothing special yet (although the clock updates live 😄), but I’m signing off for the day so I thought I’d share what I have so far.You might also notice there’s a lot of grass. I kind of love grass. I’m not sure yet if I’ll keep that theme forever, but it might be a good way to finally get other programmers to touch some grass. 😉
Today I made some apps and added movable windows to the OS. I removed the profile picture for now, but I think I’m going to add it back tomorrow. Tomorrow I also want to add a taskbar with app icons, improve the calculator by adding actual buttons, add more information about myself, and create a browser app that lets you explore my projects. It’s still very early, but it’s starting to come together!
Today I made it so you start in a terminal and need to type a command to enter the GUI. I also added a few extra commands there and updated the UI theme, I like it more now. Next, I’m planning to add a proper terminal app inside the GUI so you can run commands while using the desktop. I also want to add window resizing, and maybe even a settings app later on.
Today I mostly worked on polishing things up and fixing bugs to get everything ready for Ship. I’ll definitely keep improving it after Ship, but right now I really want to work on some other projects (and I want those free stickers you get for shipping before the weekend ends 😄).
Ships:
I made a Web operating system that i use as my personal portfolio. It has stuff like a terminal, an about page, a calculator, and a projects browser. I am very proud of myself because it is my first ever self coded website, previously I always used AI if I needed a website for something, but now I did it myself (except small parts of the CSS), There aren’t really any problems that I can still remember, which is good. I am still going to work on this project after ship, but right now I want to do something else with my newly learnt HTML/JS knowledge....
|
1792882087.496483
|
1793746087.496483
|
|
24645
|
ForestOS by @laupi_oida | Stardance
|
laupi_oida
|
1
|
23.12
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-11T20:07:52Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an WebOS themed around the forest. I really liked how the style turned out at the end and I’m really proud of my code because it’s very clean (I think).", "repo": "https://github.com/Laup0403/LaupiOS", "demo": "https://laup0403.github.io/ForestOS/"}]...
|
[{"post_id": 39102, "ts": "202 [{"post_id": 39102, "ts": "2026-08-01T20:12:11Z", "hours": 2.9761, "text": "ForestOS devlog #6 Hello, Moin and Grüezi! I haven’t posted a devlog in 12 days because I was busy or something. Spoiler Warning! But: We have our first enemie: The ram eater! He is completely buggy and you couldn’t see him in the video but I will fix that. And first I added some story to the notes, programmed a Files app, but I currently don’t have a name for it and I added some terminal commands and a crazy Jumpscare. Try it out now or later or never :( So that was a pretty messy devlog and update but anyways, bye Twin!"}, {"post_id": 31679, "ts": "2026-07-20T09:03:37Z", "hours": 2.3183, "text": "ForestOS devlog #5 I made it so, that at first you have just the welcome window and you must unlock other windows. The first window you unlock is the notes app and you unlock it if you press The big red button And i changed the notes content. Bye Twin!"}, {"post_id": 29061, "ts": "2026-07-15T18:28:56Z", "hours": 3.1597, "text": "ForestOS devlog #4 Big News: ForestOS will now get story! Yesterday I wanted to make a forest themed game for ForestOS, but then I got the wonderful Idea, to make ForestOS to a game. I’ve never saw something like this and I think it could be pretty fun. So I made some plans and already and changed the style and made it a bit darker. That was it for now and sorry, if my english was bad. Have a good day Twin✌️"}, {"post_id": 27285, "ts": "2026-07-12T18:43:52Z", "hours": 1.6697, "text": "ForestOS devlog #3 World, greetings to you! You know, I’m kind of a Linux Larper and of course I need a terminal. So I made one: ForestBreaker! There are some commands that the ForestOS Github Repo available, like forestfetch (the ultimate larper command). That was it for this devlog. Bye, Twin!"}, {"post_id": 26782, "ts": "2026-07-11T19:36:06Z", "hours": 3.4939, "text": "ForestOS devlog #2 World, greetings to you! ForestOS 1.0 is now out. And the best part: you can test it. Just click here: https://laup0403.github.io/ForestOS/ I hope you will test it and find the Easteregg I implemented. And I also added a new App: the Tincan Phone. Now you can hear your favorite animals! (What a blessing) and you can also call the Callcenter. (for my german friends) That was it for this Update and I would really enjoy, if you would try my site. Have a very excellent day, Twin!"}, {"post_id": 24876, "ts": "2026-07-08T18:42:54Z", "hours": 0.7294, "text": "ForestOS devlog #1 World, greetings to you! LaupiOS is from the past. Now I renamed it ForestOS and and I will focus on a forest theme. And I redesigned the welcome screen (hopefully the last time). And I will now post hopefully more devlogs because I have summer holidays now. Anyways that was it for this devlog. Bye, twin!"}, {"post_id": 23091, "ts": "2026-07-05T20:35:57Z", "hours": 3.6433, "text": "LaupiOS devlog #4 World, greetings to you! I added a new app: Nutnotes! There I will write something and currently there is a welcome note and a futures plans note. I also changed the theme more and I think, I’ll might change the name and the theme of this project and I made it so the window you tapped last is on top. And I improved my code more. That was everything. Bye, twin!"}, {"post_id": 19394, "ts": "2026-06-30T18:18:56Z", "hours": 2.8181, "text": "LaupiOS devlog #3 World, greetings to you! I’ve got my mouse back and worked on LaupiOS. I changed the theme so it is a forest/green theme now, you can now close and open the windows and I changed a lot in my code so it’s more readable and I understand it halfway. That was it for tody. Have a good day!"}, {"post_id": 17102, "ts": "2026-06-27T19:29:04Z", "hours": 1.9111, "text": "LaupiOS devlog #2 World, greeting to you! I’ve lost my mouse today, but I also worked on LaupiOS. Here’s what I added: -a live Wallpaper -a Taskbar (a bit buggy tbh) -the site is now a window -you can drag, rotate and close the window."}, {"post_id": 15676, "ts": "2026-06-25T14:17:38Z", "hours": 0.8622, "text": "LaupiOS devlog #1 World, greetings to you! I wanted to make LaupiOS (I know very creative Name) but I have just made games so I thougth this is the right time to learn html. So I’ve learned the basics first and made a simple Website."}]...
|
Title: ForestOS by @laupi_oida | Stardance
Devlog Title: ForestOS by @laupi_oida | Stardance
Devlogs:
LaupiOS devlog #1 World, greetings to you! I wanted to make LaupiOS (I know very creative Name) but I have just made games so I thougth this is the right time to learn html. So I’ve learned the basics first and made a simple Website.
LaupiOS devlog #2 World, greeting to you! I’ve lost my mouse today, but I also worked on LaupiOS. Here’s what I added: -a live Wallpaper -a Taskbar (a bit buggy tbh) -the site is now a window -you can drag, rotate and close the window.
LaupiOS devlog #3 World, greetings to you! I’ve got my mouse back and worked on LaupiOS. I changed the theme so it is a forest/green theme now, you can now close and open the windows and I changed a lot in my code so it’s more readable and I understand it halfway. That was it for tody. Have a good day!
LaupiOS devlog #4 World, greetings to you! I added a new app: Nutnotes! There I will write something and currently there is a welcome note and a futures plans note. I also changed the theme more and I think, I’ll might change the name and the theme of this project and I made it so the window you tapped last is on top. And I improved my code more. That was everything. Bye, twin!
ForestOS devlog #1 World, greetings to you! LaupiOS is from the past. Now I renamed it ForestOS and and I will focus on a forest theme. And I redesigned the welcome screen (hopefully the last time). And I will now post hopefully more devlogs because I have summer holidays now. Anyways that was it for this devlog. Bye, twin!
ForestOS devlog #2 World, greetings to you! ForestOS 1.0 is now out. And the best part: you can test it. Just click here: https://laup0403.github.io/ForestOS/ I hope you will test it and find the Easteregg I implemented. And I also added a new App: the Tincan Phone. Now you can hear your favorite animals! (What a blessing) and you can also call the Callcenter. (for my german friends) That was it for this Update and I would really enjoy, if you would try my site. Have a very excellent day, Twin!
ForestOS devlog #3 World, greetings to you! You know, I’m kind of a Linux Larper and of course I need a terminal. So I made one: ForestBreaker! There are some commands that the ForestOS Github Repo available, like forestfetch (the ultimate larper command). That was it for this devlog. Bye, Twin!
ForestOS devlog #4 Big News: ForestOS will now get story! Yesterday I wanted to make a forest themed game for ForestOS, but then I got the wonderful Idea, to make ForestOS to a game. I’ve never saw something like this and I think it could be pretty fun. So I made some plans and already and changed the style and made it a bit darker. That was it for now and sorry, if my english was bad. Have a good day Twin✌️
ForestOS devlog #5 I made it so, that at first you have just the welcome window and you must unlock other windows. The first window you unlock is the notes app and you unlock it if you press The big red button And i changed the notes content. Bye Twin!
ForestOS devlog #6 Hello, Moin and Grüezi! I haven’t posted a devlog in 12 days because I was busy or something. Spoiler Warning! But: We have our first enemie: The ram eater! He is completely buggy and you couldn’t see him in the video but I will fix that. And first I added some story to the notes, programmed a Files app, but I currently don’t have a name for it and I added some terminal commands and a crazy Jumpscare. Try it out now or later or never :( So that was a pretty messy devlog and update but anyways, bye Twin!
Ships:
I made an WebOS themed around the forest. I really liked how the style turned out at the end and I’m really proud of my code because it’s very clean (I think)....
|
1793263709.2817705
|
1793350109.2817705
|
|
24647
|
Macrofy by @notryaan | Stardance
|
notryaan
|
1
|
7.0
|
91
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T17:08:20Z", "hours": 7.0, "multiplier": 13.76, "payout": 91, "blessing": "neutral", "text": "Turn a spare keyboard into a macro pad on Windows. Got a keyboard lying around? Plug it in and Macrofy takes it over. Its keys stop typing and start firing macros instead (launch an app, open a link, type text, send a hotkey, control media, run a command), while the keyboard you actually type on keeps working like nothing happened. No driver, nothing installed system-wide. Think of it like a Stream Deck, except it’s a whole keyboard and it’s free. :3", "repo": "https://github.com/UltimaCodes/Macrofy", "demo": "https://github.com/UltimaCodes/Macrofy/releases/tag/v1.0"}]...
|
[{"post_id": 15754, "ts": "202 [{"post_id": 15754, "ts": "2026-06-25T17:02:37Z", "hours": 2.1933, "text": "FIRST RELEASE!!!! Fleshed it all out with full settings, QOL features, small oomph here and there + First Release :3"}, {"post_id": 15538, "ts": "2026-06-25T07:57:16Z", "hours": 1.85, "text": "INSANE PROGRESS!!!!! The device specific isolation finally works, the library I was using wasn’t working well so I had to replace it with a different one but rewriting the backend was very quick because they were very similar and I had most of the foundations down. I added Macros, Layers and tried fleshing it out as much as possible. All that’s left is a bit of polish, testing and trying to make the UI not look the exact same as Wootility (oops)"}, {"post_id": 15091, "ts": "2026-06-24T15:01:11Z", "hours": 1.8536, "text": "Worked on bettering the UI and detecting, Device Isolation now works in sync with the UI but theres a problem with it isolating multiple devices at the same time."}, {"post_id": 14429, "ts": "2026-06-23T15:42:22Z", "hours": 0.8697, "text": "worked on setting up the base UI and setting up the isolation layers to separate inputs from different keyboard devices (ongoing). Took alot of inspiration from wootility."}]...
|
Title: Macrofy by @notryaan | Stardance
Devlogs:
Title: Macrofy by @notryaan | Stardance
Devlogs:
worked on setting up the base UI and setting up the isolation layers to separate inputs from different keyboard devices (ongoing). Took alot of inspiration from wootility.
Worked on bettering the UI and detecting, Device Isolation now works in sync with the UI but theres a problem with it isolating multiple devices at the same time.
INSANE PROGRESS!!!!! The device specific isolation finally works, the library I was using wasn’t working well so I had to replace it with a different one but rewriting the backend was very quick because they were very similar and I had most of the foundations down. I added Macros, Layers and tried fleshing it out as much as possible. All that’s left is a bit of polish, testing and trying to make the UI not look the exact same as Wootility (oops)
FIRST RELEASE!!!! Fleshed it all out with full settings, QOL features, small oomph here and there + First Release :3
Ships:
Turn a spare keyboard into a macro pad on Windows. Got a keyboard lying around? Plug it in and Macrofy takes it over. Its keys stop typing and start firing macros instead (launch an app, open a link, type text, send a hotkey, control media, run a command), while the keyboard you actually type on keeps working like nothing happened. No driver, nothing installed system-wide. Think of it like a Stream Deck, except it’s a whole keyboard and it’s free. :3...
|
1793303657.9470878
|
1793390057.9470878
|
|
24663
|
Feather Gradient - A Minecraft Shader by @Theenash Feather Gradient - A Minecraft Shader by @Theenash | Stardance...
|
Theenash
|
1
|
3.0
|
45
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-27T16:15:11Z", "hours": 3.0, "multiplier": 13.86, "payout": 45, "blessing": "neutral", "text": "I made a simple Minecraft shader using GLSL. It was a bit challenging at the start because I have never made anything related to shading. At the start my java libraries were messed up for Gradle which is a compiler so it took me like 2 hours just to fix that(those 2 hours were not tracked by hackatime). On top of that progress was quite slow since I was learning making at the same time. But what I’m proud of is I learned GLSL, and my shader works. It has a Fullbright built in. And it makes the game look semi realistic, not too fancy, but not over the top. If you want to try it out, download it from Modrinth, launch Minecraft, go to Options > Video Settings > Shader Packs, drag and drop the shader(.zip file) directly, and click on your shader from the list to enable it!. I have attached 2 pictures, one in the day, and one in the night showcasing Fullbright.", "repo": "https://github.com/Shadowtech1234/Feather-Gradient", "demo": "https://modrinth.com/shader/feather-gradient"}]...
|
[{"post_id": 35850, "ts": "202 [{"post_id": 35850, "ts": "2026-07-27T15:40:15Z", "hours": 0.6231, "text": "I fixed transparent mobs, fixed the sky glitching sometimes, and the hand/held item. used to be see through, but i fixed that as well. On top of that I tried to make it more efficient for better performance."}, {"post_id": 33822, "ts": "2026-07-24T01:59:45Z", "hours": 1.2458, "text": "I have added shadows and fog! Also I have completed the Lumen Hack Club Tutorial for Minecraft shaders so from now on it is all my work, but all the work I have done so far is for learning and setting the foundation. The left picture is the picture of my shader compared to just vanilla Minecraft on the right."}, {"post_id": 32713, "ts": "2026-07-22T01:23:25Z", "hours": 1.4119, "text": "I’m making a shader for Minecraft!, i added some basic lighting, this took so long😭. btw I’m also making this for another Hack Club thing called Lumen! I added 2 pictures, 1 which is on the left shows the lighting with my shader, and on the right is just normal, Minecraft(no shader)."}]...
|
Title: Feather Gradient - A Minecraft Shader by @T Title: Feather Gradient - A Minecraft Shader by @Theenash | Stardance
Devlogs:
I’m making a shader for Minecraft!, i added some basic lighting, this took so long😭. btw I’m also making this for another Hack Club thing called Lumen! I added 2 pictures, 1 which is on the left shows the lighting with my shader, and on the right is just normal, Minecraft(no shader).
I have added shadows and fog! Also I have completed the Lumen Hack Club Tutorial for Minecraft shaders so from now on it is all my work, but all the work I have done so far is for learning and setting the foundation. The left picture is the picture of my shader compared to just vanilla Minecraft on the right.
I fixed transparent mobs, fixed the sky glitching sometimes, and the hand/held item. used to be see through, but i fixed that as well. On top of that I tried to make it more efficient for better performance.
Ships:
I made a simple Minecraft shader using GLSL. It was a bit challenging at the start because I have never made anything related to shading. At the start my java libraries were messed up for Gradle which is a compiler so it took me like 2 hours just to fix that(those 2 hours were not tracked by hackatime). On top of that progress was quite slow since I was learning making at the same time. But what I’m proud of is I learned GLSL, and my shader works. It has a Fullbright built in. And it makes the game look semi realistic, not too fancy, but not over the top. If you want to try it out, download it from Modrinth, launch Minecraft, go to Options > Video Settings > Shader Packs, drag and drop the shader(.zip file) directly, and click on your shader from the list to enable it!. I have attached 2 pictures, one in the day, and one in the night showcasing Fullbright....
|
1793303333.4779704
|
1793389733.4779704
|
|
24673
|
My awesome macropad! by @kartik_wadhone | Stardanc My awesome macropad! by @kartik_wadhone | Stardance...
|
kartik_wadhone
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-23T20:58:31Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 3x3 macropad that includes a rotary encoder. It was challenging to figure out how to design a pcb as this was my first ever pcb design. I will use this macropad for media controls and to make computers easier to use.", "repo": "https://github.com/kartikwadhone/Macropad", "demo": ""}]...
|
[{"post_id": 14645, "ts": "202 [{"post_id": 14645, "ts": "2026-06-23T20:35:14Z", "hours": 0.3364, "text": "I am almost done with the build. Just need to fine tune and ship."}]...
|
Title: My awesome macropad! by @kartik_wadhone | S Title: My awesome macropad! by @kartik_wadhone | Stardance
Devlogs:
I am almost done with the build. Just need to fine tune and ship.
Ships:
I made a 3x3 macropad that includes a rotary encoder. It was challenging to figure out how to design a pcb as this was my first ever pcb design. I will use this macropad for media controls and to make computers easier to use....
|
1793242480.848698
|
1793328880.848698
|
|
24683
|
Bad Apple!! but it runs on your screen by @aloyak Bad Apple!! but it runs on your screen by @aloyak | Stardance...
|
aloyak
|
1
|
14.0
|
236
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-30T18:12:29Z", "hours": 14.0, "multiplier": 16.39, "payout": 236, "blessing": "neutral", "text": "I made a postprocessing layer that runs on top of your screen in real time. I’ve used it to create my own version of the Bad Apple videoclip, but this tool is a lot more powerful!! It gives you access to fast video decoding, a screen buffer and the huge potential of GLSL shaders to allow you to create any effect you want while still keeping the input layer active! Built on pure C and its currently only available on Linux (only supports X11 backend as thats what is used to manually create the screen buffer, maybe ill add wayland in the future) Hope you like it!!", "repo": "https://github.com/aloyak/badapple", "demo": "https://github.com/aloyak/badapple/releases/tag/0.5"}]...
|
[{"post_id": 37645, "ts": "202 [{"post_id": 37645, "ts": "2026-07-30T15:11:19Z", "hours": 2.1592, "text": "BAD APPLE!! (NOW PUBLISHED) the video is published on youtube!!!!! Check it out: https://youtu.be/a1_1RXaRt74 . Please go like it so it get viral! What was done? I’ve improved the performance by only collecting each window information’s only when they are marked as changed, this improved performance so much that i was able to run some games while using it Added a simple command line argument parser for quick settings and path changes Ive also added some cool C math optimizations like approximating a division by 255 with a cool bit shift trick! (i felt like a genius programmer) What needs to be improved There’s a couple things that still run in the CPU that could be pretty much moved to the GPU if they cause a bottle neck, maybe in the future?? Need to make sure that new/closed or resized windows are accounted and properly updated, this is the next step, ive tried already but this adds a lot of lag and i didnt like how it was looking, but maybe now ill try again! PD: PLEASE go watch the final version: https://youtu.be/a1_1RXaRt74 Btw, im probably gonna be shipping shortly, maybe after next devlog?"}, {"post_id": 36952, "ts": "2026-07-29T11:26:31Z", "hours": 3.3367, "text": "BAD APPLE!! This is the first decent version! I still need to fix a couple things but finally using your computer with this on wont give you an epileptic attack. Note that what you see in the video is very simple, this program i made is a lot more powerful (this is not only for bad apple videos but a general postprocessing realtime layer on your screen!!) New stuff! Completely moved the project from GLFW to SDL3! Fixed the feeding loop bug: refactored the capturer so instead of taking a screenshot every frame it now loops with X11’s backend through all the windows and reconstructs the screen buffer manually (this took a lot of docs reading time), the result is really good but has limitations that i will list below Appart from the effect you see, ive also coded 2 other shaders that also use this video Published the github repo and added both a license and a readme file Current limitations This only works on Linux with X11 backend, if you use wayland, windows or mac this should not work at all, adding support to new platforms would be interesting, but before i need to fix the next issue The current system that reads all windows and stitches them together to form a screen buffer doesnt take into consideration new or closed windows and doesnt update their position or resizing… this will probably be the next thing to do but ill have to check how the performances doing. Of course i will be making a video for youtube to showcase this, this was the main goal of the project either way lmao"}, {"post_id": 36606, "ts": "2026-07-28T20:29:11Z", "hours": 3.6217, "text": "BAD APPLE!! the demo video contains flashing colors!! Huge progress!!!!! i made this work finally! well not quite yet but ive finally have something to show you Theres still some issues you can clearly see but i do know why this is happening Why it currently looks broken? In order to get the screen buffer i need to use X11 (currently, maybe ill port it to use other different APIs) which means that this is pretty much like taking a screenshot every frame but very fast because its the GPU. The problem is that we are re-feeding the previous output to the new one, so it breaks the original colors over time What have i done X11 based system to retrieve the screen’s image and pass it to the shader as another texture! Performance was improved a bit although it generally doesnt really matter (maybe it will when using videos over 1080p, havent tried tho) Fixed A SINGLE memory leak, woops Next steps! Port the project to SDL3, i always start my projects with GLFW and always forget how much i dislike GLFW, it has so many tools and features missing that SDL has, so ill probably port it to it, it shouldnt be very hard"}, {"post_id": 36312, "ts": "2026-07-28T10:55:26Z", "hours": 2.6367, "text": "BAD APPLE!! I’ve been adding the basic OpenGL implementations for a very simple texture and shader “classes” (theres no such thing as a class in C of course). This works kind of like a refresher course for me as I already though I was proficent enough with opengl, maybe once i ship this i might try to re do this but using vulkan instead. What have i added? The shader class, which reads the glsl source files (not pre-compiled) and compiles them in real time, not very fancy right now A texture class that updates in real time to what frame was given by the video section, correctly set to linear color correction and uses rgb24 Now i will add a super simple quad implementation where the shader will render to, on top of the screen buffer What i still need to figure out I dont think that OpenGL can get the screen buffer with the pixel colors of whats behind the screen, even when the glfw window is entirely transparent, I’ll do some more research to see what to do I’ve thought that this program might actually be a lot more useful that what im currently making it look. In the end you can quickly change the glsl shader to have completely different results and also upload any kind of video you want… PD: the window you see in the video is green just so you can see it at all, but in the final version it will be completely transparent"}, {"post_id": 36050, "ts": "2026-07-27T21:48:03Z", "hours": 2.6347, "text": "Bad Apple!! Hey!!! I’m making this quick project that i though would be fun to try and have a bit of a rest from my main project, and i think it started nicely! What is this project? I’m making one of those fun version for the original Bad Apple! music videoclip that got viral long ago (original: https://www.youtube.com/watch?v=FtutLA63Cp8 ). I want it to be very original, at least I dont think it has been done already… I cant really tell you what the video is about yet, but I can tell you that im building it with pure C and openGL… What have i done so far? Project setup: create a basic cmake project that uses glad and glfw to create a special window and render basic stuff on top of it Added a video reader that gets each frame of the video at the correct time based on the time elapsed I started this project making it run in CUDA, but I had a better idea. Then i decided to go with the graphics programming route: i thought about using vulkan but its way too hard to setup for such a small project, even worse considering im using C, not C++. I will have to learn vulkan at some point tho note: the video is the base for the whole program"}]...
|
Title: Bad Apple!! but it runs on your screen by @ Title: Bad Apple!! but it runs on your screen by @aloyak | Stardance
Devlogs:
Bad Apple!! Hey!!! I’m making this quick project that i though would be fun to try and have a bit of a rest from my main project, and i think it started nicely! What is this project? I’m making one of those fun version for the original Bad Apple! music videoclip that got viral long ago (original: https://www.youtube.com/watch?v=FtutLA63Cp8 ). I want it to be very original, at least I dont think it has been done already… I cant really tell you what the video is about yet, but I can tell you that im building it with pure C and openGL… What have i done so far? Project setup: create a basic cmake project that uses glad and glfw to create a special window and render basic stuff on top of it Added a video reader that gets each frame of the video at the correct time based on the time elapsed I started this project making it run in CUDA, but I had a better idea. Then i decided to go with the graphics programming route: i thought about using vulkan but its way too hard to setup for such a small project, even worse considering im using C, not C++. I will have to learn vulkan at some point tho note: the video is the base for the whole program
BAD APPLE!! I’ve been adding the basic OpenGL implementations for a very simple texture and shader “classes” (theres no such thing as a class in C of course). This works kind of like a refresher course for me as I already though I was proficent enough with opengl, maybe once i ship this i might try to re do this but using vulkan instead. What have i added? The shader class, which reads the glsl source files (not pre-compiled) and compiles them in real time, not very fancy right now A texture class that updates in real time to what frame was given by the video section, correctly set to linear color correction and uses rgb24 Now i will add a super simple quad implementation where the shader will render to, on top of the screen buffer What i still need to figure out I dont think that OpenGL can get the screen buffer with the pixel colors of whats behind the screen, even when the glfw window is entirely transparent, I’ll do some more research to see what to do I’ve thought that this program might actually be a lot more useful that what im currently making it look. In the end you can quickly change the glsl shader to have completely different results and also upload any kind of video you want… PD: the window you see in the video is green just so you can see it at all, but in the final version it will be completely transparent
BAD APPLE!! the demo video contains flashing colors!! Huge progress!!!!! i made this work finally! well not quite yet but ive finally have something to show you Theres still some issues you can clearly see but i do know why this is happening Why it currently looks broken? In order to get the screen buffer i need to use X11 (currently, maybe ill port it to use other different APIs) which means that this is pretty much like taking a screenshot every frame but very fast because its the GPU. The problem is that we are re-feeding the previous output to the new one, so it breaks the original colors over time What have i done X11 based system to retrieve the screen’s image and pass it to the shader as another texture! Performance was improved a bit although it generally doesnt really matter (maybe it will when using videos over 1080p, havent tried tho) Fixed A SINGLE memory leak, woops Next steps! Port the project to SDL3, i always start my projects with GLFW and always forget how much i dislike GLFW, it has so many tools and features missing that SDL has, so ill probably port it to it, it shouldnt be very hard
BAD APPLE!! This is the first decent version! I still need to fix a couple things but finally using your computer with this on wont give you an epileptic attack. Note that what you see in the video is very simple, this program i made is a lot more powerful (this is not only for bad apple videos but a general postprocessing realtime layer on your screen!!) New stuff! Completely moved the project from GLFW to SDL3! Fixed the feeding loop bug: refactored the capturer so instead of taking a screenshot every frame it now loops with X11’s backend through all the windows and reconstructs the screen buffer manually (this took a lot of docs reading time), the result is really good but has limitations that i will list below Appart from the effect you see, ive also coded 2 other shaders that also use this video Published the github repo and added both a license and a readme file Current limitations This only works on Linux with X11 backend, if you use wayland, windows or mac this should not work at all, adding support to new platforms would be interesting, but before i need to fix the next issue The current system that reads all windows and stitches them together to form a screen buffer doesnt take into consideration new or closed windows and doesnt update their position or resizing… this will probably be the next thing to do but ill have to check how the performances doing. Of course i will be making a video for youtube to showcase this, this was the main goal of the project either way lmao
BAD APPLE!! (NOW PUBLISHED) the video is published on youtube!!!!! Check it out: https://youtu.be/a1_1RXaRt74 . Please go like it so it get viral! What was done? I’ve improved the performance by only collecting each window information’s only when they are marked as changed, this improved performance so much that i was able to run some games while using it Added a simple command line argument parser for quick settings and path changes Ive also added some cool C math optimizations like approximating a division by 255 with a cool bit shift trick! (i felt like a genius programmer) What needs to be improved There’s a couple things that still run in the CPU that could be pretty much moved to the GPU if they cause a bottle neck, maybe in the future?? Need to make sure that new/closed or resized windows are accounted and properly updated, this is the next step, ive tried already but this adds a lot of lag and i didnt like how it was looking, but maybe now ill try again! PD: PLEASE go watch the final version: https://youtu.be/a1_1RXaRt74 Btw, im probably gonna be shipping shortly, maybe after next devlog?
Ships:
I made a postprocessing layer that runs on top of your screen in real time. I’ve used it to create my own version of the Bad Apple videoclip, but this tool is a lot more powerful!! It gives you access to fast video decoding, a screen buffer and the huge potential of GLSL shaders to allow you to create any effect you want while still keeping the input layer active! Built on pure C and its currently only available on Linux (only supports X11 backend as thats what is used to manually create the screen buffer, maybe ill add wayland in the future) Hope you like it!!...
|
1793252954.8811119
|
1793339354.8811119
|
|
24700
|
GlintX by @taran | Stardance
|
taran
|
1
|
20.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T23:35:12Z", "hours": 20.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made GlintX, a hands-free phone cleaning machine that uses microfiber rollers, cleaning fluid, and UV lights to clean the outside of a phone. The phone sits vertically in the center while two rollers move along its sides using threaded rods and motors. It works kinda like a car wash. It’s main function to clean surface level grime and dirt to make your phone squeaky clean! :) The most challenging part was getting the mechanical system to work reliably. My original 3D-printed carriage broke twice the day before Open Sauce, so I redesigned it so that each roller had its own separate carriage. I also had to do a lot of wiring, debugging, and testing to get the motors, pump, and cleaning mechanism working together. I’m most proud that I was able to take an idea from a rough concept to a working machine that I could actually demonstrate to people at Open Sauce in just a few weeks. Seeing 100+ people reacting to my project amused, surprised, and amazed was really rewarding to me. If you want to test GlintX, place a phone vertically in the center of the machine and start the cleaning cycle. The rollers should move along both sides of the phone while the pump applies cleaning fluid. Please make sure the phone is secured properly before starting the cycle.", "repo": "https://github.com/tiger-14/GlintX", "demo": ""}]...
|
[{"post_id": 40957, "ts": "202 [{"post_id": 40957, "ts": "2026-08-04T20:22:08Z", "hours": 8.8961, "text": "We finally finished assembling and coding GlintX! We spent a lot of time putting together all the electronics and getting the motors, pump, and cleaning mechanism to work together properly. There was a lot of wiring and debugging involved, especially getting everything to fit inside the enclosure while still keeping all the connections accessible. The code also took some testing to get our carriage synced up and work properly. Our 3D printed carriage broke twice thed ay before open sauce and then we decided to have asplit design with each roller having their own carriage and that fixed it! After getting everything working, we brought GlintX to Open Sauce and got to demo it to 100+ people! It was really cool seeing people watching their phones get clean, providing their own feedback and appreciating our project! i am extremely grateful for hack club providing me with this awesome opportunity :)"}, {"post_id": 17385, "ts": "2026-06-28T04:36:11Z", "hours": 6.0561, "text": "We finally finished making the 3D model of our project! We spent a long time on the carriage design (the square piece in the attached vid that holds the two microfiber rollers) and getting the gap between rollers right to fit phones of all sizes, including cases. We went for a sleek futuristic look, so it had to be compact and not too big. In the end, while designing the cleaning fluid container, we realized in the end that we have only one water pump and one long pipe but 4 nozzles lol. So we have to cut them and find a way to arrange and connect them separately. The hardest part was the middle base — it supports the carriage, phone, and threaded rods simultaneously, and getting exact measurements was annoying since several Amazon listings don’t list dimensions. We also designed two internal pillars for structural integrity that double as mounts for the UV strips. The build splits into 6 parts: top lid, carriage, middle base, 2 parts for the shell, and bottom base for all the wiring and Arduino. This was because we wanted to 3D print this project easily without much supports. I also added all our files and created a README to our Github repo and also created a demo video. Our project is now ready to submit for the outpost funding! Thanks for reading! (sorry about making this a bit too long, I should’ve made this into multiple devposts)"}, {"post_id": 15850, "ts": "2026-06-25T19:30:12Z", "hours": 2.8833, "text": "Hey everyone! I finalized the parts list after almost 3 hours of research. Figuring out the motor setup was pretty challenging. I first looked at the NEMA 17, but that was too overkill, then went through 4+ different DC motors before picking TT motors, which have low RPM but high torque (required for spinning our threaded rods) unlike the other motors we looked at. Also had to ditch our first power adapter when we realized 1300mA wouldn’t handle 4 motors running simultaneously. Swapped it for a proper 12V 2A supply. Next, we have to create the CAD model for our project and submit the design!"}, {"post_id": 14723, "ts": "2026-06-23T22:41:50Z", "hours": 2.6067, "text": "Hello everyone! I tried to come up with an original and useful idea for a hardware project for Outpost and decided to make a phone cleaner! @Ben_A and I designed some of the mechanical design for the project in a whiteboard today. The cleaner uses two threaded rods to drive a microfiber roller up and down both sides of the phone, with UV lights lining the inner walls and a sliding door on top to add cleaning fluid. The phone sits vertically in the center. Hardest part of the design was figuring out the microfiber roller design. We ended up choosing threaded rods in order to make the roller move up and down along the phone’s screen and back. Next, we have to complete a proper diagram of our project, make the CAD models to 3D print, and finalize the parts list. We’re trying to find as many parts as possible in local stores nearby to avoid shipping delays!"}]...
|
Title: GlintX by @taran | Stardance
Devlogs:
Hell Title: GlintX by @taran | Stardance
Devlogs:
Hello everyone! I tried to come up with an original and useful idea for a hardware project for Outpost and decided to make a phone cleaner! @Ben_A and I designed some of the mechanical design for the project in a whiteboard today. The cleaner uses two threaded rods to drive a microfiber roller up and down both sides of the phone, with UV lights lining the inner walls and a sliding door on top to add cleaning fluid. The phone sits vertically in the center. Hardest part of the design was figuring out the microfiber roller design. We ended up choosing threaded rods in order to make the roller move up and down along the phone’s screen and back. Next, we have to complete a proper diagram of our project, make the CAD models to 3D print, and finalize the parts list. We’re trying to find as many parts as possible in local stores nearby to avoid shipping delays!
Hey everyone! I finalized the parts list after almost 3 hours of research. Figuring out the motor setup was pretty challenging. I first looked at the NEMA 17, but that was too overkill, then went through 4+ different DC motors before picking TT motors, which have low RPM but high torque (required for spinning our threaded rods) unlike the other motors we looked at. Also had to ditch our first power adapter when we realized 1300mA wouldn’t handle 4 motors running simultaneously. Swapped it for a proper 12V 2A supply. Next, we have to create the CAD model for our project and submit the design!
We finally finished making the 3D model of our project! We spent a long time on the carriage design (the square piece in the attached vid that holds the two microfiber rollers) and getting the gap between rollers right to fit phones of all sizes, including cases. We went for a sleek futuristic look, so it had to be compact and not too big. In the end, while designing the cleaning fluid container, we realized in the end that we have only one water pump and one long pipe but 4 nozzles lol. So we have to cut them and find a way to arrange and connect them separately. The hardest part was the middle base — it supports the carriage, phone, and threaded rods simultaneously, and getting exact measurements was annoying since several Amazon listings don’t list dimensions. We also designed two internal pillars for structural integrity that double as mounts for the UV strips. The build splits into 6 parts: top lid, carriage, middle base, 2 parts for the shell, and bottom base for all the wiring and Arduino. This was because we wanted to 3D print this project easily without much supports. I also added all our files and created a README to our Github repo and also created a demo video. Our project is now ready to submit for the outpost funding! Thanks for reading! (sorry about making this a bit too long, I should’ve made this into multiple devposts)
We finally finished assembling and coding GlintX! We spent a lot of time putting together all the electronics and getting the motors, pump, and cleaning mechanism to work together properly. There was a lot of wiring and debugging involved, especially getting everything to fit inside the enclosure while still keeping all the connections accessible. The code also took some testing to get our carriage synced up and work properly. Our 3D printed carriage broke twice thed ay before open sauce and then we decided to have asplit design with each roller having their own carriage and that fixed it! After getting everything working, we brought GlintX to Open Sauce and got to demo it to 100+ people! It was really cool seeing people watching their phones get clean, providing their own feedback and appreciating our project! i am extremely grateful for hack club providing me with this awesome opportunity :)
Ships:
I made GlintX, a hands-free phone cleaning machine that uses microfiber rollers, cleaning fluid, and UV lights to clean the outside of a phone. The phone sits vertically in the center while two rollers move along its sides using threaded rods and motors. It works kinda like a car wash. It’s main function to clean surface level grime and dirt to make your phone squeaky clean! :) The most challenging part was getting the mechanical system to work reliably. My original 3D-printed carriage broke twice the day before Open Sauce, so I redesigned it so that each roller had its own separate carriage. I also had to do a lot of wiring, debugging, and testing to get the motors, pump, and cleaning mechanism working together. I’m most proud that I was able to take an idea from a rough concept to a working machine that I could actually demonstrate to people at Open Sauce in just a few weeks. Seeing 100+ people reacting to my project amused, surprised, and amazed was really rewarding to me. If you want to test GlintX, place a phone vertically in the center of the machine and start the cleaning cycle. The rollers should move along both sides of the phone while the pump applies cleaning fluid. Please make sure the phone is secured properly before starting the cycle....
|
1793148470.8852363
|
1793234870.8852363
|
|
24708
|
GlintX by @Ben_A | Stardance
|
Ben_A
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T01:31:13Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "We created Glintx, a phone cleaning station that does a hands-free cleaning cycle using a brush mechanism. Glintx uses sensors, motors, and automation software to clean the screen and remove fingerprints, dust, and other things that dirty the screen and the case with no user interaction. This creates a device that automates a routine task for everyday electronics. Built in collaboration with @taran .", "repo": "https://github.com/tiger-14/GlintX", "demo": ""}]...
|
[{"post_id": 41081, "ts": "202 [{"post_id": 41081, "ts": "2026-08-05T01:17:08Z", "hours": 5.2333, "text": "In the final devlog before Outpost we confirmed all the electronics worked and were able to swap in the new metal TT motors because the old ones were not powerful enough to lift the carriage with the rollers attached. We also fully assembled the frame and organize the wires so it’d be much easier to bring through TSA. We did many tests of the systems working together, and we realized that we had to reprint a redesigned carriage. This was an issue because my 3d printers nozzle had clogged, and we had no time to go buy a new one before Outpost so we brought it as is expecting the worse. However at outpost we were able to design and print and new split design carriage which mitigated the drift the caused by the motors running at slightly uneven speeds and was able to make our whole system a lot more robust! Thanks to the help and the printers we used at outpost, we were able to get Glintx working for Open Sauce and we cleaned over 100 people’s phones throughout the event!"}, {"post_id": 27441, "ts": "2026-07-13T00:34:54Z", "hours": 10.0339, "text": "This was phase one of the construction of Glintx, during this time we confirmed that all the electric parts we purchased worked together as intended and we were able to get all the electrics set up and fitted within the 3d printed frame! Surprisingly, all the electric parts worked first try and we had almost no compatibility issues. One problem we did run into however was the motors being slightly too weak for the carriage we designed, we had originally ordered metal toothed tt-motors for this project that had plenty of torque for such a little carriage, however due to Amazon delays we had to purchase one ourself from a local supplier which turned out to not have enough power for the project. Just as we were wondering what to do, since we were in a rush to complete this project for Outpost, the Amazon eta got moved up! We were able to get the motors that same day after it had been stated to be delayed by over a week! Now all we had to do was get the full frame put together and pack for Outpost! -this was an edit to the original devlog as I didn’t have enough time to write a proper one in the rush."}, {"post_id": 17389, "ts": "2026-06-28T04:41:37Z", "hours": 6.9981, "text": "We completed the CAD model for our project! We designed GlintX in 6 sections for easy printability while keeping part complexity down — they’re designed to print with almost no supports whatsoever. We spent a long time on the carriage design (the square carriage that holds the two microfiber rolls to clean the phone screen), since we had to account for the various shapes and sizes phones come in. We also spent a lot of time on the middle base part — it’s the most complex model I’ve ever created in SolidWorks, since we needed to account for the 3D printer’s tolerances in tight gaps, and a lot of measurements were needed to make sure everything fit together well. It was even harder because many Amazon sellers didn’t list part dimensions, so we had to find them ourselves. And my SolidWorks kept crashing while I was working :( The build splits into 6 parts: top lid, carriage, middle base, 2 shell parts, and a bottom base for the wiring and Arduino. We did this so the project would be easy to 3D print without needing too many supports. We also added all our files and a README to our GitHub repo, and created a demo video. Our project is now ready to submit for the Outpost funding!"}, {"post_id": 15766, "ts": "2026-06-25T17:12:44Z", "hours": 3.46, "text": "Yesterday I made good progress on my phone-cleaning station project and have now finished the parts list. The design uses threaded rods to move a microfiber roller up and down both sides of the phone, allowing the screen and back to be cleaned evenly. UV lights will line the interior walls for sanitization, and the phone will sit vertically in the center of the device during the cleaning cycle. I also selected the motors, controller, power system, and other hardware needed to operate the mechanism. Today I will be working on the CAD and attempting to create the casing to 3d print further along the development process. Before this I will need to refine the parts list as it currently does not fit our budget perfectly."}, {"post_id": 15273, "ts": "2026-06-24T20:09:05Z", "hours": 1.0836, "text": "We started creating full diagram of GlintX with most of the parts we need to purchase identified."}, {"post_id": 14673, "ts": "2026-06-23T21:15:26Z", "hours": 1.1614, "text": "Hello! For my Outpost hardware project, I decided to design and build a phone-cleaning station. The goal is to create a compact device that can clean and sanitize a phone using microfiber rollers, UV lights, and cleaning fluid. Today, I worked on the mechanical design and sketched out the concept on a whiteboard. The phone sits vertically in the center of the device, while two threaded rods drive a microfiber roller up and down both sides of the phone. UV lights line the inner walls to help sanitize the surface, and a sliding door on the top provides access for adding cleaning fluid. The most challenging part so far has been designing the microfiber roller mechanism. After considering several options, I chose to use threaded rods because they provide a reliable way to move the roller along the entire height of the phone and ensure consistent contact with the screen. My next steps are to create a detailed diagram of the system, finish the CAD models for 3D printing, and finalize the parts list. I’m also trying to source as many components as possible from local stores to avoid shipping delays and keep development moving quickly."}]...
|
Title: GlintX by @Ben_A | Stardance
Devlogs:
Hell Title: GlintX by @Ben_A | Stardance
Devlogs:
Hello! For my Outpost hardware project, I decided to design and build a phone-cleaning station. The goal is to create a compact device that can clean and sanitize a phone using microfiber rollers, UV lights, and cleaning fluid. Today, I worked on the mechanical design and sketched out the concept on a whiteboard. The phone sits vertically in the center of the device, while two threaded rods drive a microfiber roller up and down both sides of the phone. UV lights line the inner walls to help sanitize the surface, and a sliding door on the top provides access for adding cleaning fluid. The most challenging part so far has been designing the microfiber roller mechanism. After considering several options, I chose to use threaded rods because they provide a reliable way to move the roller along the entire height of the phone and ensure consistent contact with the screen. My next steps are to create a detailed diagram of the system, finish the CAD models for 3D printing, and finalize the parts list. I’m also trying to source as many components as possible from local stores to avoid shipping delays and keep development moving quickly.
We started creating full diagram of GlintX with most of the parts we need to purchase identified.
Yesterday I made good progress on my phone-cleaning station project and have now finished the parts list. The design uses threaded rods to move a microfiber roller up and down both sides of the phone, allowing the screen and back to be cleaned evenly. UV lights will line the interior walls for sanitization, and the phone will sit vertically in the center of the device during the cleaning cycle. I also selected the motors, controller, power system, and other hardware needed to operate the mechanism. Today I will be working on the CAD and attempting to create the casing to 3d print further along the development process. Before this I will need to refine the parts list as it currently does not fit our budget perfectly.
We completed the CAD model for our project! We designed GlintX in 6 sections for easy printability while keeping part complexity down — they’re designed to print with almost no supports whatsoever. We spent a long time on the carriage design (the square carriage that holds the two microfiber rolls to clean the phone screen), since we had to account for the various shapes and sizes phones come in. We also spent a lot of time on the middle base part — it’s the most complex model I’ve ever created in SolidWorks, since we needed to account for the 3D printer’s tolerances in tight gaps, and a lot of measurements were needed to make sure everything fit together well. It was even harder because many Amazon sellers didn’t list part dimensions, so we had to find them ourselves. And my SolidWorks kept crashing while I was working :( The build splits into 6 parts: top lid, carriage, middle base, 2 shell parts, and a bottom base for the wiring and Arduino. We did this so the project would be easy to 3D print without needing too many supports. We also added all our files and a README to our GitHub repo, and created a demo video. Our project is now ready to submit for the Outpost funding!
This was phase one of the construction of Glintx, during this time we confirmed that all the electric parts we purchased worked together as intended and we were able to get all the electrics set up and fitted within the 3d printed frame! Surprisingly, all the electric parts worked first try and we had almost no compatibility issues. One problem we did run into however was the motors being slightly too weak for the carriage we designed, we had originally ordered metal toothed tt-motors for this project that had plenty of torque for such a little carriage, however due to Amazon delays we had to purchase one ourself from a local supplier which turned out to not have enough power for the project. Just as we were wondering what to do, since we were in a rush to complete this project for Outpost, the Amazon eta got moved up! We were able to get the motors that same day after it had been stated to be delayed by over a week! Now all we had to do was get the full frame put together and pack for Outpost! -this was an edit to the original devlog as I didn’t have enough time to write a proper one in the rush.
In the final devlog before Outpost we confirmed all the electronics worked and were able to swap in the new metal TT motors because the old ones were not powerful enough to lift the carriage with the rollers attached. We also fully assembled the frame and organize the wires so it’d be much easier to bring through TSA. We did many tests of the systems working together, and we realized that we had to reprint a redesigned carriage. This was an issue because my 3d printers nozzle had clogged, and we had no time to go buy a new one before Outpost so we brought it as is expecting the worse. However at outpost we were able to design and print and new split design carriage which mitigated the drift the caused by the motors running at slightly uneven speeds and was able to make our whole system a lot more robust! Thanks to the help and the printers we used at outpost, we were able to get Glintx working for Open Sauce and we cleaned over 100 people’s phones throughout the event!
Ships:
We created Glintx, a phone cleaning station that does a hands-free cleaning cycle using a brush mechanism. Glintx uses sensors, motors, and automation software to clean the screen and remove fingerprints, dust, and other things that dirty the screen and the case with no user interaction. This creates a device that automates a routine task for everyday electronics. Built in collaboration with @taran ....
|
1793289394.1568453
|
1793375794.1568453
|
|
24715
|
Rc boat by @MaxMadeGG | Stardance
|
MaxMadeGG
|
1
|
3.46
|
15
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-02T09:51:30Z", "hours": 3.0, "multiplier": 5.0, "payout": 15, "blessing": "neutral", "text": "The challenging part was when i was mounting the motors and when i had to test it at the end.", "repo": "https://github.com/MaxMadeGG/Open-source-RC-boat", "demo": ""}]...
|
[{"post_id": 20701, "ts": "202 [{"post_id": 20701, "ts": "2026-07-02T11:25:34Z", "hours": 0.4603, "text": "testing if everithing works well"}, {"post_id": 18474, "ts": "2026-06-29T17:13:33Z", "hours": 1.5486, "text": "i have been installing the motors etc. on the boat and my estimation is that i could finish it tomorrow"}, {"post_id": 18357, "ts": "2026-06-29T14:08:32Z", "hours": 0.2833, "text": "i have been fixing the piece and then printing it for 3hours"}, {"post_id": 15691, "ts": "2026-06-25T14:48:39Z", "hours": 0.2789, "text": "I finished printing the 2main parts but i forgot to do that it fits together…So i started trying to do it with my grinder but it would take too long so i decided that i will just update the model and then restart printing…so we will see"}, {"post_id": 15623, "ts": "2026-06-25T12:35:20Z", "hours": 0.9792, "text": "today i was 3d modeling the boat in Autodesk Fusion and then printing the pieces"}]...
|
Title: Rc boat by @MaxMadeGG | Stardance
Devlogs: Title: Rc boat by @MaxMadeGG | Stardance
Devlogs:
today i was 3d modeling the boat in Autodesk Fusion and then printing the pieces
I finished printing the 2main parts but i forgot to do that it fits together…So i started trying to do it with my grinder but it would take too long so i decided that i will just update the model and then restart printing…so we will see
i have been fixing the piece and then printing it for 3hours
i have been installing the motors etc. on the boat and my estimation is that i could finish it tomorrow
testing if everithing works well
Ships:
The challenging part was when i was mounting the motors and when i had to test it at the end....
|
1793314569.9647784
|
1793400969.9647784
|
|
24718
|
Kerbal Gravity Program by @Systemic_speed | Starda Kerbal Gravity Program by @Systemic_speed | Stardance...
|
Systemic_speed
|
1
|
50.0
|
636
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T17:07:33Z", "hours": 50.0, "multiplier": 12.89, "payout": 636, "blessing": "neutral", "text": "Kerbal Gravity Program: SHIP - 1 Any KSP player knows the pain of planning a whole journey, then the Kraken wipes it and sends you back to the pad. Real missions are the same grind (see Cassini-Huygens: Cassini’s trajectory ). So I built KGRP — a mission planner for KSP you drive from a REPL or code, to plan and understand trips to other planets. Crash course pip install kgrp # Python 3.10+ kgrp # start the REPL help # every command, flag, and use Requirements Built on numpy (math), scipy (integration/solving), and pyvista (orbit and trajectory visualization), with rich and prompt-toolkit powering the REPL. What was challenging The math was the hard part — RKF(4)5 (Runge-Kutta-Fehlberg 4(5)), an adaptive-step integrator, was an absolute pain to get right. Shipping a real library was the other half; I’d made sites and small CLIs, but wasn’t sure this would hold together. What I’m proud of First thing I’ve ever put on PyPI. Along the way I got real with numpy, scipy, pyvista, and building a CLI/REPL people can actually use. A note on AI I used AI to help squash bugs and for the basic beautification of the README. The planning math and the tool itself are mine; the AI just helped me clean up and unstick the rough parts. Try it It’s out — test it, throw it at the wall, and send notes via feedback. P.S. There are a few easter eggs hiding in the errors. Go find them. Happy orbiting!!!", "repo": "https://github.com/Gautham-rgb/Kerbal-Gravity-Program", "demo": "https://pypi.org/project/kgrp/"}]...
|
[{"post_id": 48135, "ts": "202 [{"post_id": 48135, "ts": "2026-08-16T12:59:10Z", "hours": 10.3972, "text": "Devlog 9 — Kerbal Gravity Program: the REPL is (almost) done No devlog last week — life happened, then OpenCode helped me absolutely cook. Newcomers: KGRP is a mission planner for KSP (runs outside the game). You define a spacecraft, stack events on a timeline, and the sim runs them. Plan in the tool, fly in the game. Where we are The REPL is nearly feature-complete. Every mission action is a TicketEvent — coast, maneuver, burn, engine toggle, science. The REPL never touches your ship directly; it just advances a ticket in UT and events fire when the timeline reaches them. One plan drives the renderer, physics, and save file. Also closed the loop on “one source of truth”: the fancy integrator used to run in a vacuum (zero gravity) when fired from a ticket. Now go , advance , and reset all agree on where you are. go Pick a start and end orbit from the presets and it works out burns, coasting, and delta-v, then schedules them: > go current moon:3a Transfer plan: Current (200,000m circular, 0.0 deg) -> Mun orbit (11,400,000m circular, 0.0 deg) (about Kerbin) Burns: 2 Total delta-v: 1,112.7 m/s Duration: 27,130.1s burn @ 0.0s dv=764.2 m/s Raise apoapsis to transfer coast 0.0s -> 27,130.1s Coast to apoapsis burn @ 27,130.1s dv=348.5 m/s Circularize / match target Resulting orbit: pe=12,000,000m ap=12,000,000m i=0.0 deg around Kerbin Presets are editable (and saveable to presets.json ); the planner core is a plain importable function ( go_plan(ticket, ...).total_dv ). Usability Time input isn’t a math exam: advance 2d 5h , time \"Year 2, Day 100\" . Per-use overrides without touching presets: go current preset:molniya incl=30 . go shows the plan and asks before committing (gradual / instant / cancel). edit now handles ships, not just bodies: mass, fuel, orbit elements. New-ticket wizard hands you an engine and 3,000 kg of fuel instead of a paperweight. After a reset you can clear/redo the timeline without fighting the guard. What’s next Some math is still coarse: plane changes are exact only for moon targets, synchronous orbits are a placeholder (no body rotation yet), arg-p/LAN drift isn’t modeled, and error messages need work — for when you type advance 5 bananas . Fun one I found: escaping at exactly escape velocity puts the orbit at eccentricity 1.000000 and the math gives up — the craft freezes and frame switches / go turn to nonsense. Interplanetary go is broken because of it, but burning slightly past escape fixes it (properly hyperbolic, maths happy). Just needs wiring in. In the meantime Planning to put it up on PyPi and hope it works"}, {"post_id": 43345, "ts": "2026-08-08T15:27:51Z", "hours": 8.115, "text": "Devlog 8: Kerbal Gravity Program For anyone who’s new here, KGRP is a mission planning tool I’m building for KSP (and hopefully real-world missions too). The goal is to make planning orbital transfers and interplanetary missions a lot easier. Think of it as something inspired by libraries like Skyfield and Poliastro , but with a bigger focus on actually planning missions Today and the days after i gave my last devlog were actually useful, i mainly just created a new class based system (yes i am forced to, because my idea needs tooo many moving parts) called the Ticket : The Ticket allows you to plan entire journeys using TicketEvents , stuff that define what can happen to a spacecraft (14 of them). for example, you can have a ticket that contains a maeuver, a coast, an rcs translation, a docking and more. and one more thing, instead of a CLI (one command and forget), i am instead making a REPL (it remembers what you did). so yeah, that sums most of it up and also i made a new banner for KGRP (kinda yay???) What’s next so the main thing is to just start making the REPL using prompt-toolkit and other stuff. until then, see ya"}, {"post_id": 35751, "ts": "2026-07-27T12:06:00Z", "hours": 5.0831, "text": "Devlog 7: Kerbal Gravity Program (KGRP) For anyone who’s new here, KGRP is a mission planning tool I’m building for KSP (and hopefully real-world missions too). The goal is to make planning orbital transfers and interplanetary missions a lot easier. Think of it as something inspired by libraries like Skyfield and Poliastro , but with a bigger focus on actually planning missions. What happened today? Today was surprisingly productive and useful. The biggest thing is that the renderer finally works. I spent way too long fighting with it over the past few days, so it’s nice to finally be able to move planets around without everything exploding. I also added a few other things: You can now create entire planetary systems from a planet.json file. Added adapters for PySide6 and NiceGUI , so there are a couple of different ways to use the renderer now. Started working on a more realistic gravity simulator that can deal with things like Lagrange points. KGRP finally has an actual logo (\(^▽^)/) instead of me pretending the text was good enough for docs and stuff. One thing I still need to fix is the JSON loader. Right now it only really likes absolute paths, which is… less than ideal. The renderer tried to gaslight me I swear I’m not making this up. Earlier today I found this absolutely cursed bug where, if you flew the camera into the Sun and zoomed out, the whole scene turned into this weird fisheye effect with random lines stretching across the screen. I was already mentally preparing myself to spend the next few hours digging through camera code and VTK documentation… …and then it just stopped happening. I didn’t fix it. I didn’t even change anything related to the camera. It just… disappeared. So either I accidentally fixed it without realizing, or it’s waiting until I show someone the project before it decides to come back. What’s next? Nothing too exciting, mostly polishing things up. Fix the JSON loader. Squash whatever bugs are still hiding in the renderer. Improve the CLI a bit more. Anyway, here’s the renderer doing the thing (oh, gotta fix that) and the logo (idk if it’s good, comment about it)."}, {"post_id": 32971, "ts": "2026-07-22T13:58:33Z", "hours": 9.6439, "text": "Devlog 6: Kerbal Gravity Program (KGRP) KGRP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What happened today Today was a very, very buggy day. I had to tackle the core rendering systems, but I ended up running a grueling gauntlet through almost every Python graphics library out there—Panda3D, Ursina, ModernGL, VPython, and more. Every single one of them introduced some kind of blocking issue: Windows that were supposed to pop up via Tkinter or Pygame-CE started doing random things like teleporting wildly across my screen or rendering with completely broken layout dimensions. Even when a window finally initialized and stayed stable, it would just mock me with a dead black screen entirely missing our blobs of color (the actual planets and calculated orbit lines). This black-screen loop is exactly what hit me when I switched over to PyVista. Why the Viewport went Black Staring into a blank 3D canvas is a rite of passage when writing an engine from scratch. After tracking down the pipeline bugs, the black screen in PyVista boiled down to three classic astrodynamics simulation mistakes: The Compound Drift Bug ( mesh.translate ) Using mesh.translate(inplace=True) directly mutates the underlying vertex memory of the sphere meshes. Because my physics engine loop advances frames based on absolute coordinates ( get_absolute_pos_at_ut ), relative delta transforms compounded exponentially. Within frame one, the planets physically flew millions of kilometers away from the camera. The Camera Initialization Trap Setting camera_position = 'iso' while the newly instantiated planet objects were still sitting uninitialized at (0, 0, 0) forced the viewport to lock its focus onto a microscopic bounding box. The moment the first timer tick updated positions, everything teleported way past the active field of view. Scaling Using a singular scale factor for both orbit diameters and planetary dimensions created a massive rendering mismatch. A planet with a 6,000 km radius shrinks down to a fraction of a single pixel when drawn on a canvas scaled to capture massive astronomical unit (AU) trajectories, rendering it invisible. Next Flight Steps for Devlog 6 With a stable graphics viewport finally up and running, the graphics engine foundation is secure. The next challenge is implementing the actual trajectory planning functionality. My primary focus items for the next devlog will be: The Trajectory Tracer: Working out how to render a dynamic, rolling polyline tail behind a Spacecraft body as it traces arcs across different coordinates. Camera Tracking Hooks: Hooking into interactor mouse clicks so that double-clicking a planet or vessel pins the camera target matrix to that object, keeping it centered even at high time warp rates. Optimizing Kepler Solvers: Ensuring the underlying analytical Newton-Raphson solvers can handle high eccentricities without dragging down frame rates."}, {"post_id": 27100, "ts": "2026-07-12T11:25:12Z", "hours": 1.9753, "text": "Devlog 5: Kerbal Gravity Program KGRP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What Happened Today We need to talk about a major turning point for this project. Today was the day I finally broke. I sat down ready to write some beautiful orbital physics code, but instead, I spent hours staring at a screen full of red squiggly lines. I was trapped in a seemingly endless loop of configuring MinGW paths, updating JSON files, wrestling with Conan, and trying to force VS Code to recognize where the Eigen math library was hiding. I realized I was spending 90% of my energy fighting a stubborn C++ compiler and only 10% actually thinking about gravity and orbital transfers. As a solo developer trying to build something massive, that is a recipe for burning out. I was totally fed up. So, I had a choice: keep sinking precious hours into configuration hell, or do something radical to save my velocity. I chose velocity. I opened up my file explorer, went to the project root, and completely ripped out the entire cpp folder. Shift + Delete. Gone. (To any C++ purists reading this: I am deeply sorry, but it had to be done.) By committing to a pure Python architecture, I can keep the code lean, fast, and remarkably lightweight (for an interpreted language): NumPy : We are using the best library for 3D math operations. SciPy : Gives me instant access to rock-solid root-finding algorithms. This means my Lambert solver is going to be incredibly robust and fast. Using this, We can get C++ execution speeds with the absolute bliss of plain Python syntax. Pyrr : A new Library that i am going to learn, this acts as a wrapper for numpy, allowing for easy rendering moderngl_window a pythonic librayry that allows one to easily show and render stuff. Next Steps Now that the compiler weight is off my back, I can actually focus on making this program amazing. The real fun starts now: Setting up a clean Python environment with scipy , pyrr , moderngl and numpy installed. Rendering stuff (Yahoo!). Building the profile structures for the Kerbol system and our real-world solar system. well then here is me installing pyrr and thinking of how to use and learn the library."}, {"post_id": 26427, "ts": "2026-07-11T06:48:03Z", "hours": 4.0178, "text": "Devlog 4: Kerbal Gravity Program (KGRP) KGP—well, actually let’s call it KGRP now because apparently “kgp” is already taken by some Kubernetes stuff, and I don’t want stuff breaking anyone’s cloud infrastructure—is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I did today Well, today was mostly chill on the numerical part. I got the RKF(4)5 adaptive step solver fully up and running, and the burns produced by the Lambert solver are perfect and insanely accurate. The physics side of things is feeling really solid. But then came the C++ transition, which immediately humbled me. For hours, this was only working in Python because CMake seriously hates me. Seriously, why does a plain text file have so much attitude? Even though I explicitly gave it the include paths in VS Code, the thing still refused to find where Eigen was. I was getting so incredibly frustrated that I was genuinely on the verge of ragequitting, deleting the whole directory, and typing sudo rm -rf out of pure spite. And then I realized what a complete idiot I was being. CMake wasn’t failing to compile the library. It had actually built the thing perfectly. The issue was that I was stubbornly typing ./build/kgrvs like a caveman, completely missing the fact that the compiled binary was sitting right there inside ./build/Release/kgrvs . Once I actually typed the right path, the C++ code ran flawlessly and matched my Python results perfectly down to the decimal point. The engine is officially alive, and I need to go look at a wall for a few minutes to recover from the self-inflicted psychological damage. (BTW here is me almost bricking my computer)"}, {"post_id": 24105, "ts": "2026-07-07T13:47:36Z", "hours": 5.2864, "text": "Devlog 3: Kerbal Gravity Program KGP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. Hey there, i am very, very sorry for the wait, got caught up in school and illness, so ima try and be more punctual, maybe a devlog every week? well, we will see if my timetable is free or “unstable” What I did today Finally make a Lambert solver, the math was insanely hard and i am still getting insanely wrong numbers. (like a burn of 11,000 m/s to go to Duna in perfect conditions). for the Lambert solver, i had to create a new class, the Spacecraft class, this is the actual spacecraft that is going to go on the arduous journey to another planet or moon (basically a moving body class). I am in the process of making the Orbit class, the LambertSolver class and the solve_anomaly() function resistant to non elliptic orbits. well then here is Ruff and Vs code screaming at me because of a single equal sign"}, {"post_id": 19970, "ts": "2026-07-01T13:17:10Z", "hours": 3.5031, "text": "Devlog 2: Kerbal Gravity Program (KGP) KGP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I did today Today was way more math-heavy than I expected. I spent most of my time building out the core infrastructure: The Orbit class to actually handle orbital mechanics. The Body class for celestial bodies and barycenters. The absolute_position function to figure out the exact coordinates of an object in a nested system, tracking it all the way back to the root central body as the origin. What I learned Planet tracking is wild: The sheer amount of math required to find the exact position of a planet at a specific timestamp is honestly mind-boggling. It took a lot of staring at equations, but once I finally understood the logic, implementing it became a lot smoother. The heavy lifters are terrifying: The core system is going to rely on a Lambert solver and an RK4 integrator. I’ll be honest—these algorithms are so intensely complex that it looks like scribbles on paper. Anyway, here is a small test run of the Python prototype in action:"}, {"post_id": 17430, "ts": "2026-06-28T06:29:34Z", "hours": 1.7036, "text": "Devlog 1: Kerbal Gravity Program (KGP) KGP is a mission planning tool I am building for KSP players and actual aerospace engineers to map out complex trajectories. Loosely based on Skyfield , Poliastro and trajectorize , The goal is to make it easy to plot out massive interplanetary trips, whether you are trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I Did Today Mapped out the 4-phase development roadmap Decided to use a mix of C++ for raw execution speed and Python for fast development. Phase 1 (Basic Systems): Building out the underlying math frameworks and foundations. Phase 2 (CLI Interface): Creating simple command-line helper functions. Phase 3 (GUI Interface): Designing a desktop app version with a clean installation setup. Phase 4 (Web Interface): Deploying a browser version so anyone can use it without downloading a thing. (Note: Organized it this way to work around the Stardance demo link limits while keeping the scope clear). Coded the Universal Time Converter Wrote the core function that converts calendar dates directly into raw seconds. Made sure it seamlessly handles both Kerbal time standards and real-world J2000 epoch timelines. What I Learnt Numba memory management: I found out that numba (the Python library I’m using to get close to C++ speeds) really struggles when handling pointers and raw memory addresses. Python can actually segfault: It actually threw a segmentation fault—which felt crazy to see inside Python code! Because of this, using nb.defered_type() is completely out of the picture for this architecture, so I’ll have to use something like scipy and numpy . well for your entertainment, here is a screenshot of me trying to figure out why the hell was VS code giving me a problem (i forgot a semicolon on the line before):"}]...
|
Title: Kerbal Gravity Program by @Systemic_speed | Title: Kerbal Gravity Program by @Systemic_speed | Stardance
Devlogs:
Devlog 1: Kerbal Gravity Program (KGP) KGP is a mission planning tool I am building for KSP players and actual aerospace engineers to map out complex trajectories. Loosely based on Skyfield , Poliastro and trajectorize , The goal is to make it easy to plot out massive interplanetary trips, whether you are trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I Did Today Mapped out the 4-phase development roadmap Decided to use a mix of C++ for raw execution speed and Python for fast development. Phase 1 (Basic Systems): Building out the underlying math frameworks and foundations. Phase 2 (CLI Interface): Creating simple command-line helper functions. Phase 3 (GUI Interface): Designing a desktop app version with a clean installation setup. Phase 4 (Web Interface): Deploying a browser version so anyone can use it without downloading a thing. (Note: Organized it this way to work around the Stardance demo link limits while keeping the scope clear). Coded the Universal Time Converter Wrote the core function that converts calendar dates directly into raw seconds. Made sure it seamlessly handles both Kerbal time standards and real-world J2000 epoch timelines. What I Learnt Numba memory management: I found out that numba (the Python library I’m using to get close to C++ speeds) really struggles when handling pointers and raw memory addresses. Python can actually segfault: It actually threw a segmentation fault—which felt crazy to see inside Python code! Because of this, using nb.defered_type() is completely out of the picture for this architecture, so I’ll have to use something like scipy and numpy . well for your entertainment, here is a screenshot of me trying to figure out why the hell was VS code giving me a problem (i forgot a semicolon on the line before):
Devlog 2: Kerbal Gravity Program (KGP) KGP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I did today Today was way more math-heavy than I expected. I spent most of my time building out the core infrastructure: The Orbit class to actually handle orbital mechanics. The Body class for celestial bodies and barycenters. The absolute_position function to figure out the exact coordinates of an object in a nested system, tracking it all the way back to the root central body as the origin. What I learned Planet tracking is wild: The sheer amount of math required to find the exact position of a planet at a specific timestamp is honestly mind-boggling. It took a lot of staring at equations, but once I finally understood the logic, implementing it became a lot smoother. The heavy lifters are terrifying: The core system is going to rely on a Lambert solver and an RK4 integrator. I’ll be honest—these algorithms are so intensely complex that it looks like scribbles on paper. Anyway, here is a small test run of the Python prototype in action:
Devlog 3: Kerbal Gravity Program KGP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. Hey there, i am very, very sorry for the wait, got caught up in school and illness, so ima try and be more punctual, maybe a devlog every week? well, we will see if my timetable is free or “unstable” What I did today Finally make a Lambert solver, the math was insanely hard and i am still getting insanely wrong numbers. (like a burn of 11,000 m/s to go to Duna in perfect conditions). for the Lambert solver, i had to create a new class, the Spacecraft class, this is the actual spacecraft that is going to go on the arduous journey to another planet or moon (basically a moving body class). I am in the process of making the Orbit class, the LambertSolver class and the solve_anomaly() function resistant to non elliptic orbits. well then here is Ruff and Vs code screaming at me because of a single equal sign
Devlog 4: Kerbal Gravity Program (KGRP) KGP—well, actually let’s call it KGRP now because apparently “kgp” is already taken by some Kubernetes stuff, and I don’t want stuff breaking anyone’s cloud infrastructure—is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What I did today Well, today was mostly chill on the numerical part. I got the RKF(4)5 adaptive step solver fully up and running, and the burns produced by the Lambert solver are perfect and insanely accurate. The physics side of things is feeling really solid. But then came the C++ transition, which immediately humbled me. For hours, this was only working in Python because CMake seriously hates me. Seriously, why does a plain text file have so much attitude? Even though I explicitly gave it the include paths in VS Code, the thing still refused to find where Eigen was. I was getting so incredibly frustrated that I was genuinely on the verge of ragequitting, deleting the whole directory, and typing sudo rm -rf out of pure spite. And then I realized what a complete idiot I was being. CMake wasn’t failing to compile the library. It had actually built the thing perfectly. The issue was that I was stubbornly typing ./build/kgrvs like a caveman, completely missing the fact that the compiled binary was sitting right there inside ./build/Release/kgrvs . Once I actually typed the right path, the C++ code ran flawlessly and matched my Python results perfectly down to the decimal point. The engine is officially alive, and I need to go look at a wall for a few minutes to recover from the self-inflicted psychological damage. (BTW here is me almost bricking my computer)
Devlog 5: Kerbal Gravity Program KGRP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What Happened Today We need to talk about a major turning point for this project. Today was the day I finally broke. I sat down ready to write some beautiful orbital physics code, but instead, I spent hours staring at a screen full of red squiggly lines. I was trapped in a seemingly endless loop of configuring MinGW paths, updating JSON files, wrestling with Conan, and trying to force VS Code to recognize where the Eigen math library was hiding. I realized I was spending 90% of my energy fighting a stubborn C++ compiler and only 10% actually thinking about gravity and orbital transfers. As a solo developer trying to build something massive, that is a recipe for burning out. I was totally fed up. So, I had a choice: keep sinking precious hours into configuration hell, or do something radical to save my velocity. I chose velocity. I opened up my file explorer, went to the project root, and completely ripped out the entire cpp folder. Shift + Delete. Gone. (To any C++ purists reading this: I am deeply sorry, but it had to be done.) By committing to a pure Python architecture, I can keep the code lean, fast, and remarkably lightweight (for an interpreted language): NumPy : We are using the best library for 3D math operations. SciPy : Gives me instant access to rock-solid root-finding algorithms. This means my Lambert solver is going to be incredibly robust and fast. Using this, We can get C++ execution speeds with the absolute bliss of plain Python syntax. Pyrr : A new Library that i am going to learn, this acts as a wrapper for numpy, allowing for easy rendering moderngl_window a pythonic librayry that allows one to easily show and render stuff. Next Steps Now that the compiler weight is off my back, I can actually focus on making this program amazing. The real fun starts now: Setting up a clean Python environment with scipy , pyrr , moderngl and numpy installed. Rendering stuff (Yahoo!). Building the profile structures for the Kerbol system and our real-world solar system. well then here is me installing pyrr and thinking of how to use and learn the library.
Devlog 6: Kerbal Gravity Program (KGRP) KGRP is a mission planning tool I’m building for KSP players and actual aerospace engineers to map out complex trajectories. It’s loosely based on libraries like Skyfield , Poliastro , and Trajectorize . The ultimate goal is to make it easy to plot out massive interplanetary trips, whether you’re trying to reach Jool and Sarnus (with the Outer Planets Mod) or calculating a real-world journey out to Neptune. What happened today Today was a very, very buggy day. I had to tackle the core rendering systems, but I ended up running a grueling gauntlet through almost every Python graphics library out there—Panda3D, Ursina, ModernGL, VPython, and more. Every single one of them introduced some kind of blocking issue: Windows that were supposed to pop up via Tkinter or Pygame-CE started doing random things like teleporting wildly across my screen or rendering with completely broken layout dimensions. Even when a window finally initialized and stayed stable, it would just mock me with a dead black screen entirely missing our blobs of color (the actual planets and calculated orbit lines). This black-screen loop is exactly what hit me when I switched over to PyVista. Why the Viewport went Black Staring into a blank 3D canvas is a rite of passage when writing an engine from scratch. After tracking down the pipeline bugs, the black screen in PyVista boiled down to three classic astrodynamics simulation mistakes: The Compound Drift Bug ( mesh.translate ) Using mesh.translate(inplace=True) directly mutates the underlying vertex memory of the sphere meshes. Because my physics engine loop advances frames based on absolute coordinates ( get_absolute_pos_at_ut ), relative delta transforms compounded exponentially. Within frame one, the planets physically flew millions of kilometers away from the camera. The Camera Initialization Trap Setting camera_position = 'iso' while the newly instantiated planet objects were still sitting uninitialized at (0, 0, 0) forced the viewport to lock its focus onto a microscopic bounding box. The moment the first timer tick updated positions, everything teleported way past the active field of view. Scaling Using a singular scale factor for both orbit diameters and planetary dimensions created a massive rendering mismatch. A planet with a 6,000 km radius shrinks down to a fraction of a single pixel when drawn on a canvas scaled to capture massive astronomical unit (AU) trajectories, rendering it invisible. Next Flight Steps for Devlog 6 With a stable graphics viewport finally up and running, the graphics engine foundation is secure. The next challenge is implementing the actual trajectory planning functionality. My primary focus items for the next devlog will be: The Trajectory Tracer: Working out how to render a dynamic, rolling polyline tail behind a Spacecraft body as it traces arcs across different coordinates. Camera Tracking Hooks: Hooking into interactor mouse clicks so that double-clicking a planet or vessel pins the camera target matrix to that object, keeping it centered even at high time warp rates. Optimizing Kepler Solvers: Ensuring the underlying analytical Newton-Raphson solvers can handle high eccentricities without dragging down frame rates.
Devlog 7: Kerbal Gravity Program (KGRP) For anyone who’s new here, KGRP is a mission planning tool I’m building for KSP (and hopefully real-world missions too). The goal is to make planning orbital transfers and interplanetary missions a lot easier. Think of it as something inspired by libraries like Skyfield and Poliastro , but with a bigger focus on actually planning missions. What happened today? Today was surprisingly productive and useful. The biggest thing is that the renderer finally works. I spent way too long fighting with it over the past few days, so it’s nice to finally be able to move planets around without everything exploding. I also added a few other things: You can now create entire planetary systems from a planet.json file. Added adapters for PySide6 and NiceGUI , so there are a couple of different ways to use the renderer now. Started working on a more realistic gravity simulator that can deal with things like Lagrange points. KGRP finally has an actual logo (\(^▽^)/) instead of me pretending the text was good enough for docs and stuff. One thing I still need to fix is the JSON loader. Right now it only really likes absolute paths, which is… less than ideal. The renderer tried to gaslight me I swear I’m not making this up. Earlier today I found this absolutely cursed bug where, if you flew the camera into the Sun and zoomed out, the whole scene turned into this weird fisheye effect with random lines stretching across the screen. I was already mentally preparing myself to spend the next few hours digging through camera code and VTK documentation… …and then it just stopped happening. I didn’t fix it. I didn’t even change anything related to the camera. It just… disappeared. So either I accidentally fixed it without realizing, or it’s waiting until I show someone the project before it decides to come back. What’s next? Nothing too exciting, mostly polishing things up. Fix the JSON loader. Squash whatever bugs are still hiding in the renderer. Improve the CLI a bit more. Anyway, here’s the renderer doing the thing (oh, gotta fix that) and the logo (idk if it’s good, comment about it).
Devlog 8: Kerbal Gravity Program For anyone who’s new here, KGRP is a mission planning tool I’m building for KSP (and hopefully real-world missions too). The goal is to make planning orbital transfers and interplanetary missions a lot easier. Think of it as something inspired by libraries like Skyfield and Poliastro , but with a bigger focus on actually planning missions Today and the days after i gave my last devlog were actually useful, i mainly just created a new class based system (yes i am forced to, because my idea needs tooo many moving parts) called the Ticket : The Ticket allows you to plan entire journeys using TicketEvents , stuff that define what can happen to a spacecraft (14 of them). for example, you can have a ticket that contains a maeuver, a coast, an rcs translation, a docking and more. and one more thing, instead of a CLI (one command and forget), i am instead making a REPL (it remembers what you did). so yeah, that sums most of it up and also i made a new banner for KGRP (kinda yay???) What’s next so the main thing is to just start making the REPL using prompt-toolkit and other stuff. until then, see ya
Devlog 9 — Kerbal Gravity Program: the REPL is (almost) done No devlog last week — life happened, then OpenCode helped me absolutely cook. Newcomers: KGRP is a mission planner for KSP (runs outside the game). You define a spacecraft, stack events on a timeline, and the sim runs them. Plan in the tool, fly in the game. Where we are The REPL is nearly feature-complete. Every mission action is a TicketEvent — coast, maneuver, burn, engine toggle, science. The REPL never touches your ship directly; it just advances a ticket in UT and events fire when the timeline reaches them. One plan drives the renderer, physics, and save file. Also closed the loop on “one source of truth”: the fancy integrator used to run in a vacuum (zero gravity) when fired from a ticket. Now go , advance , and reset all agree on where you are. go Pick a start and end orbit from the presets and it works out burns, coasting, and delta-v, then schedules them: > go current moon:3a Transfer plan: Current (200,000m circular, 0.0 deg) -> Mun orbit (11,400,000m circular, 0.0 deg) (about Kerbin) Burns: 2 Total delta-v: 1,112.7 m/s Duration: 27,130.1s burn @ 0.0s dv=764.2 m/s Raise apoapsis to transfer coast 0.0s -> 27,130.1s Coast to apoapsis burn @ 27,130.1s dv=348.5 m/s Circularize / match target Resulting orbit: pe=12,000,000m ap=12,000,000m i=0.0 deg around Kerbin Presets are editable (and saveable to presets.json ); the planner core is a plain importable function ( go_plan(ticket, ...).total_dv ). Usability Time input isn’t a math exam: advance 2d 5h , time "Year 2, Day 100" . Per-use overrides without touching presets: go current preset:molniya incl=30 . go shows the plan and asks before committing (gradual / instant / cancel). edit now handles ships, not just bodies: mass, fuel, orbit elements. New-ticket wizard hands you an engine and 3,000 kg of fuel instead of a paperweight. After a reset you can clear/redo the timeline without fighting the guard. What’s next Some math is still coarse: plane changes are exact only for moon targets, synchronous orbits are a placeholder (no body rotation yet), arg-p/LAN drift isn’t modeled, and error messages need work — for when you type advance 5 bananas . Fun one I found: escaping at exactly escape velocity puts the orbit at eccentricity 1.000000 and the math gives up — the craft freezes and frame switches / go turn to nonsense. Interplanetary go is broken because of it, but burning slightly past escape fixes it (properly hyperbolic, maths happy). Just needs wiring in. In the meantime Planning to put it up on PyPi and hope it works
Ships:
Kerbal Gravity Program: SHIP - 1 Any KSP player knows the pain of planning a whole journey, then the Kraken wipes it and sends you back to the pad. Real missions are the same grind (see Cassini-Huygens: Cassini’s trajectory ). So I built KGRP — a mission planner for KSP you drive from a REPL or code, to plan and understand trips to other planets. Crash course pip install kgrp # Python 3.10+ kgrp # start the REPL help # every command, flag, and use Requirements Built on numpy (math), scipy (integration/solving), and pyvista (orbit and trajectory visualization), with rich and prompt-toolkit powering the REPL. What was challenging The math was the hard part — RKF(4)5 (Runge-Kutta-Fehlberg 4(5)), an adaptive-step integrator, was an absolute pain to get right. Shipping a real library was the other half; I’d made sites and small CLIs, but wasn’t sure this would hold together. What I’m proud of First thing I’ve ever put on PyPI. Along the way I got real with numpy, scipy, pyvista, and building a CLI/REPL people can actually use. A note on AI I used AI to help squash bugs and for the basic beautification of the README. The planning math and the tool itself are mine; the AI just helped me clean up and unstick the rough parts. Try it It’s out — test it, throw it at the wall, and send notes via feedback. P.S. There are a few easter eggs hiding in the errors. Go find them. Happy orbiting!!!...
|
1793310698.7885528
|
1793397098.7885528
|
|
24746
|
Astro Quiz by @Slizzard | Stardance
|
Slizzard
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-29T21:52:41Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a quiz about astrology. I used this to get into JS. Getting the checkboxes to work correctly was a hassle ( i did not know .checked exists …. i did fix it tho) Have fun with it!", "repo": "https://github.com/Sllizard/Astro-Quiz", "demo": "https://sllizard.github.io/Astro-Quiz/"}]...
|
[{"post_id": 18689, "ts": "202 [{"post_id": 18689, "ts": "2026-06-29T21:30:25Z", "hours": 4.8711, "text": "Finished the Quiz!"}]...
|
Title: Astro Quiz by @Slizzard | Stardance
Devlog Title: Astro Quiz by @Slizzard | Stardance
Devlogs:
Finished the Quiz!
Ships:
I made a quiz about astrology. I used this to get into JS. Getting the checkboxes to work correctly was a hassle ( i did not know .checked exists …. i did fix it tho) Have fun with it!...
|
1793292457.5893693
|
1793378857.5893693
|
|
24750
|
Drive and Lift by @aayushg | Stardance
|
aayushg
|
1
|
41.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T17:06:06Z", "hours": 41.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This project of mine is a basic drivetrain and lift mechanism. This taught me how to use motors, code in C++ and build basic robots. I am a slow build which is why it took longer.", "repo": "https://github.com/aayushg12/vex", "demo": ""}]...
|
[{"post_id": 74553, "ts": "202 [{"post_id": 74553, "ts": "2026-09-27T16:51:57Z", "hours": 5.9172, "text": "Finished the drive and lift mechanism. And fully coded and tested the drive!"}, {"post_id": 56975, "ts": "2026-08-29T00:52:35Z", "hours": 9.9981, "text": "Finally completed drivetrain and constructed lift. Just need to finish adding pulleys then will start working on the intake."}, {"post_id": 52036, "ts": "2026-08-22T02:18:14Z", "hours": 0.815, "text": "Coded basic 4 omni wheel drive train with 4 11w motors and imu"}, {"post_id": 50015, "ts": "2026-08-19T01:20:27Z", "hours": 4.7833, "text": "I have to rebuild the drivetrain because it was too long and wide. this is the difference. After fixing things up I am halfway done and I am saving 1 inch in vertical and 2 inches in horizontal space."}, {"post_id": 46070, "ts": "2026-08-13T00:46:52Z", "hours": 1.1, "text": "Began building intake so that it can be geared up and used pieces of polycarb for ramp"}, {"post_id": 44256, "ts": "2026-08-09T21:43:32Z", "hours": 3.8836, "text": "Found parts for my cascade lift and fixed the drive train spacing."}, {"post_id": 40399, "ts": "2026-08-03T21:19:06Z", "hours": 1.3669, "text": "Added intake roller and fixed/tested drivetrain"}, {"post_id": 16519, "ts": "2026-06-26T21:29:50Z", "hours": 1.2836, "text": "Almost finished the drivetrain just need to add a few more standoffs then code!"}, {"post_id": 16392, "ts": "2026-06-26T17:50:12Z", "hours": 1.9836, "text": "Removed old connections because they didn’t work and added new ones (really hard to add the new ones that’s why it took so long)"}, {"post_id": 15736, "ts": "2026-06-25T16:33:36Z", "hours": 2.2592, "text": "Attached both sides of the drivetrain. Added more connections to make it more stable. Next Steps: continue making it more secure and stable then start coding."}, {"post_id": 15376, "ts": "2026-06-25T00:23:31Z", "hours": 2.0503, "text": "Added gears and wheels to the drive train. Next step is to connect both pieces, add bracing, and code!"}, {"post_id": 15127, "ts": "2026-06-24T16:08:20Z", "hours": 1.9503, "text": "Tested all driving motors. Attached motors and completed frame of the drive base."}, {"post_id": 14781, "ts": "2026-06-24T00:40:34Z", "hours": 0.8669, "text": "Began the assembly and sorted all parts!"}, {"post_id": 14546, "ts": "2026-06-23T18:14:30Z", "hours": 2.7364, "text": "Building the drivetrain for the robot"}]...
|
Title: Drive and Lift by @aayushg | Stardance
Dev Title: Drive and Lift by @aayushg | Stardance
Devlogs:
Building the drivetrain for the robot
Began the assembly and sorted all parts!
Tested all driving motors. Attached motors and completed frame of the drive base.
Added gears and wheels to the drive train. Next step is to connect both pieces, add bracing, and code!
Attached both sides of the drivetrain. Added more connections to make it more stable. Next Steps: continue making it more secure and stable then start coding.
Removed old connections because they didn’t work and added new ones (really hard to add the new ones that’s why it took so long)
Almost finished the drivetrain just need to add a few more standoffs then code!
Added intake roller and fixed/tested drivetrain
Found parts for my cascade lift and fixed the drive train spacing.
Began building intake so that it can be geared up and used pieces of polycarb for ramp
I have to rebuild the drivetrain because it was too long and wide. this is the difference. After fixing things up I am halfway done and I am saving 1 inch in vertical and 2 inches in horizontal space.
Coded basic 4 omni wheel drive train with 4 11w motors and imu
Finally completed drivetrain and constructed lift. Just need to finish adding pulleys then will start working on the intake.
Finished the drive and lift mechanism. And fully coded and tested the drive!
Ships:
This project of mine is a basic drivetrain and lift mechanism. This taught me how to use motors, code in C++ and build basic robots. I am a slow build which is why it took longer....
|
1793155709.246501
|
1793242109.246501
|
|
24751
|
CosmoGram by @tharungowda | Stardance
|
tharungowda
|
1
|
10.0
|
130
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-30T18:32:00Z", "hours": 10.0, "multiplier": 12.66, "payout": 130, "blessing": "neutral", "text": "What did i make : - I built CosmoGram, a dark-themed mobile application using Flutter and Dart that connects directly to NASA’s databases. The app features a “Daily Discovery Feed” or simply “Discover” page which pulls real-time planetary imagery, descriptions, and cosmic telemetry via live API. It also includes a “Birthday” where users can input any date(Basically their bithday) coordinate to query the exact celestial snapshot NASA’s sensors captured on their birth date. What challenges did i face? Since this was my first project handling APIs and asynchronous calls in Flutter, navigating Future methods and managing state was a big learning curve. The most tiresome challenge was the local image downloader; high-resolution assets initially failed with a system exception because NASA’s raw image URLs contain complex API query strings that corrupted native Android file extensions (creating broken 0B files). I solved this by writing a custom naming filter to strip out the parameters and strictly enforce a clean .jpg tag. I also recently had to migrate my workspace to Linux and re-optimize my production compilation into split architecture targets (v7a and v8a) to bypass GitHub’s 25MB file upload limits. What was i proud of ? I was proud of learning app development and using the knowledge i gained through watching YouTube Tutorial and the things i learned along the way using AI (like Google Notebook LLM ) to Teach me Future and state management in flutter. It was a wonderfull experience . what other people should know to use my project? Highly Technological Background is not needed they should just follow these steps:- Download either ‘app-arm64-v8a-release.apk’ or ‘app-armeabi-v7a-release.apk’ (if the former is not installed) from the repository files. Install it on your Android phone (allow “Unknown Sources” if prompted). Open CosmoGram app to see the live NASA Daily Discovery feed, or switch to the Birthday tab and enter a date like 2004-10-24 to pull a historical cosmic snapshot! Note: If you want to pull down the raw code and build it locally, remember to open ‘Screen.dart’ and replace the placeholder string with your own official NASA API key.", "repo": "https://github.com/tharungowdaanime/CosmoGram", "demo": "https://github.com/tharungowdaanime/CosmoGram/releases/download/v1.0.0/app-armeabi-v7a-release.apk"}]...
|
[{"post_id": 19315, "ts": "202 [{"post_id": 19315, "ts": "2026-06-30T16:19:38Z", "hours": 5.9725, "text": "The App Is Almost Ready Short App Description The app I was working on, CosmoGram, is ready (almost). It particularly has two pages: one where you get a daily image and the image’s information like its description, radiation level, etc., and the other page is Birthday, where you enter your birthday and get the image that was taken by NASA on that day. Usage of AI Stitch: I used Stitch to get the UI elements of the two pages. It is awesome and simple to use. I described my app, its usage, and how it works, and it gave me the UI pretty fast, which was also awesome. Gemini: In Stitch, if you go to Export, select the pages you want to export, and export in code, it gives you XML code. I pasted this into Gemini and asked what UI elements I could use to achieve this, and I also told it to give me boilerplate code to build upon. Gemini Image Generation: I also used the Gemini image generation model to generate a custom logo for my app. Troublesome Things & Breakthroughs Since this was my first project involving APIs using Flutter, I did get errors using Future and all that. I mainly asked Gemini for help regarding it. Downloading the image was probably the most tiresome part. I watched some YouTube videos and implemented it, but the downloaded images were all 0B and could not be opened. I asked Gemini to help troubleshoot it. The Download Abort Fix: Initially, downloading high-resolution assets threw a critical system exception. The issue was that NASA’s image URLs contain complex API query strings, which corrupted the native file extension. I wrote a file-naming filter to strip out the parameters and strictly enforce a clean .jpg formatting tag. Now, the Android gallery opens the images flawlessly. What I Just Finished After taking a quick rest, I figured out exactly how to set up the app image and the title name natively! I updated the underlying AndroidManifest.xml files to clear out the default development metadata templates. The app now cleanly displays with its proper launcher name ( CosmoGram ) right on my mobile’s home screen, and it successfully loads up with my customized, textless neon-rocket icon asset in the app drawer. Everything is fully live and running on the phone now! Extra If you see most Flutter projects, they will probably include many files for different pages. This helps if you are in a company where everyone can work on the app and contribute. But since I was making this as a personal project and I don’t think anyone else will contribute to this, I decided to put all the screens and pages in the codebase inside a single Screen.dart . There is also main.dart , which actually runs the app since the void main(){} function is inside that folder."}, {"post_id": 17053, "ts": "2026-06-27T18:02:01Z", "hours": 4.3372, "text": "#DEVLOG1: Hello so i am kinda new here, i really wanted to get into app development. I do have a background in programming(not too much strong just medicore) i know python very well and title bit of C , Since dart is similar to both Python and C like its syntax is similar to C and concepts like OOP is also in Python it was easy to get on. But on flutter part i am still not that much great and i still kinda get confused in topics like Implementation , Stateless,Statefull . So i did build a Currency Converter App as a practice and also so that i could get fimiliar with widgets , i didn’t build it on my own i watched a tutorial and followed along , i think i will build few apps like these and when i get a hang of it i wll go to my main project which is a kinda of simple, It uses NASA’s API to get beautiful images of Universe and you can even set it as wallpaper and you could even enter your birthday and find out the photo the Voyger took on that day. So yeah thats it and if you guys are fimiliar with flutter it could be great if could tell me what all resources you used."}]...
|
Title: CosmoGram by @tharungowda | Stardance
Devl Title: CosmoGram by @tharungowda | Stardance
Devlogs:
#DEVLOG1: Hello so i am kinda new here, i really wanted to get into app development. I do have a background in programming(not too much strong just medicore) i know python very well and title bit of C , Since dart is similar to both Python and C like its syntax is similar to C and concepts like OOP is also in Python it was easy to get on. But on flutter part i am still not that much great and i still kinda get confused in topics like Implementation , Stateless,Statefull . So i did build a Currency Converter App as a practice and also so that i could get fimiliar with widgets , i didn’t build it on my own i watched a tutorial and followed along , i think i will build few apps like these and when i get a hang of it i wll go to my main project which is a kinda of simple, It uses NASA’s API to get beautiful images of Universe and you can even set it as wallpaper and you could even enter your birthday and find out the photo the Voyger took on that day. So yeah thats it and if you guys are fimiliar with flutter it could be great if could tell me what all resources you used.
The App Is Almost Ready Short App Description The app I was working on, CosmoGram, is ready (almost). It particularly has two pages: one where you get a daily image and the image’s information like its description, radiation level, etc., and the other page is Birthday, where you enter your birthday and get the image that was taken by NASA on that day. Usage of AI Stitch: I used Stitch to get the UI elements of the two pages. It is awesome and simple to use. I described my app, its usage, and how it works, and it gave me the UI pretty fast, which was also awesome. Gemini: In Stitch, if you go to Export, select the pages you want to export, and export in code, it gives you XML code. I pasted this into Gemini and asked what UI elements I could use to achieve this, and I also told it to give me boilerplate code to build upon. Gemini Image Generation: I also used the Gemini image generation model to generate a custom logo for my app. Troublesome Things & Breakthroughs Since this was my first project involving APIs using Flutter, I did get errors using Future and all that. I mainly asked Gemini for help regarding it. Downloading the image was probably the most tiresome part. I watched some YouTube videos and implemented it, but the downloaded images were all 0B and could not be opened. I asked Gemini to help troubleshoot it. The Download Abort Fix: Initially, downloading high-resolution assets threw a critical system exception. The issue was that NASA’s image URLs contain complex API query strings, which corrupted the native file extension. I wrote a file-naming filter to strip out the parameters and strictly enforce a clean .jpg formatting tag. Now, the Android gallery opens the images flawlessly. What I Just Finished After taking a quick rest, I figured out exactly how to set up the app image and the title name natively! I updated the underlying AndroidManifest.xml files to clear out the default development metadata templates. The app now cleanly displays with its proper launcher name ( CosmoGram ) right on my mobile’s home screen, and it successfully loads up with my customized, textless neon-rocket icon asset in the app drawer. Everything is fully live and running on the phone now! Extra If you see most Flutter projects, they will probably include many files for different pages. This helps if you are in a company where everyone can work on the app and contribute. But since I was making this as a personal project and I don’t think anyone else will contribute to this, I decided to put all the screens and pages in the codebase inside a single Screen.dart . There is also main.dart , which actually runs the app since the void main(){} function is inside that folder.
Ships:
What did i make : - I built CosmoGram, a dark-themed mobile application using Flutter and Dart that connects directly to NASA’s databases. The app features a “Daily Discovery Feed” or simply “Discover” page which pulls real-time planetary imagery, descriptions, and cosmic telemetry via live API. It also includes a “Birthday” where users can input any date(Basically their bithday) coordinate to query the exact celestial snapshot NASA’s sensors captured on their birth date. What challenges did i face? Since this was my first project handling APIs and asynchronous calls in Flutter, navigating Future methods and managing state was a big learning curve. The most tiresome challenge was the local image downloader; high-resolution assets initially failed with a system exception because NASA’s raw image URLs contain complex API query strings that corrupted native Android file extensions (creating broken 0B files). I solved this by writing a custom naming filter to strip out the parameters and strictly enforce a clean .jpg tag. I also recently had to migrate my workspace to Linux and re-optimize my production compilation into split architecture targets (v7a and v8a) to bypass GitHub’s 25MB file upload limits. What was i proud of ? I was proud of learning app development and using the knowledge i gained through watching YouTube Tutorial and the things i learned along the way using AI (like Google Notebook LLM ) to Teach me Future and state management in flutter. It was a wonderfull experience . what other people should know to use my project? Highly Technological Background is not needed they should just follow these steps:- Download either ‘app-arm64-v8a-release.apk’ or ‘app-armeabi-v7a-release.apk’ (if the former is not installed) from the repository files. Install it on your Android phone (allow “Unknown Sources” if prompted). Open CosmoGram app to see the live NASA Daily Discovery feed, or switch to the Birthday tab and enter a date like 2004-10-24 to pull a historical cosmic snapshot! Note: If you want to pull down the raw code and build it locally, remember to open ‘Screen.dart’ and replace the placeholder string with your own official NASA API key....
|
1793260359.4312618
|
1793346759.4312618
|
|
24773
|
The Herptionary: a Guide to all things Herps by @F The Herptionary: a Guide to all things Herps by @FrogDude | Stardance...
|
FrogDude
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-12T20:41:13Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a multi-page site that: -Calls to a free dictionary API and can display results -Allows multi-page navigation -Has a cool frog logo lol Do I plan on implementing more features, including my own API that works for my intended purpose in the future? yes. Do I have a somewhat working product and need a break? also yes. Please enjoy my 7+ hours of crying over VS code. If you want to save me from API purgatory, feel free to DM and ask to help out or add a pull request/add to my repository! I would LOVE for this to be a group project. Max out o7", "repo": "https://github.com/FrogDude7856/Herptionary", "demo": "https://herptionary.max-walthamsajdak.workers.dev/"}]...
|
[{"post_id": 45989, "ts": "202 [{"post_id": 45989, "ts": "2026-08-12T20:35:38Z", "hours": 2.4997, "text": "Herptionary Devlog 006: I give up, I have something functional kinda, lets ship that So… I disappeared for a bit… I left town for like a month for college visits and supporting a family member in travel. Looking at my API troubles with a fresh set of eyes really did not help, but y’know what? I tried. I failed. But the website does function and I did manage to get it to send requests to a free dictionary API and actually return something, so I am okay with putting this temporarily on the backburner while I learn more about website building and shipping it for hopefully enough stardust to not show my name with every visit. Changes: Added python file that will hopefully be the basis of my custom API in the future Added “progress” warnings to all pages left unfinished this ship; will add more text and write the articles soon hopefully Added logo to header “how did you spend two hours on this?” I spent most of that struggling to get an API working, installing extensions, testing the site, and reloading VScode so many times I think i have the button pattern burned into my brain. Someday I will succeed at this. That day is not today."}, {"post_id": 26153, "ts": "2026-07-10T19:36:51Z", "hours": 0.9958, "text": "WE HAVE A LOGO!!!! Not much else to note; been working on trying to get a basic API up and running and failing miserably, which is what the time is. I did try to track the two hours I spent working on this logo but lapse broke - twice - so that’s gone out the window. But. Frog book :) (To the one dude in the slack who said the snake was cooler: yes, but it looks TERRIBLE vectored lol)"}, {"post_id": 23841, "ts": "2026-07-07T00:45:34Z", "hours": 1.5669, "text": "Devlog 4: WE’RE ON THE WEB!!! The Herptionary is officially online! And formatted properly! What I did: Redid my file organizaton so Cloudflare would recognize it as an actual site Put it on Cloudflare Fixed a bunch of issues, including the footer being stuck to the top of the screen on the dictionary and the header not being a header. What’s next: Build an API for all the herp terms I want to add Vector my logo (to be revealed next devlog!) Write the Reptiles landing page"}, {"post_id": 18792, "ts": "2026-06-30T00:20:16Z", "hours": 1.1706, "text": "Herptionary Devlog 3: simplified, but at what cost So, instead of building 26 letter-based pages and crying over file organization, I bit the bullet and found a tutorial on how to make the site access an API and retrieve a definition from somewhere else (thank you codingartistweb.com). The formatting is still off, but now that I am actually using a CSS stylesheet I should only have to do this once and then all my pages should be formatted properly. I am hoping that building an API from scratch does not require me to work with a fourth coding language, especially since I will have to eventually build three of them (one for the dictionary itself, and one each for reptile and amphibian searches), but for testing purposes I am currently using a free online dictionary API thing that came with the tutorial. It doesn’t have all the terms I am planning on including, so I can’t keep it that and skip building an API, but it is funny to search swear words while I am making sure that I didn’t break it while reformatting my site. I love my tadpole stage website :)"}, {"post_id": 15265, "ts": "2026-06-24T19:41:39Z", "hours": 1.4561, "text": "Herptionary Devlog 2 So I had to redo my file organization TWICE to get it to work and make sense but I HAVE PAGE NAVIGATION WORKING!!! What I Did: Added several home and landing pages, including the Dictionary Home Page and an About Us page Linked (and re-linked) images to the site for proper display of visual data Set up page navigation, including a functioning link in the header (to be replaced with an image) Cried over file organization BUTTONS!!! I HAVE BUTTONS AND THEY WORK!!! Next Steps: Build the main Dictionary pages (…oh. 26 letter pages ALONE. I may have bitten off more than I can chew guys) Figure out how to make a wiki-esque edit system to make expanding the site to multiple people a LOT easier when I need help actually filling in the dictionary Ask if I can count graphic design time as hours spent on this project before I learn a new vector design system Develop a wiki-esque source system so I don’t have to link every single ^# credit by hand"}, {"post_id": 15017, "ts": "2026-06-24T12:21:46Z", "hours": 0.2925, "text": "Herptionary Devlog 1 So I happen to be an aspiring herpetologist (amphibian and reptile scientist). Much to my annoyance, some guy in the 1200s decided my favorite creatures in the world were “monsterous” and grouped them together, and now everyone is afraid of them. So, I’m gonna put my other interest to work and fix that! What I did: Set up the workspace, hackatime, etc. for my first true coding project Made my first few (VERY basic) pages in HTML. Made bug/error/incorrect info reporting google form for when I do get this on the web. Next Steps: Figure out how to link pages Find hosting stuff Graphic Design? (Screenshot attached: a quick build of my homepage)"}]...
|
Title: The Herptionary: a Guide to all things Herp Title: The Herptionary: a Guide to all things Herps by @FrogDude | Stardance
Devlogs:
Herptionary Devlog 1 So I happen to be an aspiring herpetologist (amphibian and reptile scientist). Much to my annoyance, some guy in the 1200s decided my favorite creatures in the world were “monsterous” and grouped them together, and now everyone is afraid of them. So, I’m gonna put my other interest to work and fix that! What I did: Set up the workspace, hackatime, etc. for my first true coding project Made my first few (VERY basic) pages in HTML. Made bug/error/incorrect info reporting google form for when I do get this on the web. Next Steps: Figure out how to link pages Find hosting stuff Graphic Design? (Screenshot attached: a quick build of my homepage)
Herptionary Devlog 2 So I had to redo my file organization TWICE to get it to work and make sense but I HAVE PAGE NAVIGATION WORKING!!! What I Did: Added several home and landing pages, including the Dictionary Home Page and an About Us page Linked (and re-linked) images to the site for proper display of visual data Set up page navigation, including a functioning link in the header (to be replaced with an image) Cried over file organization BUTTONS!!! I HAVE BUTTONS AND THEY WORK!!! Next Steps: Build the main Dictionary pages (…oh. 26 letter pages ALONE. I may have bitten off more than I can chew guys) Figure out how to make a wiki-esque edit system to make expanding the site to multiple people a LOT easier when I need help actually filling in the dictionary Ask if I can count graphic design time as hours spent on this project before I learn a new vector design system Develop a wiki-esque source system so I don’t have to link every single ^# credit by hand
Herptionary Devlog 3: simplified, but at what cost So, instead of building 26 letter-based pages and crying over file organization, I bit the bullet and found a tutorial on how to make the site access an API and retrieve a definition from somewhere else (thank you codingartistweb.com). The formatting is still off, but now that I am actually using a CSS stylesheet I should only have to do this once and then all my pages should be formatted properly. I am hoping that building an API from scratch does not require me to work with a fourth coding language, especially since I will have to eventually build three of them (one for the dictionary itself, and one each for reptile and amphibian searches), but for testing purposes I am currently using a free online dictionary API thing that came with the tutorial. It doesn’t have all the terms I am planning on including, so I can’t keep it that and skip building an API, but it is funny to search swear words while I am making sure that I didn’t break it while reformatting my site. I love my tadpole stage website :)
Devlog 4: WE’RE ON THE WEB!!! The Herptionary is officially online! And formatted properly! What I did: Redid my file organizaton so Cloudflare would recognize it as an actual site Put it on Cloudflare Fixed a bunch of issues, including the footer being stuck to the top of the screen on the dictionary and the header not being a header. What’s next: Build an API for all the herp terms I want to add Vector my logo (to be revealed next devlog!) Write the Reptiles landing page
WE HAVE A LOGO!!!! Not much else to note; been working on trying to get a basic API up and running and failing miserably, which is what the time is. I did try to track the two hours I spent working on this logo but lapse broke - twice - so that’s gone out the window. But. Frog book :) (To the one dude in the slack who said the snake was cooler: yes, but it looks TERRIBLE vectored lol)
Herptionary Devlog 006: I give up, I have something functional kinda, lets ship that So… I disappeared for a bit… I left town for like a month for college visits and supporting a family member in travel. Looking at my API troubles with a fresh set of eyes really did not help, but y’know what? I tried. I failed. But the website does function and I did manage to get it to send requests to a free dictionary API and actually return something, so I am okay with putting this temporarily on the backburner while I learn more about website building and shipping it for hopefully enough stardust to not show my name with every visit. Changes: Added python file that will hopefully be the basis of my custom API in the future Added “progress” warnings to all pages left unfinished this ship; will add more text and write the articles soon hopefully Added logo to header “how did you spend two hours on this?” I spent most of that struggling to get an API working, installing extensions, testing the site, and reloading VScode so many times I think i have the button pattern burned into my brain. Someday I will succeed at this. That day is not today.
Ships:
I made a multi-page site that: -Calls to a free dictionary API and can display results -Allows multi-page navigation -Has a cool frog logo lol Do I plan on implementing more features, including my own API that works for my intended purpose in the future? yes. Do I have a somewhat working product and need a break? also yes. Please enjoy my 7+ hours of crying over VS code. If you want to save me from API purgatory, feel free to DM and ask to help out or add a pull request/add to my repository! I would LOVE for this to be a group project. Max out o7...
|
1793141325.719096
|
1793227725.719096
|
|
24797
|
CRPT v1.0 by @rx76d | Stardance
|
rx76d
|
1
|
2.0
|
9
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T08:19:20Z", "hours": 2.0, "multiplier": 4.1, "payout": 9, "blessing": "neutral", "text": "it is just a fun project you can turn on full screen mode and can show off to your non technical frnds that you are hacker and have a hell lot of crypto :)", "repo": "https://github.com/rudrap2009/crypto_tdash", "demo": "https://cryptotdash.gamer.free"}]...
|
[{"post_id": 16154, "ts": "202 [{"post_id": 16154, "ts": "2026-06-26T08:13:44Z", "hours": 0.4389, "text": "DEVLOG #3 I wrote README and make sure that when user open it first time the arrangement is correct and 4 windows will be opened automatically."}, {"post_id": 15486, "ts": "2026-06-25T05:32:26Z", "hours": 0.7425, "text": "DEVLOG #2 It is almost complete, I have completed styling with css and now i’m thinking to add more windows but i’m not sure what else to add so i might ship it now."}, {"post_id": 14985, "ts": "2026-06-24T10:39:47Z", "hours": 0.5119, "text": "DEVLOG #1 I updated js to have input fields and added some initial css."}, {"post_id": 14667, "ts": "2026-06-23T21:05:13Z", "hours": 0.4231, "text": "DEVLOG #0 This is my first Devlog and please feel free to suggest me how to improve devlog’s quality. I just added some js to fetch rss feed to display live crypto rates and weather."}]...
|
Title: CRPT v1.0 by @rx76d | Stardance
Devlogs:
D Title: CRPT v1.0 by @rx76d | Stardance
Devlogs:
DEVLOG #0 This is my first Devlog and please feel free to suggest me how to improve devlog’s quality. I just added some js to fetch rss feed to display live crypto rates and weather.
DEVLOG #1 I updated js to have input fields and added some initial css.
DEVLOG #2 It is almost complete, I have completed styling with css and now i’m thinking to add more windows but i’m not sure what else to add so i might ship it now.
DEVLOG #3 I wrote README and make sure that when user open it first time the arrangement is correct and 4 windows will be opened automatically.
Ships:
it is just a fun project you can turn on full screen mode and can show off to your non technical frnds that you are hacker and have a hell lot of crypto :)...
|
1793252842.6120305
|
1793339242.6120305
|
|
24799
|
john computer by @yagmur | Stardance
|
yagmur
|
1
|
9.82
|
42
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T09:04:23Z", "hours": 5.0, "multiplier": 7.93, "payout": 42, "blessing": "neutral", "text": "well i wanted to make a “smaller” project before i ship my main thing (smb remake) buuut this turned out to be a challenge on its own. i had to learn how serial works (doubt i still understand it) how slack works (doubt again) not to eat my brains out overall it was very fun doing this, learned and suffered a lot :D it is held by duct tape, hopes and dreams so hopefully it fulfills the “24/7” requirement. i may or may not return to this to fix the rough edges…. (no promises!!)", "repo": "https://github.com/yagmurpog/john-computer", "demo": "https://app.slack.com/client/E09V59WQY1E/C0BD7M7JUH3"}]...
|
[{"post_id": 22015, "ts": "202 [{"post_id": 22015, "ts": "2026-07-04T08:01:24Z", "hours": 3.0656, "text": "uggggggggggggghhhhh, trying to implement a restart capability to the script for a while now but haven’t been successful. uhghughhhhhhhhhhhhhg"}, {"post_id": 19773, "ts": "2026-07-01T05:03:59Z", "hours": 1.7592, "text": "merged everything to a single script so it can be run as a systemd service, cron job whatever and for a reset command in slack. looking at screenshots of code is boring, please enjoy this car"}, {"post_id": 16171, "ts": "2026-06-26T08:45:10Z", "hours": 1.8322, "text": "decided to switch to socket mode, because opening up ports is a pain in the bum. the bot is now alive at #john-computer in slack!! username: john password: john"}, {"post_id": 15240, "ts": "2026-06-24T19:04:21Z", "hours": 0.7872, "text": "ok update time, i was a bit too vague on the last post so i will explain what this is now. this is a slack bot that connects slack to a serial terminal, specifically to interface with an alpine install in qemu borrowed some regex from the internet to remove escape codes, needs hella more polish before releasing it into the wild"}, {"post_id": 15007, "ts": "2026-06-24T11:56:13Z", "hours": 2.7172, "text": "new terminal emulator"}]...
|
Title: john computer by @yagmur | Stardance
Devlo Title: john computer by @yagmur | Stardance
Devlogs:
new terminal emulator
ok update time, i was a bit too vague on the last post so i will explain what this is now. this is a slack bot that connects slack to a serial terminal, specifically to interface with an alpine install in qemu borrowed some regex from the internet to remove escape codes, needs hella more polish before releasing it into the wild
decided to switch to socket mode, because opening up ports is a pain in the bum. the bot is now alive at #john-computer in slack!! username: john password: john
merged everything to a single script so it can be run as a systemd service, cron job whatever and for a reset command in slack. looking at screenshots of code is boring, please enjoy this car
uggggggggggggghhhhh, trying to implement a restart capability to the script for a while now but haven’t been successful. uhghughhhhhhhhhhhhhg
Ships:
well i wanted to make a “smaller” project before i ship my main thing (smb remake) buuut this turned out to be a challenge on its own. i had to learn how serial works (doubt i still understand it) how slack works (doubt again) not to eat my brains out overall it was very fun doing this, learned and suffered a lot :D it is held by duct tape, hopes and dreams so hopefully it fulfills the “24/7” requirement. i may or may not return to this to fix the rough edges…. (no promises!!)...
|
1793220652.9453228
|
1793307052.9453228
|
|
24802
|
battle bot by @jonathan | Stardance
|
jonathan
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-05T13:12:38Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "An antweight battle bot", "repo": "https://github.com/Zoomwag/Undercutter-Battlebot", "demo": ""}]...
|
[{"post_id": 22815, "ts": "202 [{"post_id": 22815, "ts": "2026-07-05T12:26:58Z", "hours": 2.6333, "text": "finshed"}, {"post_id": 18266, "ts": "2026-06-29T11:03:13Z", "hours": 2.1811, "text": "cONVERETED IT INTO AN UNDERCUTTER"}, {"post_id": 14596, "ts": "2026-06-23T19:20:58Z", "hours": 1.4486, "text": "I started doing cad and did a bunch of research"}]...
|
Title: battle bot by @jonathan | Stardance
Devlog Title: battle bot by @jonathan | Stardance
Devlogs:
I started doing cad and did a bunch of research
cONVERETED IT INTO AN UNDERCUTTER
finshed
Ships:
An antweight battle bot...
|
1793141499.2117028
|
1793227899.2117028
|
|
24804
|
🚀 NASA Space Lines by @duarda350 | Stardance
|
duarda350
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-23T13:54:30Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "🛰️ NASA API Integration The project uses NASA’s Astronomy Picture of the Day API. API endpoint: https://api.nasa.gov/ The API key is provided at runtime using Flutter’s –dart-define mechanism. Example: flutter run -d chrome –dart-define=NASA_API_KEY=YOUR_API_KEY Important Do not commit your NASA API key to GitHub. The project intentionally reads the API key using: const apiKey = String.fromEnvironment(‘NASA_API_KEY’); This keeps the key outside the source code. Note: because this project runs on Flutter Web, values passed with –dart-define can ultimately be exposed in the client application. For a production application, a backend/proxy and appropriate API restrictions should be considered. 🛠️ Technologies Technology Purpose Flutter Application framework Dart Programming language Flutter Web Web application runtime Material Design UI components NASA APOD API Astronomy data and media HTTP API communication JSON API data format VS Code Development environment Git Version control GitHub Source code repository 📂 Project Structure Nasa_Space_Trip_App/ │ ├── android/ ├── ios/ ├── linux/ ├── macos/ ├── web/ ├── windows/ │ ├── assets/ │ └── imagens/ │ ├── background.jpg │ ├── iss.png │ ├── mars.png │ ├── moon.png │ ├── neptune.png │ ├── saturn.png │ └── sun.png │ ├── lib/ │ ├── screens/ │ │ ├── data/ │ │ │ └── planets.dart │ │ │ │ │ ├── body_screen.dart │ │ ├── home_screen.dart │ │ └── planet_detail_screen.dart │ │ │ ├── services/ │ │ └── nasa_service.dart │ │ │ └── main.dart │ ├── test/ │ ├── pubspec.yaml ├── pubspec.lock ├── analysis_options.yaml └── README.md 🧭 Traceability / Setup Table The table below provides a quick traceability guide for developers who want to run, understand, or troubleshoot the project. Step Component Location Purpose Verification 1 Flutter SDK Local environment Provides the development framework flutter –version 2 Project dependencies pubspec.yaml Defines project packages flutter pub get 3 Assets assets/imagens/ Stores application images Check image files exist 4 Main entry point lib/main.dart Starts the application Run the project 5 Home screen lib/screens/home_screen.dart Application landing screen Home screen appears 6 Destination screen lib/screens/body_screen.dart Displays available destinations Destination list appears 7 Planet data lib/screens/data/planets.dart Stores destination information Destination cards load 8 Detail s", "repo": "https://github.com/mariaeduardabuenoda/Nasa_Space_Trip_App.", "demo": "https://mariaeduardabuenoda.github.io/Nasa_Space_Trip_App./"}]...
|
[{"post_id": 72663, "ts": "202 [{"post_id": 72663, "ts": "2026-09-23T13:31:43Z", "hours": 4.3619, "text": "🚀 NASA Space Lines NASA Space Lines is a space exploration application developed with Flutter and Dart.The project allows users to explore different space destinations, view information about planets and the International Space Station (ISS), access NASA’s Astronomy Picture of the Day (APOD), and calculate how much they would weigh on different celestial bodies.The application was developed as a practical project to improve mobile and web application development skills, API integration, UI development, state management, and problem-solving with Flutter. Click here to see the repository , click here to view the page ."}]...
|
Title: 🚀 NASA Space Lines by @duarda350 | Stardanc Title: 🚀 NASA Space Lines by @duarda350 | Stardance
Devlogs:
🚀 NASA Space Lines NASA Space Lines is a space exploration application developed with Flutter and Dart.The project allows users to explore different space destinations, view information about planets and the International Space Station (ISS), access NASA’s Astronomy Picture of the Day (APOD), and calculate how much they would weigh on different celestial bodies.The application was developed as a practical project to improve mobile and web application development skills, API integration, UI development, state management, and problem-solving with Flutter. Click here to see the repository , click here to view the page .
Ships:
🛰️ NASA API Integration The project uses NASA’s Astronomy Picture of the Day API. API endpoint: https://api.nasa.gov/ The API key is provided at runtime using Flutter’s –dart-define mechanism. Example: flutter run -d chrome –dart-define=NASA_API_KEY=YOUR_API_KEY Important Do not commit your NASA API key to GitHub. The project intentionally reads the API key using: const apiKey = String.fromEnvironment(‘NASA_API_KEY’); This keeps the key outside the source code. Note: because this project runs on Flutter Web, values passed with –dart-define can ultimately be exposed in the client application. For a production application, a backend/proxy and appropriate API restrictions should be considered. 🛠️ Technologies Technology Purpose Flutter Application framework Dart Programming language Flutter Web Web application runtime Material Design UI components NASA APOD API Astronomy data and media HTTP API communication JSON API data format VS Code Development environment Git Version control GitHub Source code repository 📂 Project Structure Nasa_Space_Trip_App/ │ ├── android/ ├── ios/ ├── linux/ ├── macos/ ├── web/ ├── windows/ │ ├── assets/ │ └── imagens/ │ ├── background.jpg │ ├── iss.png │ ├── mars.png │ ├── moon.png │ ├── neptune.png │ ├── saturn.png │ └── sun.png │ ├── lib/ │ ├── screens/ │ │ ├── data/ │ │ │ └── planets.dart │ │ │ │ │ ├── body_screen.dart │ │ ├── home_screen.dart │ │ └── planet_detail_screen.dart │ │ │ ├── services/ │ │ └── nasa_service.dart │ │ │ └── main.dart │ ├── test/ │ ├── pubspec.yaml ├── pubspec.lock ├── analysis_options.yaml └── README.md 🧭 Traceability / Setup Table The table below provides a quick traceability guide for developers who want to run, understand, or troubleshoot the project. Step Component Location Purpose Verification 1 Flutter SDK Local environment Provides the development framework flutter –version 2 Project dependencies pubspec.yaml Defines project packages flutter pub get 3 Assets assets/imagens/ Stores application images Check image files exist 4 Main entry point lib/main.dart Starts the application Run the project 5 Home screen lib/screens/home_screen.dart Application landing screen Home screen appears 6 Destination screen lib/screens/body_screen.dart Displays available destinations Destination list appears 7 Planet data lib/screens/data/planets.dart Stores destination information Destination cards load 8 Detail s...
|
1793148902.189224
|
1793235302.189224
|
|
24807
|
browserMCP by @stuff1ee | Stardance
|
stuff1ee
|
1
|
22.26
|
348
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-03T13:29:32Z", "hours": 21.0, "multiplier": 16.94, "payout": 348, "blessing": "neutral", "text": "browserMCP is a QoL browser management tool for MCP clients to manage your browser! It includes major QoL improvements such as: Group-related actions (grouping, ungrouping tabs, properties of groups) Tab-related actions (opening tabs, closing tabs) History actions (getting browser history max 24h, opt-in) This is strictly not an automation tool for page actions. I took so many hours because i had to port things from python to node.js etc..", "repo": "https://gitlab.com/mystuffyt/browserMCP", "demo": "https://gitlab.com/mystuffyt/browserMCP/-/releases"}]...
|
[{"post_id": 36560, "ts": "202 [{"post_id": 36560, "ts": "2026-07-28T19:12:22Z", "hours": 1.2569, "text": "Had a lot of commits and trouble w/ GitLab CI, also created GitLab pages for demo link! It’s just the README but it includes instructions on how to install the client + server quick install. I unironically took 1h for all of this, because i am very slow at things :("}, {"post_id": 21470, "ts": "2026-07-03T13:15:50Z", "hours": 1.9747, "text": "finally done! ive added uh getting active tab contents for the purpose of summarizing text or whatever"}, {"post_id": 18419, "ts": "2026-06-29T15:51:21Z", "hours": 4.2381, "text": "devlog 6 The MCP client has a BUNCH of new features. Opening tabs Closing tabs Unloading tabs Grouping tabs Changing color and name of groups History access (opt-in) Happy with how it’s turning out still. I think its time to fix more bugs now. if i figure out the situation on keeping websocket open w/ the service worker, i might make this work for firefox. Its been tough tho, so much bugs…"}, {"post_id": 16920, "ts": "2026-06-27T14:12:16Z", "hours": 5.0031, "text": "Devlog 5 Created a quick install python script! Right now it only supports adding the mcp to claude code and opencode, and it supports all macos, windows and linux! (someone test it on macos and windows for me pls..) As for the MCP, grouping a tab now returns the group ID normally, and now you can change title of group! Still dont know which customization features to add.. but ill figure it out hopefully (i took 4h 58m because i have never created an installation script, chrome extension or even a node.js server in general.. and i learned alot)"}, {"post_id": 15947, "ts": "2026-06-25T22:11:25Z", "hours": 1.4583, "text": "Devlog 4 finally!!!!!!!!!! The extension now handles closed connections, and reconnects… and the whole server is coded in node.js without python. Now that the app completely works, the only thing left for me is to add more customization and etc features. Right now there is: getting tabs and their titles, and grouping them.. If you want to, suggest any ideas."}, {"post_id": 15827, "ts": "2026-06-25T18:49:45Z", "hours": 2.445, "text": "Devlog 3 Finally finished the core MCP! Really fragile.. but it works. fsr some hours are marked as ai coding even though i did not vibecode the MCP at all :( (because i was testing the MCP using opencode) but the MCP works enough. The server is a bit fragile and will hope for a better server in the future."}, {"post_id": 15358, "ts": "2026-06-24T23:34:42Z", "hours": 1.9975, "text": "dev log 2…. ive recoded how the server works, and made the service worker in my extension keepalive. The project is starting to come together at least. Gonna work on the MCP finally next time."}, {"post_id": 15187, "ts": "2026-06-24T18:03:45Z", "hours": 3.4425, "text": "first devlog!! None of the MCP works yet, but i have gotten the communication between browser and websocket server to work. I might switch to node.js for the mcp server as i personally think it’s easier to handle websocket there. to be fair it is my first time creating a chrome extension and doing anything with websocket in general.."}]...
|
Title: browserMCP by @stuff1ee | Stardance
Devlog Title: browserMCP by @stuff1ee | Stardance
Devlogs:
first devlog!! None of the MCP works yet, but i have gotten the communication between browser and websocket server to work. I might switch to node.js for the mcp server as i personally think it’s easier to handle websocket there. to be fair it is my first time creating a chrome extension and doing anything with websocket in general..
dev log 2…. ive recoded how the server works, and made the service worker in my extension keepalive. The project is starting to come together at least. Gonna work on the MCP finally next time.
Devlog 3 Finally finished the core MCP! Really fragile.. but it works. fsr some hours are marked as ai coding even though i did not vibecode the MCP at all :( (because i was testing the MCP using opencode) but the MCP works enough. The server is a bit fragile and will hope for a better server in the future.
Devlog 4 finally!!!!!!!!!! The extension now handles closed connections, and reconnects… and the whole server is coded in node.js without python. Now that the app completely works, the only thing left for me is to add more customization and etc features. Right now there is: getting tabs and their titles, and grouping them.. If you want to, suggest any ideas.
Devlog 5 Created a quick install python script! Right now it only supports adding the mcp to claude code and opencode, and it supports all macos, windows and linux! (someone test it on macos and windows for me pls..) As for the MCP, grouping a tab now returns the group ID normally, and now you can change title of group! Still dont know which customization features to add.. but ill figure it out hopefully (i took 4h 58m because i have never created an installation script, chrome extension or even a node.js server in general.. and i learned alot)
devlog 6 The MCP client has a BUNCH of new features. Opening tabs Closing tabs Unloading tabs Grouping tabs Changing color and name of groups History access (opt-in) Happy with how it’s turning out still. I think its time to fix more bugs now. if i figure out the situation on keeping websocket open w/ the service worker, i might make this work for firefox. Its been tough tho, so much bugs…
finally done! ive added uh getting active tab contents for the purpose of summarizing text or whatever
Had a lot of commits and trouble w/ GitLab CI, also created GitLab pages for demo link! It’s just the README but it includes instructions on how to install the client + server quick install. I unironically took 1h for all of this, because i am very slow at things :(
Ships:
browserMCP is a QoL browser management tool for MCP clients to manage your browser! It includes major QoL improvements such as: Group-related actions (grouping, ungrouping tabs, properties of groups) Tab-related actions (opening tabs, closing tabs) History actions (getting browser history max 24h, opt-in) This is strictly not an automation tool for page actions. I took so many hours because i had to port things from python to node.js etc.....
|
1793274800.2883098
|
1793361200.2883098
|
|
24819
|
cmdRelay by @ashish-raj-singh | Stardance
|
ashish-raj-singh
|
1
|
50.38
|
875
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-29T20:32:01Z", "hours": 49.0, "multiplier": 18.02, "payout": 875, "blessing": "neutral", "text": "cmdRelay I built a cross-platform PC remote control and macro engine using Rust, Tauri, and React. It pairs your mobile device to your desktop via WebSockets on your local network, executes system-level operations and custom macros with zero noticeable latency. I have added some pre-loaded with layouts for VS Code, Photoshop, Media Controls, and Presentations there is also a Layout Settings option to edit and create your own custom control decks. What was challenging? Fighting the operating systems to make them behave! Cross platform I have worked with C++, so the core Rust WebSocket server was fun, but true cross-platform compatibility was very frustrating, as in to implement 3 algos for most system interactions. Github Actions & git well this was like a challange + learning i used github actions to automate build process of the application for all the platform and learned how to tag versions in git UI/UX This sounds like a small thing with no logic, but actually its really rough and requries a lot of time and design theory to make it perfect. i learned how discoverability of a feature is more important then the feature itself to a genereal user Honestly i realised, any of other stardance participants who will review this project, wont give like more then 5 min to the application so i had to improve the UX, and show the features and powers of the application beacuse if a user can’t find a feature easily, they will just thing that my application lacks that feature Core Features Leanign and fix bugs arising due to differences in interpretation of keypress from virtual keyboad and physical keyboards Trackpad : it required some maths to smooth out the cursor movement (Took AI help in maths) Multithreading : This was toughest concept to grasp for me in rust, i mainly used this to run macros, as macros can be longs and blocking. Blind on Linux I don’t even have access to a Linux machine, so I basically coded it, stared at AI analysis to check if standard commands (like playerctl and x-terminal-emulator) would work, crossed my fingers, and called it a day to ensure the “cross-platform” promise wasn’t a lie.shipLog.md Proud? Comming form Web Development background, i actually create a cross platform desktop application in rust, is like a huge confidence booster for me When i participated in this event i decided only to make things which require some tech which i dont alredy know and this descision is going good till now Beyond Data Structures and Algorithims Learning all these low-level OS interaction concepts. Not just doing Data Structure and Algorithm, but actually going beyond basic code logic to inject raw virtual keycodes, query active window telemetry in real-time, and spawn detached background processes without blowing up the computer Desktop Application Desktop or android/ios developers are generally considered superior then web Developer, knowing basics and actualy bulding a cross platform desktop applicaiton is a benchmark for myself Using old Concepts from Web Dev The truly seamless local network bridge. Right now, I can tap a button on a React frontend on my phone and instantly trigger a native system lock, launch an executable, or fire a crazy complex macro on a host PC over port 42911. It actually feels production-ready.", "repo": "https://github.com/ashish757/cmdRelay", "demo": "https://github.com/ashish757/cmdRelay/releases"}]...
|
[{"post_id": 58287, "ts": "202 [{"post_id": 58287, "ts": "2026-08-30T17:36:14Z", "hours": 0.4553, "text": "updated some UI (added a button to open the layout editor directly instead of going to system tray) to help users find features to edit the layout more easily"}, {"post_id": 56758, "ts": "2026-08-28T17:18:55Z", "hours": 0.9253, "text": "Tried to fix the linux binaries but as I lack the machine to test it out myself and due to recurring errors, I have dropped the linux support for now,"}, {"post_id": 37258, "ts": "2026-07-29T20:30:57Z", "hours": 4.0383, "text": "Final Devlog Honestly its gettin boring now nothing is challanging now Cross Platform: did what i can without any access to windows and linux machines Optmizations last devlog was also about optimization because its all that left now, nothing challenging in that, its jsut a boring work. there are still a lot of ideas i have for this , but i think its time to move onto somethign else my learnings in this project has stopped things which are left right now are either certain things which I don’t understand and which I know are out of my league or things which I already know, and I just need to keep on repeating myself, so my learning has kind of stopped and i am bored. Here’s what I did this time improve the README file and included demo video because I realised that as I have not tested my application on Windows and Linux, it might not run so i just uploaded a demo video, but I am like 95% certain that it will run improve the pre-buillt layouts that the application has and change them according to Windows and Linux recorded and edited (first time) a demo video (at the bottom of readme file) Handled permissions on the mac, (nicely) I would like to mention that this application request a lot of system settings and network permissions, so that is also reason that some people may be uncomfortable to execute this application. That’s why I provided the demo video."}, {"post_id": 35334, "ts": "2026-07-26T17:30:55Z", "hours": 2.6314, "text": "Devlog 10 - Near completion Optimizations Linux i had almost forgotten that i got to handle linux as well, mac and windows does not mean corss platform although linux is completely optional and i will try as i have promised the cross platform like 100 times i will try, i cant promise, as i dont have access to linux so i will code, do AI analysis to check if its gonna work on linux and that is all linux gonna get from me. I will test the application on windows soon, (i have mac , i am gonna borrow from a friend) Bug Fixes Adding new pre built layouts won’t nullify user editing on the layouts changed the server port from 3000 to more random port, as 3000 is commonly busy Special Function can now be executed on the Linux Moved the Layout Builder/Settings to the main application from web client to make it feel like a native app instead of a web UI Handled some of the observed edge cases in key mappings for cross platform support assets were not loading in the producition build , moved the assets to the public directory for direct access after produciton build"}, {"post_id": 34734, "ts": "2026-07-25T18:10:45Z", "hours": 2.8531, "text": "Devlog 9 - Will it Survive The Winter? A lot of time, this time went on fixing mistakes, which I did by making this application just for macOS, but I was building this to support different platforms, I can’t survives other platforms 1. Just had one JSON file for the complete configuration of the layouts. I realised that certain layouts which I am giving pre built were going to have different keys bindings for different platforms so I just separated my layouts into different files for Mac, Linux and Windows. 2. While talking to Claude, I got to know that the data of the applications which are edited are supposed to be saved in a different location other than the installation location. It is different for Mac and Windows, I was actually saving my data where my application is installed, so I fixed this issue and stored layout configs data at their appropriate location in the different system 3. So the special function keys, if you reading my devlogs, you are aware about this special function, such as increasing or decreasing volume and brightness, skipping and pausing and playing media these functions cannot be triggered by virtual keyboard. They are bounded to pressing keys in physical keyboard. to trigger these special function, I used Apple script on macOS, but Apple script are still failing on some cases so I used a swift language code , I did not understand how I could write swift inside rust but, stack overflow works . I got the code from stack overflow. I also added some pre-layouts for various tasks and helping in application such as VS code , Photoshop , fusion 360 and while giving presentations ."}, {"post_id": 34464, "ts": "2026-07-25T06:08:08Z", "hours": 3.9247, "text": "Devlog 8 - Polishing is really Boring The project is near completion on terms of features Now i am just Polishing the app doing things like improving UX, Text Content, adding minor features. Despite that here are two major things i did 1. Special Function Support remember my earlier devlog where i mentioned that, increasing and decreasing the brightness or vol is not as simple as just some keypress on keyboard These comes under special fucniton and although you can trigger then via physical keyboard, but can’t via the virtual ones. to do that you need to run some special code, on macos via Applescript and on window vis winShell, i am still figuring it out for linux. 2. Appearance settings user can now customize button’s color, bg, add icon and images (custom images are under dev) i did all this with backward compatibility in mind (Big Brains) CI/CD Pipeline Used Github Action to build the application for major platforms (macos, windows, linux) yeah all that, thousand build erros , waiting 10 min for each github action just to see a red X, i will not rant i am past that now Future i will be straight forward add custom image support verify and improve the cross platform functionality add some pre built layouts maybe add a guide/tour for the layout builder"}, {"post_id": 32884, "ts": "2026-07-22T10:33:18Z", "hours": 5.1594, "text": "Devlog 7 - There is always a Solution Focus V/S Feature Dilemma I thought it would be a cool feature addition to display the current resource consumption (CPU/RAM) and some other system details of the computer right on the mobile app. but my concern was that these features are basically \"extras\" and I really didn’t want to slow down my core functionality. I was about to drop the idea entirely, but at the last minute I decided to ask Gemini about it and guess what? There is always a solution I mean, what did I expect? Its engineering after all Smart Subscription Architecture - the solution well, my main concern was the wastage of resources and WebSocket bandwidth, which might bottleneck my main selling point: ultra low latency under 5ms control command communication But this architecture perfectly solves that. so basically, the server will only blast data at me if I am explicitly subscribed to it. Otherwise, it sleeps. and since this project uses WebSockets on a local network, there is generally only one user. So, if I unsubscribe from the service (like closing the telemetry component), that particular data broadcast will completely pause, saving precious resources on both the mobile client and the computer server forgot to mention : the server updates this system data every second if user is subscribed, else sleepyy The Scalability FOMO I am well aware my app won’t probably be used by more than 10 people for 10 minutes , but my Senior Software Engineer came shouting - “Your current method to render different views, that too without using react-router , it will become scalability issue as application grow” in my initial HL system design i was going to use a single page and conditional rendering for different layouts on same page to avoide a package i decided not to use the react-router for my client web page but now i have like 5 pages and as i am building i keep getting more and more ideas… I fixed this issue by creating a standard state for different viewModes and changing props/types to support it (nothing just some painful refactoring) implementing a component mapping (view registry) for all the views. Now I can just plug in any number of views without writing spaghetti if/else statements. The important thing is as i am not using the react-router, i will to keep an eye on memory and component lifecycle to free up the space in memory from components which are not in view. I should have used react-router from beginning 😭 I am thinking to add a button to force kill a process from the phone, but again i am standing at a point where these features are kind of feelign like extras and note my core application attached image of the QR code that i use to pair the mobile with the computer, will add some security in future"}, {"post_id": 31527, "ts": "2026-07-20T00:26:34Z", "hours": 10.3972, "text": "Devlog 6 My this session was so exciting that i only stopped because I reached the 10 hour limit of the hackclub . Well, I think throughout this project, I have been doing things which I don’t understand, things which were boring but right now this is the point when everything clicked, finally got the hang of RUST Its gonna be long Devlog read at your own risk(10 hours dump. Note: the maximum limit is 4000 characters so I cannot write everything here just this much) 1. Crazy things this time So if you may know that in this project, one of the things is to simulate the actual keyboard through the application Here is a interesting thing i found about special fucniton keys those special functionalities keys work strangly, on MacBook , we press F1 to decrease brightness , so i coded my applicaiton to to press the F1 but nothing happened in reality, most OS do not registers the F1 and F2 key for changing the brightness but it actually uses some code tied to hardware to trigger the special fucitionality How did i solve this? well, I read about how actually a Operating systems register the keys, and trigger those special functions. And this was the reason pressing the shortcuts were not triggering those special functionalities into the computer. As the OS was not looking for me to press F1 . it looks for a special code which is tied with the keyboard itself, which was not in virtual keyboard , solution is simple. You have to find out what code is used by a particular operating system to increase or decrease the brightness , and then you will have to trigger that code when the key is pressed. 2. Macros I implemented macros , you can basically press a sequence of keys with control delay . Just on a single click. It is spamming a key running some keyboard shortcuts on a single click. I created different thread to run this macro so that it does not freeze my main application this is the point which like frustrated me for very long as it is been like three years when I learned concurrency and threading in Python and I did it again in rust this time. I used MPSC (Multi-Producer, Single-Consumer) here. I don’t fully understand it, though, but yeah, I know why I used it and how I used it 3. App Lanucher So I just liked a button, which upon clicking will open up any application on your computer but the main thing was not actually opening the application, it was which application to open , Open an application by running a command on operating system , you have to know their exact official names , and a normal user does not know that so, I scanned the whole application folder onto the operating system and found out the official names of each application. Then I showed the list in a dropdown to user, from where user can select the names of applications. -well, it took me a lot of time because this was my third approach which worked my initial implementaion were like I would force the user to open up that application and then my application can register it, but obviously, the above approach is better than this, so I dropped it. Jupiter (idk, maybe because its big, and who doesnt like sloar system?) 4. Context Aware Layouts This is it. The big one. This was the most important, most time-consuming, and absolute flagship feature of the entire project. so, what is context aware layouts ? So in the application, one of the parts is to create layouts , which helps with your work aespecially in the productivity/professional applications so lets say you are coding or working, constantly shuffling between multiple desktop apps , with your phone sitting on your desk acting as your custom macro pad . This feature actively extracts the currently focused application on your computer and instantly switches the layout on your phone to match it."}, {"post_id": 29559, "ts": "2026-07-16T16:08:19Z", "hours": 2.46, "text": "Devlog 5 Loking back and accepting this time I saw what happens when you build a project without any proper system design , things were so clunky in my application that I was not in mood of creating another groundbreaking feature i just spent time improving existing features and make them actually usable What went down So basically, I had done a dumb thing very dumb thing. I did not realize that the buttons on the actual keyboard have different states, you know when they are being held down OR they’re being pressed OR they are being released, this info matters and I completely missed it. so now, basically, my key presses have a state Down (pressing down) Up (releasing the key) Pressed (holding the key) So the SHIFT button which I had implemented earlier was only clickable , user couldn’t hold it, but the shift button is meant to be held, so I fixed this and other similar buttons like alt , control and command Improved the portrait and landscape switching between the views in layout builder. This is just normal UI improvement Nothing special here Other than these two improvements above, there has been numerous other small little improvements which took me a lot of time, so I don’t really have much to write on this devlog, changes are like I improved the whole conditional rendering thing, it was messy as I decided not to use react router for this project as there weren’t any actual pages or URLs, just bunch of different control layouts. Improve my state management to handle menu overlay properly Overall code quality improvement, creating utility functions and type safety . and a lot of my time is invested in learning Rust as this is like my second project in rust (i leanred rust like a year ago and now i remember nothing, thanks to my good c++, i have held my ground so far) Bottom line → Better UI and UX , button can now be held and tracked weather they are being pressed or released"}, {"post_id": 20753, "ts": "2026-07-02T13:28:12Z", "hours": 6.7092, "text": "Devlog 4 Control Layout first i would like to define what i call a control layout, as i reliased i never relly defined it properly Control Layout: It is a layout of buttons and other control elements like For Example control layout for playback control will have button/controls like volume up/down, play/pause, fast forwarding and controling playback Maybe some specifi button to help while editing video Or controls for some particular Applications So basically, these controls can trigger and functionality or a shortcut or a macro onto the computer that the client is connected with Single click on the phone screen will be able to run a complex keyboard shortcut User can map shortcuts based on particular applications, and he does not need to remember keyboard shortcut. They don’t even need to click anywhere on their screen. The phone will act as a secondary keyboard or a small macropad. Customizable Control Layout The application contains some prebuilt control layouts But different user user different application and have different workflow, so i created a featrure to let users create his own custom layouts where he can place different buttons anywhere on the screen and assign what work each button will be doing. As of now the current active applicaiton detection is not present but i will add this feature soon. Details basically, I have an interface which tries to mimic a mobile screen, and I have divided that screen into grids with CSS I can move the elements around and resize them. I track the position , height and width of those elements and store them in a JSON config file upon saving these layouts. This JSON config is sent over local web socket to the Rust server . Along with just the information about the UI, there is also working information, like name of button, its functionality etc I have a component which is quite opposite of a builder which is a renderer . This renderer takes up JSON config and renderes the different components and maps the functionality, in smple word it takes json and create UI."}, {"post_id": 17012, "ts": "2026-06-27T16:43:10Z", "hours": 6.3219, "text": "Devlog 3 Trackpad Control Cursor Movement: Simply dragging on the mobile phone, moves the pointer on the desktop Clicks: supports Single Click , Double Click , Two-Tap Secondary Click Gestures: As of now only Two Finger scroll gesture is s supported Used a blocking thread to offlaod the hardware control operations (60 times per second) The hardest part now is supporting the ability to drag and supporting more gestures , It will requires complex math and numerous trial & error iterations. Live Typing a simple textarea where user can type with his native keyboard of the phone and the text gets typed live on the on computer. Buttons like Backspace , Enter required different approach as they cant be clubed with normal text typing feature of Enigo.text() several other improvements trachpad data sending is more optimized to send cursor cordinates efficiently scroll has kind of accelaration detection for smooth scrolling detecting the difference between drag, scroll and just basic move NEXT Implement a fully customizable control layout Implement PWA Improve connectivity settings for the rust server"}, {"post_id": 15565, "ts": "2026-06-25T09:37:01Z", "hours": 2.6828, "text": "Devlog 2 Magic well in my last devlog in mentioned i wanted to improve code quality and modularity, but guess what its still spaghetti code. But i did some other cool things actully too cool I impelmented a simple interace in client, and create button controls for the Arrow Keys The client can now talk with the server and send data server recieves the data and use Enigo to simulates key presses So basically now i can contorl the keys of my laptop with phone over local network and that under 5ms latency the flow is very simple Client Sends data over websocket –> Rust appliaction listening to the socket recieves it –> formats the incoming data to decide the appropirate action –> uses Enigo to simulate Key presses Next Target Improve code quality and modularity make the communication between client and rust app based on certain standards make more layouts for the client implement trackpad Below gif shows a demo"}, {"post_id": 15064, "ts": "2026-06-24T14:05:16Z", "hours": 1.8122, "text": "Devlog 1 Making a Remote Human Interface Device (HID): cmdRelay basically a controlling a device with another device, here controlling a computer with mobile phone Idea Problem: On my desk i have a windos pc (with top tier monitor) and i also have a macbook, and i lie on the bed and play movies on the monitor, but then i cant control the playback, volume, and cant scroll youtube. some of the soltions are platform dependent. some of them are paid only one solution kde connect , was usable, but it uses an ios app on the iphone and due to app store restriction, it offers limited functionlality on ios, compares to android, also its complex to use and consumes more battery and lack modern features and UI. how cmdRelay solves these problems Modern features and Better UI. No need to install an app, a PWA (Progressive Web App) is used in my idea, which solves the app store’s restrictions a very lightweight and efficient background process written in Rust , cross platform support. (an installation is required on the desktop, though its under 10 MB) lesser battery consumption and sleep mode feature. Details?? it uses an conection over LAN , to reduce latency to about 5ms User can control trackpad , keyboard , run big keyboard shortcuts on just a click, i will try for `gesture₹₹ support as well can’t promise anything right now. communicaiton will happen via a local websocket connecion. Client on mobiles phones A React based PWA Background process on mac and windows Rust and Tauri based background process, with minimal settings Current Status I have make a basic websocket server in Rust and React js client, and establised the connection successfuly wahts next improve code quality and modularity build the client side and send the json data to the computer via web sockets"}]...
|
Title: cmdRelay by @ashish-raj-singh | Stardance
Title: cmdRelay by @ashish-raj-singh | Stardance
Devlogs:
Devlog 1 Making a Remote Human Interface Device (HID): cmdRelay basically a controlling a device with another device, here controlling a computer with mobile phone Idea Problem: On my desk i have a windos pc (with top tier monitor) and i also have a macbook, and i lie on the bed and play movies on the monitor, but then i cant control the playback, volume, and cant scroll youtube. some of the soltions are platform dependent. some of them are paid only one solution kde connect , was usable, but it uses an ios app on the iphone and due to app store restriction, it offers limited functionlality on ios, compares to android, also its complex to use and consumes more battery and lack modern features and UI. how cmdRelay solves these problems Modern features and Better UI. No need to install an app, a PWA (Progressive Web App) is used in my idea, which solves the app store’s restrictions a very lightweight and efficient background process written in Rust , cross platform support. (an installation is required on the desktop, though its under 10 MB) lesser battery consumption and sleep mode feature. Details?? it uses an conection over LAN , to reduce latency to about 5ms User can control trackpad , keyboard , run big keyboard shortcuts on just a click, i will try for `gesture₹₹ support as well can’t promise anything right now. communicaiton will happen via a local websocket connecion. Client on mobiles phones A React based PWA Background process on mac and windows Rust and Tauri based background process, with minimal settings Current Status I have make a basic websocket server in Rust and React js client, and establised the connection successfuly wahts next improve code quality and modularity build the client side and send the json data to the computer via web sockets
Devlog 2 Magic well in my last devlog in mentioned i wanted to improve code quality and modularity, but guess what its still spaghetti code. But i did some other cool things actully too cool I impelmented a simple interace in client, and create button controls for the Arrow Keys The client can now talk with the server and send data server recieves the data and use Enigo to simulates key presses So basically now i can contorl the keys of my laptop with phone over local network and that under 5ms latency the flow is very simple Client Sends data over websocket –> Rust appliaction listening to the socket recieves it –> formats the incoming data to decide the appropirate action –> uses Enigo to simulate Key presses Next Target Improve code quality and modularity make the communication between client and rust app based on certain standards make more layouts for the client implement trackpad Below gif shows a demo
Devlog 3 Trackpad Control Cursor Movement: Simply dragging on the mobile phone, moves the pointer on the desktop Clicks: supports Single Click , Double Click , Two-Tap Secondary Click Gestures: As of now only Two Finger scroll gesture is s supported Used a blocking thread to offlaod the hardware control operations (60 times per second) The hardest part now is supporting the ability to drag and supporting more gestures , It will requires complex math and numerous trial & error iterations. Live Typing a simple textarea where user can type with his native keyboard of the phone and the text gets typed live on the on computer. Buttons like Backspace , Enter required different approach as they cant be clubed with normal text typing feature of Enigo.text() several other improvements trachpad data sending is more optimized to send cursor cordinates efficiently scroll has kind of accelaration detection for smooth scrolling detecting the difference between drag, scroll and just basic move NEXT Implement a fully customizable control layout Implement PWA Improve connectivity settings for the rust server
Devlog 4 Control Layout first i would like to define what i call a control layout, as i reliased i never relly defined it properly Control Layout: It is a layout of buttons and other control elements like For Example control layout for playback control will have button/controls like volume up/down, play/pause, fast forwarding and controling playback Maybe some specifi button to help while editing video Or controls for some particular Applications So basically, these controls can trigger and functionality or a shortcut or a macro onto the computer that the client is connected with Single click on the phone screen will be able to run a complex keyboard shortcut User can map shortcuts based on particular applications, and he does not need to remember keyboard shortcut. They don’t even need to click anywhere on their screen. The phone will act as a secondary keyboard or a small macropad. Customizable Control Layout The application contains some prebuilt control layouts But different user user different application and have different workflow, so i created a featrure to let users create his own custom layouts where he can place different buttons anywhere on the screen and assign what work each button will be doing. As of now the current active applicaiton detection is not present but i will add this feature soon. Details basically, I have an interface which tries to mimic a mobile screen, and I have divided that screen into grids with CSS I can move the elements around and resize them. I track the position , height and width of those elements and store them in a JSON config file upon saving these layouts. This JSON config is sent over local web socket to the Rust server . Along with just the information about the UI, there is also working information, like name of button, its functionality etc I have a component which is quite opposite of a builder which is a renderer . This renderer takes up JSON config and renderes the different components and maps the functionality, in smple word it takes json and create UI.
Devlog 5 Loking back and accepting this time I saw what happens when you build a project without any proper system design , things were so clunky in my application that I was not in mood of creating another groundbreaking feature i just spent time improving existing features and make them actually usable What went down So basically, I had done a dumb thing very dumb thing. I did not realize that the buttons on the actual keyboard have different states, you know when they are being held down OR they’re being pressed OR they are being released, this info matters and I completely missed it. so now, basically, my key presses have a state Down (pressing down) Up (releasing the key) Pressed (holding the key) So the SHIFT button which I had implemented earlier was only clickable , user couldn’t hold it, but the shift button is meant to be held, so I fixed this and other similar buttons like alt , control and command Improved the portrait and landscape switching between the views in layout builder. This is just normal UI improvement Nothing special here Other than these two improvements above, there has been numerous other small little improvements which took me a lot of time, so I don’t really have much to write on this devlog, changes are like I improved the whole conditional rendering thing, it was messy as I decided not to use react router for this project as there weren’t any actual pages or URLs, just bunch of different control layouts. Improve my state management to handle menu overlay properly Overall code quality improvement, creating utility functions and type safety . and a lot of my time is invested in learning Rust as this is like my second project in rust (i leanred rust like a year ago and now i remember nothing, thanks to my good c++, i have held my ground so far) Bottom line → Better UI and UX , button can now be held and tracked weather they are being pressed or released
Devlog 6 My this session was so exciting that i only stopped because I reached the 10 hour limit of the hackclub . Well, I think throughout this project, I have been doing things which I don’t understand, things which were boring but right now this is the point when everything clicked, finally got the hang of RUST Its gonna be long Devlog read at your own risk(10 hours dump. Note: the maximum limit is 4000 characters so I cannot write everything here just this much) 1. Crazy things this time So if you may know that in this project, one of the things is to simulate the actual keyboard through the application Here is a interesting thing i found about special fucniton keys those special functionalities keys work strangly, on MacBook , we press F1 to decrease brightness , so i coded my applicaiton to to press the F1 but nothing happened in reality, most OS do not registers the F1 and F2 key for changing the brightness but it actually uses some code tied to hardware to trigger the special fucitionality How did i solve this? well, I read about how actually a Operating systems register the keys, and trigger those special functions. And this was the reason pressing the shortcuts were not triggering those special functionalities into the computer. As the OS was not looking for me to press F1 . it looks for a special code which is tied with the keyboard itself, which was not in virtual keyboard , solution is simple. You have to find out what code is used by a particular operating system to increase or decrease the brightness , and then you will have to trigger that code when the key is pressed. 2. Macros I implemented macros , you can basically press a sequence of keys with control delay . Just on a single click. It is spamming a key running some keyboard shortcuts on a single click. I created different thread to run this macro so that it does not freeze my main application this is the point which like frustrated me for very long as it is been like three years when I learned concurrency and threading in Python and I did it again in rust this time. I used MPSC (Multi-Producer, Single-Consumer) here. I don’t fully understand it, though, but yeah, I know why I used it and how I used it 3. App Lanucher So I just liked a button, which upon clicking will open up any application on your computer but the main thing was not actually opening the application, it was which application to open , Open an application by running a command on operating system , you have to know their exact official names , and a normal user does not know that so, I scanned the whole application folder onto the operating system and found out the official names of each application. Then I showed the list in a dropdown to user, from where user can select the names of applications. -well, it took me a lot of time because this was my third approach which worked my initial implementaion were like I would force the user to open up that application and then my application can register it, but obviously, the above approach is better than this, so I dropped it. Jupiter (idk, maybe because its big, and who doesnt like sloar system?) 4. Context Aware Layouts This is it. The big one. This was the most important, most time-consuming, and absolute flagship feature of the entire project. so, what is context aware layouts ? So in the application, one of the parts is to create layouts , which helps with your work aespecially in the productivity/professional applications so lets say you are coding or working, constantly shuffling between multiple desktop apps , with your phone sitting on your desk acting as your custom macro pad . This feature actively extracts the currently focused application on your computer and instantly switches the layout on your phone to match it.
Devlog 7 - There is always a Solution Focus V/S Feature Dilemma I thought it would be a cool feature addition to display the current resource consumption (CPU/RAM) and some other system details of the computer right on the mobile app. but my concern was that these features are basically "extras" and I really didn’t want to slow down my core functionality. I was about to drop the idea entirely, but at the last minute I decided to ask Gemini about it and guess what? There is always a solution I mean, what did I expect? Its engineering after all Smart Subscription Architecture - the solution well, my main concern was the wastage of resources and WebSocket bandwidth, which might bottleneck my main selling point: ultra low latency under 5ms control command communication But this architecture perfectly solves that. so basically, the server will only blast data at me if I am explicitly subscribed to it. Otherwise, it sleeps. and since this project uses WebSockets on a local network, there is generally only one user. So, if I unsubscribe from the service (like closing the telemetry component), that particular data broadcast will completely pause, saving precious resources on both the mobile client and the computer server forgot to mention : the server updates this system data every second if user is subscribed, else sleepyy The Scalability FOMO I am well aware my app won’t probably be used by more than 10 people for 10 minutes , but my Senior Software Engineer came shouting - “Your current method to render different views, that too without using react-router , it will become scalability issue as application grow” in my initial HL system design i was going to use a single page and conditional rendering for different layouts on same page to avoide a package i decided not to use the react-router for my client web page but now i have like 5 pages and as i am building i keep getting more and more ideas… I fixed this issue by creating a standard state for different viewModes and changing props/types to support it (nothing just some painful refactoring) implementing a component mapping (view registry) for all the views. Now I can just plug in any number of views without writing spaghetti if/else statements. The important thing is as i am not using the react-router, i will to keep an eye on memory and component lifecycle to free up the space in memory from components which are not in view. I should have used react-router from beginning 😭 I am thinking to add a button to force kill a process from the phone, but again i am standing at a point where these features are kind of feelign like extras and note my core application attached image of the QR code that i use to pair the mobile with the computer, will add some security in future
Devlog 8 - Polishing is really Boring The project is near completion on terms of features Now i am just Polishing the app doing things like improving UX, Text Content, adding minor features. Despite that here are two major things i did 1. Special Function Support remember my earlier devlog where i mentioned that, increasing and decreasing the brightness or vol is not as simple as just some keypress on keyboard These comes under special fucniton and although you can trigger then via physical keyboard, but can’t via the virtual ones. to do that you need to run some special code, on macos via Applescript and on window vis winShell, i am still figuring it out for linux. 2. Appearance settings user can now customize button’s color, bg, add icon and images (custom images are under dev) i did all this with backward compatibility in mind (Big Brains) CI/CD Pipeline Used Github Action to build the application for major platforms (macos, windows, linux) yeah all that, thousand build erros , waiting 10 min for each github action just to see a red X, i will not rant i am past that now Future i will be straight forward add custom image support verify and improve the cross platform functionality add some pre built layouts maybe add a guide/tour for the layout builder
Devlog 9 - Will it Survive The Winter? A lot of time, this time went on fixing mistakes, which I did by making this application just for macOS, but I was building this to support different platforms, I can’t survives other platforms 1. Just had one JSON file for the complete configuration of the layouts. I realised that certain layouts which I am giving pre built were going to have different keys bindings for different platforms so I just separated my layouts into different files for Mac, Linux and Windows. 2. While talking to Claude, I got to know that the data of the applications which are edited are supposed to be saved in a different location other than the installation location. It is different for Mac and Windows, I was actually saving my data where my application is installed, so I fixed this issue and stored layout configs data at their appropriate location in the different system 3. So the special function keys, if you reading my devlogs, you are aware about this special function, such as increasing or decreasing volume and brightness, skipping and pausing and playing media these functions cannot be triggered by virtual keyboard. They are bounded to pressing keys in physical keyboard. to trigger these special function, I used Apple script on macOS, but Apple script are still failing on some cases so I used a swift language code , I did not understand how I could write swift inside rust but, stack overflow works . I got the code from stack overflow. I also added some pre-layouts for various tasks and helping in application such as VS code , Photoshop , fusion 360 and while giving presentations .
Devlog 10 - Near completion Optimizations Linux i had almost forgotten that i got to handle linux as well, mac and windows does not mean corss platform although linux is completely optional and i will try as i have promised the cross platform like 100 times i will try, i cant promise, as i dont have access to linux so i will code, do AI analysis to check if its gonna work on linux and that is all linux gonna get from me. I will test the application on windows soon, (i have mac , i am gonna borrow from a friend) Bug Fixes Adding new pre built layouts won’t nullify user editing on the layouts changed the server port from 3000 to more random port, as 3000 is commonly busy Special Function can now be executed on the Linux Moved the Layout Builder/Settings to the main application from web client to make it feel like a native app instead of a web UI Handled some of the observed edge cases in key mappings for cross platform support assets were not loading in the producition build , moved the assets to the public directory for direct access after produciton build
Final Devlog Honestly its gettin boring now nothing is challanging now Cross Platform: did what i can without any access to windows and linux machines Optmizations last devlog was also about optimization because its all that left now, nothing challenging in that, its jsut a boring work. there are still a lot of ideas i have for this , but i think its time to move onto somethign else my learnings in this project has stopped things which are left right now are either certain things which I don’t understand and which I know are out of my league or things which I already know, and I just need to keep on repeating myself, so my learning has kind of stopped and i am bored. Here’s what I did this time improve the README file and included demo video because I realised that as I have not tested my application on Windows and Linux, it might not run so i just uploaded a demo video, but I am like 95% certain that it will run improve the pre-buillt layouts that the application has and change them according to Windows and Linux recorded and edited (first time) a demo video (at the bottom of readme file) Handled permissions on the mac, (nicely) I would like to mention that this application request a lot of system settings and network permissions, so that is also reason that some people may be uncomfortable to execute this application. That’s why I provided the demo video.
Tried to fix the linux binaries but as I lack the machine to test it out myself and due to recurring errors, I have dropped the linux support for now,
updated some UI (added a button to open the layout editor directly instead of going to system tray) to help users find features to edit the layout more easily
Ships:
cmdRelay I built a cross-platform PC remote control and macro engine using Rust, Tauri, and React. It pairs your mobile device to your desktop via WebSockets on your local network, executes system-level operations and custom macros with zero noticeable latency. I have added some pre-loaded with layouts for VS Code, Photoshop, Media Controls, and Presentations there is also a Layout Settings option to edit and create your own custom control decks. What was challenging? Fighting the operating systems to make them behave! Cross platform I have worked with C++, so the core Rust WebSocket server was fun, but true cross-platform compatibility was very frustrating, as in to implement 3 algos for most system interactions. Github Actions & git well this was like a challange + learning i used github actions to automate build process of the application for all the platform and learned how to tag versions in git UI/UX This sounds like a small thing with no logic, but actually its really rough and requries a lot of time and design theory to make it perfect. i learned how discoverability of a feature is more important then the feature itself to a genereal user Honestly i realised, any of other stardance participants who will review this project, wont give like more then 5 min to the application so i had to improve the UX, and show the features and powers of the application beacuse if a user can’t find a feature easily, they will just thing that my application lacks that feature Core Features Leanign and fix bugs arising due to differences in interpretation of keypress from virtual keyboad and physical keyboards Trackpad : it required some maths to smooth out the cursor movement (Took AI help in maths) Multithreading : This was toughest concept to grasp for me in rust, i mainly used this to run macros, as macros can be longs and blocking. Blind on Linux I don’t even have access to a Linux machine, so I basically coded it, stared at AI analysis to check if standard commands (like playerctl and x-terminal-emulator) would work, crossed my fingers, and called it a day to ensure the “cross-platform” promise wasn’t a lie.shipLog.md Proud? Comming form Web Development background, i actually create a cross platform desktop application in rust, is like a huge confidence booster for me When i participated in this event i decided only to make things which require some tech which i dont alredy know and this descision is going good till now Beyond Data Structures and Algorithims Learning all these low-level OS interaction concepts. Not just doing Data Structure and Algorithm, but actually going beyond basic code logic to inject raw virtual keycodes, query active window telemetry in real-time, and spawn detached background processes without blowing up the computer Desktop Application Desktop or android/ios developers are generally considered superior then web Developer, knowing basics and actualy bulding a cross platform desktop applicaiton is a benchmark for myself Using old Concepts from Web Dev The truly seamless local network bridge. Right now, I can tap a button on a React frontend on my phone and instantly trigger a native system lock, launch an executable, or fire a crazy complex macro on a host PC over port 42911. It actually feels production-ready....
|
1793141645.1711934
|
1793228045.1711934
|
|
24826
|
sparq by @elaine | Stardance
|
elaine
|
1
|
14.39
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T05:28:54Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "wish you could predict the future? unfortunately, i cant help with that :( but my ML agent can! the agent that i’ve trained is capable of predicting the future and using what it predicts to pick the best action. this is my first real machine learning project, so i’m proud of my progress!", "repo": "https://github.com/ela1nex/customDQN", "demo": "https://youtu.be/5wtFexOzfos"}]...
|
[{"post_id": 16384, "ts": "202 [{"post_id": 16384, "ts": "2026-06-26T17:40:13Z", "hours": 2.3911, "text": "left: regular (no future prediction) right: dynamic (future prediction)"}, {"post_id": 15536, "ts": "2026-06-25T07:42:45Z", "hours": 11.7881, "text": "devlog #1: machine learning for dummies 😦 my first devlog! i probably shouldve done another devlog earlier since its now been 11 hours into this project but unfortunately i have the foresight of a seal so… anyway! join me on my machine learning learning (haha get it) journey! this is my first real foray into actually learning ML beyond using preexisting models, and its been super interesting so far. ive genuinely learned so much including but not limited to (very generally): DQN model: how to create a custom model and train and test it dynamic model: imagined states and being able to predict futures the usefulness of a configs file LOL TODO bc i am genuinely the most forgetful person you’ll ever meet anyway im not sure how much more i’ll work on this specific project since cartpole is super simple and i want to try nondiscrete action spaces which are more complicated and applicable. im working on learning offline training rn but thats probably going to be a separate project repo: https://github.com/ela1nex/customDQN below images: left: tested wo dynamic model right: tested w dynamic model (makes a super big difference!!)"}]...
|
Title: sparq by @elaine | Stardance
Devlogs:
devl Title: sparq by @elaine | Stardance
Devlogs:
devlog #1: machine learning for dummies 😦 my first devlog! i probably shouldve done another devlog earlier since its now been 11 hours into this project but unfortunately i have the foresight of a seal so… anyway! join me on my machine learning learning (haha get it) journey! this is my first real foray into actually learning ML beyond using preexisting models, and its been super interesting so far. ive genuinely learned so much including but not limited to (very generally): DQN model: how to create a custom model and train and test it dynamic model: imagined states and being able to predict futures the usefulness of a configs file LOL TODO bc i am genuinely the most forgetful person you’ll ever meet anyway im not sure how much more i’ll work on this specific project since cartpole is super simple and i want to try nondiscrete action spaces which are more complicated and applicable. im working on learning offline training rn but thats probably going to be a separate project repo: https://github.com/ela1nex/customDQN below images: left: tested wo dynamic model right: tested w dynamic model (makes a super big difference!!)
left: regular (no future prediction) right: dynamic (future prediction)
Ships:
wish you could predict the future? unfortunately, i cant help with that :( but my ML agent can! the agent that i’ve trained is capable of predicting the future and using what it predicts to pick the best action. this is my first real machine learning project, so i’m proud of my progress!...
|
1793278228.4553788
|
1793364628.4553788
|
|
24836
|
Quantum IDE by @Drake | Stardance
|
Drake
|
1
|
6.8
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T03:28:15Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a quant related IDE called quantum this IDE includes a coding language I made (note this is just a wrapper for python code not a full on coding lang) This file allows you to do quant related things like monte-carlos simulations and more. As for the demo, this is the only way I could provide one, it’s windows only you can test it out by downloading it, or building it yourself. Please enjoy!", "repo": "https://github.com/veefs/quantum/", "demo": "https://github.com/veefs/quantum/releases/tag/windows-installer"}]...
|
[{"post_id": 19670, "ts": "202 [{"post_id": 19670, "ts": "2026-07-01T01:35:20Z", "hours": 0.8, "text": "Quantum IDE Used ai to make an installer because honestly I don’t know how to do it. For the most part this project is done, I may add more stuff later, but I quite like this project please be generous with the voting (●’◡’●)"}, {"post_id": 14834, "ts": "2026-06-24T03:00:50Z", "hours": 0.3403, "text": "Added a monte carlos simulation! Now the visuals actually get interesting when you run something like monte(AMZN+AAPL, days=200, sims=1000, alpha=1, seed=42) load(AMZN, 6mo) display() you see a whole bunch of things shown in the screenshot"}, {"post_id": 14824, "ts": "2026-06-24T02:27:49Z", "hours": 1.1639, "text": "Quantum updates! -> Added two more commands as well as greatly improved how everything was structured, added docs in my github as well. New commands: range watch unwatch"}, {"post_id": 14794, "ts": "2026-06-24T01:05:24Z", "hours": 0.7086, "text": "Fixed up the UI fully gonna start heading toward making some more features that are actually helpful. May need to revamp the entire parsing system just because of how annoying it is so far too add to it."}, {"post_id": 14762, "ts": "2026-06-23T23:57:42Z", "hours": 0.9489, "text": "Played around with the colors and landed on a theme I’m really happy with went for a Dracula-inspired palette. Also added a proper console with real logging. Next up, I want to start adding tools that are actually useful thinking heatmaps and a few other things!"}, {"post_id": 14734, "ts": "2026-06-23T22:56:28Z", "hours": 0.9478, "text": "Starting to understand more where I want this IDE to end up, long-term I have a major GUI reworking ahead, but so far I really like how it’s coming together. Adding docs and im starting to make the scripting language more official. Current functions: - load <TICKER> using yfinance in PYTHON to load data- display uses plotlib to display into an image and then populate on the editor- compare <TICKER> compares vs another TICKER most have loaded 1st ticker"}, {"post_id": 14691, "ts": "2026-06-23T21:42:33Z", "hours": 1.5194, "text": "Added syntax highlighting & expanded the scope, QUANTUM IDE is now a IDE that people getting into quantative finance can use. I wanna add functions like display() and load() that load from yfinance and display with R"}, {"post_id": 14624, "ts": "2026-06-23T20:05:58Z", "hours": 0.6447, "text": "finally got some basic stuff working, you can now call .\\main.exe <filename> and it will open the file contents and display it."}]...
|
Title: Quantum IDE by @Drake | Stardance
Devlogs: Title: Quantum IDE by @Drake | Stardance
Devlogs:
finally got some basic stuff working, you can now call .\main.exe <filename> and it will open the file contents and display it.
Added syntax highlighting & expanded the scope, QUANTUM IDE is now a IDE that people getting into quantative finance can use. I wanna add functions like display() and load() that load from yfinance and display with R
Starting to understand more where I want this IDE to end up, long-term I have a major GUI reworking ahead, but so far I really like how it’s coming together. Adding docs and im starting to make the scripting language more official. Current functions: - load <TICKER> using yfinance in PYTHON to load data- display uses plotlib to display into an image and then populate on the editor- compare <TICKER> compares vs another TICKER most have loaded 1st ticker
Played around with the colors and landed on a theme I’m really happy with went for a Dracula-inspired palette. Also added a proper console with real logging. Next up, I want to start adding tools that are actually useful thinking heatmaps and a few other things!
Fixed up the UI fully gonna start heading toward making some more features that are actually helpful. May need to revamp the entire parsing system just because of how annoying it is so far too add to it.
Quantum updates! -> Added two more commands as well as greatly improved how everything was structured, added docs in my github as well. New commands: range watch unwatch
Added a monte carlos simulation! Now the visuals actually get interesting when you run something like monte(AMZN+AAPL, days=200, sims=1000, alpha=1, seed=42) load(AMZN, 6mo) display() you see a whole bunch of things shown in the screenshot
Quantum IDE Used ai to make an installer because honestly I don’t know how to do it. For the most part this project is done, I may add more stuff later, but I quite like this project please be generous with the voting (●’◡’●)
Ships:
I made a quant related IDE called quantum this IDE includes a coding language I made (note this is just a wrapper for python code not a full on coding lang) This file allows you to do quant related things like monte-carlos simulations and more. As for the demo, this is the only way I could provide one, it’s windows only you can test it out by downloading it, or building it yourself. Please enjoy!...
|
1793314411.597985
|
1793400811.597985
|
|
24838
|
Infinite OS by @TheShovel | Stardance
|
TheShovel
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T11:49:50Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an operating system where everything is generated on the spot. You cant install apps, you cant access the web, unless you generate an app that does that. Infinite apps, infinite widgets, infinite possibilities (even though those possibilities are pretty sloppy). What was challenging was making a small model that has very little cloud usage, be able to produce something usable while being fast, and cheap.", "repo": "https://github.com/TheShovel/infinite-os", "demo": "https://theshovel.rocks/infinite-os/"}]...
|
[{"post_id": 16202, "ts": "202 [{"post_id": 16202, "ts": "2026-06-26T10:21:08Z", "hours": 2.0097, "text": "Hiiii Hope your day is going well and stuff :) Today i have added widgets! You can now right click on the desktop, and generate widgets that stay where you left them even when you restart! They have access to the theme and system apis just like any other app, but they are made to sit comfortably on your desktop. I have also been working on some quality of life and introduction features! Now there is a user manual, that you can access through the welcome screen. It tells you everything you need to know to use the OS! I have also added some stuff to the settings, like organizing your right click menu, factory reset and other misc stuff that is minor and more to polish things up. Oki thank you byeeeee :D"}, {"post_id": 15634, "ts": "2026-06-25T12:56:09Z", "hours": 2.1692, "text": "sup gamers, its me, theshovel, back at it again with a devlog for the worst operating system ever made i have worked on the speed and quality of the app generating. I have also implemented more system apis like more customization stuff like light and dark mode, also some sound and storage apis so the apps can use local storage. I also worked on the visuals a bit, making it more consistent. The apps now have a design that they follow. This allows for apps to change theme when you change your accent color or between dark and light mode. The major issue right now is that im using a free google api for the app generating. Due to that, i have to lower the maximum output tokens so the user doesnt get rate limited. Due to that, apps might end up being simpler than you expect. The model behind it is still robust enough to give some pretty good output for that tiny amount of token allowence, but even then it might be simpler than youd expect."}, {"post_id": 14634, "ts": "2026-06-23T20:18:55Z", "hours": 1.8264, "text": "I have started the project! So far, i have gotten the bare minimum working. You can click the menu icon, you can type in the name of the app, and a free api endpoint running qwen coder will build the app for you. Because I didnt want to be lazy and just use iFrames, i made it create a div inside the window with the generated code. This works, but it could be a security issue. Do i care though? No lmao I have also started implementing some apis, like the notification api, which an app can call and it will show you a notification. Im going to continue working on this by adding more custom apis and making the operating system more fleshed out. Probably will also have to write some more examples for the llm to use, right now there are a few but they are very simple."}]...
|
Title: Infinite OS by @TheShovel | Stardance
Devl Title: Infinite OS by @TheShovel | Stardance
Devlogs:
I have started the project! So far, i have gotten the bare minimum working. You can click the menu icon, you can type in the name of the app, and a free api endpoint running qwen coder will build the app for you. Because I didnt want to be lazy and just use iFrames, i made it create a div inside the window with the generated code. This works, but it could be a security issue. Do i care though? No lmao I have also started implementing some apis, like the notification api, which an app can call and it will show you a notification. Im going to continue working on this by adding more custom apis and making the operating system more fleshed out. Probably will also have to write some more examples for the llm to use, right now there are a few but they are very simple.
sup gamers, its me, theshovel, back at it again with a devlog for the worst operating system ever made i have worked on the speed and quality of the app generating. I have also implemented more system apis like more customization stuff like light and dark mode, also some sound and storage apis so the apps can use local storage. I also worked on the visuals a bit, making it more consistent. The apps now have a design that they follow. This allows for apps to change theme when you change your accent color or between dark and light mode. The major issue right now is that im using a free google api for the app generating. Due to that, i have to lower the maximum output tokens so the user doesnt get rate limited. Due to that, apps might end up being simpler than you expect. The model behind it is still robust enough to give some pretty good output for that tiny amount of token allowence, but even then it might be simpler than youd expect.
Hiiii Hope your day is going well and stuff :) Today i have added widgets! You can now right click on the desktop, and generate widgets that stay where you left them even when you restart! They have access to the theme and system apis just like any other app, but they are made to sit comfortably on your desktop. I have also been working on some quality of life and introduction features! Now there is a user manual, that you can access through the welcome screen. It tells you everything you need to know to use the OS! I have also added some stuff to the settings, like organizing your right click menu, factory reset and other misc stuff that is minor and more to polish things up. Oki thank you byeeeee :D
Ships:
I made an operating system where everything is generated on the spot. You cant install apps, you cant access the web, unless you generate an app that does that. Infinite apps, infinite widgets, infinite possibilities (even though those possibilities are pretty sloppy). What was challenging was making a small model that has very little cloud usage, be able to produce something usable while being fast, and cheap....
|
1793303560.8089807
|
1793389960.8089807
|
|
24854
|
Abhiram V's Portfolio by @abhiram_vadali | Sta Abhiram V's Portfolio by @abhiram_vadali | Stardance...
|
abhiram_vadali
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-16T00:55:37Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I shipped my personal portfolio website at abhiramv.vercel.app, establishing a centralized, high-performance digital hub to showcase my technical projects, skills, and contact information. Built with a minimalist frontend and deployed on Vercel, the site prioritizes a clean UI. By focusing on ease-of-navigation, the layout lets the shipped work serve as the primary focus, without unnecessary visual distractions & animations. An issue that I encountered was that building a FastAPI backend and CORS for a frontend-only site was time-intensive. To combat this, I chose to use vite, which requires a basic backend.", "repo": "https://github.com/AbhiramV010/portfolio", "demo": "https://abhiramv.vercel.app/"}]...
|
[{"post_id": 29237, "ts": "202 [{"post_id": 29237, "ts": "2026-07-16T00:48:57Z", "hours": 0.6608, "text": "I think it’s finally done. I added GitHub & LinkedIn badges so the profiles are more easily accessible."}, {"post_id": 21219, "ts": "2026-07-03T01:26:44Z", "hours": 1.9256, "text": "New day, new milestone. I said I’d be done earlier, but some things came up and I need to put a little more time into it. I think I’ll be done very soon. I’ve added this page to the portfolio to tell people about me. I had to blur out some details."}, {"post_id": 18077, "ts": "2026-06-29T02:13:29Z", "hours": 6.8361, "text": "I got to deploy the site today. I’d say I’m around 2/3 the way there, but I have some more to do. So far, I’ve experimented with design (and failed a lot), and have added a page for my projects."}, {"post_id": 14654, "ts": "2026-06-23T20:46:59Z", "hours": 1.07, "text": "I started work on my portfolio today! Hoping it will be done by Thursday. I themed it around an older-style airport flip board (I’ve loved airplanes since I was young)."}]...
|
Title: Abhiram V's Portfolio by @abhiram_vadal Title: Abhiram V's Portfolio by @abhiram_vadali | Stardance
Devlogs:
I started work on my portfolio today! Hoping it will be done by Thursday. I themed it around an older-style airport flip board (I’ve loved airplanes since I was young).
I got to deploy the site today. I’d say I’m around 2/3 the way there, but I have some more to do. So far, I’ve experimented with design (and failed a lot), and have added a page for my projects.
New day, new milestone. I said I’d be done earlier, but some things came up and I need to put a little more time into it. I think I’ll be done very soon. I’ve added this page to the portfolio to tell people about me. I had to blur out some details.
I think it’s finally done. I added GitHub & LinkedIn badges so the profiles are more easily accessible.
Ships:
I shipped my personal portfolio website at abhiramv.vercel.app, establishing a centralized, high-performance digital hub to showcase my technical projects, skills, and contact information. Built with a minimalist frontend and deployed on Vercel, the site prioritizes a clean UI. By focusing on ease-of-navigation, the layout lets the shipped work serve as the primary focus, without unnecessary visual distractions & animations. An issue that I encountered was that building a FastAPI backend and CORS for a frontend-only site was time-intensive. To combat this, I chose to use vite, which requires a basic backend....
|
1793292641.8116567
|
1793379041.8116567
|
|
24858
|
something??? os by @jin | Stardance
|
jin
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-29T21:49:11Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Finished my hampter os. I think given more time and effort I would’ve made it look a lot more stylised to the hamster art style, and also would’ve made it more comprehensive. It currently only has 2 apps, and if I were to work on it in the future I would make it both function and look like an actual operating system.", "repo": "https://github.com/jinenchen/hampterOS", "demo": "https://jinenchen.github.io/hampterOS/"}]...
|
[{"post_id": 18700, "ts": "202 [{"post_id": 18700, "ts": "2026-06-29T21:44:27Z", "hours": 0.7556, "text": "Added my own cursor customisation app. This is a cool project, but I think I’m done with it for now. I might improve it in the future, adding more apps and making it look prettier."}, {"post_id": 17999, "ts": "2026-06-28T23:28:23Z", "hours": 1.7494, "text": "finished the guide, hopefully going to make it look all nice and add some apps!"}, {"post_id": 15437, "ts": "2026-06-25T02:48:26Z", "hours": 1.6525, "text": "Still working on the barebones as per the guide on my web os…. Will add my own customisations when I finish. Still deciding on what to do…. Feast your eyes on what I have thus far:"}]...
|
Title: something??? os by @jin | Stardance
Devlog Title: something??? os by @jin | Stardance
Devlogs:
Still working on the barebones as per the guide on my web os…. Will add my own customisations when I finish. Still deciding on what to do…. Feast your eyes on what I have thus far:
finished the guide, hopefully going to make it look all nice and add some apps!
Added my own cursor customisation app. This is a cool project, but I think I’m done with it for now. I might improve it in the future, adding more apps and making it look prettier.
Ships:
Finished my hampter os. I think given more time and effort I would’ve made it look a lot more stylised to the hamster art style, and also would’ve made it more comprehensive. It currently only has 2 apps, and if I were to work on it in the future I would make it both function and look like an actual operating system....
|
1793285807.2220476
|
1793372207.2220476
|
|
24868
|
Focus Guard by @Ettihad | Stardance
|
Ettihad
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-02T08:43:28Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hey so I made Focus Guard - a web-based app to help productivity. It uses the web cam to detect phones so the user does not get distracted. It also has a Pomodoro timer and a task list to help with focusing on important work.", "repo": "https://github.com/Ettihad/Focus-Guard", "demo": "https://focus-guard-336798175667.asia-southeast1.run.app"}]...
|
[{"post_id": 20622, "ts": "202 [{"post_id": 20622, "ts": "2026-07-02T08:25:34Z", "hours": 0.7881, "text": "Almost done with the ReadME. App launching very soon. It took a while to make but I like the final looks."}, {"post_id": 20576, "ts": "2026-07-02T06:01:26Z", "hours": 0.4014, "text": "Building an app that helps users to focus without getting distracted. Powered by AI camera detection, it helps detect phones and rings an alarm. The main objective of this project is to make people stay productive and focused throughout their work."}]...
|
Title: Focus Guard by @Ettihad | Stardance
Devlog Title: Focus Guard by @Ettihad | Stardance
Devlogs:
Building an app that helps users to focus without getting distracted. Powered by AI camera detection, it helps detect phones and rings an alarm. The main objective of this project is to make people stay productive and focused throughout their work.
Almost done with the ReadME. App launching very soon. It took a while to make but I like the final looks.
Ships:
Hey so I made Focus Guard - a web-based app to help productivity. It uses the web cam to detect phones so the user does not get distracted. It also has a Pomodoro timer and a task list to help with focusing on important work....
|
1793242228.2596877
|
1793328628.2596877
|
|
24871
|
study game by @Tony1292 | Stardance
|
Tony1292
|
1
|
10.0
|
40
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T18:18:37Z", "hours": 10.0, "multiplier": 3.88, "payout": 40, "blessing": "neutral", "text": "I made a study game for the arduboy game console. That challenge of this project was learning c++. I am proud of the fact that I made a game so I can study on the go. I solved my own problem using code. You showed put the code in the arduboy cloud. The link is in the gethub readme.", "repo": "https://github.com/tonymurilloambriz-bit/study-game", "demo": "https://www.youtube.com/watch?v=fbm9Bs-hsvQ"}]...
|
[{"post_id": 25012, "ts": "202 [{"post_id": 25012, "ts": "2026-07-08T22:47:01Z", "hours": 3.2747, "text": "I made a better game icon fro the game. I also tested it on the go,by taking it to some classes. I also added more questions from my HSPT study book."}, {"post_id": 20508, "ts": "2026-07-02T03:39:40Z", "hours": 1.0333, "text": "I saved the game in the arduboy. So know the game saves. toke for ever=’] But it was worth it. It was hard because you had to move a lots of files and download files . This is a lot for my 6 year old cromebook."}, {"post_id": 19659, "ts": "2026-07-01T01:13:29Z", "hours": 4.1336, "text": "I got the Arduboy fx-c. Also if the question is long there is a question screen. I also added the game to the arduboy and will add more stuff to make more productive. But then I found out that the games does not save so I don’t know how to save it."}, {"post_id": 15314, "ts": "2026-06-24T21:30:34Z", "hours": 1.9167, "text": "I made the first version of my study on the go game. right know its not really a game but that will be the next step. This game will go in a Arduboy FX-C , this will make it study on the go."}]...
|
Title: study game by @Tony1292 | Stardance
Devlog Title: study game by @Tony1292 | Stardance
Devlogs:
I made the first version of my study on the go game. right know its not really a game but that will be the next step. This game will go in a Arduboy FX-C , this will make it study on the go.
I got the Arduboy fx-c. Also if the question is long there is a question screen. I also added the game to the arduboy and will add more stuff to make more productive. But then I found out that the games does not save so I don’t know how to save it.
I saved the game in the arduboy. So know the game saves. toke for ever=’] But it was worth it. It was hard because you had to move a lots of files and download files . This is a lot for my 6 year old cromebook.
I made a better game icon fro the game. I also tested it on the go,by taking it to some classes. I also added more questions from my HSPT study book.
Ships:
I made a study game for the arduboy game console. That challenge of this project was learning c++. I am proud of the fact that I made a game so I can study on the go. I solved my own problem using code. You showed put the code in the arduboy cloud. The link is in the gethub readme....
|
1793274496.3934078
|
1793360896.3934078
|
|
24884
|
Art Swap Website by @PEPERI | Stardance
|
PEPERI
|
1
|
12.02
|
69
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-15T15:44:15Z", "hours": 11.0, "multiplier": 6.5, "payout": 69, "blessing": "neutral", "text": "I made a website about a community art swap I want to start! Challenges were getting it to be accessible for smaller screens and I enjoyed seeing it come from design to life.", "repo": "https://github.com/peppapigX10/ArtSwap", "demo": "https://peppapigx10.github.io/ArtSwap/"}]...
|
[{"post_id": 29889, "ts": "202 [{"post_id": 29889, "ts": "2026-07-17T01:36:23Z", "hours": 0.5747, "text": "Fixed a gap between how to join section and made edits to page2 (home) photo"}, {"post_id": 29678, "ts": "2026-07-16T19:02:20Z", "hours": 0.4453, "text": "Just fixed the menu rect to match the background (added gradient)"}, {"post_id": 28927, "ts": "2026-07-15T15:15:54Z", "hours": 5.7322, "text": "Basically finished the website made it accessible for smaller screens, also the menu rect used to be an image (cause I didn’t know there is a blur function in css) so I changed that, couldn’t fit it all in the screenshot but its a whole website not just this page"}, {"post_id": 16036, "ts": "2026-06-26T01:31:16Z", "hours": 4.8975, "text": "Working on a community art swap! Made the overall website, buttons are functionable! Will work on replacing placeholder imgs in the how to join section"}]...
|
Title: Art Swap Website by @PEPERI | Stardance
De Title: Art Swap Website by @PEPERI | Stardance
Devlogs:
Working on a community art swap! Made the overall website, buttons are functionable! Will work on replacing placeholder imgs in the how to join section
Basically finished the website made it accessible for smaller screens, also the menu rect used to be an image (cause I didn’t know there is a blur function in css) so I changed that, couldn’t fit it all in the screenshot but its a whole website not just this page
Just fixed the menu rect to match the background (added gradient)
Fixed a gap between how to join section and made edits to page2 (home) photo
Ships:
I made a website about a community art swap I want to start! Challenges were getting it to be accessible for smaller screens and I enjoyed seeing it come from design to life....
|
1793220742.468607
|
1793307142.468607
|
|
24889
|
LuminOS by @mixidmb | Stardance
|
mixidmb
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T15:09:06Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Most WebOS submissions just look like an OS but aren’t actually useful, so I tried to make one that actually is :p It’s got draggable windows, a dock, and a menu bar with a live clock, all styled like macOS but built from scratch in plain JS. The cool part is the apps actually work together: there’s a File Explorer, a Terminal that really runs commands (ls, cd, cat, mkdir, tree…), and a Code Editor built on Monaco (the VS Code engine) with IntelliSense, Emmet, and ~90 languages. All three share one filesystem that saves to your browser, so make a file in the terminal, and it instantly shows up in Files and the editor. There’s also a browser, a calculator, and a GitHub profile card (that leads to my profile).", "repo": "https://github.com/MIXIDtheSilly/LuminOS", "demo": "https://lumin-os-theta.vercel.app"}]...
|
[{"post_id": 15675, "ts": "202 [{"post_id": 15675, "ts": "2026-06-25T14:15:09Z", "hours": 2.8231, "text": "Lumin OS dev log #3! Back again, and this time the OS actually feels like an OS. (NO MORE LARP) What did I do? The big thing is that everything now runs on one real filesystem that saves to your browser, so your files don’t disappear when you close the tab. And all the apps share it, so a file you make in one shows up everywhere else instantly. First new app is the File Explorer . It’s a proper file manager with folders, breadcrumbs (learned a new word! really important, I know) at the top so you know where you are, and an Up button. You can make new folders and files, rename them, delete them, all that. Double-click a folder to go in, double-click a file, and it opens right in the Code Editor. I also added Import and Save to disk, so you can pull a real file off your computer into Lumin OS, or download one back out (uses the actual File System Access API) Then the Terminal . ls, cd, cat, mkdir, touch, rm, mv, cp, tree… they all run on the real filesystem. You can even do echo hello > file.txt to write to a file, and » to append. Type help and it lists everything, there’s arrow-key history so you can scroll back through old commands, and open file.js throws a file straight into the editor. It greets you with root@LuminOs like a proper shell :p Oh, and the Code Editor got reworked too. Before, the files in it were basically fake/hardcoded. Now it’s hooked into the real filesystem, so it auto-saves as you type (Ctrl+S to force it), the file list on the left is the actual files in the OS, and it all stays in sync. Edit a file in the editor and the terminal sees it, delete one in Files and the editor closes the tab by itself. So basically, you can make a file in the terminal, edit it in the editor, and manage it in Files. You can still download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (star it pls, yes, still begging ⭐ ) If you have any ideas, drop them in the comments! I will read all of them"}, {"post_id": 15311, "ts": "2026-06-24T21:21:24Z", "hours": 1.3442, "text": "Lumin OS dev log #2! Back again with more progress! What did I do this time? First, the small stuff: I added a menu bar at the top, as macOS has. Right now it’s mostly home to the clock, which ticks live and updates every second. The big one is the Code Editor app. For that, I used Monaco, which is the engine that VSCode uses, so it already feels familiar. It’s got files on the left and the editor on the right, just like you’d expect. Oh, btw, suggestions also work! (AND EMMET TOO!!!) I used IntelliSense for JS/TS, type console. or document. And you get actual member suggestions. Emmet in HTML/CSS, type ! then Tab for boilerplate, or div.box>p*3 for the cool expansion. Auto-closing tags, type and it adds the for you (Monaco doesn’t do this by default, had to add it myself). It detects the language by file extension automatically, .js, .go, .rs, .py, .html… around 90 languages, and shows the current one in a little status bar at the bottom. (holy vs code clone lol) Open files now also show up as tabs at the top of the editor, and you can make your own files with the + button. Used JetBrains Mono font. Maybe one day I’ll get the actual web VSCode running in here or maybe someone can do it for me >:P, but for now this does the job :p You can still download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (go star it fr fr again…) If you have any ideas, drop them in the comments!"}, {"post_id": 15142, "ts": "2026-06-24T16:30:12Z", "hours": 4.0072, "text": "Lumin OS dev log #1! I’ve started working on the WebOS mission. I saw some other submissions, but it seems most of them are for show and don’t actually function like an OS. My friends liked the look of it lol, and suggested a couple of things like being able to access VSCode inside of it (because there is a web VSCode) or run Doom (one of my friends told me there is a JS Doom port, so ima check it out). Yeah, but the goal of this OS is to be useful :p What did I do today? Started by creating windows and adding a wallpaper (yes, it is the one from macOS, and im using it currently). Then added a GitHub app to show my profile card; it’s not linked to an API yet, but I might do it. Then I made a browser by displaying content in an . And because I couldn’t load some websites, Google, for example, I added a fallback. I added some websites that didn’t work to a list, and instead of trying to load them, the app tells you that the website cannot be embedded and shows a button that opens that page in a new window. last think i’ve added today was the calculator app, and I don’t think I need to explain how a calculator works lol. And yes, it has protection for dividing by 0. You can already download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (and you should star it fr) Oh, I forgot to mention that the OS name came from my VR dev team’s name, Luminera, and an AI assistant I made for the team, called Lumin. I would’ve made a dev log sooner, but I started making this project at school. (still no summer break in Poland 😭 ) If you have any ideas, make sure to comment! I will appreciate it!"}]...
|
Title: LuminOS by @mixidmb | Stardance
Devlogs:
L Title: LuminOS by @mixidmb | Stardance
Devlogs:
Lumin OS dev log #1! I’ve started working on the WebOS mission. I saw some other submissions, but it seems most of them are for show and don’t actually function like an OS. My friends liked the look of it lol, and suggested a couple of things like being able to access VSCode inside of it (because there is a web VSCode) or run Doom (one of my friends told me there is a JS Doom port, so ima check it out). Yeah, but the goal of this OS is to be useful :p What did I do today? Started by creating windows and adding a wallpaper (yes, it is the one from macOS, and im using it currently). Then added a GitHub app to show my profile card; it’s not linked to an API yet, but I might do it. Then I made a browser by displaying content in an . And because I couldn’t load some websites, Google, for example, I added a fallback. I added some websites that didn’t work to a list, and instead of trying to load them, the app tells you that the website cannot be embedded and shows a button that opens that page in a new window. last think i’ve added today was the calculator app, and I don’t think I need to explain how a calculator works lol. And yes, it has protection for dividing by 0. You can already download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (and you should star it fr) Oh, I forgot to mention that the OS name came from my VR dev team’s name, Luminera, and an AI assistant I made for the team, called Lumin. I would’ve made a dev log sooner, but I started making this project at school. (still no summer break in Poland 😭 ) If you have any ideas, make sure to comment! I will appreciate it!
Lumin OS dev log #2! Back again with more progress! What did I do this time? First, the small stuff: I added a menu bar at the top, as macOS has. Right now it’s mostly home to the clock, which ticks live and updates every second. The big one is the Code Editor app. For that, I used Monaco, which is the engine that VSCode uses, so it already feels familiar. It’s got files on the left and the editor on the right, just like you’d expect. Oh, btw, suggestions also work! (AND EMMET TOO!!!) I used IntelliSense for JS/TS, type console. or document. And you get actual member suggestions. Emmet in HTML/CSS, type ! then Tab for boilerplate, or div.box>p*3 for the cool expansion. Auto-closing tags, type and it adds the for you (Monaco doesn’t do this by default, had to add it myself). It detects the language by file extension automatically, .js, .go, .rs, .py, .html… around 90 languages, and shows the current one in a little status bar at the bottom. (holy vs code clone lol) Open files now also show up as tabs at the top of the editor, and you can make your own files with the + button. Used JetBrains Mono font. Maybe one day I’ll get the actual web VSCode running in here or maybe someone can do it for me >:P, but for now this does the job :p You can still download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (go star it fr fr again…) If you have any ideas, drop them in the comments!
Lumin OS dev log #3! Back again, and this time the OS actually feels like an OS. (NO MORE LARP) What did I do? The big thing is that everything now runs on one real filesystem that saves to your browser, so your files don’t disappear when you close the tab. And all the apps share it, so a file you make in one shows up everywhere else instantly. First new app is the File Explorer . It’s a proper file manager with folders, breadcrumbs (learned a new word! really important, I know) at the top so you know where you are, and an Up button. You can make new folders and files, rename them, delete them, all that. Double-click a folder to go in, double-click a file, and it opens right in the Code Editor. I also added Import and Save to disk, so you can pull a real file off your computer into Lumin OS, or download one back out (uses the actual File System Access API) Then the Terminal . ls, cd, cat, mkdir, touch, rm, mv, cp, tree… they all run on the real filesystem. You can even do echo hello > file.txt to write to a file, and » to append. Type help and it lists everything, there’s arrow-key history so you can scroll back through old commands, and open file.js throws a file straight into the editor. It greets you with root@LuminOs like a proper shell :p Oh, and the Code Editor got reworked too. Before, the files in it were basically fake/hardcoded. Now it’s hooked into the real filesystem, so it auto-saves as you type (Ctrl+S to force it), the file list on the left is the actual files in the OS, and it all stays in sync. Edit a file in the editor and the terminal sees it, delete one in Files and the editor closes the tab by itself. So basically, you can make a file in the terminal, edit it in the editor, and manage it in Files. You can still download Lumin OS at https://github.com/MIXIDtheSilly/LuminOS (star it pls, yes, still begging ⭐ ) If you have any ideas, drop them in the comments! I will read all of them
Ships:
Most WebOS submissions just look like an OS but aren’t actually useful, so I tried to make one that actually is :p It’s got draggable windows, a dock, and a menu bar with a live clock, all styled like macOS but built from scratch in plain JS. The cool part is the apps actually work together: there’s a File Explorer, a Terminal that really runs commands (ls, cd, cat, mkdir, tree…), and a Code Editor built on Monaco (the VS Code engine) with IntelliSense, Emmet, and ~90 languages. All three share one filesystem that saves to your browser, so make a file in the terminal, and it instantly shows up in Files and the editor. There’s also a browser, a calculator, and a GitHub profile card (that leads to my profile)....
|
1792878454.4623046
|
1793742454.4623046
|
|
24897
|
Cassetu's Map Vault by @Cassetu | Stardance
|
Cassetu
|
1
|
4.0
|
20
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T00:59:49Z", "hours": 4.0, "multiplier": 10.37, "payout": 20, "blessing": "neutral", "text": "Ship 1 This website is a collection of my minigame minecraft maps that you can do solo or with friends! It has a filter system and 2 entries (one example entry). You can filter by map usage or minecraft version as well as a search bar for case specific stuf. Later it will also load in information and several screenshots below in a description section. I had some challenges with the data storage and the zips (especially bc minecraft worlds are big files and github prevents files that are larger than 500mb). But luckily i can delete excess chunk data using MCA selector to minimize file size! Coding Languages: Javascript, Html5, CSS Thanks for your input :D", "repo": "https://github.com/Cassetu/Cassetu-Map-Vault", "demo": "https://cassetu.github.io/Cassetu-Map-Vault/"}]...
|
[{"post_id": 16611, "ts": "202 [{"post_id": 16611, "ts": "2026-06-27T00:50:39Z", "hours": 2.0472, "text": "Devlog 2 Added javascript functionality for the map grid population. Also added tag, version and gamemode sorting . Finding the right map is way easier! Improved the design of map grid cards, tags, and sorting dropdown menu . Added 2 maps (Void & 4 Buttons). Download them to try it out in minecraft! (also trying out italics for better devlogs! :D)"}, {"post_id": 14711, "ts": "2026-06-23T22:20:17Z", "hours": 1.7275, "text": "Devlog 1 Built the base of the website. I got the hero text, background image, and topbar. Currently there aren’t any downloadable maps or functionality besides the searchbar dropdown. Luckily for me, Blockbench has an easy Minecraft Title creator, so i can make a high quality title for my website. I’m planning on making a javascript system to populate my map grid from the database, but thats for future me to work out."}]...
|
Title: Cassetu's Map Vault by @Cassetu | Stard Title: Cassetu's Map Vault by @Cassetu | Stardance
Devlogs:
Devlog 1 Built the base of the website. I got the hero text, background image, and topbar. Currently there aren’t any downloadable maps or functionality besides the searchbar dropdown. Luckily for me, Blockbench has an easy Minecraft Title creator, so i can make a high quality title for my website. I’m planning on making a javascript system to populate my map grid from the database, but thats for future me to work out.
Devlog 2 Added javascript functionality for the map grid population. Also added tag, version and gamemode sorting . Finding the right map is way easier! Improved the design of map grid cards, tags, and sorting dropdown menu . Added 2 maps (Void & 4 Buttons). Download them to try it out in minecraft! (also trying out italics for better devlogs! :D)
Ships:
Ship 1 This website is a collection of my minigame minecraft maps that you can do solo or with friends! It has a filter system and 2 entries (one example entry). You can filter by map usage or minecraft version as well as a search bar for case specific stuf. Later it will also load in information and several screenshots below in a description section. I had some challenges with the data storage and the zips (especially bc minecraft worlds are big files and github prevents files that are larger than 500mb). But luckily i can delete excess chunk data using MCA selector to minimize file size! Coding Languages: Javascript, Html5, CSS Thanks for your input :D...
|
1793314066.6376965
|
1793400466.6376965
|
|
24914
|
Some cad by @r1eu | Stardance
|
r1eu
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T07:24:51Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple tennis ball container using cad (theres no electronics)", "repo": "https://github.com/jimuv/container", "demo": ""}]...
|
[{"post_id": 14800, "ts": "202 [{"post_id": 14800, "ts": "2026-06-24T01:18:33Z", "hours": 0.3, "text": "simplified bottom"}, {"post_id": 14744, "ts": "2026-06-23T23:16:17Z", "hours": 0.3647, "text": "Made a model"}]...
|
Title: Some cad by @r1eu | Stardance
Devlogs:
Mad Title: Some cad by @r1eu | Stardance
Devlogs:
Made a model
simplified bottom
Ships:
I made a simple tennis ball container using cad (theres no electronics)...
|
1793252857.4418163
|
1793339257.4418163
|
|
24924
|
Borrow Board by @ayaan4657 | Stardance
|
ayaan4657
|
1
|
9.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T00:05:42Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made BorrowBoard, a school app where students can borrow, lend, and find lost items like chargers, calculators, goggles, and supplies. The hardest part was making everything feel like a real app instead of just a website, especially connecting auth, profiles, schedules, matching, credits, and the AI model idea. I’m proud that it looks polished, has a clear purpose, and feels like something students could actually use. - for the best experience use a desktop / laptop", "repo": "https://github.com/siccd143/BorrowBoard-YouthxCode", "demo": "https://borrow-board-youthx-code.vercel.app/"}]...
|
[{"post_id": 14761, "ts": "202 [{"post_id": 14761, "ts": "2026-06-23T23:57:40Z", "hours": 0.6406, "text": "Fixed some bugs in sizing and fixed auth in supabase"}, {"post_id": 14741, "ts": "2026-06-23T23:11:09Z", "hours": 8.6736, "text": "Worked on Completing the First Version"}]...
|
Title: Borrow Board by @ayaan4657 | Stardance
Dev Title: Borrow Board by @ayaan4657 | Stardance
Devlogs:
Worked on Completing the First Version
Fixed some bugs in sizing and fixed auth in supabase
Ships:
I made BorrowBoard, a school app where students can borrow, lend, and find lost items like chargers, calculators, goggles, and supplies. The hardest part was making everything feel like a real app instead of just a website, especially connecting auth, profiles, schedules, matching, credits, and the AI model idea. I’m proud that it looks polished, has a clear purpose, and feels like something students could actually use. - for the best experience use a desktop / laptop...
|
1793203005.0485034
|
1793289405.0485034
|
|
24928
|
Ai training playground by @unknown_lizzard | Stard Ai training playground by @unknown_lizzard | Stardance...
|
unknown_lizzard
|
1
|
0.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T14:12:17Z", "hours": 0.0, "multiplier": 10.73, "payout": 3, "blessing": "neutral", "text": "I built Telokine, a 3D robot trainer where you snap motors onto parts, drag reward blocks to say what to learn, hit Train, and watch it improve. Frontend is React and Three.js, backend is Python with MuJoCo physics and PPO. The hard parts were fixing the robot stretching on Run, stopping the cube from moving with no motors, getting training previews to actually show, and making Run trained work after training. GitHub Pages only hosts the UI so real training runs on your laptop. I’m proud of the motor snapping, the block editor, the live previews during training, and making movement motor-only like a real robot. To try it: the demo at https://mateooo93.github.io/Telokine/ is UI only. For the full thing clone https://github.com/Mateooo93/Telokine , run npm run dev and the backend on port 8000, load the Walker template, Train then Run trained. No GPU needed, but you need motors or nothing moves.", "repo": "https://github.com/Mateooo93/Telokine", "demo": "https://mateooo93.github.io/Telokine/"}]...
|
[{"post_id": 15068, "ts": "202 [{"post_id": 15068, "ts": "2026-06-24T14:08:56Z", "hours": 0.2853, "text": "DEVLOG 1: telokine is kinda working?? 🤖 So far I have been developing Telokine for Stardance and it allows you to train a robot without writing any code. I built this because I wanted RL without having to write complex code or/and make complex jupyter notebooks, this is very simple and kid-friendly way to understand how it works visually. anyways, This works with your gpu and/or cpu, but expect some bugs as it’s not completely finished yet(expect new features soon!). (forgot to add it to hackatime so it just shows up as 15 minutes of work)(it took me more like 5-8 hours), I used ai for the frontend and cuda. Links GitHub repo Live demo (UI only)"}]...
|
Title: Ai training playground by @unknown_lizzard Title: Ai training playground by @unknown_lizzard | Stardance
Devlogs:
DEVLOG 1: telokine is kinda working?? 🤖 So far I have been developing Telokine for Stardance and it allows you to train a robot without writing any code. I built this because I wanted RL without having to write complex code or/and make complex jupyter notebooks, this is very simple and kid-friendly way to understand how it works visually. anyways, This works with your gpu and/or cpu, but expect some bugs as it’s not completely finished yet(expect new features soon!). (forgot to add it to hackatime so it just shows up as 15 minutes of work)(it took me more like 5-8 hours), I used ai for the frontend and cuda. Links GitHub repo Live demo (UI only)
Ships:
I built Telokine, a 3D robot trainer where you snap motors onto parts, drag reward blocks to say what to learn, hit Train, and watch it improve. Frontend is React and Three.js, backend is Python with MuJoCo physics and PPO. The hard parts were fixing the robot stretching on Run, stopping the cube from moving with no motors, getting training previews to actually show, and making Run trained work after training. GitHub Pages only hosts the UI so real training runs on your laptop. I’m proud of the motor snapping, the block editor, the live previews during training, and making movement motor-only like a real robot. To try it: the demo at https://mateooo93.github.io/Telokine/ is UI only. For the full thing clone https://github.com/Mateooo93/Telokine , run npm run dev and the backend on port 8000, load the Walker template, Train then Run trained. No GPU needed, but you need motors or nothing moves....
|
1792878540.0689528
|
1793742540.0689528
|
|
24938
|
My first slack bot! by @AwesomeFreshDay | Stardanc My first slack bot! by @AwesomeFreshDay | Stardance...
|
AwesomeFreshDay
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-02T21:51:57Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Simple Slack bot running on Nest server 24/7 with 6 different commands Name Description /adam-ping Pings the bot /adam-help Provides help /adam-catfact Provides cat fact /adam-joke Provides a joke /adam-color Porivde’s Adam’s favorite color /adam-sport Provides Adam’s favorite sport", "repo": "https://github.com/AdamT2529/Build-a-Slack-Bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354?skip_today=1"}]...
|
[{"post_id": 21094, "ts": "202 [{"post_id": 21094, "ts": "2026-07-02T21:48:53Z", "hours": 0.8267, "text": "Finished creating the slack bot with different commands"}]...
|
Title: My first slack bot! by @AwesomeFreshDay | S Title: My first slack bot! by @AwesomeFreshDay | Stardance
Devlogs:
Finished creating the slack bot with different commands
Ships:
Simple Slack bot running on Nest server 24/7 with 6 different commands Name Description /adam-ping Pings the bot /adam-help Provides help /adam-catfact Provides cat fact /adam-joke Provides a joke /adam-color Porivde’s Adam’s favorite color /adam-sport Provides Adam’s favorite sport...
|
1793292544.341157
|
1793378944.341157
|
|
24955
|
Fun Learning Game by @lilfox | Stardance
|
lilfox
|
1
|
85.0
|
1895
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-11T21:09:47Z", "hours": 85.0, "multiplier": 18.47, "payout": 1895, "blessing": "neutral", "text": "This is especially made for the Chinese students I tutor! I made a boss fight game that uses shooter and (possibly) rpg elements to help the player practice kindergarten level English spelling. Just formulating the idea and incorporating it was challenging, though. From changing the genre of my game from a platformer to a boss-fight, to painstakingly drawing and animating the pixel art of the game, to learning Godot as a beginner…it’s been a wild ride! I’m proud that I was able to create a coherent and (hopefully) fun game, while learning new things about Godot and Aseprite. Nodes, signals, layers, frames, all bunched up together. While this is my first time making a game, I hope that my time and effort makes this an enjoyable experience for you! The link to my project is over at https://english-spelling-lesson.netlify.app (unfortunately this game requires a keyboard). G’ day. :)", "repo": "https://github.com/Foxlil/Educational-Game", "demo": "https://english-spelling-lesson.netlify.app"}]...
|
[{"post_id": 45410, "ts": "202 [{"post_id": 45410, "ts": "2026-08-11T20:46:52Z", "hours": 2.2011, "text": "I finished the game! :D Added sound effects for: Clicking buttons Player attacks Phoenix attacks Phoenix caw (to signal to the player that a barrage of projectiles is coming if they are too busy with the attack button) Background music! The quiz I finally added real questions! I wanted to focus on spelling for this one, so I used emojis and asked the user how the words representing them were spelled. Text stuff Added text instruction at the beginning Changed fonts of the text nodes featuring emojis (more on that later) Web shenanigans I wanted to make sure that the game would be available on devices that did not support downloading .exe (like chromebooks, for example). But uh…that was harder than I was expecting! I used netlify to create a url after exporting the game for html5. The first issue in business was that the camera was zoomed out when the website was launched, showing the gray blank space of the Godot dimension. This took a bit to figure out, but apparently I had to adjust the stretch mode and aspect in project settings. The second issue was that the emojis were showing up as white-boxed hex codes in the web version (for some reason!! >:( ). Turns out that I needed a different dedicated font for the emojis so that they could be compatable on all devices. Oh well, haha. At least it’s more accessible! :D (PS. I’m sincerely sorry for the terrible audio quality in the video, I can’t screen record and the speakers on this computer are outrageous :’) )"}, {"post_id": 45100, "ts": "2026-08-11T11:27:01Z", "hours": 9.2092, "text": "I’m so close to finishing the game! First of all, I finished the attack system. Basically, you answer a certain number of questions under the “attack” button, filling up the bar next to it. When it fills up, you unlock a new weapon. After it cools down, you can use it; but on the first time of cycling through every weapon, only once! As you complete more cycles, though, that increases to twice, then three times, etc. I also added pixel art to the buttons. I took away the “attack” label of the attack button because the students I tutor don’t know that word yet. Instead, I used an animation in hopes of incentivising them to click it. The other buttons include: The arrow Two arrows Copper sword Diamond sword Which brings me to my next development––when you click those buttons, there’s an actual attack! An arrow animation, a two-arrow animation, a copper sword animation, etc were added to the mix. I hope to add music, SFX, and maybe simple instructions for the future. Finally, I implemented a losing and winning screen using the same node in the system, detecting player and enemy health."}, {"post_id": 44537, "ts": "2026-08-10T11:24:26Z", "hours": 7.1533, "text": "I added functionality to the attack system! Now it can: Show the question and input text box when the attack button is clicked Detect correct answers and wrong answers I also added: An attack bar that stores how many answers you got correct. Once you’ve answered a certain number of questions correctly, I plan for a button on the left to unlock You may already notice the buttons in the bottom left! When I filled the bar once, one of the buttons unlocked, a timer ran out (signified by the white bar), and I could click the button. For the future: The buttons you have to unlock are actually buttons that allow you attack! So I’ll add different attack functionalities to different buttons. The buttons look kinda bland. I’m planning to add some sprites in place of the buttons. I’m thinking of putting some transparent gray space behind the text to make it more readable. I really hope I can finish this game next devlog! Seeya there! :)"}, {"post_id": 43967, "ts": "2026-08-09T13:15:35Z", "hours": 7.4439, "text": "I’ve put some of the pixel art into the game, and it’s looking good! The thing about the prototype is that it didn’t consider scale or size, so I had to change: The placement and zoom of the camera The size and tween animations of the quiz questions The player and enemy sprite + hitbox size However, I also finished: Health bars for the player and boss Tweens that would smoothly adjust the health (which was why the red health and the bar were drawn separately) Areas where the projectiles would be slow or fast. Initially this was controlled by timers, but I found that this was too buggy for my mom’s computer, so I just used area detection instead to make everything more consistent. For the future, I added: An attack button A text input box (line edit node) An area for the text questions (label node) For now, there is no function yet, but this will be used for an attack system. How it will work is that, when you press attack, you are given a question requiring a typed answer. Answering it correctly would send a powerful attack to the enemy, while answering it wrong would decrease your health by a little bit. Looking forward to implementing this system! (Also don’t worry, I’ll def add pixel art for the player and the arrows trust :D )"}, {"post_id": 43265, "ts": "2026-08-08T12:57:16Z", "hours": 4.2119, "text": "Wowee, I finished the background! I mostly worked on the tiles and shadows, which I hope makes the environment more immersive and detailed. I also added in some of the complete assets into Godot! While I still have some pixel art to work on, such as: The player Arrows The projectiles exploding animation I think now is a good time to take a break from Aseprite and work in Godot. Since the pixel art is already way smaller than the original prototype, here’s what I need to work on: Adjusting the game code to the new screen size Slowing down projectiles and adjusting the time when they slow down Changing the question tweens so that the text doesn’t fly off the screen Changing player position Adding in the health bar sprites with functionality Implementing animation phases for the boss (play this animation when attacking, play this animation when idling, etc) VFX and SFX"}, {"post_id": 42775, "ts": "2026-08-07T17:34:46Z", "hours": 6.3053, "text": "Worked on the background environment. Added: Pillars Doorway Brick texture Shading The most difficult thing for me is to make every element fit together. I hope I can finish the background today and probably work on the player and arrows. I also just realized that I should probably work on the projectile dissipating animation, too. Off to work!"}, {"post_id": 41906, "ts": "2026-08-06T12:38:02Z", "hours": 8.2169, "text": "After completing the phoenix (finally), here’s what I finished: The projectiles emitted from the boss. I wondered what it should be—a rock? A magic orb? Before realizing that it was a phoenix we were talking about, and that flames were basically their signature! I also added frame-by-frame animation to add more life to it. The boss health bar! It’s noticeably larger than the player’s, with a similar flame animation as the projectiles. It doesn’t have that gold sheen, but I hope it has its own unique style that gives off phoenix vibes! What I’m working on: The background! I’ve only created two pillars, but I’m planning on an entrance to a temple. To make the colors blend more together, I actually used the jumble tool! (The enemy is there as a reference to the size proportions) What I plan to do after finishing the background: Besides more pixel art (player, arrows), I want to implement the art into the game! The game’s framework is basically done, though I’ll definitely add more features so that it isn’t so repetitive. I also need to work on the health bars, which is exciting! :)"}, {"post_id": 41293, "ts": "2026-08-05T12:54:54Z", "hours": 7.2842, "text": "I’ve finally finished the phoenix! After finishing shading, I separated the key elements—head, body, wings—into different layers so that I could animate easier. Then I used the select tool to move and rotate the parts before fixing up the pixels. Unfortunately the wing feathers look wonky, but I’m not too sure how to approach that. After implementing ease in and out, here’s what I’ve completed : An idle animation (first four frames, and then reverse) An attack animation A transition to glowing eyes! A sudden burst of flame What I’ll be working on : The background pixel art The projectiles The boss health bar (The video has a clideo.com watermark because I needed to compress the video :( )"}, {"post_id": 40778, "ts": "2026-08-04T15:05:43Z", "hours": 9.1675, "text": "Today, I worked more on the phoenix’s wings and legs. I haven’t finished yet, but hopefully I’m close! Here’s what I’ve done: Fleshed out the shading and made the wings bigger two times Shaded the foot Added tufts to the phoenix head This has all been to make the bird look more like a phoenix! I’ve gotten criticism that it looks like a chicken, so I tried to make the proportions more accurate, sharpened the feathers, and tried to make the features fancier. I am told that it still looks like a chicken! Unfortunately, I’ve decided not to add flames, or make the bird thinner, or make the wings bigger (again), because this has already taken far too long! I haven’t even started animating yet! XD That’s not to say that these aren’t valid criticisms. These are very good suggestions, but I’d like to move on to other game art, not just the boss. I plan on finishing the art and at least starting animation, so that I can work on projectiles, the player, the boss health bar, etc! :)"}, {"post_id": 39411, "ts": "2026-08-02T11:12:32Z", "hours": 8.7511, "text": "Worked on the beginning boss of the game! I aimed to draw a feng huang — or phoenix — in Aseprite, but whoa, that took a lot more energy from me than expected! I focused on the head and body. Issues: Being a beginner in using Aseprite (I usually use pixilart.com) I didn’t remember to save :( I worked for about an hour on the face, but after my break and returning, I found that my work hadn’t saved!! Lesson learned: save every few seconds :P Design: After pasting the player health bar inside for a size comparison, I first blocked out the shape of the phoenix using a large 3x3 or 4x4 brush, with the main color. I started using a darker color to block out the features of the bird—feathers, eyes, etc… Then I attacked the birdie with bands of shading and lighting for each section of feather or eye to give more depth I decided to split the workflow into two different parts: the head and the body. You can notice how the feathers on the body look very different (and probably more wonky) from the feathers on the head and neck. Later this will help me separate out sections for animation :D What I should work on: Making the wings bigger (I am told that the phoenix looks like a chicken. ) Finishing the details of the feet and wings ANIMATION! Including: Idle Attack Damage I wonder how long that will take…haha…"}, {"post_id": 38607, "ts": "2026-08-01T02:44:58Z", "hours": 2.0886, "text": "I finished the player health bar in Aseprite! Design choices : The main mascot? Character? Of this educational game is a tiger. I wanted to reflect that while also taking inspiration from Chinese traditional lions (like those door knockers!) so here is a weird mashup! Lion? Tiger? Liger? No one shall know >:) I made it gold because yellow would definitely pop on the screen, which I hope would make it easy for players to locate on the screen. Also, gold gives a more heroic vibe :D Animation I wanted the animation to be simple, so it wouldn’t distract from the main game, but easy for the viewer to locate when needed. So I created a shiny light that travels across the bar using easing in, easing out, and smear frames! The plan is for this animation to occur from time to time, reminding the player of their health while also not being too distracting. Where is the actual red health? The red health is in another file, separate from the health bar The plan is to be able to crop out the red health as the health decreases, while ignoring the background bar. This allows for stylized health bars but fluid health decreasing/increasing animations!"}, {"post_id": 37769, "ts": "2026-07-30T18:02:46Z", "hours": 2.835, "text": "Now I have implemented a sort of “quiz” system. Added features: Arrays containing questions, choices, and corresponding correct answers Randomly chosen questions featured one at a time Detecting whether the player has shot the projectile featuring the correct answer, in which all the projectiles will destroy themselves Playing these features in a perpetual loop Features needed to be added I definitely need to add health to add some risk into the game! Art will play a big part in making this game fun :) EFFECTS - Such as screen shake or particles!"}, {"post_id": 37632, "ts": "2026-07-30T14:40:45Z", "hours": 7.2144, "text": "After getting the gist of Godot from Brackey’s tutorial, I decided to switch gears to a boss-fight type of game! What I added: The player rotates to face the mouse, allowing for aiming Left-clicking, or just simply tapping on the mouse pad, for shooting An area node for the boss A question appears on screen before triggering projectiles Projectiles from the boss, the number of which can be adjusted, are designed to be distanced by the same angle (ex 180/n, n being declared) A system using timer nodes that slows the game for a certain amount of time—allowing for the player to carefully aim and shoot—before returning to normal Why these features? Here’s the plan: The boss idles for a random amount of allotted time The boss then attacks! A randomly selected question—asking about adjectives, nouns, spelling, etc—appears on the screen. After being given enough time to read the question, projectiles with the answer choices are shot towards the player. If the player shoots the correct answer, the explosion harms the boss! But if the player shoots the wrong answer, the projectiles hurt them. I hope this makes learning English fun, but slightly fast-paced. Clearly I still have a lot to add! :)"}, {"post_id": 17821, "ts": "2026-06-28T19:12:16Z", "hours": 3.4136, "text": "Learned how to use Godot from the classic Brackeys tutorial: adding player movement, idle animation, tile set (testing), one way platforms, and moving platforms. Also created little tiger character as player! Need to add death, walking animation, better physics, and collectibles. Was hard for me to understand scenes and nodes but very rewarding in the end! :) Also planning to add the educational elements soon…"}]...
|
Title: Fun Learning Game by @lilfox | Stardance
D Title: Fun Learning Game by @lilfox | Stardance
Devlogs:
Learned how to use Godot from the classic Brackeys tutorial: adding player movement, idle animation, tile set (testing), one way platforms, and moving platforms. Also created little tiger character as player! Need to add death, walking animation, better physics, and collectibles. Was hard for me to understand scenes and nodes but very rewarding in the end! :) Also planning to add the educational elements soon…
After getting the gist of Godot from Brackey’s tutorial, I decided to switch gears to a boss-fight type of game! What I added: The player rotates to face the mouse, allowing for aiming Left-clicking, or just simply tapping on the mouse pad, for shooting An area node for the boss A question appears on screen before triggering projectiles Projectiles from the boss, the number of which can be adjusted, are designed to be distanced by the same angle (ex 180/n, n being declared) A system using timer nodes that slows the game for a certain amount of time—allowing for the player to carefully aim and shoot—before returning to normal Why these features? Here’s the plan: The boss idles for a random amount of allotted time The boss then attacks! A randomly selected question—asking about adjectives, nouns, spelling, etc—appears on the screen. After being given enough time to read the question, projectiles with the answer choices are shot towards the player. If the player shoots the correct answer, the explosion harms the boss! But if the player shoots the wrong answer, the projectiles hurt them. I hope this makes learning English fun, but slightly fast-paced. Clearly I still have a lot to add! :)
Now I have implemented a sort of “quiz” system. Added features: Arrays containing questions, choices, and corresponding correct answers Randomly chosen questions featured one at a time Detecting whether the player has shot the projectile featuring the correct answer, in which all the projectiles will destroy themselves Playing these features in a perpetual loop Features needed to be added I definitely need to add health to add some risk into the game! Art will play a big part in making this game fun :) EFFECTS - Such as screen shake or particles!
I finished the player health bar in Aseprite! Design choices : The main mascot? Character? Of this educational game is a tiger. I wanted to reflect that while also taking inspiration from Chinese traditional lions (like those door knockers!) so here is a weird mashup! Lion? Tiger? Liger? No one shall know >:) I made it gold because yellow would definitely pop on the screen, which I hope would make it easy for players to locate on the screen. Also, gold gives a more heroic vibe :D Animation I wanted the animation to be simple, so it wouldn’t distract from the main game, but easy for the viewer to locate when needed. So I created a shiny light that travels across the bar using easing in, easing out, and smear frames! The plan is for this animation to occur from time to time, reminding the player of their health while also not being too distracting. Where is the actual red health? The red health is in another file, separate from the health bar The plan is to be able to crop out the red health as the health decreases, while ignoring the background bar. This allows for stylized health bars but fluid health decreasing/increasing animations!
Worked on the beginning boss of the game! I aimed to draw a feng huang — or phoenix — in Aseprite, but whoa, that took a lot more energy from me than expected! I focused on the head and body. Issues: Being a beginner in using Aseprite (I usually use pixilart.com) I didn’t remember to save :( I worked for about an hour on the face, but after my break and returning, I found that my work hadn’t saved!! Lesson learned: save every few seconds :P Design: After pasting the player health bar inside for a size comparison, I first blocked out the shape of the phoenix using a large 3x3 or 4x4 brush, with the main color. I started using a darker color to block out the features of the bird—feathers, eyes, etc… Then I attacked the birdie with bands of shading and lighting for each section of feather or eye to give more depth I decided to split the workflow into two different parts: the head and the body. You can notice how the feathers on the body look very different (and probably more wonky) from the feathers on the head and neck. Later this will help me separate out sections for animation :D What I should work on: Making the wings bigger (I am told that the phoenix looks like a chicken. ) Finishing the details of the feet and wings ANIMATION! Including: Idle Attack Damage I wonder how long that will take…haha…
Today, I worked more on the phoenix’s wings and legs. I haven’t finished yet, but hopefully I’m close! Here’s what I’ve done: Fleshed out the shading and made the wings bigger two times Shaded the foot Added tufts to the phoenix head This has all been to make the bird look more like a phoenix! I’ve gotten criticism that it looks like a chicken, so I tried to make the proportions more accurate, sharpened the feathers, and tried to make the features fancier. I am told that it still looks like a chicken! Unfortunately, I’ve decided not to add flames, or make the bird thinner, or make the wings bigger (again), because this has already taken far too long! I haven’t even started animating yet! XD That’s not to say that these aren’t valid criticisms. These are very good suggestions, but I’d like to move on to other game art, not just the boss. I plan on finishing the art and at least starting animation, so that I can work on projectiles, the player, the boss health bar, etc! :)
I’ve finally finished the phoenix! After finishing shading, I separated the key elements—head, body, wings—into different layers so that I could animate easier. Then I used the select tool to move and rotate the parts before fixing up the pixels. Unfortunately the wing feathers look wonky, but I’m not too sure how to approach that. After implementing ease in and out, here’s what I’ve completed : An idle animation (first four frames, and then reverse) An attack animation A transition to glowing eyes! A sudden burst of flame What I’ll be working on : The background pixel art The projectiles The boss health bar (The video has a clideo.com watermark because I needed to compress the video :( )
After completing the phoenix (finally), here’s what I finished: The projectiles emitted from the boss. I wondered what it should be—a rock? A magic orb? Before realizing that it was a phoenix we were talking about, and that flames were basically their signature! I also added frame-by-frame animation to add more life to it. The boss health bar! It’s noticeably larger than the player’s, with a similar flame animation as the projectiles. It doesn’t have that gold sheen, but I hope it has its own unique style that gives off phoenix vibes! What I’m working on: The background! I’ve only created two pillars, but I’m planning on an entrance to a temple. To make the colors blend more together, I actually used the jumble tool! (The enemy is there as a reference to the size proportions) What I plan to do after finishing the background: Besides more pixel art (player, arrows), I want to implement the art into the game! The game’s framework is basically done, though I’ll definitely add more features so that it isn’t so repetitive. I also need to work on the health bars, which is exciting! :)
Worked on the background environment. Added: Pillars Doorway Brick texture Shading The most difficult thing for me is to make every element fit together. I hope I can finish the background today and probably work on the player and arrows. I also just realized that I should probably work on the projectile dissipating animation, too. Off to work!
Wowee, I finished the background! I mostly worked on the tiles and shadows, which I hope makes the environment more immersive and detailed. I also added in some of the complete assets into Godot! While I still have some pixel art to work on, such as: The player Arrows The projectiles exploding animation I think now is a good time to take a break from Aseprite and work in Godot. Since the pixel art is already way smaller than the original prototype, here’s what I need to work on: Adjusting the game code to the new screen size Slowing down projectiles and adjusting the time when they slow down Changing the question tweens so that the text doesn’t fly off the screen Changing player position Adding in the health bar sprites with functionality Implementing animation phases for the boss (play this animation when attacking, play this animation when idling, etc) VFX and SFX
I’ve put some of the pixel art into the game, and it’s looking good! The thing about the prototype is that it didn’t consider scale or size, so I had to change: The placement and zoom of the camera The size and tween animations of the quiz questions The player and enemy sprite + hitbox size However, I also finished: Health bars for the player and boss Tweens that would smoothly adjust the health (which was why the red health and the bar were drawn separately) Areas where the projectiles would be slow or fast. Initially this was controlled by timers, but I found that this was too buggy for my mom’s computer, so I just used area detection instead to make everything more consistent. For the future, I added: An attack button A text input box (line edit node) An area for the text questions (label node) For now, there is no function yet, but this will be used for an attack system. How it will work is that, when you press attack, you are given a question requiring a typed answer. Answering it correctly would send a powerful attack to the enemy, while answering it wrong would decrease your health by a little bit. Looking forward to implementing this system! (Also don’t worry, I’ll def add pixel art for the player and the arrows trust :D )
I added functionality to the attack system! Now it can: Show the question and input text box when the attack button is clicked Detect correct answers and wrong answers I also added: An attack bar that stores how many answers you got correct. Once you’ve answered a certain number of questions correctly, I plan for a button on the left to unlock You may already notice the buttons in the bottom left! When I filled the bar once, one of the buttons unlocked, a timer ran out (signified by the white bar), and I could click the button. For the future: The buttons you have to unlock are actually buttons that allow you attack! So I’ll add different attack functionalities to different buttons. The buttons look kinda bland. I’m planning to add some sprites in place of the buttons. I’m thinking of putting some transparent gray space behind the text to make it more readable. I really hope I can finish this game next devlog! Seeya there! :)
I’m so close to finishing the game! First of all, I finished the attack system. Basically, you answer a certain number of questions under the “attack” button, filling up the bar next to it. When it fills up, you unlock a new weapon. After it cools down, you can use it; but on the first time of cycling through every weapon, only once! As you complete more cycles, though, that increases to twice, then three times, etc. I also added pixel art to the buttons. I took away the “attack” label of the attack button because the students I tutor don’t know that word yet. Instead, I used an animation in hopes of incentivising them to click it. The other buttons include: The arrow Two arrows Copper sword Diamond sword Which brings me to my next development––when you click those buttons, there’s an actual attack! An arrow animation, a two-arrow animation, a copper sword animation, etc were added to the mix. I hope to add music, SFX, and maybe simple instructions for the future. Finally, I implemented a losing and winning screen using the same node in the system, detecting player and enemy health.
I finished the game! :D Added sound effects for: Clicking buttons Player attacks Phoenix attacks Phoenix caw (to signal to the player that a barrage of projectiles is coming if they are too busy with the attack button) Background music! The quiz I finally added real questions! I wanted to focus on spelling for this one, so I used emojis and asked the user how the words representing them were spelled. Text stuff Added text instruction at the beginning Changed fonts of the text nodes featuring emojis (more on that later) Web shenanigans I wanted to make sure that the game would be available on devices that did not support downloading .exe (like chromebooks, for example). But uh…that was harder than I was expecting! I used netlify to create a url after exporting the game for html5. The first issue in business was that the camera was zoomed out when the website was launched, showing the gray blank space of the Godot dimension. This took a bit to figure out, but apparently I had to adjust the stretch mode and aspect in project settings. The second issue was that the emojis were showing up as white-boxed hex codes in the web version (for some reason!! >:( ). Turns out that I needed a different dedicated font for the emojis so that they could be compatable on all devices. Oh well, haha. At least it’s more accessible! :D (PS. I’m sincerely sorry for the terrible audio quality in the video, I can’t screen record and the speakers on this computer are outrageous :’) )
Ships:
This is especially made for the Chinese students I tutor! I made a boss fight game that uses shooter and (possibly) rpg elements to help the player practice kindergarten level English spelling. Just formulating the idea and incorporating it was challenging, though. From changing the genre of my game from a platformer to a boss-fight, to painstakingly drawing and animating the pixel art of the game, to learning Godot as a beginner…it’s been a wild ride! I’m proud that I was able to create a coherent and (hopefully) fun game, while learning new things about Godot and Aseprite. Nodes, signals, layers, frames, all bunched up together. While this is my first time making a game, I hope that my time and effort makes this an enjoyable experience for you! The link to my project is over at https://english-spelling-lesson.netlify.app (unfortunately this game requires a keyboard). G’ day. :)...
|
1793300126.6886344
|
1793386526.6886344
|
|
24962
|
cmdLookup by @Pixeleyesd | Stardance
|
Pixeleyesd
|
1
|
7.55
|
87
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-27T06:02:49Z", "hours": 7.0, "multiplier": 12.19, "payout": 87, "blessing": "neutral", "text": "I made a Linux commandline tool that allows you to check the use and install commands of a tool / program. This is incredibly useful when installing certain apps, so you don’t need to google the install script of any command, which is a common problem I have. It uses APIs and local information. Major QoL improvements: You can find the install location of any program you enter You can see the installation command of any program entered You can see the help menu of any program entered Minor QoL improvements: You can easily see the description of any program entered You can see what command correlates to any program entered Syntax is: cmdlookup [command] [options] Install script: apt (Debian and debian based distros): curl -1sLf ‘ https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.deb.sh ’ | sudo -E bash sudo apt install cmdlookup dnf (Redhat distros): curl -1sLf ‘ https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.rpm.sh ’ | sudo -E bash sudo dnf install cmdlookup thank you :3", "repo": "https://github.com/Pixeleyesd/CMDLookup", "demo": "https://github.com/Pixeleyesd/CMDLookup/releases/tag/Program"}]...
|
[{"post_id": 26312, "ts": "202 [{"post_id": 26312, "ts": "2026-07-11T01:14:32Z", "hours": 0.5469, "text": "This project got denied so many times for bogus reasons, and now I’m forced to devlog to resubmit apparently. THEY TOLD ME I NEEDED SOURCE CODE IN MY REPO, WHEN I LITERALLY HAVE SOURCE CODE IN MY REPO. ITS THE FRICKIN BASH SCRIPT."}, {"post_id": 16708, "ts": "2026-06-27T04:41:10Z", "hours": 2.09, "text": "The API is now working fully, and aside from some accidental inconsistencies, the project is largely ready to ship!"}, {"post_id": 15993, "ts": "2026-06-25T23:40:33Z", "hours": 1.8433, "text": "I finished setting up my Cloudsmith repository. you can now the package by typing: ( https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.deb.sh )’ | sudo -E bash then type: sudo apt install cmdlookup. I also made the package name and the command name behave the same when inputted, and also made invalid values show up as “Invalid”"}, {"post_id": 15288, "ts": "2026-06-24T20:36:04Z", "hours": 1.9878, "text": "I have the status of whether the program is installed on the PC or not, as well as using the APIs listed before to add the description. I also locally fetch the install location if installed, and I output the help menu of the program if this is the case. Next step is to fetch the help menu or equivalent over an API."}, {"post_id": 14877, "ts": "2026-06-24T04:44:45Z", "hours": 1.2031, "text": "I started work on my bash script that automatically finds the use of a given command, as well as where to download the package that uses the command. First, I looked for and found a few APIs I wanted to use for this project. I settled on https://command-not-found.com and https://cheat.sh for my main, and for the backup, in case command-not-found.com goes down, I went with https://packages.debian.org/search?keywords= . Originally, when you put in, for example, firefox, the code was structured like as follows: INSTALL_APT=“sudo apt install $COMMAND” INSTALL_PACMAN=“sudo pacman -S $COMMAND” INSTALL_DNF=“sudo dnf install $COMMAND” INSTALL_ZYP=“sudo zypper install $COMMAND” INSTALL_BREW=“brew install $COMMAND” INSTALL_SNAP=“sudo snap install $COMMAND” this basically meant that it would always tell you: Installation Commands: Debian/Ubuntu (APT): sudo apt install firefox Arch Linux (Pacman): sudo pacman -S firefox Fedora/RedHat (DNF): sudo dnf install firefox openSUSE (Zypper): sudo zypper install firefox macOS/Linux (Brew): brew install firefox Universal (Snap): sudo snap install firefox which is clearly NOT RIGHT The solution was to use the APIs (as mentioned before) to look for the methods of installation. I’m now working on getting the local status of packages and displaying that, as well as using local information of the packages BEFORE using the APIs to fetch."}]...
|
Title: cmdLookup by @Pixeleyesd | Stardance
Devlo Title: cmdLookup by @Pixeleyesd | Stardance
Devlogs:
I started work on my bash script that automatically finds the use of a given command, as well as where to download the package that uses the command. First, I looked for and found a few APIs I wanted to use for this project. I settled on https://command-not-found.com and https://cheat.sh for my main, and for the backup, in case command-not-found.com goes down, I went with https://packages.debian.org/search?keywords= . Originally, when you put in, for example, firefox, the code was structured like as follows: INSTALL_APT=“sudo apt install $COMMAND” INSTALL_PACMAN=“sudo pacman -S $COMMAND” INSTALL_DNF=“sudo dnf install $COMMAND” INSTALL_ZYP=“sudo zypper install $COMMAND” INSTALL_BREW=“brew install $COMMAND” INSTALL_SNAP=“sudo snap install $COMMAND” this basically meant that it would always tell you: Installation Commands: Debian/Ubuntu (APT): sudo apt install firefox Arch Linux (Pacman): sudo pacman -S firefox Fedora/RedHat (DNF): sudo dnf install firefox openSUSE (Zypper): sudo zypper install firefox macOS/Linux (Brew): brew install firefox Universal (Snap): sudo snap install firefox which is clearly NOT RIGHT The solution was to use the APIs (as mentioned before) to look for the methods of installation. I’m now working on getting the local status of packages and displaying that, as well as using local information of the packages BEFORE using the APIs to fetch.
I have the status of whether the program is installed on the PC or not, as well as using the APIs listed before to add the description. I also locally fetch the install location if installed, and I output the help menu of the program if this is the case. Next step is to fetch the help menu or equivalent over an API.
I finished setting up my Cloudsmith repository. you can now the package by typing: ( https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.deb.sh )’ | sudo -E bash then type: sudo apt install cmdlookup. I also made the package name and the command name behave the same when inputted, and also made invalid values show up as “Invalid”
The API is now working fully, and aside from some accidental inconsistencies, the project is largely ready to ship!
This project got denied so many times for bogus reasons, and now I’m forced to devlog to resubmit apparently. THEY TOLD ME I NEEDED SOURCE CODE IN MY REPO, WHEN I LITERALLY HAVE SOURCE CODE IN MY REPO. ITS THE FRICKIN BASH SCRIPT.
Ships:
I made a Linux commandline tool that allows you to check the use and install commands of a tool / program. This is incredibly useful when installing certain apps, so you don’t need to google the install script of any command, which is a common problem I have. It uses APIs and local information. Major QoL improvements: You can find the install location of any program you enter You can see the installation command of any program entered You can see the help menu of any program entered Minor QoL improvements: You can easily see the description of any program entered You can see what command correlates to any program entered Syntax is: cmdlookup [command] [options] Install script: apt (Debian and debian based distros): curl -1sLf ‘ https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.deb.sh ’ | sudo -E bash sudo apt install cmdlookup dnf (Redhat distros): curl -1sLf ‘ https://dl.cloudsmith.io/public/pixeleyesd/cmdlookup/setup.rpm.sh ’ | sudo -E bash sudo dnf install cmdlookup thank you :3...
|
1792835614.7782154
|
1793699614.7782154
|