|
56487
|
Me-Ware by @ferretswillrule | Stardance
|
ferretswillrule
|
0
|
6.57
|
0
|
[]
|
[{"post_id": 68921, "ts": "202 [{"post_id": 68921, "ts": "2026-09-16T01:38:39Z", "hours": 0.8547, "text": "Dev-log 7: Made victory and fail screen, and fixed timer not working in either game."}, {"post_id": 65696, "ts": "2026-09-11T00:50:25Z", "hours": 0.8172, "text": "Dev-log 6: Made setting screen which can be accessed from title and can go back. Actual settings are… under construction. Also spent way too long making a simple bobbing animation for it. Also also added orange counter to orange clicker game. It now functions. Telegraphs still to be added."}, {"post_id": 64619, "ts": "2026-09-09T04:49:08Z", "hours": 1.7933, "text": "Dev-log 5: Orange hitboxes now work in ORANGE_FACIL (the error was so silly… I had the func which detected collision as on_ready rather than process…). Additionally, I started a new minigame where the user has to click a teleporting orange a certain amount of times. I want to add a counter, functioning timer, and telegraphs to the clicker game."}, {"post_id": 62979, "ts": "2026-09-06T15:29:15Z", "hours": 0.7572, "text": "Dev-log 4: Added Oranges to the ORANGE FACILITY stage, but they aren’t collectible yet. Added animation to make the oranges bob up and down, and animated the title to add a little movement."}, {"post_id": 61248, "ts": "2026-09-04T02:48:07Z", "hours": 0.7281, "text": "Dev-log 3: Began work on the ORANGE FACILITY, which will either be an intro scene before the mini-games start, the boss stage, or just a slightly-longer-than normal mini-game. Likely the former. Movement works and so do the hit-boxes (on this stage (the only stage thus far))."}, {"post_id": 60605, "ts": "2026-09-03T02:02:41Z", "hours": 1.0003, "text": "Dev-log 2: Made the minigame transition screen with a functioning timer and live-count. Sadly, the lives don’t rotate back and forth to the rhythm of currently-nonexistent-music, but one day…"}, {"post_id": 59933, "ts": "2026-09-02T00:00:50Z", "hours": 0.6236, "text": "Dev-log 1: Made menu screen with a working QUIT button, and a start button which redirects to a currently-blank screen. Two me-sprites on either side will be slightly animated when I learn how to do so."}]...
|
Title: Me-Ware by @ferretswillrule | Stardance
De Title: Me-Ware by @ferretswillrule | Stardance
Devlogs:
Dev-log 1: Made menu screen with a working QUIT button, and a start button which redirects to a currently-blank screen. Two me-sprites on either side will be slightly animated when I learn how to do so.
Dev-log 2: Made the minigame transition screen with a functioning timer and live-count. Sadly, the lives don’t rotate back and forth to the rhythm of currently-nonexistent-music, but one day…
Dev-log 3: Began work on the ORANGE FACILITY, which will either be an intro scene before the mini-games start, the boss stage, or just a slightly-longer-than normal mini-game. Likely the former. Movement works and so do the hit-boxes (on this stage (the only stage thus far)).
Dev-log 4: Added Oranges to the ORANGE FACILITY stage, but they aren’t collectible yet. Added animation to make the oranges bob up and down, and animated the title to add a little movement.
Dev-log 5: Orange hitboxes now work in ORANGE_FACIL (the error was so silly… I had the func which detected collision as on_ready rather than process…). Additionally, I started a new minigame where the user has to click a teleporting orange a certain amount of times. I want to add a counter, functioning timer, and telegraphs to the clicker game.
Dev-log 6: Made setting screen which can be accessed from title and can go back. Actual settings are… under construction. Also spent way too long making a simple bobbing animation for it. Also also added orange counter to orange clicker game. It now functions. Telegraphs still to be added.
Dev-log 7: Made victory and fail screen, and fixed timer not working in either game....
|
1793386097.8664415
|
1793990897.8664415
|
|
47259
|
Open Door Star Tracker by @Advay | Stardance
|
Advay
|
1
|
20.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T01:28:03Z", "hours": 20.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hello! I have spent the past month designing and developing an ultra-low-cost astrophotography star tracker called the OpenDoor Star Tracker because it is fully open-source. It features many upgrades over a traditional, cheap barn door star tracker, as it uses an ESP32 to create a Wi-Fi-controlled webpage that allows for completely hands-off control, which makes astrophotography much, much easier while actually making the cost even lower when compared to an Arduino Nano. I chose this ESP32, as it would allow me to make this web controller without any additional cost, only the development time. The tracker uses a 28BYJ stepper motor, which is very cheap, to spin a cheap 1/4” threaded rod in exactly the opposite way that the Earth rotates, effectively cancelling out the spin of the Earth. This allows me to take long exposure photos of things, particularly our own galaxy. This long exposure is required, as light pollution plagues our world, and longer exposure times and photo stacking allow for some great photos with DSLR cameras. I really learned a huge amount with this project, particularly with the difficulties of making a truly fully open-source project, and having to write and make a fully public GitHub and BOM myself. It was a great engineering challenge as well, as it truly brings down the cost of astrophotography for so many people; at a price point of $30 for this level of control in a star tracker is simply unheard of and does not exist on the open-source market. Thanks to all of the people at Stardance for encouraging teens to make all of these amazingly cool projects!", "repo": "https://github.com/Advay-K-byte/OpenDoorStarTracker", "demo": ""}]...
|
[{"post_id": 68916, "ts": "202 [{"post_id": 68916, "ts": "2026-09-16T01:16:25Z", "hours": 1.4, "text": "FINAL DEVLOG 009! I finished up the Google Sheet and the final edits of the CAD and code for publication. This involved finalizing the details of the code and just general small detail editing, mostly on the GitHub page. I also spent a long time filming and editing the demo video, which is not being counted for this. I also did lots of testing on this rig, and got around 30 minutes of exposure using the tracker on themilky way, so get some actual truthful validation that this tracker works. This time is also not being counted for this."}, {"post_id": 61834, "ts": "2026-09-04T22:57:35Z", "hours": 4.6633, "text": "DEVLOG 008 I worked on a large portion of the main program, which is nearing completion now. The main parts I worked on were the automatic slewing, automatic tracker reset, and live-updating speed adjustments. This means that when I press the track button, it starts at position zero, and it measures the number of millimeters it travels over time, and you can see it live-updating on the position number on the HTML webpage. This took me a while to code, as I initially used a blocking code, which used the delay() function to send individual number of steps to the motor, and then change the number afterwards, but it was not a very professional setup, so I made it much better by using globals like trackingState, or resetState, that allow me to simply turn them on and off, and use the in built microseconds timer, to make the motor take each step at the correct time, to get the correct speed. The slewing commands were also upgraded to use this general, fully non-blocking system throughout the entire code. I also removed the night mode feature as it wouldn’t help block much of the light either way, so I will encourage users to use a filter on their main phone. I got the set zero position button to work easily, as well as the reset button. I also managed to use the preferences library on the ESP32 to permanently store any speed changes, so that if the speed is adjusted, you do not have to recode it or change the number manually again. Overall, I truly believe I learned so much over this huge period of time, and I am much better at using this kind of ESP32 webpage setup, as well as C++, HTML, JavaScript, and CSS, much, much more. This should be the second-to-last DEVLOG, as I really have only small amounts of things left to code, and for the next DEVLOG, I will just do a lot of final publication stuff and film the YouTube demo video. These coding things include: Autonomous safety stop at max angle A time estimate feature that tells me roughly how much time I have before I have to reset it. And a few more. There are a few things I wish to add in the future, like a dew heater and temperature monitor system, but those are large projects and will take a while to get working correctly, so I will likely make them at a later time. The Arduino code is up to 500 lines, with the HTML page being around 200 lines of it."}, {"post_id": 59898, "ts": "2026-09-01T22:11:21Z", "hours": 0.8728, "text": "DEVLOG 007 I worked on the CAD model for the wedge design of the camera mount. I struggled to figure out how to use the stl file given by the original creator of the camera mount, but I still managed to my own planes in onshape and do some sketches and extrusions and craft out the 40 degree angle for my latitude. I also added in four small hooks that will embed themselves into the wood when tightened, eliminating any chances of it spinning around and breaking a camera. I will print this with many extra walls, maybe nearly 7 to 6 walls, and then add my screw in very tightly, as it will dig into the plastic quite deeply and strongly. Also, since the whole bottom post is attached to this wedge in one piece, it eliminates the need for any additional screws than before, and also gets rid of any motion in the bottom system, allowing the user to spin the top frame that has the tightening screw to any possible angle for safe adjustment of the camera angles. I also moved up the position to allow even more camera freedom, as well as balancing out the CG more, since the camera is the heaviest part of the whole tracker setup. Next time, I will make this CAD model parametric, so it can adjust to any angle the user wants. I will also try to fully complete another huge section of the coding, sending the position feedback and constantly updating that and storing it, as well as the tracking speed permanent saves using the esp32 preferences library, to store it permanently. I also hope to finish up the code, specifically the HTML site, and by that I mean completely wrap up the details and comment through every part of the code, and eliminate any unnecessary parts to prepare it to be made public. I will assign full CSS to each HTML object and text, so that on all devices it looks seamless. Finally then, to continue to wrap up this project, I will finish the GitHub page, write the assembly and code instructions, and then do some rigorous final accuracy and periodic error testing, really pushing it to the limit of what focal length and how long exposures it can get."}, {"post_id": 58376, "ts": "2026-08-30T19:44:54Z", "hours": 4.0836, "text": "DEVLOG 006 I worked on the code for the controller app. It is very complicated, and it took me some time to understand it and the way that the code functions. I specifically added the slewing and position functions, along with it updating the position right when the webpage is opened, so that if the tracker is running and you exit and come back to the page, it saves it. The slewing function also works, but I also changed the motion system to a much more raw format, which sends signals to each pin correctly, to control each step more accurately. This will allow me to use the adjust speed function on the fly, rather than trying to adjust the microseconds and then reuploading the code many times. I now have to change the slewing function to rotate exactly a certain number of steps, either for 5mm or 1mm, as well as some kind of progress bar, because it only spins at 3x the tracking rate, at roughly 15 rpm. Then, I have to add the position sending values to be able to accurately view the position, as well as a time calculator that sends a warning if it is running out of room, and also stops automatically in a safe zone. Finally, I still have to add the night mode function to change the colors and fix the general html css. I also did a test run the night that I finished this slewing code, with my Olympus OMD EM10 camera, at roughly 24mm zoom, and using the program called Camera Control, made for Olympus cameras. I was able to fully remotely operate the entire rig with my laptop using the program and my phone for the tracker. I got around 30 minutes of 20-second exposures, with very good tracking and not much error at all. I likely could have gotten up to 30-second subs, but decided to just test it out. I sadly did forget to take dark or bias frames, so the final image has many hot pixels, and bad streaking, but the total image has many stars in it. I hope to also add a wedge that lifts the camera out of the angle, allowing me to aim it better to zenith, and towards the south, where sagitarrius and the milky way core is. After implementing all of these, final features, and completing the whole program, I hope to take the rig out to a nearby park, and get up to an hour of good exposure on the sagitarrius area of the milky way, without any of the house lights, and also take flat frames as well."}, {"post_id": 56850, "ts": "2026-08-28T20:07:44Z", "hours": 1.7353, "text": "DEVLOG 005 I worked on finishing up the mounting and printing of the electronics bay. I printed four versions, because each one, had incorrect hole spacing, and other similar issues. I finally got it perfected, so the stepper wire fits through its hole perfectly, the esp32 grips onto the mount, with the correct amount of grip to hold it in place, without many screws, and the usb wire connects to the esp32 easily. I also cadded the electronics bay case, which has the open door star tracker printed on it, with silver sharpie to highlight it well."}, {"post_id": 52763, "ts": "2026-08-23T03:15:12Z", "hours": 2.7006, "text": "DEVLOG 004 I worked on finishing up the major new cad that I have to do like creating the electronics bay that houses the esp32, stepper driver, and extra stepper motor wire. I think I did quite well when I cadded it, as I am getting much better at CAD after practicing so much about it. I also mounted this box to the main assembly, added the stepper motor to the main assembly, as well as the main screw. I now have only a few things left to add to the main assembly including the camera ball head, the 5:1 gears, the door hinge wood pieces, and the electronics bay lid. After that, I switched over to finishing up the software side of this project, and worked a lot on understanding deeply how I can use the esp32 to control this system wirelessly. I now know the different possible control methods include station mode, which I have previously used in another project, which requires internet connection, and also access point mode, in which the esp makes its own wifi network, and you can join it without the internet, because it sends data over its own wifi connection, rather than through the interconnected internet. I have chosen right now, to go with AP mode, as many people will use this remotely, but I definetly will make a system, where you can change between either mode, or possibly use both modes at once, so if you usually use the tracker at home, you can connect to it from anywhere in your house, but if you take it outside somewhere, it switches to AP mode, and acts as a solo wifi station. I then worked on the frontend of the html mostly, making a neatly organized web control software with many buttons and labels. I included controls that I though were helpful, but if this becomes successful, than I am extremely open to any additional suggestions, as I might even add on a simple red led on the outside of the tracker, to use as a flashlight, to see the ground without ruining your night vision. This led could also be used as a quick indicator, which tells you if it is actively tracking, or if there is some error with the system, then it would start blinking rapidly. I can probably use the pwm pins to control this and allow easy dimming controls through the webpage. Another possible thing I can add is a dew heater with a thermistor to read the outside temperature, and camera temperature, and then automatically turn it on when it hits a certain temperature, or just manually control the temperature through a pwm loop. I also added a small amount of the frontend’s backend; by that I mean the JavaScript portion, in which I added the ability to turn on and off tracking, and it switches the CSS of the button to say either ON in white letters or OFF in red letters, with a black background. By then, the print for the electronics bay was finished, and I was elated to discover that the whole ESP32 and stepper driver setup didn’t even fit in it. I must have measured horribly wrong, as it is a whole roughly 4mm too small in one dimension. but I also tested the fit of the stepper wire through its slot, which fits well, as well as the fitment of the esp32 pins, which sadly do not fit very well as they are way too small to fit, so I will make them much bigger."}, {"post_id": 51935, "ts": "2026-08-21T21:22:21Z", "hours": 1.4797, "text": "DEVLOG 003 I worked on soldering the esp32 and the stepper motor driver together using a simple perfboard. It was my first time soldering a perfboard and it was incredibly difficult and frustrating! I eventually got better, and figured out that I did not have to use so much solder, and was able to control the flow better by removing excess solder with solder wick. I often used my multimeter to check continuity with each pin, and to check that no pins were accidentally over lapping at the solder, which many were, and I had to fix. I eventually resorted to using a small xacto knife to cut the very tiny bridges at the base of the point, where the soldering iron could not reach by itself, without messing up the surrounding solder. It was very frustrating, and I really wanted to quit around half way through when all of the solder got stuck in a big blob, as I thought it simply was not possible to make this kind of perfboard soldering with my setup, but I kept trying and it worked! The esp32 mounts to one side of the perfboard, and four of the pins in a row were aligned with the same pins on the driver, very simply, and then also very simply, the ground connection was perfboarded over similarly using a much more separated single line, and the 5v pin was not even on the perfboard, so i very simply used a small black wire to connect it to the perfboard, and then connected it with solder like usual. For the official guide of this, I have chosen not to make a pcb for this, even though it would be incredibly easy to make, and would be way simpler to solder the esp32 and driver to, as many people who make this type of ultra budget tracker, likely wont even have a soldering iron, so in the official github repo, I will show the different methods that you can do this, either with some incredibly simple standard arduino dupont wires, or this simple, slightly more compact, perfboard version. In the future, if this becomes popular, I will definitely consider making a simple, modular PCB, and getting them in bulk and selling them for very cheap and shipping for very cheap, so that more people have access to it. I then got the program to work, because it did not initially work, because the wires must have been flipped when I used the jumper wires, so since it is just some basic logic pins, I can very easily change the pins on the code, without any change to the performance. I will now work on the box that will mount this setup to the bottom of the tracker, with some storage space for all of the extra stepper motor wires, along with easy accessibility to the other I/O pins for expandability, like adding a dew heater or small red LEDs for convenience I will also work on completing the full cad model, as well as the advanced webpage controller system. Very fun session, and I am incredibly excited to design the webpage and finally get to make this project look better on the outside."}, {"post_id": 50027, "ts": "2026-08-19T01:45:31Z", "hours": 1.8133, "text": "DEVLOG 002 I worked on the full cad model, as this is a fully open source project, and I want to have all possible dimensions available in cad. I also worked in real life to mount the 3d printed eq wedge as well as the curved screw, stepper motor and things like that to the actual mount. I also roughly mounted the polar scope to it, but I hope to improve upon it in the future, by adding precise polar scope adjustment, as well as focuser locking, as the telescope I used does not lock in place. The curve that I roughly bent the screw too, is not incredibly accurate, as it rubs against the top board when moving, specifically when the boards are closer together, but for around 75 percent of the curve, it is accurate enough for the stepper motor to mesh the gears. I also did a very basic test program of running the stepper motor ar 5 rpm, which works well. I will be testing the accuracy of the general speed soon, and polishing up the rest of the features."}, {"post_id": 46086, "ts": "2026-08-13T01:35:13Z", "hours": 0.7722, "text": "DEVLOG 001 I worked on making the initial accurate and precisely movable EQ wedge base, to allow for quick and simple polar aligment when using the polar scope as well. I also made an initial google sheet, and had to work around how to properly mount the base to the tripod using a central screw, and having two separate screws for the part that mounts to the wooden base of the tracker. In the next few sessions, I hope to size the screws correctly and 3d print this part out, and mount everything to the base of the current wooden frame. I also hope to buy the steel threaded rod, and bend it to the proper curve, and then mount and begin coding a simple ESP 32 control system."}]...
|
Title: Open Door Star Tracker by @Advay | Stardanc Title: Open Door Star Tracker by @Advay | Stardance
Devlogs:
DEVLOG 001 I worked on making the initial accurate and precisely movable EQ wedge base, to allow for quick and simple polar aligment when using the polar scope as well. I also made an initial google sheet, and had to work around how to properly mount the base to the tripod using a central screw, and having two separate screws for the part that mounts to the wooden base of the tracker. In the next few sessions, I hope to size the screws correctly and 3d print this part out, and mount everything to the base of the current wooden frame. I also hope to buy the steel threaded rod, and bend it to the proper curve, and then mount and begin coding a simple ESP 32 control system.
DEVLOG 002 I worked on the full cad model, as this is a fully open source project, and I want to have all possible dimensions available in cad. I also worked in real life to mount the 3d printed eq wedge as well as the curved screw, stepper motor and things like that to the actual mount. I also roughly mounted the polar scope to it, but I hope to improve upon it in the future, by adding precise polar scope adjustment, as well as focuser locking, as the telescope I used does not lock in place. The curve that I roughly bent the screw too, is not incredibly accurate, as it rubs against the top board when moving, specifically when the boards are closer together, but for around 75 percent of the curve, it is accurate enough for the stepper motor to mesh the gears. I also did a very basic test program of running the stepper motor ar 5 rpm, which works well. I will be testing the accuracy of the general speed soon, and polishing up the rest of the features.
DEVLOG 003 I worked on soldering the esp32 and the stepper motor driver together using a simple perfboard. It was my first time soldering a perfboard and it was incredibly difficult and frustrating! I eventually got better, and figured out that I did not have to use so much solder, and was able to control the flow better by removing excess solder with solder wick. I often used my multimeter to check continuity with each pin, and to check that no pins were accidentally over lapping at the solder, which many were, and I had to fix. I eventually resorted to using a small xacto knife to cut the very tiny bridges at the base of the point, where the soldering iron could not reach by itself, without messing up the surrounding solder. It was very frustrating, and I really wanted to quit around half way through when all of the solder got stuck in a big blob, as I thought it simply was not possible to make this kind of perfboard soldering with my setup, but I kept trying and it worked! The esp32 mounts to one side of the perfboard, and four of the pins in a row were aligned with the same pins on the driver, very simply, and then also very simply, the ground connection was perfboarded over similarly using a much more separated single line, and the 5v pin was not even on the perfboard, so i very simply used a small black wire to connect it to the perfboard, and then connected it with solder like usual. For the official guide of this, I have chosen not to make a pcb for this, even though it would be incredibly easy to make, and would be way simpler to solder the esp32 and driver to, as many people who make this type of ultra budget tracker, likely wont even have a soldering iron, so in the official github repo, I will show the different methods that you can do this, either with some incredibly simple standard arduino dupont wires, or this simple, slightly more compact, perfboard version. In the future, if this becomes popular, I will definitely consider making a simple, modular PCB, and getting them in bulk and selling them for very cheap and shipping for very cheap, so that more people have access to it. I then got the program to work, because it did not initially work, because the wires must have been flipped when I used the jumper wires, so since it is just some basic logic pins, I can very easily change the pins on the code, without any change to the performance. I will now work on the box that will mount this setup to the bottom of the tracker, with some storage space for all of the extra stepper motor wires, along with easy accessibility to the other I/O pins for expandability, like adding a dew heater or small red LEDs for convenience I will also work on completing the full cad model, as well as the advanced webpage controller system. Very fun session, and I am incredibly excited to design the webpage and finally get to make this project look better on the outside.
DEVLOG 004 I worked on finishing up the major new cad that I have to do like creating the electronics bay that houses the esp32, stepper driver, and extra stepper motor wire. I think I did quite well when I cadded it, as I am getting much better at CAD after practicing so much about it. I also mounted this box to the main assembly, added the stepper motor to the main assembly, as well as the main screw. I now have only a few things left to add to the main assembly including the camera ball head, the 5:1 gears, the door hinge wood pieces, and the electronics bay lid. After that, I switched over to finishing up the software side of this project, and worked a lot on understanding deeply how I can use the esp32 to control this system wirelessly. I now know the different possible control methods include station mode, which I have previously used in another project, which requires internet connection, and also access point mode, in which the esp makes its own wifi network, and you can join it without the internet, because it sends data over its own wifi connection, rather than through the interconnected internet. I have chosen right now, to go with AP mode, as many people will use this remotely, but I definetly will make a system, where you can change between either mode, or possibly use both modes at once, so if you usually use the tracker at home, you can connect to it from anywhere in your house, but if you take it outside somewhere, it switches to AP mode, and acts as a solo wifi station. I then worked on the frontend of the html mostly, making a neatly organized web control software with many buttons and labels. I included controls that I though were helpful, but if this becomes successful, than I am extremely open to any additional suggestions, as I might even add on a simple red led on the outside of the tracker, to use as a flashlight, to see the ground without ruining your night vision. This led could also be used as a quick indicator, which tells you if it is actively tracking, or if there is some error with the system, then it would start blinking rapidly. I can probably use the pwm pins to control this and allow easy dimming controls through the webpage. Another possible thing I can add is a dew heater with a thermistor to read the outside temperature, and camera temperature, and then automatically turn it on when it hits a certain temperature, or just manually control the temperature through a pwm loop. I also added a small amount of the frontend’s backend; by that I mean the JavaScript portion, in which I added the ability to turn on and off tracking, and it switches the CSS of the button to say either ON in white letters or OFF in red letters, with a black background. By then, the print for the electronics bay was finished, and I was elated to discover that the whole ESP32 and stepper driver setup didn’t even fit in it. I must have measured horribly wrong, as it is a whole roughly 4mm too small in one dimension. but I also tested the fit of the stepper wire through its slot, which fits well, as well as the fitment of the esp32 pins, which sadly do not fit very well as they are way too small to fit, so I will make them much bigger.
DEVLOG 005 I worked on finishing up the mounting and printing of the electronics bay. I printed four versions, because each one, had incorrect hole spacing, and other similar issues. I finally got it perfected, so the stepper wire fits through its hole perfectly, the esp32 grips onto the mount, with the correct amount of grip to hold it in place, without many screws, and the usb wire connects to the esp32 easily. I also cadded the electronics bay case, which has the open door star tracker printed on it, with silver sharpie to highlight it well.
DEVLOG 006 I worked on the code for the controller app. It is very complicated, and it took me some time to understand it and the way that the code functions. I specifically added the slewing and position functions, along with it updating the position right when the webpage is opened, so that if the tracker is running and you exit and come back to the page, it saves it. The slewing function also works, but I also changed the motion system to a much more raw format, which sends signals to each pin correctly, to control each step more accurately. This will allow me to use the adjust speed function on the fly, rather than trying to adjust the microseconds and then reuploading the code many times. I now have to change the slewing function to rotate exactly a certain number of steps, either for 5mm or 1mm, as well as some kind of progress bar, because it only spins at 3x the tracking rate, at roughly 15 rpm. Then, I have to add the position sending values to be able to accurately view the position, as well as a time calculator that sends a warning if it is running out of room, and also stops automatically in a safe zone. Finally, I still have to add the night mode function to change the colors and fix the general html css. I also did a test run the night that I finished this slewing code, with my Olympus OMD EM10 camera, at roughly 24mm zoom, and using the program called Camera Control, made for Olympus cameras. I was able to fully remotely operate the entire rig with my laptop using the program and my phone for the tracker. I got around 30 minutes of 20-second exposures, with very good tracking and not much error at all. I likely could have gotten up to 30-second subs, but decided to just test it out. I sadly did forget to take dark or bias frames, so the final image has many hot pixels, and bad streaking, but the total image has many stars in it. I hope to also add a wedge that lifts the camera out of the angle, allowing me to aim it better to zenith, and towards the south, where sagitarrius and the milky way core is. After implementing all of these, final features, and completing the whole program, I hope to take the rig out to a nearby park, and get up to an hour of good exposure on the sagitarrius area of the milky way, without any of the house lights, and also take flat frames as well.
DEVLOG 007 I worked on the CAD model for the wedge design of the camera mount. I struggled to figure out how to use the stl file given by the original creator of the camera mount, but I still managed to my own planes in onshape and do some sketches and extrusions and craft out the 40 degree angle for my latitude. I also added in four small hooks that will embed themselves into the wood when tightened, eliminating any chances of it spinning around and breaking a camera. I will print this with many extra walls, maybe nearly 7 to 6 walls, and then add my screw in very tightly, as it will dig into the plastic quite deeply and strongly. Also, since the whole bottom post is attached to this wedge in one piece, it eliminates the need for any additional screws than before, and also gets rid of any motion in the bottom system, allowing the user to spin the top frame that has the tightening screw to any possible angle for safe adjustment of the camera angles. I also moved up the position to allow even more camera freedom, as well as balancing out the CG more, since the camera is the heaviest part of the whole tracker setup. Next time, I will make this CAD model parametric, so it can adjust to any angle the user wants. I will also try to fully complete another huge section of the coding, sending the position feedback and constantly updating that and storing it, as well as the tracking speed permanent saves using the esp32 preferences library, to store it permanently. I also hope to finish up the code, specifically the HTML site, and by that I mean completely wrap up the details and comment through every part of the code, and eliminate any unnecessary parts to prepare it to be made public. I will assign full CSS to each HTML object and text, so that on all devices it looks seamless. Finally then, to continue to wrap up this project, I will finish the GitHub page, write the assembly and code instructions, and then do some rigorous final accuracy and periodic error testing, really pushing it to the limit of what focal length and how long exposures it can get.
DEVLOG 008 I worked on a large portion of the main program, which is nearing completion now. The main parts I worked on were the automatic slewing, automatic tracker reset, and live-updating speed adjustments. This means that when I press the track button, it starts at position zero, and it measures the number of millimeters it travels over time, and you can see it live-updating on the position number on the HTML webpage. This took me a while to code, as I initially used a blocking code, which used the delay() function to send individual number of steps to the motor, and then change the number afterwards, but it was not a very professional setup, so I made it much better by using globals like trackingState, or resetState, that allow me to simply turn them on and off, and use the in built microseconds timer, to make the motor take each step at the correct time, to get the correct speed. The slewing commands were also upgraded to use this general, fully non-blocking system throughout the entire code. I also removed the night mode feature as it wouldn’t help block much of the light either way, so I will encourage users to use a filter on their main phone. I got the set zero position button to work easily, as well as the reset button. I also managed to use the preferences library on the ESP32 to permanently store any speed changes, so that if the speed is adjusted, you do not have to recode it or change the number manually again. Overall, I truly believe I learned so much over this huge period of time, and I am much better at using this kind of ESP32 webpage setup, as well as C++, HTML, JavaScript, and CSS, much, much more. This should be the second-to-last DEVLOG, as I really have only small amounts of things left to code, and for the next DEVLOG, I will just do a lot of final publication stuff and film the YouTube demo video. These coding things include: Autonomous safety stop at max angle A time estimate feature that tells me roughly how much time I have before I have to reset it. And a few more. There are a few things I wish to add in the future, like a dew heater and temperature monitor system, but those are large projects and will take a while to get working correctly, so I will likely make them at a later time. The Arduino code is up to 500 lines, with the HTML page being around 200 lines of it.
FINAL DEVLOG 009! I finished up the Google Sheet and the final edits of the CAD and code for publication. This involved finalizing the details of the code and just general small detail editing, mostly on the GitHub page. I also spent a long time filming and editing the demo video, which is not being counted for this. I also did lots of testing on this rig, and got around 30 minutes of exposure using the tracker on themilky way, so get some actual truthful validation that this tracker works. This time is also not being counted for this.
Ships:
Hello! I have spent the past month designing and developing an ultra-low-cost astrophotography star tracker called the OpenDoor Star Tracker because it is fully open-source. It features many upgrades over a traditional, cheap barn door star tracker, as it uses an ESP32 to create a Wi-Fi-controlled webpage that allows for completely hands-off control, which makes astrophotography much, much easier while actually making the cost even lower when compared to an Arduino Nano. I chose this ESP32, as it would allow me to make this web controller without any additional cost, only the development time. The tracker uses a 28BYJ stepper motor, which is very cheap, to spin a cheap 1/4” threaded rod in exactly the opposite way that the Earth rotates, effectively cancelling out the spin of the Earth. This allows me to take long exposure photos of things, particularly our own galaxy. This long exposure is required, as light pollution plagues our world, and longer exposure times and photo stacking allow for some great photos with DSLR cameras. I really learned a huge amount with this project, particularly with the difficulties of making a truly fully open-source project, and having to write and make a fully public GitHub and BOM myself. It was a great engineering challenge as well, as it truly brings down the cost of astrophotography for so many people; at a price point of $30 for this level of control in a star tracker is simply unheard of and does not exist on the open-source market. Thanks to all of the people at Stardance for encouraging teens to make all of these amazingly cool projects!...
|
1794016168.315443
|
1794102568.315443
|
|
14309
|
Keyboard by @q | Stardance
|
q
|
0
|
66.16
|
0
|
[]
|
[{"post_id": 68911, "ts": "202 [{"post_id": 68911, "ts": "2026-09-16T01:04:28Z", "hours": 31.3731, "text": "Ok I was busy with life and getting back motivation and doing some other stuff and I really did not want to post devlogs, but I guess I’m back, even if I’m wasting 20 hours by not committing earlier. I was initially making and iterating on my keyboard keys/base just fine (see the 1st image with a ton of my test prints for the best key shape), but the reason why I lost motivation was because Onshape, my initial 3d modeling program, proved to be too laggy to work with with my trash wifi (waiting 20s for each change to propagate gets old real fast). I then went on a whole arc trying to learn the code-based CAD tool build123d (2nd pictures below is of me attempting to make a spring; I did a lot more than just that with the ~20hr I spent learning it), which I can ultimately say was sort of a mistake. learning code-based CAD was definitely valuable, but I just ended up hating Python even more after this. I went through a few iterations from my previous models from Onshape, but even when I did manage to remake my designs with it, it just felt horrible using the API, and I just quit this project out of frustration for a while. Now though, I am taking AP Music Theory in school, so I figured why not come back to it, since I still do want to make my own keyboard. I then found out that FreeCAD has made the UX actually bearable to use (it is infamously horrible to use compared to other solutions that I cannot afford, or that’s what I thought until I realized that 1.1 got released a couple months earlier and that I only had 1.0 installed when I tested it, so I didn’t have to go through the torture of learning build123d at all, but oh well). There’s only a couple weeks left of this as of I am writing this, so I’ll have to crunch this alongside my college applications that I’m doing, but hopefully it should be fine. Anyways, now that I’m back, I have cleaned up the Rust codebase just to familiarize myself with it again, and I have started working on making the keys again in FreeCAD (the black key holes are now accurate to a real keyboard, as they each are actually slightly offset from the white key edges if you look closely enough, and even such irregular offsets were made somewhat trivial by FreeCAD’s automation tools). FreeCAD can still sometimes be a pain to use (it took me 20 minutes just to arrange the keys!), but I am ultimately glad that I am back, and hopefully I finish everything in time."}, {"post_id": 24358, "ts": "2026-07-07T21:24:22Z", "hours": 22.5422, "text": "On the microcontroller side of things, I have started implementing a WiFi Access Point on an esp32. This is going to serve as the gateway to the configuration of the device, which I am trying to make it so that it is as simple as being a captive portal (a page that immediately pops up once you connect to the network). Making the esp32 do that required a ton of moving parts: the esp32 is serving as the access point, the DHCP server, the DNS server, and the HTTP server all at once. I was completely new to anything networking, so it took me a while to research what any of those were and how to implement them (albeit mainly by importing libraries but still). I did try to implement the DNS parsing by myself, but it turns out that every bitwise parsing abstraction I could find (packed_struct or deku) depended on a foundational package (bitvec) that could not compile on the esp32, and I wasted the whole day scouring the github issues of all the projects for solutions which all ended up not working. Espressif themselves literally even have a patch of the library of their own ( https://github.com/EspressoSystems/bitvec-patch ), but no matter what I did, nothing ended up working, and I was too exhausted to go implement the server manually by myself at that point. Anyways, I still need to tweak the DNS response for the captive portal to work, but everything else is working"}, {"post_id": 12844, "ts": "2026-06-21T01:03:58Z", "hours": 9.5281, "text": "Finished modelling the initial base models. It took quite a while to align and correct everything, but the base plate finally fits a whole octave of keys correctly. There were a lot of things I had to consider, like how the keycaps are to be connected to a controller (I opted for the easy option of leaving it up to the user to manually solder) and how other octaves should be connected (I initially added dovetails for extending the keyboard, but I removed them for some reason that I honestly can’t remember; i should probably go back and add them back). Also, I forgot to add this to my previous devlog, but the reason why I opted for DS6 sizing is so that a whole octave is safely printable on my Bambu A1 mini (the base plate is ~160mm wide compared to the A1 having an 180mm build plate). Note that there are supposed to be mechanical keyboard switches separating the keys from the base, but I’ve accounted for them so that they should fit."}, {"post_id": 7192, "ts": "2026-06-12T00:23:21Z", "hours": 2.7194, "text": "I modeled mechanical switch keycaps in Onshape. I have no prior knowledge on pianos, so I had to research their size quite a bit, but I managed to piece together how I wanted it to have similar sizing as the DS6 standard. I am still unsure about how long and high the keys should be, but the dimensions right now look correct enough. I am still quite new to Onshape, so I had to remake the keys more than what I would like to admit, and so I am praying I don’t get flagged for inflating hours for only producing what is more or less a glorified rectangle"}]...
|
Title: Keyboard by @q | Stardance
Devlogs:
I mode Title: Keyboard by @q | Stardance
Devlogs:
I modeled mechanical switch keycaps in Onshape. I have no prior knowledge on pianos, so I had to research their size quite a bit, but I managed to piece together how I wanted it to have similar sizing as the DS6 standard. I am still unsure about how long and high the keys should be, but the dimensions right now look correct enough. I am still quite new to Onshape, so I had to remake the keys more than what I would like to admit, and so I am praying I don’t get flagged for inflating hours for only producing what is more or less a glorified rectangle
Finished modelling the initial base models. It took quite a while to align and correct everything, but the base plate finally fits a whole octave of keys correctly. There were a lot of things I had to consider, like how the keycaps are to be connected to a controller (I opted for the easy option of leaving it up to the user to manually solder) and how other octaves should be connected (I initially added dovetails for extending the keyboard, but I removed them for some reason that I honestly can’t remember; i should probably go back and add them back). Also, I forgot to add this to my previous devlog, but the reason why I opted for DS6 sizing is so that a whole octave is safely printable on my Bambu A1 mini (the base plate is ~160mm wide compared to the A1 having an 180mm build plate). Note that there are supposed to be mechanical keyboard switches separating the keys from the base, but I’ve accounted for them so that they should fit.
On the microcontroller side of things, I have started implementing a WiFi Access Point on an esp32. This is going to serve as the gateway to the configuration of the device, which I am trying to make it so that it is as simple as being a captive portal (a page that immediately pops up once you connect to the network). Making the esp32 do that required a ton of moving parts: the esp32 is serving as the access point, the DHCP server, the DNS server, and the HTTP server all at once. I was completely new to anything networking, so it took me a while to research what any of those were and how to implement them (albeit mainly by importing libraries but still). I did try to implement the DNS parsing by myself, but it turns out that every bitwise parsing abstraction I could find (packed_struct or deku) depended on a foundational package (bitvec) that could not compile on the esp32, and I wasted the whole day scouring the github issues of all the projects for solutions which all ended up not working. Espressif themselves literally even have a patch of the library of their own ( https://github.com/EspressoSystems/bitvec-patch ), but no matter what I did, nothing ended up working, and I was too exhausted to go implement the server manually by myself at that point. Anyways, I still need to tweak the DNS response for the captive portal to work, but everything else is working
Ok I was busy with life and getting back motivation and doing some other stuff and I really did not want to post devlogs, but I guess I’m back, even if I’m wasting 20 hours by not committing earlier. I was initially making and iterating on my keyboard keys/base just fine (see the 1st image with a ton of my test prints for the best key shape), but the reason why I lost motivation was because Onshape, my initial 3d modeling program, proved to be too laggy to work with with my trash wifi (waiting 20s for each change to propagate gets old real fast). I then went on a whole arc trying to learn the code-based CAD tool build123d (2nd pictures below is of me attempting to make a spring; I did a lot more than just that with the ~20hr I spent learning it), which I can ultimately say was sort of a mistake. learning code-based CAD was definitely valuable, but I just ended up hating Python even more after this. I went through a few iterations from my previous models from Onshape, but even when I did manage to remake my designs with it, it just felt horrible using the API, and I just quit this project out of frustration for a while. Now though, I am taking AP Music Theory in school, so I figured why not come back to it, since I still do want to make my own keyboard. I then found out that FreeCAD has made the UX actually bearable to use (it is infamously horrible to use compared to other solutions that I cannot afford, or that’s what I thought until I realized that 1.1 got released a couple months earlier and that I only had 1.0 installed when I tested it, so I didn’t have to go through the torture of learning build123d at all, but oh well). There’s only a couple weeks left of this as of I am writing this, so I’ll have to crunch this alongside my college applications that I’m doing, but hopefully it should be fine. Anyways, now that I’m back, I have cleaned up the Rust codebase just to familiarize myself with it again, and I have started working on making the keys again in FreeCAD (the black key holes are now accurate to a real keyboard, as they each are actually slightly offset from the white key edges if you look closely enough, and even such irregular offsets were made somewhat trivial by FreeCAD’s automation tools). FreeCAD can still sometimes be a pain to use (it took me 20 minutes just to arrange the keys!), but I am ultimately glad that I am back, and hopefully I finish everything in time....
|
1794008860.7257671
|
1794613660.7257671
|
|
56057
|
Arcade Pad! by @goldln | Stardance
|
goldln
|
0
|
1.09
|
0
|
[]
|
[{"post_id": 68909, "ts": "202 [{"post_id": 68909, "ts": "2026-09-16T00:58:35Z", "hours": 0.3731, "text": "So I realized that I really only needed 12 keys for the matrix (4 for the joystick, 2 for l/r bumpers and 6 for the buttons) so I changed it into a 2x3 matrix so I wouldn’t be wasting a pin. I also completed the left bumper and all 4 keys for the joystick, so all that’s left for the schematic is adding the LEDs/OLED. I might go back and change up how the joystick/bumpers are wired to the matrix board so I have less wires to solder, but it’s fine for now."}, {"post_id": 68381, "ts": "2026-09-15T01:07:58Z", "hours": 0.7214, "text": "I (Finally) started working on the schematic for my arcade pad! So far, I finished the buttons and the first part of my connector board (I don’t really know what to call it). I was researching alot on how to wire up the keys, and I ended up finding something called a japanese matrix which is why I have the diodes facing in 2 different directions in the same column. Basically, it scans the columns like a normal matrix, but it will also scan the rows to essentially doubling the amount of keys I can have with the same number of pins. This is my first kicad project, so don’t judge me too much, and I just added the text there to be like code comments for me or other people to look at. P.S The time that it shows here is different fron the lapse time, which is weird"}]...
|
Title: Arcade Pad! by @goldln | Stardance
Devlogs Title: Arcade Pad! by @goldln | Stardance
Devlogs:
I (Finally) started working on the schematic for my arcade pad! So far, I finished the buttons and the first part of my connector board (I don’t really know what to call it). I was researching alot on how to wire up the keys, and I ended up finding something called a japanese matrix which is why I have the diodes facing in 2 different directions in the same column. Basically, it scans the columns like a normal matrix, but it will also scan the rows to essentially doubling the amount of keys I can have with the same number of pins. This is my first kicad project, so don’t judge me too much, and I just added the text there to be like code comments for me or other people to look at. P.S The time that it shows here is different fron the lapse time, which is weird
So I realized that I really only needed 12 keys for the matrix (4 for the joystick, 2 for l/r bumpers and 6 for the buttons) so I changed it into a 2x3 matrix so I wouldn’t be wasting a pin. I also completed the left bumper and all 4 keys for the joystick, so all that’s left for the schematic is adding the LEDs/OLED. I might go back and change up how the joystick/bumpers are wired to the matrix board so I have less wires to solder, but it’s fine for now....
|
1793364771.4815874
|
1793969571.4815874
|
|
61937
|
No Dropped Items by @lukaj | Stardance
|
lukaj
|
0
|
1.19
|
0
|
[]
|
[{"post_id": 68900, "ts": "202 [{"post_id": 68900, "ts": "2026-09-16T00:21:30Z", "hours": 1.1942, "text": "I finished the mod. It now should fully work on 1.20.4 fabric. Demo link not yet available, as I’m still waiting on Modrinth approval"}]...
|
Title: No Dropped Items by @lukaj | Stardance
Dev Title: No Dropped Items by @lukaj | Stardance
Devlogs:
I finished the mod. It now should fully work on 1.20.4 fabric. Demo link not yet available, as I’m still waiting on Modrinth approval...
|
1793652611.0756748
|
1794257411.0756748
|
|
46544
|
Coders' Idle by @davidv3767 | Stardance
|
davidv3767
|
0
|
2.46
|
0
|
[]
|
[{"post_id": 68899, "ts": "202 [{"post_id": 68899, "ts": "2026-09-16T00:19:37Z", "hours": 1.5542, "text": "Devlog #2: Improvements What I Did: Well, it looks better and I also added the first prestige layer (programs) plus one bonus along with a help.text!"}, {"post_id": 66884, "ts": "2026-09-12T20:38:31Z", "hours": 0.9042, "text": "Devlog #1: Every Game Starts Up Small What I Did: In today’s session, I coded the backbone of the Coders’ Idle game I am creating. With this backbone, I can expand outwards into making this game more aesthetically pleasing AND with more mechanics!"}]...
|
Title: Coders' Idle by @davidv3767 | Stardance Title: Coders' Idle by @davidv3767 | Stardance
Devlogs:
Devlog #1: Every Game Starts Up Small What I Did: In today’s session, I coded the backbone of the Coders’ Idle game I am creating. With this backbone, I can expand outwards into making this game more aesthetically pleasing AND with more mechanics!
Devlog #2: Improvements What I Did: Well, it looks better and I also added the first prestige layer (programs) plus one bonus along with a help.text!...
|
1793389762.5833228
|
1793994562.5833228
|
|
29649
|
Document SaaS by @starkiller261 | Stardance
|
starkiller261
|
1
|
11.0
|
27
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T01:46:01Z", "hours": 11.0, "multiplier": 2.32, "payout": 27, "blessing": "neutral", "text": "This is a Monolithic Spring MVC application which serves as a SaaS that allows users to store, edit, and read documents (Similar to Google Docs). It uses Postgresql to store user and document data and session id authentication", "repo": "https://github.com/petevass/Document_SaaS", "demo": "https://jarvis-ubuntu.tail5b0cb9.ts.net/"}]...
|
[{"post_id": 68888, "ts": "202 [{"post_id": 68888, "ts": "2026-09-15T23:25:30Z", "hours": 5.2253, "text": "finished editing process"}, {"post_id": 63932, "ts": "2026-09-08T00:14:45Z", "hours": 6.2228, "text": "Working on thymeleaf UI"}]...
|
Title: Document SaaS by @starkiller261 | Stardance Title: Document SaaS by @starkiller261 | Stardance
Devlogs:
Working on thymeleaf UI
finished editing process
Ships:
This is a Monolithic Spring MVC application which serves as a SaaS that allows users to store, edit, and read documents (Similar to Google Docs). It uses Postgresql to store user and document data and session id authentication...
|
1794019696.280992
|
1794106096.280992
|
|
61550
|
PancakeNewTab by @pancakse | Stardance
|
pancakse
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T23:51:21Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a new tab page with the abilities of checking the the news, different topic of newg eg local (your country, tech and science) it can also check your local weather for your approximate area using location or your ip and you can add custom shortcuts aswell!", "repo": "https://github.com/ItzPancakse/PancakeNewTab", "demo": "https://pancake-new-tab.vercel.app/"}]...
|
[{"post_id": 68887, "ts": "202 [{"post_id": 68887, "ts": "2026-09-15T23:22:02Z", "hours": 0.9125, "text": "theres settings menu now you can change temperature unit, wind speed unit, manage shortcuts and change search engine!"}, {"post_id": 68866, "ts": "2026-09-15T22:23:19Z", "hours": 0.4678, "text": "Im making a settings menu so you can change stuff like temprature units and stuff"}, {"post_id": 68730, "ts": "2026-09-15T17:11:31Z", "hours": 0.3178, "text": "We added local news and categories for news and you can click on the news and read the full article!"}, {"post_id": 68391, "ts": "2026-09-15T01:36:00Z", "hours": 0.4111, "text": "I added za weather it works but since i dont want to doxx my self here it is!"}, {"post_id": 68358, "ts": "2026-09-15T00:30:52Z", "hours": 1.2567, "text": "currently crashing out over javascript (who invented ts) anyways we got a working live news system currently only shows british news but i plan for it to use your ip to give you more local news from your country also working on a shortcuts feature"}, {"post_id": 68292, "ts": "2026-09-14T21:21:43Z", "hours": 0.5067, "text": "We got themes yay :D"}, {"post_id": 68280, "ts": "2026-09-14T20:49:22Z", "hours": 0.5308, "text": "We can now search with duckduckgo"}, {"post_id": 68244, "ts": "2026-09-14T19:25:50Z", "hours": 0.2736, "text": "I got the html to work smh"}]...
|
Title: PancakeNewTab by @pancakse | Stardance
Dev Title: PancakeNewTab by @pancakse | Stardance
Devlogs:
I got the html to work smh
We can now search with duckduckgo
We got themes yay :D
currently crashing out over javascript (who invented ts) anyways we got a working live news system currently only shows british news but i plan for it to use your ip to give you more local news from your country also working on a shortcuts feature
I added za weather it works but since i dont want to doxx my self here it is!
We added local news and categories for news and you can click on the news and read the full article!
Im making a settings menu so you can change stuff like temprature units and stuff
theres settings menu now you can change temperature unit, wind speed unit, manage shortcuts and change search engine!
Ships:
I made a new tab page with the abilities of checking the the news, different topic of newg eg local (your country, tech and science) it can also check your local weather for your approximate area using location or your ip and you can add custom shortcuts aswell!...
|
1794048653.6297162
|
1794135053.6297162
|
|
43529
|
Airplane 3D model :D by @6matylda | Stardance
|
6matylda
|
1
|
25.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T22:23:30Z", "hours": 25.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Made an airplane 3D model in Onshape, which can be 3D printed and even turned into an RC! This airplane features two engines, NACA 4412 wings, a wingspan of 910mm (35.8in) and a fuselage length of about 730mm (28.7in). — This was my first big project in Onshape, so I came across a lot of challenges while modelling, such as not being able to hollow out the wings and tail because they were too thin, trouble with making the dihedral (upwards) angle of the wings, and problems with lofting the nosecone (I learned to use composite curves as the lofting paths). — I overcame these problems by experimenting, though; for the hollowing wings out problem, I realized making an outer layer was a lot easier than hollowing the inside, and for the nosecone problem, after investigating, I came across composite curves, which was something really helpful to learn. — To test the project, you can download the file on the GitHub. The features list is organized into folders for each part. — The engines are provisional, so I recommend to add your own if you’re going to print this model to ensure it’s durable and easy to print!", "repo": "https://github.com/6matylda/Stardance-Airplane-3D-model", "demo": "https://cad.onshape.com/documents/d811ccb7f19883caa2712b5f/w/4bb6a2feac3b5eb07ce2f1bf/e/5de39268565f4e4cfc2bf3e9?renderMode=0&uiState=6a73d768b21ca79e95eaa222"}]...
|
[{"post_id": 68885, "ts": "202 [{"post_id": 68885, "ts": "2026-09-15T23:11:40Z", "hours": 3.0044, "text": "Devlog #9: I am back!! I remade the wings, which are hollow. — I figured the other wings had some problems (the upwards (dihedral) angle was too high, and this same angle wasn’t equally distributed throughout the wings, and the wings were hard to hollow because of the way they intersected the fuselage (the face at the start wasn’t flat, which complicated it)). — Made the new wings by using the same sketch on a different plane with an inclination of 6 degrees, then re-lofting the wings and finally using the “thicken” tool with a thickness of 0.6mm. — Next to do: add internal structures for support"}, {"post_id": 59315, "ts": "2026-09-01T01:22:01Z", "hours": 6.1083, "text": "Devlog #8: fought for roughly 5 hours to hollow out the tail. Also hollowed the engines. — I tried so many ways to hollow the tail, like using the “shell” and “hollow” tool, extruding inwards, etc. so, what I did, was to use the “thicken” tool to make a shell that was 0.6mm thick. While I wanted the original model to be hollowed inwards, I think rather making the exterior thicker still worked quite well. — As for the engines, unlike the tail, it was pretty easy as it just required to use the shell hollow tool. Also, the engines are 0.6mm thick now and the pylon is 0.4mm! (A pylon is the mount of the engine that connects to the wing C:) — now, I need to remake the wings because of their geometry to hollow them out :)"}, {"post_id": 53538, "ts": "2026-08-24T04:01:21Z", "hours": 0.6875, "text": "Devlog #7: hollowed out the belly and the nosecone — at first, I was super confused on how to hollow out round parts like those of lofts, so after a quick google search I discovered a tool, Shell. I’m so happy I found out about it because otherwise I would be fighting to extrude each part for hours lol. Like the fuselage, the belly and nosecone have 0.6mm of thickness (~0.0236 for the Americans!) — As for hollowing the nosecone, I struggled a bit because the inside and outside were unidimensional and floating, (I basically left a gap of 0.6mm between them) but I figured it was because I had made the windshield before hollowing the nosecone out, so I pushed the intersect booleans of the windshield and nosecone to the very end of the features list, which fixed it, as you can see in the ss! — next to do: figure a way to hollow out the wings and tail surfaces (I tried, but I had a couple problems due to the geometry)"}, {"post_id": 51730, "ts": "2026-08-21T15:48:56Z", "hours": 2.3822, "text": "Devlog #6: Made the windshield and hollowed out the middle of the fuselage and the belly. — For the windshield, made a sketch on the top plane and extruded it, then created an intersect boolean to separate overlapping parts of the nosecone. — For hollowing the fuselage, I separated the nosecone so it would be easier to visualize changes. then hollowed part of the fuselage and left a thickness of 0.6mm. I did this by going in the sketches and creating a smaller copy of the sketch and extruding that out as a “remove”. I also did this for part of the belly, but I still have to hollow out the curved parts like lofts. — To do next: hollow out the nosecone, tail and belly :) — also: if I happen to modify the model so its suitable for an RC, the engines are provisional so I may change them in the future so they fit a standard EDF."}, {"post_id": 49926, "ts": "2026-08-18T21:53:27Z", "hours": 1.4033, "text": "devlog #5: Finished the engines!! tbh I thought they would be a lot harder to make due to the complex geometry, but it was actually quite fun! I made the engine by first sketching the nacelle and revolving that, I then made the pylon/strut that holds the engine, and finally the blades, which I made by lofting a rectangle at different angles and distances."}, {"post_id": 48610, "ts": "2026-08-17T02:25:27Z", "hours": 1.0989, "text": "Devlog #4: I lied in my last devlog, I decided to make the wings before the frontal windows because I already learned how to do that by making the tail! I made the top view shape first and then added the airfoil by lofting it by parts. The airfoil is a NACA4412. I did spend like 40 minutes trying to figure out how to make the wings dihedral and give them shape 😭 but so far I’m so proud of how it’s turning out. I feel like the engines are gonna be pretty hard to model but I’m up for the challenge! I’m excited to finish it and see how it turns out. :)"}, {"post_id": 44159, "ts": "2026-08-09T18:50:53Z", "hours": 2.36, "text": "Devlog #3: made the tail of the airplane. I made each stabilizer by sketching out and extruding the base, then shaped the width with a remove extrude and added some fillets to make it smooth. Next I’ll be making the frontal/cockpit windows :)"}, {"post_id": 41651, "ts": "2026-08-06T00:35:58Z", "hours": 1.3961, "text": "Making an airplane in Onshape devlog #2: made the fuselage a bit longer. I came across a couple problems (the parts weren’t generating) cuz I had to delete some reference points and sketches in order to extrude the fuselage, but I fixed it by re-lofting the empennage and modifying the base sketches of it. I also expanded the belly. Next up I am gonna make the rudder and elevators :)"}, {"post_id": 40917, "ts": "2026-08-04T19:05:21Z", "hours": 6.9631, "text": "Devlog #1: making an airliner. I spent the first 3-4 hours making the sketches. I encountered a lot of problems with making the lofts (the lines weren’t connecting) so it didn’t extrude correctly. I fixed that by making composite curves. I then encountered the problem that the radome wasn’t smooth so I made ellipses to form the nose shape and extruded it. I continued by making the empennage and did the same as with the nose. I finished the fuselage and the belly today. Any advice is rlly appreciated :)"}]...
|
Title: Airplane 3D model :D by @6matylda | Stardan Title: Airplane 3D model :D by @6matylda | Stardance
Devlogs:
Devlog #1: making an airliner. I spent the first 3-4 hours making the sketches. I encountered a lot of problems with making the lofts (the lines weren’t connecting) so it didn’t extrude correctly. I fixed that by making composite curves. I then encountered the problem that the radome wasn’t smooth so I made ellipses to form the nose shape and extruded it. I continued by making the empennage and did the same as with the nose. I finished the fuselage and the belly today. Any advice is rlly appreciated :)
Making an airplane in Onshape devlog #2: made the fuselage a bit longer. I came across a couple problems (the parts weren’t generating) cuz I had to delete some reference points and sketches in order to extrude the fuselage, but I fixed it by re-lofting the empennage and modifying the base sketches of it. I also expanded the belly. Next up I am gonna make the rudder and elevators :)
Devlog #3: made the tail of the airplane. I made each stabilizer by sketching out and extruding the base, then shaped the width with a remove extrude and added some fillets to make it smooth. Next I’ll be making the frontal/cockpit windows :)
Devlog #4: I lied in my last devlog, I decided to make the wings before the frontal windows because I already learned how to do that by making the tail! I made the top view shape first and then added the airfoil by lofting it by parts. The airfoil is a NACA4412. I did spend like 40 minutes trying to figure out how to make the wings dihedral and give them shape 😭 but so far I’m so proud of how it’s turning out. I feel like the engines are gonna be pretty hard to model but I’m up for the challenge! I’m excited to finish it and see how it turns out. :)
devlog #5: Finished the engines!! tbh I thought they would be a lot harder to make due to the complex geometry, but it was actually quite fun! I made the engine by first sketching the nacelle and revolving that, I then made the pylon/strut that holds the engine, and finally the blades, which I made by lofting a rectangle at different angles and distances.
Devlog #6: Made the windshield and hollowed out the middle of the fuselage and the belly. — For the windshield, made a sketch on the top plane and extruded it, then created an intersect boolean to separate overlapping parts of the nosecone. — For hollowing the fuselage, I separated the nosecone so it would be easier to visualize changes. then hollowed part of the fuselage and left a thickness of 0.6mm. I did this by going in the sketches and creating a smaller copy of the sketch and extruding that out as a “remove”. I also did this for part of the belly, but I still have to hollow out the curved parts like lofts. — To do next: hollow out the nosecone, tail and belly :) — also: if I happen to modify the model so its suitable for an RC, the engines are provisional so I may change them in the future so they fit a standard EDF.
Devlog #7: hollowed out the belly and the nosecone — at first, I was super confused on how to hollow out round parts like those of lofts, so after a quick google search I discovered a tool, Shell. I’m so happy I found out about it because otherwise I would be fighting to extrude each part for hours lol. Like the fuselage, the belly and nosecone have 0.6mm of thickness (~0.0236 for the Americans!) — As for hollowing the nosecone, I struggled a bit because the inside and outside were unidimensional and floating, (I basically left a gap of 0.6mm between them) but I figured it was because I had made the windshield before hollowing the nosecone out, so I pushed the intersect booleans of the windshield and nosecone to the very end of the features list, which fixed it, as you can see in the ss! — next to do: figure a way to hollow out the wings and tail surfaces (I tried, but I had a couple problems due to the geometry)
Devlog #8: fought for roughly 5 hours to hollow out the tail. Also hollowed the engines. — I tried so many ways to hollow the tail, like using the “shell” and “hollow” tool, extruding inwards, etc. so, what I did, was to use the “thicken” tool to make a shell that was 0.6mm thick. While I wanted the original model to be hollowed inwards, I think rather making the exterior thicker still worked quite well. — As for the engines, unlike the tail, it was pretty easy as it just required to use the shell hollow tool. Also, the engines are 0.6mm thick now and the pylon is 0.4mm! (A pylon is the mount of the engine that connects to the wing C:) — now, I need to remake the wings because of their geometry to hollow them out :)
Devlog #9: I am back!! I remade the wings, which are hollow. — I figured the other wings had some problems (the upwards (dihedral) angle was too high, and this same angle wasn’t equally distributed throughout the wings, and the wings were hard to hollow because of the way they intersected the fuselage (the face at the start wasn’t flat, which complicated it)). — Made the new wings by using the same sketch on a different plane with an inclination of 6 degrees, then re-lofting the wings and finally using the “thicken” tool with a thickness of 0.6mm. — Next to do: add internal structures for support
Ships:
Made an airplane 3D model in Onshape, which can be 3D printed and even turned into an RC! This airplane features two engines, NACA 4412 wings, a wingspan of 910mm (35.8in) and a fuselage length of about 730mm (28.7in). — This was my first big project in Onshape, so I came across a lot of challenges while modelling, such as not being able to hollow out the wings and tail because they were too thin, trouble with making the dihedral (upwards) angle of the wings, and problems with lofting the nosecone (I learned to use composite curves as the lofting paths). — I overcame these problems by experimenting, though; for the hollowing wings out problem, I realized making an outer layer was a lot easier than hollowing the inside, and for the nosecone problem, after investigating, I came across composite curves, which was something really helpful to learn. — To test the project, you can download the file on the GitHub. The features list is organized into folders for each part. — The engines are provisional, so I recommend to add your own if you’re going to print this model to ensure it’s durable and easy to print!...
|
1794016538.982416
|
1794102938.982416
|
|
62299
|
My Chemical Romance - Welcome to The Black Parade My Chemical Romance - Welcome to The Black Parade Intro in Strudel REPL by @texudev | Stardance...
|
texudev
|
1
|
10.0
|
71
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T23:20:46Z", "hours": 10.0, "multiplier": 7.41, "payout": 71, "blessing": "neutral", "text": "The song is finally here! I’ve written the intro of “Welcome to The Black Parade” by My Chemical Romance in Strudel, a coding language that translates your code to music! You can check it out with the Try Project button below", "repo": "https://github.com/tiagotodescatto/Welcome-to-The-Black-Parade-Intro", "demo": "https://tinyurl.com/4f7rw4sx"}]...
|
[{"post_id": 68883, "ts": "202 [{"post_id": 68883, "ts": "2026-09-15T23:09:38Z", "hours": 1.3503, "text": "Finished the song! I’ll deploy it"}, {"post_id": 68377, "ts": "2026-09-15T01:03:33Z", "hours": 8.2367, "text": "Made the basic rhythm and melody, I will polish it!"}]...
|
Title: My Chemical Romance - Welcome to The Black Title: My Chemical Romance - Welcome to The Black Parade Intro in Strudel REPL by @texudev | Stardance
Devlogs:
Made the basic rhythm and melody, I will polish it!
Finished the song! I’ll deploy it
Ships:
The song is finally here! I’ve written the intro of “Welcome to The Black Parade” by My Chemical Romance in Strudel, a coding language that translates your code to music! You can check it out with the Try Project button below...
|
1794048902.5959342
|
1794135302.5959342
|
|
37082
|
Stickytab by @NotSuspiciousProgrammer | Stardance
|
NotSuspiciousProgrammer
|
4
|
31.0
|
301
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T23:10:23Z", "hours": 2.0, "multiplier": 8.71, "payout": 23, "blessing": "neutral", "text": "What’s New? I fixed some major bugs in Stickytab, and made updates to adapt to other screen ratios! Now, Stickytab should work well on any screen ratio (you will still receive a warning just in case). What Is Stickytab? Stickytab was originally part of a mission for a custom new tab. Because it is part of a mission, please rate originality based on the components of Stickytab (like my stickies and calendar), and not based on the concept of Stickytab (a custom new tab, which was from the mission). Stickytab is designed to boost productivity, and it features stickies, a calculator, a calendar, and a method for quickly accessing webpages. For more information about the method for webpages, see my README. What Was Challenging? The calendar bug was the hardest to fix. There’s a devlog about it below, describing how I fixed the bug and caused two more bugs in the process. Can anyone else relate to this? Ratings I hope you enjoy exploring Stickytab! Please give descriptive ratings to help me improve :)", "repo": "https://github.com/kpoovakan/stickytab", "demo": "https://kpoovakan.github.io/stickytab/"}, {"ship_num": 2, "ts": "2026-09-01T02:50:52Z", "hours": 11.0, "multiplier": 12.89, "payout": 175, "blessing": "neutral", "text": "This is a customizable New Tab page designed for better productivity!! A sticky manager displays sticky notes, where you can organize reminders for yourself. Add events to a calendar, which displays the current month and the next upcoming month. Save frequently visited sites, quickly search through them using the webpage search bar, and visit the site with keyboard shortcuts! Quickly view the time and date, and access a simple calculator or Desmos calculator. Set preferences in the settings area. For more details about Stickytab’s many features, take a look at my README. In this ship, I had to utilize complex JSON for the calendar component of Stickytab. This challenged me a lot, and I was stuck with my bugs for many hours! Eventually I managed to find all the different bugs, and the calendar is a working component of Stickytab. Please explore my Stickytab project - I hope you find it a useful tool for productivity!! Check out the README file (that’s why it’s called “readme”) before using Stickytab.", "repo": "https://github.com/kpoovakan/stickytab", "demo": "https://kpoovakan.github.io/stickytab/"}, {"ship_num": 3, "ts": "2026-08-07T02:59:18Z", "hours": 9.0, "multiplier": 9.87, "payout": 103, "blessing": "neutral", "text": "Stickytab is a better New Tab page designed for productivity and organization. You can save sticky notes and fill them with reminders, quickly access a calculator, and save frequently visited sites. View the date and time (both 12-hour and 24-hour time formats are supported) and quickly access the README for help anytime. When you enter a URL for a webpage, there is a popup that searches through your saved sites to find a saved site that matches the URL you are entering. You can filter through the results using the up and down arrow keys, and use the enter key to open the site. This can save a lot of time when you are opening websites! You can create reminders for yourself by posting sticky notes on Stickytab. (That’s why it’s called Stickytab!!) Up to twelve stickies can be viewed on the page; additional stickies can be viewed by pressing the corresponding button. Preferences for the default search engine, time format, and Desmos calculator shortcut can be edited and saved locally. One of the most challenging parts of Stickytab was using the browser’s local storage; I have never done that before! The other challenging part was creating the recursive JavaScript function that searches through your saved sites. I somehow managed to fix all my bugs.. and ended up with a complete and fully working New Tab page. Hope you enjoy Stickytab! Feel free to test it out, or look through the README for more information :)", "repo": "https://github.com/kpoovakan/stickytab", "demo": "https://kpoovakan.github.io/stickytab/"}, {"ship_num": 4, "ts": "2026-07-31T16:36:38Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a fully working NewTab page! I call it Stickytab because of my favorite part: you can stick sticky notes on the new tab page! The sticky notes are saved locally to your browser, which means that you can save your sticky notes and see them later, even after you close the page. You can also save sites (kind of like browser bookmarks, but with easier access) to the new tab page, also saved locally to your browser. Figuring out how to access and use local browser storage was the hardest part for me, because it is something I have not done before in JavaScript. It definitely took a lot of W3Schools articles!", "repo": "https://github.com/kpoovakan/stickytab", "demo": "https://kpoovakan.github.io/stickytab/"}]...
|
[{"post_id": 68879, "ts": "202 [{"post_id": 68879, "ts": "2026-09-15T22:52:12Z", "hours": 1.0242, "text": "I worked on Stickytab’s responsiveness! Stickytab now works on all screen ratios. Even so, there’s still a warning for other screen ratios, just in case there’s something I missed. I don’t think I missed anything, but it’s best to be prepared :)"}, {"post_id": 68335, "ts": "2026-09-14T23:22:32Z", "hours": 1.2042, "text": "I found a bug in the calendar component, fixed it in ten minutes. Guess what? That fix caused two more bugs. Those took over an hour of searching through my code to fix, and it was caused by ONE TINY VARIABLE DECLARATION MISTAKE. Like, seriously?? I’m glad my bug is fixed now, and the calendar works properly, but… an hour? For a single variable declaration thingy?? Can anyone else relate to this?"}, {"post_id": 59337, "ts": "2026-09-01T02:18:13Z", "hours": 5.9306, "text": "FINALLY!! The calendar component of Stickytab has been completed! Now, you can add events to the calendar, to the current month or next month. Events can also be removed if they’re cancelled. The events are saved locally to your browser, and their aesthetics can be customized through Stickytab’s settings."}, {"post_id": 54035, "ts": "2026-08-24T19:49:03Z", "hours": 1.5517, "text": "Sneaky bugs… always hiding in the darkest corners of my code. In continuation for working on the calendar component of Stickytab, I fixed all the bugs I could find. I also improved the aesthetics of the calendar, and started some code for the special calendar customization components!"}, {"post_id": 51973, "ts": "2026-08-21T23:33:45Z", "hours": 2.9792, "text": "The core code for a calendar was added to Stickytab! Since I usually use saved sites through the webpage search bar, and not through directly clicking the link in the list on the right, I decided to put a more productive tool in the right-hand side of Stickytab. Sites can still be saved through the “Saved Sites” button - and they are very usable through the helpful webpage search bar! Next I will work on adding cool functions to Stickytab’s calendar!!"}, {"post_id": 49997, "ts": "2026-08-19T00:56:48Z", "hours": 0.8503, "text": "Responsiveness added - sort of! After the second ship, a lot of people talked about the peeving-ness of restricting Stickytab to a 16:9 landscape screen ratio. I edited all three main files - the HTML, CSS, and JS - to support other screen ratios. Stickytab still works best with a 16:9 landscape screen ratio, but now it is physically possible to use it with a different ratio."}, {"post_id": 42400, "ts": "2026-08-07T02:50:57Z", "hours": 1.8253, "text": "Updated the README and fixed hidden bugs throughout Stickytab. I think I’m ready to ship!!"}, {"post_id": 42147, "ts": "2026-08-06T19:10:50Z", "hours": 2.2278, "text": "Squashed all my bugs and added KEYBOARD SHORTCUTS to the search autocomplete! Now it’s easy to navigate through and open saved sites; the up and down arrow keys move through the list, and the enter key opens the site. If you start by typing “s”, then it finds all your saved sites that begin with “s” (not including the http). If you continue by typing “t” to make “st”, then it finds all your saved sites that begin with “st”. To-do: Update and improve the README Preference and site saving with a .json file? Add dotfiles to the repo Add font tags to calculator Add thing where using the arrow to go to the very bottom of the autocomplete list and beyond the bottom will exit the autocomplete to go to root URLs instead of saved ones"}, {"post_id": 41030, "ts": "2026-08-04T23:12:46Z", "hours": 1.1317, "text": "FINALLY!! I finished the recursive JavaScript loop to filter through saved sites and find ones that match the search query. Next I’ll be working on making those results usable, through clickable links and maybe through a keyboard shortcut with the enter key. Bugs to fix: One I found with saving sites without http or https Making this sites window close when a user exits the webpage search and left it blank To-do: Fix bugs (obviously) Add delete button to calculator - I just realized I forgot this Make links clickable (and add keyboard shortcuts?) Make popup div’s height automatically adjust to size of the list? Add a feature for exporting/importing all preferences, sites, and stickies in a .json?"}, {"post_id": 40252, "ts": "2026-08-03T17:35:35Z", "hours": 0.3597, "text": "I added a digit limit to the calculator, for both aesthetic purposes and for the bug that came with rounding JavaScript numbers. I also fixed some bugs regarding local storage saved preferences. Next I’ll start working on what might be the hardest part of Stickytab: a partial autocomplete for the webpage opener using saved sites."}, {"post_id": 40228, "ts": "2026-08-03T17:06:52Z", "hours": 0.4819, "text": "Added calculator customization! There’s a Desmos button on the calculator that allows you to quickly open the Desmos calculator. Now, you can customize your preferred Desmos calculator, saved locally to browser storage."}, {"post_id": 40184, "ts": "2026-08-03T16:17:33Z", "hours": 2.7125, "text": "I finally finished the calculator! Its code was significantly more confusing than I thought it would be, but I somehow managed to fix some of my bugs..? There’s a limit to how many digits are shown, but not how many digits are stored, and JavaScript slightly rounds the digits, so I should work on adding an actual digit limit."}, {"post_id": 33847, "ts": "2026-07-24T02:50:08Z", "hours": 5.8261, "text": "Finished the code for the site saving feature. Now, favorite sites can be saved (locally on your browser) and accessed anytime. The sticky manager is finished for now. I also completed a settings page which can store preferences for time formats and search engines. Time to decide between adding any finishing touches, or shipping this completed project!"}, {"post_id": 32112, "ts": "2026-07-21T01:38:08Z", "hours": 0.4447, "text": "I completed core code for stickies and updated the README. Next I’ll be adding to the other empty spaces of the newtab page. I’m planning for a calculator and saved shorctuts for web addresses, but this is usually what happens when I plan my coding: I plan things I plan some more I don’t follow my plans Anyway, regarding the things I’ve completed for this devlog: I used a different code editor for the stickies (so that I could compile all the graphics into a single HTML file) and I couldn’t figure out how to add Hackatime to it. Hopefully it’ll be fine..? I updated the README with, well, more detailed instructions. The README is still a little vague, so I should add to it later. I can’t think of anything else for this devlog. Back to coding!"}, {"post_id": 32051, "ts": "2026-07-20T22:47:48Z", "hours": 2.9247, "text": "I added basic search engine capabilities to Stickytab! In addition to this, there’s an iframe that’s ready for a file containing the code for the best part of this project: the stickies!! I guess it’s time to start working on those sticky notes before I move on to the other blank parts of the page."}, {"post_id": 31572, "ts": "2026-07-20T02:26:25Z", "hours": 0.2664, "text": "Added basic code files for my Stickytab project!"}]...
|
Title: Stickytab by @NotSuspiciousProgrammer | Sta Title: Stickytab by @NotSuspiciousProgrammer | Stardance
Devlogs:
Added basic code files for my Stickytab project!
I added basic search engine capabilities to Stickytab! In addition to this, there’s an iframe that’s ready for a file containing the code for the best part of this project: the stickies!! I guess it’s time to start working on those sticky notes before I move on to the other blank parts of the page.
I completed core code for stickies and updated the README. Next I’ll be adding to the other empty spaces of the newtab page. I’m planning for a calculator and saved shorctuts for web addresses, but this is usually what happens when I plan my coding: I plan things I plan some more I don’t follow my plans Anyway, regarding the things I’ve completed for this devlog: I used a different code editor for the stickies (so that I could compile all the graphics into a single HTML file) and I couldn’t figure out how to add Hackatime to it. Hopefully it’ll be fine..? I updated the README with, well, more detailed instructions. The README is still a little vague, so I should add to it later. I can’t think of anything else for this devlog. Back to coding!
Finished the code for the site saving feature. Now, favorite sites can be saved (locally on your browser) and accessed anytime. The sticky manager is finished for now. I also completed a settings page which can store preferences for time formats and search engines. Time to decide between adding any finishing touches, or shipping this completed project!
I finally finished the calculator! Its code was significantly more confusing than I thought it would be, but I somehow managed to fix some of my bugs..? There’s a limit to how many digits are shown, but not how many digits are stored, and JavaScript slightly rounds the digits, so I should work on adding an actual digit limit.
Added calculator customization! There’s a Desmos button on the calculator that allows you to quickly open the Desmos calculator. Now, you can customize your preferred Desmos calculator, saved locally to browser storage.
I added a digit limit to the calculator, for both aesthetic purposes and for the bug that came with rounding JavaScript numbers. I also fixed some bugs regarding local storage saved preferences. Next I’ll start working on what might be the hardest part of Stickytab: a partial autocomplete for the webpage opener using saved sites.
FINALLY!! I finished the recursive JavaScript loop to filter through saved sites and find ones that match the search query. Next I’ll be working on making those results usable, through clickable links and maybe through a keyboard shortcut with the enter key. Bugs to fix: One I found with saving sites without http or https Making this sites window close when a user exits the webpage search and left it blank To-do: Fix bugs (obviously) Add delete button to calculator - I just realized I forgot this Make links clickable (and add keyboard shortcuts?) Make popup div’s height automatically adjust to size of the list? Add a feature for exporting/importing all preferences, sites, and stickies in a .json?
Squashed all my bugs and added KEYBOARD SHORTCUTS to the search autocomplete! Now it’s easy to navigate through and open saved sites; the up and down arrow keys move through the list, and the enter key opens the site. If you start by typing “s”, then it finds all your saved sites that begin with “s” (not including the http). If you continue by typing “t” to make “st”, then it finds all your saved sites that begin with “st”. To-do: Update and improve the README Preference and site saving with a .json file? Add dotfiles to the repo Add font tags to calculator Add thing where using the arrow to go to the very bottom of the autocomplete list and beyond the bottom will exit the autocomplete to go to root URLs instead of saved ones
Updated the README and fixed hidden bugs throughout Stickytab. I think I’m ready to ship!!
Responsiveness added - sort of! After the second ship, a lot of people talked about the peeving-ness of restricting Stickytab to a 16:9 landscape screen ratio. I edited all three main files - the HTML, CSS, and JS - to support other screen ratios. Stickytab still works best with a 16:9 landscape screen ratio, but now it is physically possible to use it with a different ratio.
The core code for a calendar was added to Stickytab! Since I usually use saved sites through the webpage search bar, and not through directly clicking the link in the list on the right, I decided to put a more productive tool in the right-hand side of Stickytab. Sites can still be saved through the “Saved Sites” button - and they are very usable through the helpful webpage search bar! Next I will work on adding cool functions to Stickytab’s calendar!!
Sneaky bugs… always hiding in the darkest corners of my code. In continuation for working on the calendar component of Stickytab, I fixed all the bugs I could find. I also improved the aesthetics of the calendar, and started some code for the special calendar customization components!
FINALLY!! The calendar component of Stickytab has been completed! Now, you can add events to the calendar, to the current month or next month. Events can also be removed if they’re cancelled. The events are saved locally to your browser, and their aesthetics can be customized through Stickytab’s settings.
I found a bug in the calendar component, fixed it in ten minutes. Guess what? That fix caused two more bugs. Those took over an hour of searching through my code to fix, and it was caused by ONE TINY VARIABLE DECLARATION MISTAKE. Like, seriously?? I’m glad my bug is fixed now, and the calendar works properly, but… an hour? For a single variable declaration thingy?? Can anyone else relate to this?
I worked on Stickytab’s responsiveness! Stickytab now works on all screen ratios. Even so, there’s still a warning for other screen ratios, just in case there’s something I missed. I don’t think I missed anything, but it’s best to be prepared :)
Ships:
I made a fully working NewTab page! I call it Stickytab because of my favorite part: you can stick sticky notes on the new tab page! The sticky notes are saved locally to your browser, which means that you can save your sticky notes and see them later, even after you close the page. You can also save sites (kind of like browser bookmarks, but with easier access) to the new tab page, also saved locally to your browser. Figuring out how to access and use local browser storage was the hardest part for me, because it is something I have not done before in JavaScript. It definitely took a lot of W3Schools articles!
Stickytab is a better New Tab page designed for productivity and organization. You can save sticky notes and fill them with reminders, quickly access a calculator, and save frequently visited sites. View the date and time (both 12-hour and 24-hour time formats are supported) and quickly access the README for help anytime. When you enter a URL for a webpage, there is a popup that searches through your saved sites to find a saved site that matches the URL you are entering. You can filter through the results using the up and down arrow keys, and use the enter key to open the site. This can save a lot of time when you are opening websites! You can create reminders for yourself by posting sticky notes on Stickytab. (That’s why it’s called Stickytab!!) Up to twelve stickies can be viewed on the page; additional stickies can be viewed by pressing the corresponding button. Preferences for the default search engine, time format, and Desmos calculator shortcut can be edited and saved locally. One of the most challenging parts of Stickytab was using the browser’s local storage; I have never done that before! The other challenging part was creating the recursive JavaScript function that searches through your saved sites. I somehow managed to fix all my bugs.. and ended up with a complete and fully working New Tab page. Hope you enjoy Stickytab! Feel free to test it out, or look through the README for more information :)
This is a customizable New Tab page designed for better productivity!! A sticky manager displays sticky notes, where you can organize reminders for yourself. Add events to a calendar, which displays the current month and the next upcoming month. Save frequently visited sites, quickly search through them using the webpage search bar, and visit the site with keyboard shortcuts! Quickly view the time and date, and access a simple calculator or Desmos calculator. Set preferences in the settings area. For more details about Stickytab’s many features, take a look at my README. In this ship, I had to utilize complex JSON for the calendar component of Stickytab. This challenged me a lot, and I was stuck with my bugs for many hours! Eventually I managed to find all the different bugs, and the calendar is a working component of Stickytab. Please explore my Stickytab project - I hope you find it a useful tool for productivity!! Check out the README file (that’s why it’s called “readme”) before using Stickytab.
What’s New? I fixed some major bugs in Stickytab, and made updates to adapt to other screen ratios! Now, Stickytab should work well on any screen ratio (you will still receive a warning just in case). What Is Stickytab? Stickytab was originally part of a mission for a custom new tab. Because it is part of a mission, please rate originality based on the components of Stickytab (like my stickies and calendar), and not based on the concept of Stickytab (a custom new tab, which was from the mission). Stickytab is designed to boost productivity, and it features stickies, a calculator, a calendar, and a method for quickly accessing webpages. For more information about the method for webpages, see my README. What Was Challenging? The calendar bug was the hardest to fix. There’s a devlog about it below, describing how I fixed the bug and caused two more bugs in the process. Can anyone else relate to this? Ratings I hope you enjoy exploring Stickytab! Please give descriptive ratings to help me improve :)...
|
1793936973.4393816
|
1794023373.4393816
|
|
61995
|
AustinOS1 by @Tekwiz17 | Stardance
|
Tekwiz17
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T22:53:21Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made AustinOS1 for the WebOS 1 Mission! Readme: hey! this is my project for the Stardance WebOS 1 mission :) it’s a little green themed web os with draggable windows, a top bar with a clock, and a few small apps. kept it simple since I’m still new to this. what it can do welcome screen when you first open it desktop with icons you can click windows you can drag around, open, and close (try opening more than one!) top bar with a live clock About app - info about the project Notes app - write stuff and save it, it remembers next time you open it Music app - this is my extra feature! click the letters to play little notes using the Web Audio API Weather app - shows the current weather where you are, using the Open-Meteo API (free, no api key needed). it asks your browser for your location so make sure to allow it when it pops up Thx! Make sure to check it out!", "repo": "https://github.com/Tekwiz17/AustinOS1", "demo": "https://tekwiz17.github.io/AustinOS1/"}]...
|
[{"post_id": 68877, "ts": "202 [{"post_id": 68877, "ts": "2026-09-15T22:51:44Z", "hours": 0.2667, "text": "Fixed a few errors, changed a few colors. Ship coming soon!"}, {"post_id": 68871, "ts": "2026-09-15T22:33:47Z", "hours": 0.3, "text": "Working on OS! Added next app! Weather! It uses OpenMetro"}, {"post_id": 67788, "ts": "2026-09-14T01:13:33Z", "hours": 0.5008, "text": "Started it ;) Made basic OS, more apps coming soon! Devlog 1/3"}]...
|
Title: AustinOS1 by @Tekwiz17 | Stardance
Devlogs Title: AustinOS1 by @Tekwiz17 | Stardance
Devlogs:
Started it ;) Made basic OS, more apps coming soon! Devlog 1/3
Working on OS! Added next app! Weather! It uses OpenMetro
Fixed a few errors, changed a few colors. Ship coming soon!
Ships:
I made AustinOS1 for the WebOS 1 Mission! Readme: hey! this is my project for the Stardance WebOS 1 mission :) it’s a little green themed web os with draggable windows, a top bar with a clock, and a few small apps. kept it simple since I’m still new to this. what it can do welcome screen when you first open it desktop with icons you can click windows you can drag around, open, and close (try opening more than one!) top bar with a live clock About app - info about the project Notes app - write stuff and save it, it remembers next time you open it Music app - this is my extra feature! click the letters to play little notes using the Web Audio API Weather app - shows the current weather where you are, using the Open-Meteo API (free, no api key needed). it asks your browser for your location so make sure to allow it when it pops up Thx! Make sure to check it out!...
|
1794048820.6569877
|
1794135220.6569877
|
|
62455
|
HOLA Coffee Co. by @Kxrtik1315 | Stardance
|
Kxrtik1315
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T22:54:40Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "made HALO Coffee Co, an iridescent coffee shop landing page. the hero’s got an actual 3D blue frappuccino u can drag around n spin — that part took forever ngl, had to fake real depth w/ layered css divs + perspective since i wasn’t tryna pull in three.js for this. menu section has a real matching pic above every drink instead of generic stock photos, and theres a popup cart that slides in from the side, shows ur total, n lets u pick a payment method (card/upi/paypal/cash) — purely visual tho, nothing actually charges u. proudest of the frap actually being draggable n not just sitting there like a static image. to test it: drag the cup in the hero around, add a few drinks to the cart, then check the cart drawer bottom right to see the total + payment picker.", "repo": "https://github.com/Kxrtik13-A19/HOLA", "demo": "https://kxrtik13-a19.github.io/HOLA/"}]...
|
[{"post_id": 68876, "ts": "202 [{"post_id": 68876, "ts": "2026-09-15T22:51:24Z", "hours": 2.6058, "text": "Finally HTML is also completed! Website is Fully Ready! Too Much Happy!"}, {"post_id": 68783, "ts": "2026-09-15T19:00:33Z", "hours": 1.1589, "text": "Finally Completed Script.js ! Now Only HTML (half) Left! Going To Complete It Soon!"}, {"post_id": 68672, "ts": "2026-09-15T14:38:54Z", "hours": 1.3144, "text": "Half HTML completed and CSS fully Completed! Only JS and HTML (half) left!"}, {"post_id": 68618, "ts": "2026-09-15T12:28:54Z", "hours": 1.1281, "text": "Creating HTML Framework for Hola Coffee Co. (Website)"}]...
|
Title: HOLA Coffee Co. by @Kxrtik1315 | Stardance
Title: HOLA Coffee Co. by @Kxrtik1315 | Stardance
Devlogs:
Creating HTML Framework for Hola Coffee Co. (Website)
Half HTML completed and CSS fully Completed! Only JS and HTML (half) left!
Finally Completed Script.js ! Now Only HTML (half) Left! Going To Complete It Soon!
Finally HTML is also completed! Website is Fully Ready! Too Much Happy!
Ships:
made HALO Coffee Co, an iridescent coffee shop landing page. the hero’s got an actual 3D blue frappuccino u can drag around n spin — that part took forever ngl, had to fake real depth w/ layered css divs + perspective since i wasn’t tryna pull in three.js for this. menu section has a real matching pic above every drink instead of generic stock photos, and theres a popup cart that slides in from the side, shows ur total, n lets u pick a payment method (card/upi/paypal/cash) — purely visual tho, nothing actually charges u. proudest of the frap actually being draggable n not just sitting there like a static image. to test it: drag the cup in the hero around, add a few drinks to the cart, then check the cart drawer bottom right to see the total + payment picker....
|
1794048959.5178025
|
1794135359.5178025
|
|
59454
|
My WebOS (StellarOS) by @daval | Stardance
|
daval
|
2
|
11.0
|
21
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T22:43:11Z", "hours": 3.0, "multiplier": 7.57, "payout": 21, "blessing": "neutral", "text": "Second ship to earn the WebOS rewards! Hopefully a bit more Stardust than my Digital Hub :P I build a WebOS based on Interstellar, called StellarOS. The main language for the backend is JavaScript, frontend was built with HTML and CSS. I added three widgets, one displays the weather (this one was by far the easiest, since I just used the embedded one from weatherwidget.io), another one displays a calendar (this one was the second hardest, used AI sadly enough, I know, disappointing), the third one was to display the currently playing music (funny enough the second easiest, little to no AI was used). And finally, the hardest one, the new app to track Hackatime stats, you just plug in your user, to be honest I truly tried to do it without AI, but I simply couldn’t… this one was nearly 60% AI, even more dissapointing :(. At the end of the day, it was a project I really enjoyed, learned a lot about HTML and CSS, and a tiny bit of JS… could I do this whole thing from scratch without any tutorial? Probably the frontend, yes but I couldn’t do the backend, still got a lot to learn. If I ever come back to this project it will be to try and replace every piece of code made by AI and do it by hand, just to feel good with myself I guess.", "repo": "https://github.com/davalanisv1/StellarOS", "demo": "https://davalanisv1.github.io/StellarOS/"}, {"ship_num": 2, "ts": "2026-09-12T23:52:05Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a WebOS! Based on the best movie of all times, Interstellar. Now, it isn’t the most beautiful of them all, and it certainly needs more features, but it gets the job done! I think the most challenging part was debugging after deployment, and formatting the Weather app, that one was… waow. Anyways! Learnt alot! I can say with confidence I could make a basic website with 0% AI! Of course, I mean only the HTML and the CSS, all those Java Scripts still would need a couple Google Searches before being able to work… in any case, fun project!", "repo": "https://github.com/davalanisv1/StellarOS", "demo": "https://davalanisv1.github.io/StellarOS/"}]...
|
[{"post_id": 68872, "ts": "202 [{"post_id": 68872, "ts": "2026-09-15T22:33:54Z", "hours": 1.7917, "text": "Somehow the first 30 minutes did not track 😭 Anyways, this is the last devlog, hopefully in a good while. I added three widgets, one for weather (with less data), one for calendar, and one for Music, it look pretty neat now. I also added a new app to track your Hackatime stats, just plug your username in (daval in my case) and you can see your stats!"}, {"post_id": 67672, "ts": "2026-09-13T20:40:33Z", "hours": 1.0122, "text": "Organized the JS and CSS files into new folders, used the JS script from my Digital Hub to create a “Music” app, basically tracking, with the option to hear along through Youtube. A fun little extra, 1/3 requirements for the WebOS 2 mission done, 2 to go!"}, {"post_id": 66969, "ts": "2026-09-12T23:25:47Z", "hours": 1.4497, "text": "Finally! I’m done, over, complete! This took so much more than two hours, I don’t know if it’s just because of the limited amount of neurons in my brain or if it’s really more complicated than it looks… but I’m done! First, I added a whole new app, Weather (thanks open-meteo) Second, added a new button to expand the windows! It’s not perfect, and it only goes full screen, it doesn’t change sizes YET Third, added a new entry to the notes app. Fourth, ate some celebration nachos FIfth, used the trust worthy Google AI to make a ReadMe.md file for the Github (sue me, I’m lazy) Sixth, made all windows the same size And that’s all! This was kinda fun!"}, {"post_id": 66204, "ts": "2026-09-11T21:41:02Z", "hours": 2.0853, "text": "Slow and slower: This session was short, relatively simple and good. I made the notes app and styled it to my liking. I also made the cursor an orange ball that goes big and oranger when it hovers over a clickable object, and small when it clicks anything. WHO FINISHED THIS IN ONLY TWO HOURS! IT’S A TRICK! A JOKE! THEY’RE LYING!"}, {"post_id": 63861, "ts": "2026-09-07T20:56:01Z", "hours": 4.2939, "text": "No rest for the wicked 😭 So, my ten hour portfolio website yielded a total of 30 Stardust, which isn’t too bad, but it definetly isn’t the best, kinda feel like I wasted 10 hours… ANYWAYS, since that didn’t quite work out as expected, I chose to start another project, the WebOS 1 mission, it says it’s only ~2:30 hrs, and it yields 50 Stardust, that’s way more than what I got with 10 hours!… I see why now, this is DEFINITELY harder than it looks, but game’s game, so… yeah, at least I’m getting hours 😭 Today was simple: Build the welcome window Added the toolbar, made the JavaScript files for the time tracking, window movement and the ability to open and close windows. Moved all my styiling into a CSS file. Honestly this is kinda good for me, it’s tedious, boring sometimes, but it’s very good. Most, if not all, my projects until now were made with a template, if someone asked me to make an HTML file from scratch four hours (four hours 😭) ago I couldn’t have done it, let alone style it in CSS… so actually learning something is nice, I’ll be back tomorrow."}]...
|
Title: My WebOS (StellarOS) by @daval | Stardance
Title: My WebOS (StellarOS) by @daval | Stardance
Devlogs:
No rest for the wicked 😭 So, my ten hour portfolio website yielded a total of 30 Stardust, which isn’t too bad, but it definetly isn’t the best, kinda feel like I wasted 10 hours… ANYWAYS, since that didn’t quite work out as expected, I chose to start another project, the WebOS 1 mission, it says it’s only ~2:30 hrs, and it yields 50 Stardust, that’s way more than what I got with 10 hours!… I see why now, this is DEFINITELY harder than it looks, but game’s game, so… yeah, at least I’m getting hours 😭 Today was simple: Build the welcome window Added the toolbar, made the JavaScript files for the time tracking, window movement and the ability to open and close windows. Moved all my styiling into a CSS file. Honestly this is kinda good for me, it’s tedious, boring sometimes, but it’s very good. Most, if not all, my projects until now were made with a template, if someone asked me to make an HTML file from scratch four hours (four hours 😭) ago I couldn’t have done it, let alone style it in CSS… so actually learning something is nice, I’ll be back tomorrow.
Slow and slower: This session was short, relatively simple and good. I made the notes app and styled it to my liking. I also made the cursor an orange ball that goes big and oranger when it hovers over a clickable object, and small when it clicks anything. WHO FINISHED THIS IN ONLY TWO HOURS! IT’S A TRICK! A JOKE! THEY’RE LYING!
Finally! I’m done, over, complete! This took so much more than two hours, I don’t know if it’s just because of the limited amount of neurons in my brain or if it’s really more complicated than it looks… but I’m done! First, I added a whole new app, Weather (thanks open-meteo) Second, added a new button to expand the windows! It’s not perfect, and it only goes full screen, it doesn’t change sizes YET Third, added a new entry to the notes app. Fourth, ate some celebration nachos FIfth, used the trust worthy Google AI to make a ReadMe.md file for the Github (sue me, I’m lazy) Sixth, made all windows the same size And that’s all! This was kinda fun!
Organized the JS and CSS files into new folders, used the JS script from my Digital Hub to create a “Music” app, basically tracking, with the option to hear along through Youtube. A fun little extra, 1/3 requirements for the WebOS 2 mission done, 2 to go!
Somehow the first 30 minutes did not track 😭 Anyways, this is the last devlog, hopefully in a good while. I added three widgets, one for weather (with less data), one for calendar, and one for Music, it look pretty neat now. I also added a new app to track your Hackatime stats, just plug your username in (daval in my case) and you can see your stats!
Ships:
I made a WebOS! Based on the best movie of all times, Interstellar. Now, it isn’t the most beautiful of them all, and it certainly needs more features, but it gets the job done! I think the most challenging part was debugging after deployment, and formatting the Weather app, that one was… waow. Anyways! Learnt alot! I can say with confidence I could make a basic website with 0% AI! Of course, I mean only the HTML and the CSS, all those Java Scripts still would need a couple Google Searches before being able to work… in any case, fun project!
Second ship to earn the WebOS rewards! Hopefully a bit more Stardust than my Digital Hub :P I build a WebOS based on Interstellar, called StellarOS. The main language for the backend is JavaScript, frontend was built with HTML and CSS. I added three widgets, one displays the weather (this one was by far the easiest, since I just used the embedded one from weatherwidget.io), another one displays a calendar (this one was the second hardest, used AI sadly enough, I know, disappointing), the third one was to display the currently playing music (funny enough the second easiest, little to no AI was used). And finally, the hardest one, the new app to track Hackatime stats, you just plug in your user, to be honest I truly tried to do it without AI, but I simply couldn’t… this one was nearly 60% AI, even more dissapointing :(. At the end of the day, it was a project I really enjoyed, learned a lot about HTML and CSS, and a tiny bit of JS… could I do this whole thing from scratch without any tutorial? Probably the frontend, yes but I couldn’t do the backend, still got a lot to learn. If I ever come back to this project it will be to try and replace every piece of code made by AI and do it by hand, just to feel good with myself I guess....
|
1793735608.6314654
|
1794599608.6314654
|
|
60539
|
StellarOS by @Tennis-Legend | Stardance
|
Tennis-Legend
|
2
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-30T09:08:16Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I got an email saying I need to ship this, so lets! :) SO basically StellarOS is a simple web-based desktop built with plain HTML, CSS, and JavaScript. It runs completely in your browser, so it loads instantly. It comes with standard features like draggable windows, a start menu, a taskbar with a clock, and some basic desktop icons. There are a few built-in tools ready to use, including a Terminal, Notes, Calculator, and a Browser. The main catch with the Browser app is that big sites like Google and Bing block themselves from loading inside an iframe. To make sure it didn’t just open a blank box, it’s set up to load Wikipedia, which actually allows embedding. The window manager is clean and works smoothly. You can drag, resize, minimize, and swap between a few different windows without any glitches or lag. To check it out, just download the folder, open index.html in your browser, and play around with it. You can also set it as your homepage if you want it to pop up whenever you open a new tab.", "repo": "https://github.com/tennis-legend1/StellarOS", "demo": "https://tennis-legend1.github.io/StellarOS/"}, {"ship_num": 2, "ts": "2026-09-14T07:51:38Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "StellarOS is my web‑based desktop environment built with plain HTML, CSS and JavaScript. It has draggable windows, a start menu, a taskbar, built‑in apps and a full theme system. Everything runs client‑side, so it loads instantly and feels like a mini operating system inside the browser. I added multiple apps including a Terminal, Notes, Calculator, Browser and Settings, plus four themes you can switch between. There are keyboard shortcuts, a Konami Code easter egg and even draggable desktop icons to make it feel more like a real OS. The main challenge was definitely the browser app. Most major sites like Google, Yahoo and Bing block embedding inside an iframe, so they refused to load in the little browser window. I had to work around that by using sites that actually allow iframe embedding, like Wikipedia. Once I figured out how iframe permissions work, the browser became a proper working app instead of just a blank box. I’m proud of how smooth the window system feels. Dragging, resizing, minimising and switching between windows all works without any weird glitches. The theme system also turned out nicer than I expected, and the whole OS stays lightweight and fast even with multiple windows open. To test StellarOS, just download the folder, move it somewhere safe, open index.html and start clicking around. Double‑click icons to open apps, use the Start menu to launch things, drag windows around and try switching themes.", "repo": "https://github.com/tennis-legend1/StellarOS", "demo": "https://tennis-legend1.github.io/StellarOS/"}]...
|
[{"post_id": 68869, "ts": "202 [{"post_id": 68869, "ts": "2026-09-15T22:26:21Z", "hours": 0.8272, "text": "Since my ship was told it used too much AI, i essentially deleted the CSS rewrote the CSS myself."}, {"post_id": 68506, "ts": "2026-09-15T07:22:41Z", "hours": 0.8386, "text": "Since my first ship got feedback that it used too much AI in the styling, I went back and changed some of the CSS so that it was mostly mine and less AI. I have made it much simpler using only my knowledge, and have managed to learn some stuff and keep it still looking good."}, {"post_id": 67931, "ts": "2026-09-14T07:44:36Z", "hours": 2.2292, "text": "StellarOS ended up becoming a full little web desktop that runs completely in the browser. I kept everything in plain HTML, CSS and JavaScript, and somehow it all came together into a proper OS‑style setup with draggable windows, a start menu, a taskbar and a bunch of built‑in apps. The window manager does most of the heavy lifting, handling movement, resizing and keeping the active window on top. The app manager just launches whatever you click, whether it’s an icon or something from the start menu. Themes were fun to add too, and switching between Light, Dark, Starry Night and Sunset feels surprisingly smooth. Each app has its own little personality. The Terminal has basic commands and a tiny secret message. Notes is just a simple textarea for quick writing. The Calculator handles basic maths without any drama. The Browser loads pages through an iframe, and Settings lets you switch themes. I also added keyboard shortcuts because it makes the whole thing feel more like a real OS, and the Konami Code easter egg is just there for fun. Testing it is pretty straightforward. You download the folder, move it somewhere safe, open index.html and start clicking around. Windows drag smoothly, apps open instantly, themes switch without delay and shortcuts work right away. It’s meant to feel simple, clean and a bit playful; just a lightweight web OS you can have fun with."}]...
|
Title: StellarOS by @Tennis-Legend | Stardance
De Title: StellarOS by @Tennis-Legend | Stardance
Devlogs:
StellarOS ended up becoming a full little web desktop that runs completely in the browser. I kept everything in plain HTML, CSS and JavaScript, and somehow it all came together into a proper OS‑style setup with draggable windows, a start menu, a taskbar and a bunch of built‑in apps. The window manager does most of the heavy lifting, handling movement, resizing and keeping the active window on top. The app manager just launches whatever you click, whether it’s an icon or something from the start menu. Themes were fun to add too, and switching between Light, Dark, Starry Night and Sunset feels surprisingly smooth. Each app has its own little personality. The Terminal has basic commands and a tiny secret message. Notes is just a simple textarea for quick writing. The Calculator handles basic maths without any drama. The Browser loads pages through an iframe, and Settings lets you switch themes. I also added keyboard shortcuts because it makes the whole thing feel more like a real OS, and the Konami Code easter egg is just there for fun. Testing it is pretty straightforward. You download the folder, move it somewhere safe, open index.html and start clicking around. Windows drag smoothly, apps open instantly, themes switch without delay and shortcuts work right away. It’s meant to feel simple, clean and a bit playful; just a lightweight web OS you can have fun with.
Since my first ship got feedback that it used too much AI in the styling, I went back and changed some of the CSS so that it was mostly mine and less AI. I have made it much simpler using only my knowledge, and have managed to learn some stuff and keep it still looking good.
Since my ship was told it used too much AI, i essentially deleted the CSS rewrote the CSS myself.
Ships:
StellarOS is my web‑based desktop environment built with plain HTML, CSS and JavaScript. It has draggable windows, a start menu, a taskbar, built‑in apps and a full theme system. Everything runs client‑side, so it loads instantly and feels like a mini operating system inside the browser. I added multiple apps including a Terminal, Notes, Calculator, Browser and Settings, plus four themes you can switch between. There are keyboard shortcuts, a Konami Code easter egg and even draggable desktop icons to make it feel more like a real OS. The main challenge was definitely the browser app. Most major sites like Google, Yahoo and Bing block embedding inside an iframe, so they refused to load in the little browser window. I had to work around that by using sites that actually allow iframe embedding, like Wikipedia. Once I figured out how iframe permissions work, the browser became a proper working app instead of just a blank box. I’m proud of how smooth the window system feels. Dragging, resizing, minimising and switching between windows all works without any weird glitches. The theme system also turned out nicer than I expected, and the whole OS stays lightweight and fast even with multiple windows open. To test StellarOS, just download the folder, move it somewhere safe, open index.html and start clicking around. Double‑click icons to open apps, use the Start menu to launch things, drag windows around and try switching themes.
I got an email saying I need to ship this, so lets! :) SO basically StellarOS is a simple web-based desktop built with plain HTML, CSS, and JavaScript. It runs completely in your browser, so it loads instantly. It comes with standard features like draggable windows, a start menu, a taskbar with a clock, and some basic desktop icons. There are a few built-in tools ready to use, including a Terminal, Notes, Calculator, and a Browser. The main catch with the Browser app is that big sites like Google and Bing block themselves from loading inside an iframe. To make sure it didn’t just open a blank box, it’s set up to load Wikipedia, which actually allows embedding. The window manager is clean and works smoothly. You can drag, resize, minimize, and swap between a few different windows without any glitches or lag. To check it out, just download the folder, open index.html in your browser, and play around with it. You can also set it as your homepage if you want it to pop up whenever you open a new tab....
|
1794045245.3865483
|
1794131645.3865483
|
|
61945
|
Soldering Stand by @VEX | Stardance
|
VEX
|
0
|
1.56
|
0
|
[]
|
[{"post_id": 68861, "ts": "202 [{"post_id": 68861, "ts": "2026-09-15T21:54:04Z", "hours": 1.1072, "text": "I am thinking of making the soldering stand to have flexible legs or arms whatever those holder thingies are called. To make them flexible I will add a detent mechanism which will allow rotation in a single axis. Actually no all this effort was in waste because I will implement something else…uhh I will explain when I have made that thing soo cya"}, {"post_id": 67705, "ts": "2026-09-13T22:03:45Z", "hours": 0.4492, "text": "I have been soldering for quite a while and one thing is that I have never really had a proper soldering stand so I am going to make one I had an old one and it was terrible it was one of those spring ones so it could not hold it that well Currently I am using a metal piece with a small hole and the whole soldering stand is held alone by that hole soo I am not gonna use it for too long cuz sometimes the metal would get extremely hot after using it for really long Right now I have added a reference geometry for sodlering iron, a basic plate and a small assembly which I forgot to record but it was small soo meh I still have to add some pockets for holding cleaning thingies like those metal brush and for sponge too Also I need to make it rigid"}]...
|
Title: Soldering Stand by @VEX | Stardance
Devlog Title: Soldering Stand by @VEX | Stardance
Devlogs:
I have been soldering for quite a while and one thing is that I have never really had a proper soldering stand so I am going to make one I had an old one and it was terrible it was one of those spring ones so it could not hold it that well Currently I am using a metal piece with a small hole and the whole soldering stand is held alone by that hole soo I am not gonna use it for too long cuz sometimes the metal would get extremely hot after using it for really long Right now I have added a reference geometry for sodlering iron, a basic plate and a small assembly which I forgot to record but it was small soo meh I still have to add some pockets for holding cleaning thingies like those metal brush and for sponge too Also I need to make it rigid
I am thinking of making the soldering stand to have flexible legs or arms whatever those holder thingies are called. To make them flexible I will add a detent mechanism which will allow rotation in a single axis. Actually no all this effort was in waste because I will implement something else…uhh I will explain when I have made that thing soo cya...
|
1793652617.5151622
|
1794257417.5151622
|
|
42905
|
Right hand man by @Evangel | Stardance
|
Evangel
|
0
|
6.52
|
0
|
[]
|
[{"post_id": 68854, "ts": "202 [{"post_id": 68854, "ts": "2026-09-15T21:33:36Z", "hours": 0.6167, "text": "I have been working on the HackPad for a while (way more than I’ve tracked because it kept crashing; now it doesn’t work at all). I did run into a few problems with the RGB LEDs. The DRC keeps on giving me unsolvable errors. I have consulted with multiple Hackclubbers who I based my project on, but it just doesn’t work for some reason. I might remove them, but since it’s such a cool feature, it seems like a waste. Plus, routing around them took ages, so I do not want to reroute the PCB for the billionth time."}, {"post_id": 65641, "ts": "2026-09-10T22:15:43Z", "hours": 1.9667, "text": "I completely redesigned my schematic 2 days ago (forgot to devlog). I watched many tutorials and got inspiration from many people’s own projects, which surprisingly worked effectively. I think this is the 4th time I’m doing the schematic again. In my previous schematic, I ran into a few problems when routing, and I feel like I did not really understand what I was doing. These past few days I’ve just been fixing my problems, and surprisingly I’ve actually learnt a lot. Before, I was just following tutorials without really thinking much abt what I was doing. As of recent thouh one of the problems I have is regarding the PCB, which has a problem that basically has no solution. I’ll try to talk abt it in my next devlog."}, {"post_id": 62137, "ts": "2026-09-05T12:04:56Z", "hours": 2.6833, "text": "Trying to route the PCB for my macropad. This is my first and half a time freestyling a PCB, and I am so confused. Im just doing anything, like literally. had to change up the schematic and fix the frame. It probably has a lot of defects, but what can I say. It’s a learning process."}, {"post_id": 59903, "ts": "2026-09-01T22:31:19Z", "hours": 1.2544, "text": "My soon-to-be right-hand man is officially in progress. Just finished the basics of my hackpad, which is basically working on the PCB and the case. Tomorrow I’ll customize it. I also need to create a GitHub repository and the firmware."}]...
|
Title: Right hand man by @Evangel | Stardance
Dev Title: Right hand man by @Evangel | Stardance
Devlogs:
My soon-to-be right-hand man is officially in progress. Just finished the basics of my hackpad, which is basically working on the PCB and the case. Tomorrow I’ll customize it. I also need to create a GitHub repository and the firmware.
Trying to route the PCB for my macropad. This is my first and half a time freestyling a PCB, and I am so confused. Im just doing anything, like literally. had to change up the schematic and fix the frame. It probably has a lot of defects, but what can I say. It’s a learning process.
I completely redesigned my schematic 2 days ago (forgot to devlog). I watched many tutorials and got inspiration from many people’s own projects, which surprisingly worked effectively. I think this is the 4th time I’m doing the schematic again. In my previous schematic, I ran into a few problems when routing, and I feel like I did not really understand what I was doing. These past few days I’ve just been fixing my problems, and surprisingly I’ve actually learnt a lot. Before, I was just following tutorials without really thinking much abt what I was doing. As of recent thouh one of the problems I have is regarding the PCB, which has a problem that basically has no solution. I’ll try to talk abt it in my next devlog.
I have been working on the HackPad for a while (way more than I’ve tracked because it kept crashing; now it doesn’t work at all). I did run into a few problems with the RGB LEDs. The DRC keeps on giving me unsolvable errors. I have consulted with multiple Hackclubbers who I based my project on, but it just doesn’t work for some reason. I might remove them, but since it’s such a cool feature, it seems like a waste. Plus, routing around them took ages, so I do not want to reroute the PCB for the billionth time....
|
1793911970.7978113
|
1794516770.7978113
|
|
12938
|
PetTrack by @szabence | Stardance
|
szabence
|
1
|
72.63
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-06T14:24:17Z", "hours": 71.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "PetTrack! A beautiful Pet Monitoring system that upcycles old smartphones into IP-cameras that you can use to see your small pet I made this project because I took in a Rabbit in May 2026 and I didn’t know what she was doing when i wasn’t home, so I decided to code this app that you can install on any Android 7+ / iPhone 6s or newer device, and use it to check on your pet, with a beautiful UI, Zone tracking, replays, medicine and vaccine tracking, and a lot more :) The hardest part was, getting used to writing Flutter. I have never used Flutter in the past, but I read about it and I liked the mentality and the mechanics of the code or how should I say, and I decided to give it a go. I love it. Simple but effective, and I can use this 1 codebase on the web, on my iPhone, on my Android and even on my WearOS smartwatch :) The project is working, and you can check it by the bottom below, select language, select Client and press Demo mode, it will show the UI. You can see it working in action on the screenshots. Check the README, and thank you for reading this!", "repo": "https://github.com/szbnce/PetTrack", "demo": "https://pettrackdemo.szabence.com"}]...
|
[{"post_id": 68851, "ts": "202 [{"post_id": 68851, "ts": "2026-09-15T21:18:20Z", "hours": 1.6314, "text": "PetTrack reship no.2 Hey guys, I have shipped the project last week, but I got rejected because I’ve used the project logo as banner and not a screenshot… Anyways, I fixed some bugs that Ive seen since shipping, which was the Notification, on both iOS and Android and Web, it wasn’t working correctly anywhere, but because of lack of time at the moment, I have removed the Notification option. on iOS it will never work self-hosted, because it requires apple dev account and the app to be on the app store or have a real backend behind it, or something like that I’ve read. I also removed the Sync with watch button from the iOS builds and Web builds, since there is only WearOS build. Google play! I have started the process to put the app on the Google Play. I was originally against this, as y’all have read in one of the first devlogs, but I thought, 25 bucks once isn’t that much, so PetTrack will be on the Play store soon, but by the looks of things, only after Stardance has already finished. WearOS I started school once again, and I couldn’t always get to my phone so I have made a minimalist app to use on the watch, it’s not that full, you can only see 1 frame / 5 seconds, and you can’t edit anything, only check the live feed, check the Monitors battery percentage and the last seen in X zone. I will ship my project once again, thank you for reading! EDIT: I did not know I just need recertification instead of a full reship lol"}, {"post_id": 62924, "ts": "2026-09-06T13:52:19Z", "hours": 5.8556, "text": "PetTrack has been released! Hello guys! I’m not going to mess around with Markdown for this last devlog, I have been testing the project for 2 weeks now, and it is working great. I fixed up minor bugs that I found, added 5 AI-translated languages for more multilang support, though Hungarian and English has been translated by me, so those are definetly correct :) I changed on the UI a bit, removed the last seen and most seen cards from the dashboard and changed it to a diagram about the Zone visits, and changed the Medical UI cards a bit. Also made the resolution in the app better, now you can make pictures from the app, and instantly share them, replays work now on both iOS and Android. The first release of PetTrack has been finally published on GitHub, so please go and check it out! https://github.com/szbnce/PetTrack/releases/tag/1.0.0 Thank you everybody who has been though this journey over 3 months with me. Thank you!"}, {"post_id": 53494, "ts": "2026-08-24T02:11:25Z", "hours": 5.7447, "text": "PetTrack Demo is finally here! I haven’t worked on PetTrack in the past 1,5 months, mostly because I just couldn’t bring myself to code, and I am going on vacation as I am writing this, and I figured, omg, if i come home, it will be already september, and besides school, i will definetly not finish this, and then, what was I working for for days on end? So, I got my sxit together, and started working on the project. Sadly, because of the time, I had to use AI so I will finish until I leave for vacation. I almost did not. It’s 3:45 AM, I left 2 hours ago, and I set up the server 15 whole minutes before leaving my house. So it was calculated, but I managed. Unified Flutter codebase: I merged the pettrack_client , pettrack_montior and pettrack_web , into one package, and is written in Flutter. The app is entirely in Flutter, I kept designs of the Client so it won’t look very different. Deployment & OS Support: The new one app method is Docker compatible, so the project will offer a Docker option, and a non-docker MacOS and Linux native installer, and a Windows installer aswell, without docker :) Branching: The one where I used AI has been moved to a new branch \"allFlutter\" . iOS Support: I initally did not want to make an iOS version because I don’t really agree with the yearly 100 usd developer program payment, and I don’t really agree with Google Play 25usd purchase aswell, but that’s very much more manageable than a yearly model, on a FOSS app. Anyways, I will publish the .ipa file, and do what you want with it :) If you have the courage and understanding, you can jailbreak and install it indefinetly, or you can sideload it, though you will have to renew it every week. If you don’t want to do that, you can of course use the Web version in a browser, it will work the exact same way, they are the same codebase under. Web support: This was my original plan to make PetTrack work on iOS devices, but then, I decided why not make it fully work on any browser? One codebase, the Webapp, the Android app and iOS app will work the EXACT SAME WAY! if you want to install a full app, you may, but if you don’t, you have all options. Medical panel: I think I have made a devlog about that, or mentioned that, but I will write it once again. We have a Medical tab now, where you will be able to track Medications and get notifications to give them to your pet, and the Vaccines tab, where you can track what the pet has gotten, when, and when its next Due. You can also set more colors. Replay: You can now replay movement. Currently for some reason, It does not work (I started implementing it at 0:30 AM, left at 1:30 so I could’ve expected that), or atleast it does not work from the browser. If i log into the server, and check it, the videos are there, and visible. It records a few seconds before and after the movement. Demo! Now you can check out PetTrack at: 👉 https://pettrackdemo.szabence.com How to access: Select language (colors are broken i know) Select Viewer For IP write asd or something, just dont leave it empty For password, write 8068 Press next, and you will see it asking if you want to go into Demo Press yes, and you are in! Its a quite basic demo, its the same codebase, just no server behind. You can add medications, test zones, etc. After you close the tab, everything will be deleted. I will test the project as I am going about my week, fix errors at night, and I will ship the project next week. Have a great week guys, and thank you for watching the project."}, {"post_id": 40217, "ts": "2026-08-03T16:58:52Z", "hours": 4.8564, "text": "Hey guys.. Its been 17 days since the last Devlog, I dont even know what I “upgraded” or didn’t. I wont’t try to make it a big devlog or anything, really i just want to get the hours logged so I can start fresh. I’ve decided to ditch all 3 (pettrack_monitor, pettrack_client and pettrack_web) codebases and rewrite everything as one flutter app. Making sure 4 sections of the app written in 3 different languages wasn’t easy on my level so I decided to ditch all and write one “pettrack_app” codebase. It will work on Android, iOS and Web, and for iOS users also PWA app, so you don’t have to install anything, and it will all work under one codebase, so everything will be the same across all devices. So. I don’t know when I will finish or anything, or write the next devlog, because I have so many things to do this month, soo…"}, {"post_id": 30037, "ts": "2026-07-17T09:22:29Z", "hours": 6.6725, "text": "The Flutter apps and the Server is 99% done until shipping! This is rather a bigger devlog, I didn’t make a more smaller ones, but let’s see what I’ve done: Easier pairing : Now instead of using a qr code (which in the Docker terminal is unreliable), you get a 4 number pairing code, which you can use to communicate the 64 char JWT token. It’s much easier, and much more reliable. Docker : I implemented Docker, but it seems like at the moment that it only really works on MacOS, i might phase Docker out and make setup commands for each, maybe a oneliner with curl, or something like that. Bugfixes : Lots of bugfixes in those 6,5 hours, I can’t even list all of them, connectivity issues, pairing issues, camera issues, UI Cleanup : I removed developer overlays from the web e.g Eruda mobile console overlay. I will be focusing a lot more on the Mock API for the demo site, and polishing for Shipping EXCEPT for one feature that I still want to add, and that would be insanely good. Bye guys!"}, {"post_id": 27994, "ts": "2026-07-13T23:20:55Z", "hours": 4.0786, "text": "🚀 WebClient is getting ready! I’ve done multiple things with the WebClient over the last 4 hours, and we are getting closer and closer to shipping! Here is a quick rundown of the progress: 🛠️ Key Features & Updates Unified Multi-Mode: You can now choose whether you want to use a device as a Client (Viewer) or a Monitor (Camera). Zone Management: Zone adding now works! (Showing current zones is still slightly broken, but we are getting there). Event Tracking: Zone enter/exit detection is fully functional. Dashboard Stats: Added panels to show “Last seen” and “Most seen” locations. Pet Profiles: You can now edit your pet’s profile directly from the Settings tab. Settings Reset: Added the ability to wipe all local settings if you want a fresh start. 🎨 UI & UX Polish Dark Mode: Synced theme with Client, dark and light mode aswell. Cleaned up the UI: Removed all unnecessary buttons. P.S. Berci got vaccinated today! 💉🐇 So now he’s immune to both physical viruses and mental breakdowns over JavaScript!"}, {"post_id": 27081, "ts": "2026-07-12T10:04:49Z", "hours": 5.1319, "text": "now i understand why web developers are all bald and angry… Okkkay so, little bit of a backgound here, I do not agree on the fact that I should pay for FOSS apps to be put on the play store and app store, that for one company i should pay 25 bucks once and then i can put my app on the app store and i have to pay 100 BUCKS YEARLY TO APPLE. So, instead of creating an app for iOS, since you can’t really sideload (there are ways for people in Europe and you can jailbreak bla bla bla…) and this app is made for ordinary people. Not developers. So, as a last resort, I am making a WebClient and WebMonitor, so the apps are able to run without even installing anything. Obviously the installed apps will run better and feel better, but then no iOS support, which I did not want. So, I started working with AI on a WebClient and WebMonitor and started learning JavaScript, but that…. Dart next to Javascript is a kids game honestly, very hard, I tried to make it easier for me by using TailwindCSS which I have some experience in, but it wasn’t that easy. To eliminate AI slop, I have a great Web developer friend (became bald at the bold age of 30), and he’ll monitor the code and check if it is alright for “prod”…"}, {"post_id": 25564, "ts": "2026-07-09T21:53:54Z", "hours": 4.0792, "text": "🛠️ BUGFIXES! BUGFIXES! I didn’t really add any new features this time, but rather focused on fixing and polishing already existing features. 🔒 Security and Stability Token Generation: I removed hardcoded “placeholder” tokens; the system now creates a new API token seamlessly. Storage Limits: Added a maximum 500 picture limit on the server, so it doesn’t fill up the storage if the cleanup task fails. Syntax Fixes: Fixed a broken dictionary on the server which threw garbage JSON. ✨ UI and Usability Notification Cooldown: Added a 1-minute cooldown between notifications to prevent spam. Better Statistics: Now the Activities tab shows 50 events instead of 5 for more accurate data. Dynamic Names: Removed fallback placeholder names (no more hardcoded fake names). 100% Localization: Removed all hardcoded UI strings and moved absolutely everything into l10n and .arb dictionaries. 🏗️ Architecture Hardware JPEG Streaming: Switched to native hardware JPEG streaming for faster picture taking, completely replacing the heavy RepaintBoundary method. 🚧 IN THE WORKS: WebSocket migration! I will tackle that tomorrow to achieve real-time streaming. Here is a picture showing git graph (lol) and Berci as I was fixing up issues. Bye guys!"}, {"post_id": 25297, "ts": "2026-07-09T14:26:21Z", "hours": 6.7308, "text": "More seamless Setup! I have edited the Setups, so now, it is more seamless: When you Install the server, it spits out a QR-code, which you have to scan while setting up the Client app, they connect, and you have to set up the profile of the pet, and a 4 digit pin code, which will be for the WebClient that I am planning to make. After that, the phone spits out another QR code, which you have to scan with the Monitor, and it will connect automatically, and only then will the app let you in. Also, I added E2EE to the server - client connection, to make it more secure, and I also did some bugfixes. I will start to Polish the apps, make it so easy to set up that even somebody who doesn’t use technology day-to-day would be able to set it up perfectly. Bye guys!"}, {"post_id": 24346, "ts": "2026-07-07T21:10:21Z", "hours": 4.4408, "text": "Monitor ready, server working, Client UI is mostly done, we are shipping soon! I made a few adjustments today: Monitor: Synced theme with Client Fixed alignment issues Added Auto reconnect and Auto capture Monitor is basically finished, I don’t think I will add anything to the monitor before shipping now. New README.md: I completly redesigned the README, now in my opinion its almost perfect. Tomorrow, I will start to make a webpage for the project, and I might make a WebUI before the project ships, and add some more tests, but I will sleep on that. Bye guys!"}, {"post_id": 22216, "ts": "2026-07-04T16:05:40Z", "hours": 3.8428, "text": "Frontend Changes to PetTrack! Today I worked a lot on PetTrack, and I made a few small but nice changes: Zone Notifications: You now get notified if a pet enters or exits a zone. Battery Alerts: Get notifications if the monitor’s battery is low (can be set between 5% and 50%). Camera Placeholder: Added a placeholder picture for when the camera is offline. Pet Types: You can now set the type of pet you have. I’ve added a few common ones, but I can add more if needed! Dynamic Live Badge: Fixed the hardcoded “Live” text on the dashboard. Now it shows exactly when the picture was taken (e.g., “30 seconds ago”), and if it’s under 10 seconds, it will say “Live”. “Continuous” Video: It’s still using pictures, but instead of updating every 30 seconds, it now updates roughly every 2 seconds. UI Cleanup: Removed the zoom buttons from the Zones screen since they were unnecessary. Custom Zones & Icons: When adding a new zone, you can now assign it a category (play area, toilet, food, water, bed) with matching icons. I’ll add a fully customizable option later! Bug Fixes: Fixed some minor layout issues. That’s all I think. Bye guys!"}, {"post_id": 21821, "ts": "2026-07-03T23:05:28Z", "hours": 3.5933, "text": "Miscellaneous Updates to PetTrack! Hey guys! I know I haven’t posted in almost 2 weeks at this point. I needed a break from coding and doing work at the PC/PetTrack. We have a few miscellaneous updates to share: Custom Monitor IDs : You can now set a custom Monitor ID, and it will show up properly in the PetTrack app as well, instead of just defaulting to “Main Monitor”. Battery Status : You can now see the battery percentage and whether it’s charging directly in the app! I plan to add a feature later that will send a notification to the PetTrack Client app when the monitor phone’s battery is running low. Backend Testing : Added testing to the PetTrack server for both the WebSocket and REST API, so you can easily check if the API and WS are working correctly. I will put more effort and hours into the project soon, but I have a lot of other things going on besides this project, and I don’t want to risk burning out. Bye! P.S: This is Berci from a few days ago and I pushed everything to GH!"}, {"post_id": 12162, "ts": "2026-06-19T21:23:36Z", "hours": 5.9286, "text": "Hey guys! I haven’t posted a devlog in a few days now, I have been working on some stuff here, and I have to say that I have some very good news! We finally have a Client app! It is a work in progress, but it is something! I don’t remember everything I have changed in the code, but: API adjusted, added a layer of security, because the API wasn’t secured. Added zones to pettrack_server, and added an API to edit it, Added Database (maybe mentioned in last devlog) Takes pictures every 2 seconds, only saves every 30 seconds for 12 hours (will add a replay mode or something like that) pettrack_monitor almost fully done, only need to add some stuff here and there. pettrack_server is in an MVP state now, it works beautifully but some features are still missing before shipping pettrack_client has been made (not pushed to GH yet), works well, though I am pretty fking shyt in UI design, so I made the UI with stitch.withgoogle.com and coded some of it with Gemini, though it still needs a lot of work. Live camera somewhat works (TODO: need to add when watching in the app to show the new pictures (that are taken every 2 seconds and not the 30 seconds saved)) Shows which zone was the most used- Shows last interaction (movement) Last 15 activities (entered zone, left zone, will add more later ? (NEED IDEAS!)) You can add zones (see the live camera and set it via adding points on the picture) You can set a picture and name for your pet in the client app- Always changing welcome greetings No logo / face for the program yet, and no website, will start working on that later The Client app seems very stable for now, no issues found, pettrack_monitor has issues with focusing, server seems stable aswell. I am soon looking for testers for the program, before shipping I want to make sure that this is functional and useful for small pet owners, and what might work for me in my use case, it might not for somebody else, and I want to make it as stable as I am able to. Everything is opensource, available on https://github.com/szbnce/PetTrack (will push everything to GH tomorrow!), DM me on Slack if interested, currently only available for Android. I will start working on the UI and fix the bugs, and get back to you guys soon! Here are some pictures of the UI!"}, {"post_id": 10248, "ts": "2026-06-16T21:39:22Z", "hours": 2.5683, "text": "Hey guys! It’s been a long day, once again, but I have some good news! I have started working on PetTrack Client, started writing the UI and the functions of the app, but that’s when I realised that I still have no way of storing the data, analyzing the data and I don’t have any API routes where I could check or see the NON EXISTENT DATA! so, I left pettrack_client and started working on the backend, it’s getting somewhere, but I have not pushed changes to GH yet, because I haven’t finished it yet and it would not run in this state. I will try to finish changes with the backend tomorrow so I can start working on the frontend / client with real, actual data. Until then, here is a picture of PetTrack Monitor running on a somewhat low end Android 8.0 device and my IDE :D"}, {"post_id": 8371, "ts": "2026-06-13T22:29:10Z", "hours": 2.42, "text": "Good day everybody! It’s been a long day. I have done a lot of things today, mainly with pettrack_monitor. Basically: Firstly, I did a git rebase and made my last few commits make a bit more sense. There were commits that weren’t that useful or had the wrong name; it’s always better to have a good commit history. Next, I finally installed the app on a real device, and let’s just say, there were some problems. The flashlight was on while taking pictures, which is what I fixed first. It was quite easy, just one line: await _controller.setFlashMode(FlashMode.off); Afterward, it dawned on me that most people (including me) will use this app in Landscape mode, not Portrait. I fixed that issue next, but that itself came with a batch of new problems. The layout broke, like, fully. I couldn’t use the app at all, so I had to rewrite the whole layout with flexes and SizedBoxes; it was a pain in the a**. After this issue, instead of showing the SetupScreen every time the app opens, I made it a one-time thing and added a Settings menu and an About page. There were some issues with overflowing, but I fixed that as well. Now the app is fully functional. However, there is an issue I haven’t gotten around to fixing yet: when I exit the SetupScreen and go into MonitorScreen, the Xiaomi Camera API kills itself for whatever reason. I tried fixing it, but to no avail. It’s currently 12:30 AM, and I am very tired now. Tomorrow, I hope I will fix all remaining issues with the Monitor app and move onto the Server-side logic, zones, database, etc. And while doing that, I will start working on the Client-side app (at least an MVP) so I can start testing the app and server together. Berci is also looking forward to testing the app! (And don’t ask why he is there he is there because he wants to I have no idea why that’s good for him) Peace out!"}, {"post_id": 7131, "ts": "2026-06-11T22:16:46Z", "hours": 1.8947, "text": "We finally have the server in Docker up and running! I haven’t had much time to work on the project yesterday and today, but I started working on the Docker and Dockerfile, and well this is still whichcraft for me :p But, we are developing and we are getting ahead, and I hope that after the MVP for the server is working, I can start working on the client side MVP of the app, and we can start implementing features from there. I am very tired, and I have a long day tomorrow. Until then, there is another picture of Berci! P.S: Tomorrow I hope I can show some of the actual project!"}, {"post_id": 5844, "ts": "2026-06-09T19:49:41Z", "hours": 3.1944, "text": "Hey! Welcome to my project, PetTrack, this is the first Devlog of the project. I just recently got a rabbit, and while in school, I don’t know what she’s doing. And I assume a lot of animal parents face the same issue, or not an issue but just an uncomfortable feeling, maybe she/he got out, maybe they are doing something wrong, maybe they are not doing well, etc. This is what PetTrack aims to solve, so this uncomfortable feeling goes away, and you can be sure that your pet is safe and sound, while you are away. It uses an old phone as a “Monitor”, which will be attached to for example the cage of a pet, and connected to external power. Originally I wanted to make it so that there is no “central” computing, but after thinking about this for some time, and figuring that most of the people who are going to use this are going to use a close to min requirement phone (assuming low range old phone, and not a new flagship/new anything basically) and the issues with if the monitor dies for some issue, I decided on using a “central server” and using FastAPI with WebSockets to make the usage more seamless. It will be a simple Docker image that you will need to compose and run on a RPI or your server. The Client will be the “main” app, the one you will use the most, the one you’ll use daily. This is my last priority at the moment, let’s get the data first (Monitor), analyze and make use of the data (Server/backend), and the last is to see the data (Client). I’m open to any and all feedback on the project, any tips, help with Py/Flutter, would appreciate! Thanks for reading! Pic Description: My rabbit, named Berci, and an MVP of the server and Monitor."}]...
|
Title: PetTrack by @szabence | Stardance
Devlogs: Title: PetTrack by @szabence | Stardance
Devlogs:
Hey! Welcome to my project, PetTrack, this is the first Devlog of the project. I just recently got a rabbit, and while in school, I don’t know what she’s doing. And I assume a lot of animal parents face the same issue, or not an issue but just an uncomfortable feeling, maybe she/he got out, maybe they are doing something wrong, maybe they are not doing well, etc. This is what PetTrack aims to solve, so this uncomfortable feeling goes away, and you can be sure that your pet is safe and sound, while you are away. It uses an old phone as a “Monitor”, which will be attached to for example the cage of a pet, and connected to external power. Originally I wanted to make it so that there is no “central” computing, but after thinking about this for some time, and figuring that most of the people who are going to use this are going to use a close to min requirement phone (assuming low range old phone, and not a new flagship/new anything basically) and the issues with if the monitor dies for some issue, I decided on using a “central server” and using FastAPI with WebSockets to make the usage more seamless. It will be a simple Docker image that you will need to compose and run on a RPI or your server. The Client will be the “main” app, the one you will use the most, the one you’ll use daily. This is my last priority at the moment, let’s get the data first (Monitor), analyze and make use of the data (Server/backend), and the last is to see the data (Client). I’m open to any and all feedback on the project, any tips, help with Py/Flutter, would appreciate! Thanks for reading! Pic Description: My rabbit, named Berci, and an MVP of the server and Monitor.
We finally have the server in Docker up and running! I haven’t had much time to work on the project yesterday and today, but I started working on the Docker and Dockerfile, and well this is still whichcraft for me :p But, we are developing and we are getting ahead, and I hope that after the MVP for the server is working, I can start working on the client side MVP of the app, and we can start implementing features from there. I am very tired, and I have a long day tomorrow. Until then, there is another picture of Berci! P.S: Tomorrow I hope I can show some of the actual project!
Good day everybody! It’s been a long day. I have done a lot of things today, mainly with pettrack_monitor. Basically: Firstly, I did a git rebase and made my last few commits make a bit more sense. There were commits that weren’t that useful or had the wrong name; it’s always better to have a good commit history. Next, I finally installed the app on a real device, and let’s just say, there were some problems. The flashlight was on while taking pictures, which is what I fixed first. It was quite easy, just one line: await _controller.setFlashMode(FlashMode.off); Afterward, it dawned on me that most people (including me) will use this app in Landscape mode, not Portrait. I fixed that issue next, but that itself came with a batch of new problems. The layout broke, like, fully. I couldn’t use the app at all, so I had to rewrite the whole layout with flexes and SizedBoxes; it was a pain in the a**. After this issue, instead of showing the SetupScreen every time the app opens, I made it a one-time thing and added a Settings menu and an About page. There were some issues with overflowing, but I fixed that as well. Now the app is fully functional. However, there is an issue I haven’t gotten around to fixing yet: when I exit the SetupScreen and go into MonitorScreen, the Xiaomi Camera API kills itself for whatever reason. I tried fixing it, but to no avail. It’s currently 12:30 AM, and I am very tired now. Tomorrow, I hope I will fix all remaining issues with the Monitor app and move onto the Server-side logic, zones, database, etc. And while doing that, I will start working on the Client-side app (at least an MVP) so I can start testing the app and server together. Berci is also looking forward to testing the app! (And don’t ask why he is there he is there because he wants to I have no idea why that’s good for him) Peace out!
Hey guys! It’s been a long day, once again, but I have some good news! I have started working on PetTrack Client, started writing the UI and the functions of the app, but that’s when I realised that I still have no way of storing the data, analyzing the data and I don’t have any API routes where I could check or see the NON EXISTENT DATA! so, I left pettrack_client and started working on the backend, it’s getting somewhere, but I have not pushed changes to GH yet, because I haven’t finished it yet and it would not run in this state. I will try to finish changes with the backend tomorrow so I can start working on the frontend / client with real, actual data. Until then, here is a picture of PetTrack Monitor running on a somewhat low end Android 8.0 device and my IDE :D
Hey guys! I haven’t posted a devlog in a few days now, I have been working on some stuff here, and I have to say that I have some very good news! We finally have a Client app! It is a work in progress, but it is something! I don’t remember everything I have changed in the code, but: API adjusted, added a layer of security, because the API wasn’t secured. Added zones to pettrack_server, and added an API to edit it, Added Database (maybe mentioned in last devlog) Takes pictures every 2 seconds, only saves every 30 seconds for 12 hours (will add a replay mode or something like that) pettrack_monitor almost fully done, only need to add some stuff here and there. pettrack_server is in an MVP state now, it works beautifully but some features are still missing before shipping pettrack_client has been made (not pushed to GH yet), works well, though I am pretty fking shyt in UI design, so I made the UI with stitch.withgoogle.com and coded some of it with Gemini, though it still needs a lot of work. Live camera somewhat works (TODO: need to add when watching in the app to show the new pictures (that are taken every 2 seconds and not the 30 seconds saved)) Shows which zone was the most used- Shows last interaction (movement) Last 15 activities (entered zone, left zone, will add more later ? (NEED IDEAS!)) You can add zones (see the live camera and set it via adding points on the picture) You can set a picture and name for your pet in the client app- Always changing welcome greetings No logo / face for the program yet, and no website, will start working on that later The Client app seems very stable for now, no issues found, pettrack_monitor has issues with focusing, server seems stable aswell. I am soon looking for testers for the program, before shipping I want to make sure that this is functional and useful for small pet owners, and what might work for me in my use case, it might not for somebody else, and I want to make it as stable as I am able to. Everything is opensource, available on https://github.com/szbnce/PetTrack (will push everything to GH tomorrow!), DM me on Slack if interested, currently only available for Android. I will start working on the UI and fix the bugs, and get back to you guys soon! Here are some pictures of the UI!
Miscellaneous Updates to PetTrack! Hey guys! I know I haven’t posted in almost 2 weeks at this point. I needed a break from coding and doing work at the PC/PetTrack. We have a few miscellaneous updates to share: Custom Monitor IDs : You can now set a custom Monitor ID, and it will show up properly in the PetTrack app as well, instead of just defaulting to “Main Monitor”. Battery Status : You can now see the battery percentage and whether it’s charging directly in the app! I plan to add a feature later that will send a notification to the PetTrack Client app when the monitor phone’s battery is running low. Backend Testing : Added testing to the PetTrack server for both the WebSocket and REST API, so you can easily check if the API and WS are working correctly. I will put more effort and hours into the project soon, but I have a lot of other things going on besides this project, and I don’t want to risk burning out. Bye! P.S: This is Berci from a few days ago and I pushed everything to GH!
Frontend Changes to PetTrack! Today I worked a lot on PetTrack, and I made a few small but nice changes: Zone Notifications: You now get notified if a pet enters or exits a zone. Battery Alerts: Get notifications if the monitor’s battery is low (can be set between 5% and 50%). Camera Placeholder: Added a placeholder picture for when the camera is offline. Pet Types: You can now set the type of pet you have. I’ve added a few common ones, but I can add more if needed! Dynamic Live Badge: Fixed the hardcoded “Live” text on the dashboard. Now it shows exactly when the picture was taken (e.g., “30 seconds ago”), and if it’s under 10 seconds, it will say “Live”. “Continuous” Video: It’s still using pictures, but instead of updating every 30 seconds, it now updates roughly every 2 seconds. UI Cleanup: Removed the zoom buttons from the Zones screen since they were unnecessary. Custom Zones & Icons: When adding a new zone, you can now assign it a category (play area, toilet, food, water, bed) with matching icons. I’ll add a fully customizable option later! Bug Fixes: Fixed some minor layout issues. That’s all I think. Bye guys!
Monitor ready, server working, Client UI is mostly done, we are shipping soon! I made a few adjustments today: Monitor: Synced theme with Client Fixed alignment issues Added Auto reconnect and Auto capture Monitor is basically finished, I don’t think I will add anything to the monitor before shipping now. New README.md: I completly redesigned the README, now in my opinion its almost perfect. Tomorrow, I will start to make a webpage for the project, and I might make a WebUI before the project ships, and add some more tests, but I will sleep on that. Bye guys!
More seamless Setup! I have edited the Setups, so now, it is more seamless: When you Install the server, it spits out a QR-code, which you have to scan while setting up the Client app, they connect, and you have to set up the profile of the pet, and a 4 digit pin code, which will be for the WebClient that I am planning to make. After that, the phone spits out another QR code, which you have to scan with the Monitor, and it will connect automatically, and only then will the app let you in. Also, I added E2EE to the server - client connection, to make it more secure, and I also did some bugfixes. I will start to Polish the apps, make it so easy to set up that even somebody who doesn’t use technology day-to-day would be able to set it up perfectly. Bye guys!
🛠️ BUGFIXES! BUGFIXES! I didn’t really add any new features this time, but rather focused on fixing and polishing already existing features. 🔒 Security and Stability Token Generation: I removed hardcoded “placeholder” tokens; the system now creates a new API token seamlessly. Storage Limits: Added a maximum 500 picture limit on the server, so it doesn’t fill up the storage if the cleanup task fails. Syntax Fixes: Fixed a broken dictionary on the server which threw garbage JSON. ✨ UI and Usability Notification Cooldown: Added a 1-minute cooldown between notifications to prevent spam. Better Statistics: Now the Activities tab shows 50 events instead of 5 for more accurate data. Dynamic Names: Removed fallback placeholder names (no more hardcoded fake names). 100% Localization: Removed all hardcoded UI strings and moved absolutely everything into l10n and .arb dictionaries. 🏗️ Architecture Hardware JPEG Streaming: Switched to native hardware JPEG streaming for faster picture taking, completely replacing the heavy RepaintBoundary method. 🚧 IN THE WORKS: WebSocket migration! I will tackle that tomorrow to achieve real-time streaming. Here is a picture showing git graph (lol) and Berci as I was fixing up issues. Bye guys!
now i understand why web developers are all bald and angry… Okkkay so, little bit of a backgound here, I do not agree on the fact that I should pay for FOSS apps to be put on the play store and app store, that for one company i should pay 25 bucks once and then i can put my app on the app store and i have to pay 100 BUCKS YEARLY TO APPLE. So, instead of creating an app for iOS, since you can’t really sideload (there are ways for people in Europe and you can jailbreak bla bla bla…) and this app is made for ordinary people. Not developers. So, as a last resort, I am making a WebClient and WebMonitor, so the apps are able to run without even installing anything. Obviously the installed apps will run better and feel better, but then no iOS support, which I did not want. So, I started working with AI on a WebClient and WebMonitor and started learning JavaScript, but that…. Dart next to Javascript is a kids game honestly, very hard, I tried to make it easier for me by using TailwindCSS which I have some experience in, but it wasn’t that easy. To eliminate AI slop, I have a great Web developer friend (became bald at the bold age of 30), and he’ll monitor the code and check if it is alright for “prod”…
🚀 WebClient is getting ready! I’ve done multiple things with the WebClient over the last 4 hours, and we are getting closer and closer to shipping! Here is a quick rundown of the progress: 🛠️ Key Features & Updates Unified Multi-Mode: You can now choose whether you want to use a device as a Client (Viewer) or a Monitor (Camera). Zone Management: Zone adding now works! (Showing current zones is still slightly broken, but we are getting there). Event Tracking: Zone enter/exit detection is fully functional. Dashboard Stats: Added panels to show “Last seen” and “Most seen” locations. Pet Profiles: You can now edit your pet’s profile directly from the Settings tab. Settings Reset: Added the ability to wipe all local settings if you want a fresh start. 🎨 UI & UX Polish Dark Mode: Synced theme with Client, dark and light mode aswell. Cleaned up the UI: Removed all unnecessary buttons. P.S. Berci got vaccinated today! 💉🐇 So now he’s immune to both physical viruses and mental breakdowns over JavaScript!
The Flutter apps and the Server is 99% done until shipping! This is rather a bigger devlog, I didn’t make a more smaller ones, but let’s see what I’ve done: Easier pairing : Now instead of using a qr code (which in the Docker terminal is unreliable), you get a 4 number pairing code, which you can use to communicate the 64 char JWT token. It’s much easier, and much more reliable. Docker : I implemented Docker, but it seems like at the moment that it only really works on MacOS, i might phase Docker out and make setup commands for each, maybe a oneliner with curl, or something like that. Bugfixes : Lots of bugfixes in those 6,5 hours, I can’t even list all of them, connectivity issues, pairing issues, camera issues, UI Cleanup : I removed developer overlays from the web e.g Eruda mobile console overlay. I will be focusing a lot more on the Mock API for the demo site, and polishing for Shipping EXCEPT for one feature that I still want to add, and that would be insanely good. Bye guys!
Hey guys.. Its been 17 days since the last Devlog, I dont even know what I “upgraded” or didn’t. I wont’t try to make it a big devlog or anything, really i just want to get the hours logged so I can start fresh. I’ve decided to ditch all 3 (pettrack_monitor, pettrack_client and pettrack_web) codebases and rewrite everything as one flutter app. Making sure 4 sections of the app written in 3 different languages wasn’t easy on my level so I decided to ditch all and write one “pettrack_app” codebase. It will work on Android, iOS and Web, and for iOS users also PWA app, so you don’t have to install anything, and it will all work under one codebase, so everything will be the same across all devices. So. I don’t know when I will finish or anything, or write the next devlog, because I have so many things to do this month, soo…
PetTrack Demo is finally here! I haven’t worked on PetTrack in the past 1,5 months, mostly because I just couldn’t bring myself to code, and I am going on vacation as I am writing this, and I figured, omg, if i come home, it will be already september, and besides school, i will definetly not finish this, and then, what was I working for for days on end? So, I got my sxit together, and started working on the project. Sadly, because of the time, I had to use AI so I will finish until I leave for vacation. I almost did not. It’s 3:45 AM, I left 2 hours ago, and I set up the server 15 whole minutes before leaving my house. So it was calculated, but I managed. Unified Flutter codebase: I merged the pettrack_client , pettrack_montior and pettrack_web , into one package, and is written in Flutter. The app is entirely in Flutter, I kept designs of the Client so it won’t look very different. Deployment & OS Support: The new one app method is Docker compatible, so the project will offer a Docker option, and a non-docker MacOS and Linux native installer, and a Windows installer aswell, without docker :) Branching: The one where I used AI has been moved to a new branch "allFlutter" . iOS Support: I initally did not want to make an iOS version because I don’t really agree with the yearly 100 usd developer program payment, and I don’t really agree with Google Play 25usd purchase aswell, but that’s very much more manageable than a yearly model, on a FOSS app. Anyways, I will publish the .ipa file, and do what you want with it :) If you have the courage and understanding, you can jailbreak and install it indefinetly, or you can sideload it, though you will have to renew it every week. If you don’t want to do that, you can of course use the Web version in a browser, it will work the exact same way, they are the same codebase under. Web support: This was my original plan to make PetTrack work on iOS devices, but then, I decided why not make it fully work on any browser? One codebase, the Webapp, the Android app and iOS app will work the EXACT SAME WAY! if you want to install a full app, you may, but if you don’t, you have all options. Medical panel: I think I have made a devlog about that, or mentioned that, but I will write it once again. We have a Medical tab now, where you will be able to track Medications and get notifications to give them to your pet, and the Vaccines tab, where you can track what the pet has gotten, when, and when its next Due. You can also set more colors. Replay: You can now replay movement. Currently for some reason, It does not work (I started implementing it at 0:30 AM, left at 1:30 so I could’ve expected that), or atleast it does not work from the browser. If i log into the server, and check it, the videos are there, and visible. It records a few seconds before and after the movement. Demo! Now you can check out PetTrack at: 👉 https://pettrackdemo.szabence.com How to access: Select language (colors are broken i know) Select Viewer For IP write asd or something, just dont leave it empty For password, write 8068 Press next, and you will see it asking if you want to go into Demo Press yes, and you are in! Its a quite basic demo, its the same codebase, just no server behind. You can add medications, test zones, etc. After you close the tab, everything will be deleted. I will test the project as I am going about my week, fix errors at night, and I will ship the project next week. Have a great week guys, and thank you for watching the project.
PetTrack has been released! Hello guys! I’m not going to mess around with Markdown for this last devlog, I have been testing the project for 2 weeks now, and it is working great. I fixed up minor bugs that I found, added 5 AI-translated languages for more multilang support, though Hungarian and English has been translated by me, so those are definetly correct :) I changed on the UI a bit, removed the last seen and most seen cards from the dashboard and changed it to a diagram about the Zone visits, and changed the Medical UI cards a bit. Also made the resolution in the app better, now you can make pictures from the app, and instantly share them, replays work now on both iOS and Android. The first release of PetTrack has been finally published on GitHub, so please go and check it out! https://github.com/szbnce/PetTrack/releases/tag/1.0.0 Thank you everybody who has been though this journey over 3 months with me. Thank you!
PetTrack reship no.2 Hey guys, I have shipped the project last week, but I got rejected because I’ve used the project logo as banner and not a screenshot… Anyways, I fixed some bugs that Ive seen since shipping, which was the Notification, on both iOS and Android and Web, it wasn’t working correctly anywhere, but because of lack of time at the moment, I have removed the Notification option. on iOS it will never work self-hosted, because it requires apple dev account and the app to be on the app store or have a real backend behind it, or something like that I’ve read. I also removed the Sync with watch button from the iOS builds and Web builds, since there is only WearOS build. Google play! I have started the process to put the app on the Google Play. I was originally against this, as y’all have read in one of the first devlogs, but I thought, 25 bucks once isn’t that much, so PetTrack will be on the Play store soon, but by the looks of things, only after Stardance has already finished. WearOS I started school once again, and I couldn’t always get to my phone so I have made a minimalist app to use on the watch, it’s not that full, you can only see 1 frame / 5 seconds, and you can’t edit anything, only check the live feed, check the Monitors battery percentage and the last seen in X zone. I will ship my project once again, thank you for reading! EDIT: I did not know I just need recertification instead of a full reship lol
Ships:
PetTrack! A beautiful Pet Monitoring system that upcycles old smartphones into IP-cameras that you can use to see your small pet I made this project because I took in a Rabbit in May 2026 and I didn’t know what she was doing when i wasn’t home, so I decided to code this app that you can install on any Android 7+ / iPhone 6s or newer device, and use it to check on your pet, with a beautiful UI, Zone tracking, replays, medicine and vaccine tracking, and a lot more :) The hardest part was, getting used to writing Flutter. I have never used Flutter in the past, but I read about it and I liked the mentality and the mechanics of the code or how should I say, and I decided to give it a go. I love it. Simple but effective, and I can use this 1 codebase on the web, on my iPhone, on my Android and even on my WearOS smartwatch :) The project is working, and you can check it by the bottom below, select language, select Client and press Demo mode, it will show the UI. You can see it working in action on the screenshots. Check the README, and thank you for reading this!...
|
1794016419.407576
|
1794102819.407576
|
|
61138
|
brownianmotionwithstatisticalforces by @vavrup | S brownianmotionwithstatisticalforces by @vavrup | Stardance...
|
vavrup
|
0
|
5.69
|
0
|
[]
|
[{"post_id": 68845, "ts": "202 [{"post_id": 68845, "ts": "2026-09-15T21:05:14Z", "hours": 5.6928, "text": "My hours are wrong, please help! Also I just started my project and I can explain it more. First I can explain my project. So essentially Brownian Motion is briefly a random walk process that puts stochastic noise with physical restraints on any kind of object, here being a molecule. In the example shown here in Wikipedia, its really just a arbitrary particle like a dust particle in a sea of many many many vibrating molecules. You see there it traces out a “random walk” and thats what a random walk means, a path traced from stochastic equations that are random. Imagine that on the 3D Scale for Proteins or DNA! We can essentially represent them by 3 coordinates per basic unit (amino acid or nucleotide). So right now there are alot of models that try to predict these 3D structures using Machine Learning models. And after some work and math, I have seen that these machine learning models especially one named Boltz-2 use a stochastic element called a gradient log potential. This is similar to a gradient force potential used in MD (only difference: MD molecular dynamics is scaled by thermal factor) and it has been proved they are proportional, and in the same direction. So I thought, maybe I could make a little barebones app! So far, I was able to get through half the physics engine. I have yet to design the GUI but its probably going to be via TKinter. Now to the real problem. Hackatime is faking my hours! I did NOT do that many hours. I would think maybe a max of 1 hours. And also it is looking at other folders that are not related to my project from an earlier vibe coding obsession of mine that I have stopped. Anyone have any ideas or suggestions to get my real hours? Thanks!"}]...
|
Title: brownianmotionwithstatisticalforces by @vav Title: brownianmotionwithstatisticalforces by @vavrup | Stardance
Devlogs:
My hours are wrong, please help! Also I just started my project and I can explain it more. First I can explain my project. So essentially Brownian Motion is briefly a random walk process that puts stochastic noise with physical restraints on any kind of object, here being a molecule. In the example shown here in Wikipedia, its really just a arbitrary particle like a dust particle in a sea of many many many vibrating molecules. You see there it traces out a “random walk” and thats what a random walk means, a path traced from stochastic equations that are random. Imagine that on the 3D Scale for Proteins or DNA! We can essentially represent them by 3 coordinates per basic unit (amino acid or nucleotide). So right now there are alot of models that try to predict these 3D structures using Machine Learning models. And after some work and math, I have seen that these machine learning models especially one named Boltz-2 use a stochastic element called a gradient log potential. This is similar to a gradient force potential used in MD (only difference: MD molecular dynamics is scaled by thermal factor) and it has been proved they are proportional, and in the same direction. So I thought, maybe I could make a little barebones app! So far, I was able to get through half the physics engine. I have yet to design the GUI but its probably going to be via TKinter. Now to the real problem. Hackatime is faking my hours! I did NOT do that many hours. I would think maybe a max of 1 hours. And also it is looking at other folders that are not related to my project from an earlier vibe coding obsession of mine that I have stopped. Anyone have any ideas or suggestions to get my real hours? Thanks!...
|
1793645939.9103057
|
1794250739.9103057
|
|
52605
|
actionator by @evmaagca | Stardance
|
evmaagca
|
1
|
41.27
|
711
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T22:17:28Z", "hours": 41.0, "multiplier": 17.32, "payout": 711, "blessing": "neutral", "text": "#13 all of the features of this game: The player can move, attack, dash, use charged attacks, and build combos while managing their health and stamina. Players can collect apples, earn points, open chests, and find upgrades throughout the levels. The game includes different terrain, enemies, sound effects, animations, and visual effects to make the gameplay more engaging. There is also a timer and high score system that tracks how far and how quickly the player gets. The game has a title screen, pause menu, controls, credits, run results, and achievement menu where players can see their accomplishments. The overall goal is to survive as long as possible and reach Level 15. finally finished what I believe as my favorite coding project! I am so proud of this game and it is the first one I can truly call a success. I learned so much when making this and am hoping to continue with this knowledge on the next game. my final question is “how far can you go?”", "repo": "https://github.com/evacoffee/actionator", "demo": "https://evmaagca.itch.io/actionatior"}]...
|
[{"post_id": 68843, "ts": "202 [{"post_id": 68843, "ts": "2026-09-15T20:58:50Z", "hours": 0.2667, "text": "#14 just rewrote some code that was bothering me, also I forgot to write why I made this code, I’m hoping to get a Bambu Lab A1 3D printer to help bring parts of the project into the real world. If you’re rating my project, any support toward helping me reach that goal would mean a lot! Thank you in advance!"}, {"post_id": 65010, "ts": "2026-09-09T20:00:19Z", "hours": 7.0094, "text": "#12 completely updated the title screen (now has moving slime!! + buttons for other stuff (still kinda bad) will update again"}, {"post_id": 63138, "ts": "2026-09-06T19:31:16Z", "hours": 4.5922, "text": "#11 added heartbeatsound, bestscore/bestlevel, created combo score thingy, fixed double attack, added chests + upgrades in them"}, {"post_id": 61183, "ts": "2026-09-04T00:00:21Z", "hours": 6.0297, "text": "#10 added 2 levels, added feature where you gain a heart after 5 apples, added flickering during dashing + no damage when dashing, redid player, fixed the apple collection and scoring system, added a end of run screen with stats, added paused menu, added title screen, added stamina bar, added dashes and a second stronger attack"}, {"post_id": 59523, "ts": "2026-09-01T12:07:31Z", "hours": 4.0561, "text": "#9 added another level and tried (key word tried) to add collectables with a score hud for like 2 hours straight until i realized i just forgot to capitalize something"}, {"post_id": 58069, "ts": "2026-08-30T12:41:24Z", "hours": 2.5608, "text": "#8 added 2 more levels, more notes, changed the music, fixed a bug that was hindering the loading of levels and fixed (again) the textboxes"}, {"post_id": 56988, "ts": "2026-08-29T01:33:08Z", "hours": 3.47, "text": "#7 added 2 more levels, also added words to some levels using canvaslayer, panels and layers!!"}, {"post_id": 55295, "ts": "2026-08-27T01:16:44Z", "hours": 1.3264, "text": "#6 kind of short but I added 2 more levels and fixed a few more bugs with the nodes :0"}, {"post_id": 55159, "ts": "2026-08-26T17:09:10Z", "hours": 2.4722, "text": "#5 added more levels, fixed some music bugs, and added level numbers on the levels themselves"}, {"post_id": 54972, "ts": "2026-08-26T12:27:23Z", "hours": 2.1908, "text": "#4 added hearts after killing slimes, added bg music and added more levels with water"}, {"post_id": 54072, "ts": "2026-08-24T20:54:04Z", "hours": 2.8656, "text": "#3 added player health & damage, created a fading black and white screen between levels and added 2 more levels (there are more to the scripts not just what i uploaded)"}, {"post_id": 52713, "ts": "2026-08-23T00:55:19Z", "hours": 1.5569, "text": "#2 added the tilemaplayer, the level itself, and the foliage around it!"}, {"post_id": 52004, "ts": "2026-08-22T00:56:02Z", "hours": 2.9169, "text": "#1 adding character/slime/config movements basically all i did was add all the main entities, added sword, combat system & attack hitbox, and player/enemy movement and animation."}]...
|
Title: actionator by @evmaagca | Stardance
Devlog Title: actionator by @evmaagca | Stardance
Devlogs:
#1 adding character/slime/config movements basically all i did was add all the main entities, added sword, combat system & attack hitbox, and player/enemy movement and animation.
#2 added the tilemaplayer, the level itself, and the foliage around it!
#3 added player health & damage, created a fading black and white screen between levels and added 2 more levels (there are more to the scripts not just what i uploaded)
#4 added hearts after killing slimes, added bg music and added more levels with water
#5 added more levels, fixed some music bugs, and added level numbers on the levels themselves
#6 kind of short but I added 2 more levels and fixed a few more bugs with the nodes :0
#7 added 2 more levels, also added words to some levels using canvaslayer, panels and layers!!
#8 added 2 more levels, more notes, changed the music, fixed a bug that was hindering the loading of levels and fixed (again) the textboxes
#9 added another level and tried (key word tried) to add collectables with a score hud for like 2 hours straight until i realized i just forgot to capitalize something
#10 added 2 levels, added feature where you gain a heart after 5 apples, added flickering during dashing + no damage when dashing, redid player, fixed the apple collection and scoring system, added a end of run screen with stats, added paused menu, added title screen, added stamina bar, added dashes and a second stronger attack
#11 added heartbeatsound, bestscore/bestlevel, created combo score thingy, fixed double attack, added chests + upgrades in them
#12 completely updated the title screen (now has moving slime!! + buttons for other stuff (still kinda bad) will update again
#14 just rewrote some code that was bothering me, also I forgot to write why I made this code, I’m hoping to get a Bambu Lab A1 3D printer to help bring parts of the project into the real world. If you’re rating my project, any support toward helping me reach that goal would mean a lot! Thank you in advance!
Ships:
#13 all of the features of this game: The player can move, attack, dash, use charged attacks, and build combos while managing their health and stamina. Players can collect apples, earn points, open chests, and find upgrades throughout the levels. The game includes different terrain, enemies, sound effects, animations, and visual effects to make the gameplay more engaging. There is also a timer and high score system that tracks how far and how quickly the player gets. The game has a title screen, pause menu, controls, credits, run results, and achievement menu where players can see their accomplishments. The overall goal is to survive as long as possible and reach Level 15. finally finished what I believe as my favorite coding project! I am so proud of this game and it is the first one I can truly call a success. I learned so much when making this and am hoping to continue with this knowledge on the next game. my final question is “how far can you go?”...
|
1793936868.574688
|
1794023268.574688
|
|
16615
|
My first slack bot! by @b_srinivas | Stardance
|
b_srinivas
|
0
|
0.9
|
0
|
[]
|
[{"post_id": 6884, "ts": "2026 [{"post_id": 6884, "ts": "2026-06-11T15:22:00Z", "hours": 0.9017, "text": "devlog 1 (it works!)"}]...
|
Title: My first slack bot! by @b_srinivas | Starda Title: My first slack bot! by @b_srinivas | Stardance
Devlogs:
devlog 1 (it works!)...
|
1793969533.1462674
|
1794574333.1462674
|
|
60734
|
OMOSVR by @Netab | Stardance
|
Netab
|
0
|
8.46
|
0
|
[]
|
[{"post_id": 68828, "ts": "202 [{"post_id": 68828, "ts": "2026-09-15T20:22:03Z", "hours": 3.6706, "text": "fixed every hardware problem and now both the tag and the anchor receives from the calibrator and the tag responds to the calibrator correctly. Next I will develop the angle of arrival calculation and optimize it"}, {"post_id": 67472, "ts": "2026-09-13T16:10:02Z", "hours": 2.4244, "text": "spent 2 days trying to find out why the tag wasnt receiving anything turns out the decoupling capacitor was too far so it wasnt getting a stable voltage"}, {"post_id": 65624, "ts": "2026-09-10T21:21:41Z", "hours": 2.3636, "text": "I am currently writing the code for both the anchor and the tag that will be tracked. Right now the anchor works on its own but the tag seems to have a hardware problem"}]...
|
Title: OMOSVR by @Netab | Stardance
Devlogs:
I am Title: OMOSVR by @Netab | Stardance
Devlogs:
I am currently writing the code for both the anchor and the tag that will be tracked. Right now the anchor works on its own but the tag seems to have a hardware problem
spent 2 days trying to find out why the tag wasnt receiving anything turns out the decoupling capacitor was too far so it wasnt getting a stable voltage
fixed every hardware problem and now both the tag and the anchor receives from the calibrator and the tag responds to the calibrator correctly. Next I will develop the angle of arrival calculation and optimize it...
|
1793645560.7777572
|
1794250360.7777572
|
|
53885
|
Wario-Ware Game by @vanshikagera | Stardance
|
vanshikagera
|
0
|
2.7
|
0
|
[]
|
[{"post_id": 68819, "ts": "202 [{"post_id": 68819, "ts": "2026-09-15T20:10:19Z", "hours": 0.6342, "text": "background of level 1 is complete! still some debugging to do but that’s a task for tomorrow :)"}, {"post_id": 60439, "ts": "2026-09-02T19:28:36Z", "hours": 0.8194, "text": "first mini game almost done! here’s the character I chose :)"}, {"post_id": 58808, "ts": "2026-08-31T12:05:01Z", "hours": 0.8256, "text": "upgrading the game little by little whenever I get time! small update on level 1 :)"}, {"post_id": 58258, "ts": "2026-08-30T17:00:47Z", "hours": 0.4206, "text": "Today I set up the title screen for my game in Godot. I added Start, Settings, and Quit buttons and connected the Start button to the level scene. I also set up GitHub and Hackatime tracking for the project. Next, I’m going to build the level and start working on the actual gameplay."}]...
|
Title: Wario-Ware Game by @vanshikagera | Stardanc Title: Wario-Ware Game by @vanshikagera | Stardance
Devlogs:
Today I set up the title screen for my game in Godot. I added Start, Settings, and Quit buttons and connected the Start button to the level scene. I also set up GitHub and Hackatime tracking for the project. Next, I’m going to build the level and start working on the actual gameplay.
upgrading the game little by little whenever I get time! small update on level 1 :)
first mini game almost done! here’s the character I chose :)
background of level 1 is complete! still some debugging to do but that’s a task for tomorrow :)...
|
1793509122.723187
|
1794113922.723187
|
|
57655
|
polarware by @Polar | Stardance
|
Polar
|
0
|
8.08
|
0
|
[]
|
[{"post_id": 68809, "ts": "202 [{"post_id": 68809, "ts": "2026-09-15T19:42:00Z", "hours": 8.0814, "text": "Im working on a WarioWare Game. It’s called AeroWare, it’s ispired by frutiger aero, in fact I will add minigames that are in this style. I spent many hours becouse I did all the graphics, you can look the timelapses on : “ https://lapse.hackclub.com/user/@antoniomigliazza ”. I’d like to add few songs, mabye made by my self, but in future."}]...
|
Title: polarware by @Polar | Stardance
Devlogs:
I Title: polarware by @Polar | Stardance
Devlogs:
Im working on a WarioWare Game. It’s called AeroWare, it’s ispired by frutiger aero, in fact I will add minigames that are in this style. I spent many hours becouse I did all the graphics, you can look the timelapses on : “ https://lapse.hackclub.com/user/@antoniomigliazza ”. I’d like to add few songs, mabye made by my self, but in future....
|
1793451005.9481628
|
1794055805.9481628
|
|
57306
|
Pixel app icons by @Dwagron | Stardance
|
Dwagron
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T19:36:48Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Finally, up to shipping the app icons! I quite like how they look and hope some of you use them or make some of your own. They only work with Samsung (sorry to disappoint). Instructions on Github ReadMe to use :]", "repo": "https://github.com/D-wagron/Pixel-icons", "demo": "https://github.com/D-wagron/Pixel-icons/releases/tag/Production"}]...
|
[{"post_id": 68797, "ts": "202 [{"post_id": 68797, "ts": "2026-09-15T19:25:21Z", "hours": 0.3408, "text": "Apps done for now, to be shipped soon"}, {"post_id": 59912, "ts": "2026-09-01T22:54:44Z", "hours": 0.3008, "text": "Finished Pixel Apps so far, feel free to criticise"}]...
|
Title: Pixel app icons by @Dwagron | Stardance
De Title: Pixel app icons by @Dwagron | Stardance
Devlogs:
Finished Pixel Apps so far, feel free to criticise
Apps done for now, to be shipped soon
Ships:
Finally, up to shipping the app icons! I quite like how they look and hope some of you use them or make some of your own. They only work with Samsung (sorry to disappoint). Instructions on Github ReadMe to use :]...
|
1794023456.7050645
|
1794109856.7050645
|
|
62239
|
Pitchly by @tahafaisal | Stardance
|
tahafaisal
|
0
|
1.95
|
0
|
[]
|
[{"post_id": 68795, "ts": "202 [{"post_id": 68795, "ts": "2026-09-15T19:23:08Z", "hours": 1.9464, "text": "mvp is ready"}]...
|
Title: Pitchly by @tahafaisal | Stardance
Devlogs Title: Pitchly by @tahafaisal | Stardance
Devlogs:
mvp is ready...
|
1793652933.2428725
|
1794257733.2428725
|
|
57003
|
Jamly by @prymeknona | Stardance
|
prymeknona
|
1
|
37.0
|
417
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T19:34:18Z", "hours": 37.0, "multiplier": 11.2, "payout": 417, "blessing": "neutral", "text": "I built Jamly, a platform where musicians can find other musicians, discover people nearby, and connect to create music together. The hardest part was building the backend and messaging system, and I’m proud that Jamly is now live and ready to use!", "repo": "https://github.com/tadeusz12121/baza_muzykow", "demo": "https://www.jamly.pl"}]...
|
[{"post_id": 68789, "ts": "202 [{"post_id": 68789, "ts": "2026-09-15T19:11:40Z", "hours": 1.7944, "text": "Improved the look of the login form, the .HEIC images upload on group chat works now"}, {"post_id": 67662, "ts": "2026-09-13T20:19:49Z", "hours": 2.1094, "text": "Added nearby musician search using GPS coordinates and Mongodb geolocation"}, {"post_id": 67201, "ts": "2026-09-13T08:10:12Z", "hours": 3.2406, "text": "Locked down profile picture uploads with size/type limits, added rate limiting on login/registration. Built a real-time group chat from scratch with Socket.IO including image uploads compressed on the fly with sharp"}, {"post_id": 66731, "ts": "2026-09-12T16:56:10Z", "hours": 2.4583, "text": "better profile ui"}, {"post_id": 66173, "ts": "2026-09-11T20:37:22Z", "hours": 2.8572, "text": "still working on a chat design"}, {"post_id": 65610, "ts": "2026-09-10T21:01:22Z", "hours": 3.1111, "text": "Built a notification system for incoming messages"}, {"post_id": 64814, "ts": "2026-09-09T14:21:29Z", "hours": 4.4819, "text": "Added a private chat feature"}, {"post_id": 62913, "ts": "2026-09-06T13:30:01Z", "hours": 8.2556, "text": "register form"}, {"post_id": 59712, "ts": "2026-09-01T17:12:53Z", "hours": 4.0675, "text": "some css now"}, {"post_id": 59473, "ts": "2026-09-01T10:38:19Z", "hours": 1.4558, "text": "Still working on a backend and added some new features the html"}, {"post_id": 59393, "ts": "2026-09-01T05:45:52Z", "hours": 3.3919, "text": "Built the backend for my musician networking platform. Added authentication checks and a musician search API with filters for instrument, skill level, and city."}]...
|
Title: Jamly by @prymeknona | Stardance
Devlogs:
Title: Jamly by @prymeknona | Stardance
Devlogs:
Built the backend for my musician networking platform. Added authentication checks and a musician search API with filters for instrument, skill level, and city.
Still working on a backend and added some new features the html
some css now
register form
Added a private chat feature
Built a notification system for incoming messages
still working on a chat design
better profile ui
Locked down profile picture uploads with size/type limits, added rate limiting on login/registration. Built a real-time group chat from scratch with Socket.IO including image uploads compressed on the fly with sharp
Added nearby musician search using GPS coordinates and Mongodb geolocation
Improved the look of the login form, the .HEIC images upload on group chat works now
Ships:
I built Jamly, a platform where musicians can find other musicians, discover people nearby, and connect to create music together. The hardest part was building the backend and messaging system, and I’m proud that Jamly is now live and ready to use!...
|
1794023324.1298647
|
1794109724.1298647
|
|
2351
|
Kernel Panic Tower Defence by @teamlewiscrafty | S Kernel Panic Tower Defence by @teamlewiscrafty | Stardance...
|
teamlewiscrafty
|
1
|
48.0
|
745
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T20:46:27Z", "hours": 48.0, "multiplier": 15.59, "payout": 745, "blessing": "neutral", "text": "Kernel Panic Hold off malware to give your firewall time to be repaired in this tower defence game prototype built using the Godot engine ! It is inspired by 1990s Unix systems and sci-fi classics like ‘The Matrix’. Play the demo at https://gianthotdog.itch.io/Kernel-Panic The game demo includes: Multiple levels including a tutorial GRUB-style menu A settings menu (Audio settings, Credits, VSync settings) A config file system so settings persist across play sessions An upgrade tree that contains global upgrades to towers and XP gains An XP and skill point system for purchasing those upgrades 4 distinct types of towers with adjustable targeting priorities Several enemy types Custom resources to handle: Single tower upgrades Enemy counts in waves Global upgrades Controls: Enter to skip startup sequence Click to select / interact / modify values AI: AI was used to write about 50 lines of code for the two shaders, and very occasionally for solving persistent bugs. It was only used for bug fixes after I tried repeatedly and failed to find a solution myself. It was also used for some feedback on aesthetic choices. All assets were designed by hand. All AI code was reviewed before implementation. Credits: Initial prototyping asset pack by Kenney Music by iamoneabe: https://opengameart.org/content/trunkful-of-junk", "repo": "https://github.com/GiantHotdog/tower-defence-game", "demo": "https://gianthotdog.itch.io/kernel-panic"}]...
|
[{"post_id": 68782, "ts": "202 [{"post_id": 68782, "ts": "2026-09-15T18:58:47Z", "hours": 5.0969, "text": "Improving the global upgrade system Additions : Support for panning around the upgrade tree More upgrades ! Added icons to upgrades Added file saving for XP earned Allow accessing the skill tree from the menu Changes: Level completion is now tracked across multiple play sessions Refined “Currently: …” messages in the upgrade tree The features from the last devlog are now also public ! 🎉 I added some more upgrades to the upgrade tree, and I also gave all of them icons. The icons are… passable. I’m not a graphical artist, and it kind of shows. The “Currently…” messages at the bottom of the side panel got an overhaul, including the addition of units, specific to the type of value being upgraded The game now saves both xp earned and levels completed to files, so they persist between play sessions. This means you don’t have to replay the whole game every time you close it - this is no longer an 80s game ! The skill tree can also be accessed from the menu, so I’m no longer just booting it straight from the Godot editor. This makes it slightly more user friendly. This is probably where I will leave this project for now. I may come back to it now and then, but I’m happy with where this game demo has ended up. I’ll ship it soon, so watch out for that ! If you want to play the game, it is live here . If you are interested in the code, it is available here . To Do list : Add a “reset all to default” option in settings Quote of the update: “Next time I do this, remind me to actually build a proper tree structure” Any suggestions, please let me know in the comments below. Thanks for reading !"}, {"post_id": 42676, "ts": "2026-08-07T15:04:25Z", "hours": 10.5378, "text": "Adding a global upgrade system Additions : Added ‘Zero day’ enemy Added a second level with 6 waves Added a xp system, with skill points and a skill tree Changes: Expanded wave variety in other levels I added a ‘Zero day’ enemy to my game. This enemy is invulnerable for the first 5 seconds after it first spawns in. This makes it highly annoying as it has a tendency to draw and absorb all attacks from high damage towers, and pass through a large portion of your damaging towers unscathed. I also added more waves and a second level, and I’ll slowly expand the playtime of the game as I also add more features The big change here is the xp system. Currently, finishing a level rewards you with some xp, which counts towards your level. Each level up rewards you with a skill point that can be spent in the skill tree. The xp required to level up increases exponentially as the current level gets higher and higher. Unlocks in the tree save to a file and read back on load, so progress is maintained. I was reminded here of my vehement dislike of handling files. For the second time during this project, I forgot where userspace files were stored in Godot. Check this devlog for a bit more detail. Now unfortunately, the demo currently online doesn’t include these new features because I need to write a devlog every 10 hours, but the features aren’t finished. I’ll push them as soon as they are ready™ To Do list : Add file saving for XP earned Allow actually accessing the skill tree from the menu Add a “reset all to default” option in settings Quote of the update: “I. Really. Hate. Files” Any suggestions, please let me know in the comments below."}, {"post_id": 22190, "ts": "2026-07-04T15:02:38Z", "hours": 10.0806, "text": "Added a compendium Alright, this is a big one Additions : Added an indicator that shows the progress through the level Added a “Zip bomb” enemy Added cloaked enemies Added a pause menu Added a compendium Changes: Rebuilt the tutorial I added an indicator to show the player’s progress through the level. It also adds a tiny bit of story - you have to hold off malware until a firewall is constructed, and that bar shows you the progress. And I didn’t even build it from scratch - I’m just using the health bar from the enemies ! 🤫 Next - a zip bomb enemy that, as the name suggests, spawns a burst of child enemies when killed. It moves very slowly, but has high health - this makes it a great target for the SIGTERM sniper tower, which was previously useless not always the best choice. Cloaking was my way of trying to spice up the types of enemies the player would have to deal with. Some enemies in a level will now be cloaked, which means they cannot be attacked until they have their cloaking removed by the new ‘defragmenter’ tower. I wanted a way for players to easily compare the stats of the various towers and enemies, and I also needed something else to add to my pause menu. I decided to kill two pieces of malware with one antivirus quarantine, by adding a compendium. This currently has two tabs, for towers and enemies, each showing you the stats of a tower / enemy when it’s selected. Please don’t ask me how long this took. I don’t want to talk about it. I also rebuilt the tutorial because it looked bad was a pain to build and test would break if i breathed too close to it So I completely scrapped the old system and built a new one Quote of the update: “Hidden malware is a pain - in this game, and in real life” Any suggestions, please let me know in the comments below."}, {"post_id": 10191, "ts": "2026-06-16T20:02:36Z", "hours": 4.1847, "text": "Added a terminal window that logs game events and a tower blocker for level design Changes : Reorganised the UI to provide more space for the level and generally give everything a more unified aesthetic Additions : Added a terminal window at the bottom of the screen that logs game events Added a ‘towerblocker’ tool that the level designer can use to restrict tower placement opportunities Plus (as always) quite a few bug fixes So what is the key feature for any 90s UNIX Linux system? A terminal, of course ! And what is a UNIX-themed game without a terminal? So I added a system where game events, such as waves starting, or enemies being killed, are logged to a terminal window at the bottom of the screen. This window can be opened and closed, and has a little coloured pulse around it whenever a new log is entered. The coloured pulse is synced to the type of event (red for ‘errors’, yellow for ‘warnings’ white for everything else) as well. Each message contains some details about the event and a timestamp on the left. This feature was my first time using the richTextLabel, which allowed me to colour the text. The towerblocker is simple - it’s an invisible tile that can only be placed when the levels are being designed in order to add difficulty or avoid placing of towers offscreen I also reorganised the UI to provide more space for the level - it was all feeling a bit cramped. That reorg also helped to give everything a more unified aesthetic because I took the opportunity to apply some styles to everything, making it feel just a little more together. Quote of the update: “An empty terminal log is always nice. Unfortunately, I don’t think things will be that peaceful…” Any suggestions, please let me know in the comments."}, {"post_id": 8701, "ts": "2026-06-14T13:37:38Z", "hours": 6.4575, "text": "Overhauled the game over screen’s aesthetic and added mouse support to the menu Changes : Changed the game over screen to better fit with the game’s aesthetic Changed the font to a monospaced one Additions : Added mouse support to the menu Added a spray of particles to enemies when they die Added a chromatic aberration effect to enemies when they are hit Plus quite a few bug fixes The first change in this devlog is the game over screen, which used to look like a boring window with a restart button, but now looks like a crash screen [ Image below ] that uses the actual system data to display its message, via a template string and an 8 line formatting statement. I am quite proud of this one Adding mouse support to the menu was, in a word, painful. Because I’d built my own menu system using labels instead of buttons, I had to almost completely rewrite the code to allow for conversion of a Label reference (from one of Godot’s built-in functions) to a child id (which my functions were expecting). And then I had to add some overrides to that so some labels that were not part of the menu system wouldn’t break everything. The spray of particles from enemies when they die is one of my personal favourite effects in this game, mostly because of what I’ve learnt from it. I made the particles be text based by using a subviewport, which basically is a viewport that doesn’t display anything and can then be attached to a texture to show its contents, in this case, on the particles as they are emitted. I also made the text randomise to a 2 digit hexadecimal value - that felt suitably ‘techy’ One of the smaller features in this devlog is the font change. Instead of using Godot’s default font, I found the font used in the actual GRUB and used that instead. Where did I find this font, you ask? It came directly from my PC - I copied the file straight out of /usr/share/fonts . And now we come to chromatic aberration which, as it turns out, is easy to implement for the whole screen, but slightly harder to make work for only a single sprite without discolouring the background. After messing around with shaders for a bit, I gave up and just made 2 versions of my enemy sprite (in red and blue) and just physically offset them in code. And it works. And, if I dare to blow my own trumpet for just a second, it looks great ! Quote of the update: “Please never make me look at my menu code again.”"}, {"post_id": 5836, "ts": "2026-06-09T19:35:21Z", "hours": 4.2917, "text": "Overhauled the menu aesthetic and added a settings menu So, I realised that I’d called this game ‘Kernel Panic’, a very techy name, and yet done little to lean into the aesthetic that evoked. I decided to fix that. Changes: Rebuilt the main menu to use a similar aesthetic to the Linux GRUB Added a settings menu: Support for 2 Vsync modes A slider to control audio A credits page This was my first time using config files, so I also got to learn something; Godot’s user:// directory is not the same as res://. A file created in the user:// directory cannot be seen in the res:// directory. From my uneducated perspective, it seemed as if this file (which I couldn’t find in the editor, since that only shows res:// ) was persisting across runtimes - something non-existent files famously don’t do. I saw someone else do a ‘quote of the update’, but I was unable to find their username to credit them, so please tell me if you know who they are: Quote of the update: “I really don’t like config files” Next plan is to overhaul the game over screen so it better fits with the aesthetic"}, {"post_id": 3590, "ts": "2026-06-06T16:17:25Z", "hours": 0.2508, "text": "Made a dictionary of wave information resources in the level . I exported a dictionary of custom WaveInfo resources in my level scene, and went to add a new resource to the dictionary. I typed in the key, added a new WaveInfo, and clicked Ctrl+s. My new key-value pair promptly vanished without a trace And so began the hour of removing variables, re-adding variables, trawling through the Godot forums and generally wanting to set fire to my computer to try to find the problem. The urge that was not improved by the discovery that I’d forgotten to press the button to actually add the key-value pair, and the error firmly existed between chair and keyboard."}, {"post_id": 3545, "ts": "2026-06-06T15:10:06Z", "hours": 0.4167, "text": "Added a resource to allow upgrades to towers. For those who haven’t used Godot, a resource is a fancy name for a data container that counts the number of other objects referencing it and automatically frees itself when it is no longer needed. According to a quick glance at the Godot docs, creating a custom Resource is as simple as creating a new script that extends Resource and adding a couple of @export variables. I failed at step one, used the default ‘ extend Node ’ instead of ‘ extend Resource ’, and then spent over half an hour trying to work out why it didn’t show up in the inspector. Lesson learned then? Not really, because I did the exact same thing again the next day."}, {"post_id": 3523, "ts": "2026-06-06T14:35:36Z", "hours": 7.0975, "text": "First devlog for Kernel Panic , a tower defence game built in Godot. Here is my progress so far: A menu which allows the user to select levels Multiple custom resources to allow for: Flexible enemy counts and spawn rates during waves Changing of range, damage, or attack speed of a tower Creation of ‘upgrade paths’, which store several upgrades, as well as progress along the path Inspection window that allows: Customisable targeting priority Upgrades to be applied from multiple upgrade paths Multiple towers with several unique upgrade paths each Next step - building a tutorial level that explains the key mechanics of the game."}]...
|
Title: Kernel Panic Tower Defence by @teamlewiscra Title: Kernel Panic Tower Defence by @teamlewiscrafty | Stardance
Devlogs:
First devlog for Kernel Panic , a tower defence game built in Godot. Here is my progress so far: A menu which allows the user to select levels Multiple custom resources to allow for: Flexible enemy counts and spawn rates during waves Changing of range, damage, or attack speed of a tower Creation of ‘upgrade paths’, which store several upgrades, as well as progress along the path Inspection window that allows: Customisable targeting priority Upgrades to be applied from multiple upgrade paths Multiple towers with several unique upgrade paths each Next step - building a tutorial level that explains the key mechanics of the game.
Added a resource to allow upgrades to towers. For those who haven’t used Godot, a resource is a fancy name for a data container that counts the number of other objects referencing it and automatically frees itself when it is no longer needed. According to a quick glance at the Godot docs, creating a custom Resource is as simple as creating a new script that extends Resource and adding a couple of @export variables. I failed at step one, used the default ‘ extend Node ’ instead of ‘ extend Resource ’, and then spent over half an hour trying to work out why it didn’t show up in the inspector. Lesson learned then? Not really, because I did the exact same thing again the next day.
Made a dictionary of wave information resources in the level . I exported a dictionary of custom WaveInfo resources in my level scene, and went to add a new resource to the dictionary. I typed in the key, added a new WaveInfo, and clicked Ctrl+s. My new key-value pair promptly vanished without a trace And so began the hour of removing variables, re-adding variables, trawling through the Godot forums and generally wanting to set fire to my computer to try to find the problem. The urge that was not improved by the discovery that I’d forgotten to press the button to actually add the key-value pair, and the error firmly existed between chair and keyboard.
Overhauled the menu aesthetic and added a settings menu So, I realised that I’d called this game ‘Kernel Panic’, a very techy name, and yet done little to lean into the aesthetic that evoked. I decided to fix that. Changes: Rebuilt the main menu to use a similar aesthetic to the Linux GRUB Added a settings menu: Support for 2 Vsync modes A slider to control audio A credits page This was my first time using config files, so I also got to learn something; Godot’s user:// directory is not the same as res://. A file created in the user:// directory cannot be seen in the res:// directory. From my uneducated perspective, it seemed as if this file (which I couldn’t find in the editor, since that only shows res:// ) was persisting across runtimes - something non-existent files famously don’t do. I saw someone else do a ‘quote of the update’, but I was unable to find their username to credit them, so please tell me if you know who they are: Quote of the update: “I really don’t like config files” Next plan is to overhaul the game over screen so it better fits with the aesthetic
Overhauled the game over screen’s aesthetic and added mouse support to the menu Changes : Changed the game over screen to better fit with the game’s aesthetic Changed the font to a monospaced one Additions : Added mouse support to the menu Added a spray of particles to enemies when they die Added a chromatic aberration effect to enemies when they are hit Plus quite a few bug fixes The first change in this devlog is the game over screen, which used to look like a boring window with a restart button, but now looks like a crash screen [ Image below ] that uses the actual system data to display its message, via a template string and an 8 line formatting statement. I am quite proud of this one Adding mouse support to the menu was, in a word, painful. Because I’d built my own menu system using labels instead of buttons, I had to almost completely rewrite the code to allow for conversion of a Label reference (from one of Godot’s built-in functions) to a child id (which my functions were expecting). And then I had to add some overrides to that so some labels that were not part of the menu system wouldn’t break everything. The spray of particles from enemies when they die is one of my personal favourite effects in this game, mostly because of what I’ve learnt from it. I made the particles be text based by using a subviewport, which basically is a viewport that doesn’t display anything and can then be attached to a texture to show its contents, in this case, on the particles as they are emitted. I also made the text randomise to a 2 digit hexadecimal value - that felt suitably ‘techy’ One of the smaller features in this devlog is the font change. Instead of using Godot’s default font, I found the font used in the actual GRUB and used that instead. Where did I find this font, you ask? It came directly from my PC - I copied the file straight out of /usr/share/fonts . And now we come to chromatic aberration which, as it turns out, is easy to implement for the whole screen, but slightly harder to make work for only a single sprite without discolouring the background. After messing around with shaders for a bit, I gave up and just made 2 versions of my enemy sprite (in red and blue) and just physically offset them in code. And it works. And, if I dare to blow my own trumpet for just a second, it looks great ! Quote of the update: “Please never make me look at my menu code again.”
Added a terminal window that logs game events and a tower blocker for level design Changes : Reorganised the UI to provide more space for the level and generally give everything a more unified aesthetic Additions : Added a terminal window at the bottom of the screen that logs game events Added a ‘towerblocker’ tool that the level designer can use to restrict tower placement opportunities Plus (as always) quite a few bug fixes So what is the key feature for any 90s UNIX Linux system? A terminal, of course ! And what is a UNIX-themed game without a terminal? So I added a system where game events, such as waves starting, or enemies being killed, are logged to a terminal window at the bottom of the screen. This window can be opened and closed, and has a little coloured pulse around it whenever a new log is entered. The coloured pulse is synced to the type of event (red for ‘errors’, yellow for ‘warnings’ white for everything else) as well. Each message contains some details about the event and a timestamp on the left. This feature was my first time using the richTextLabel, which allowed me to colour the text. The towerblocker is simple - it’s an invisible tile that can only be placed when the levels are being designed in order to add difficulty or avoid placing of towers offscreen I also reorganised the UI to provide more space for the level - it was all feeling a bit cramped. That reorg also helped to give everything a more unified aesthetic because I took the opportunity to apply some styles to everything, making it feel just a little more together. Quote of the update: “An empty terminal log is always nice. Unfortunately, I don’t think things will be that peaceful…” Any suggestions, please let me know in the comments.
Added a compendium Alright, this is a big one Additions : Added an indicator that shows the progress through the level Added a “Zip bomb” enemy Added cloaked enemies Added a pause menu Added a compendium Changes: Rebuilt the tutorial I added an indicator to show the player’s progress through the level. It also adds a tiny bit of story - you have to hold off malware until a firewall is constructed, and that bar shows you the progress. And I didn’t even build it from scratch - I’m just using the health bar from the enemies ! 🤫 Next - a zip bomb enemy that, as the name suggests, spawns a burst of child enemies when killed. It moves very slowly, but has high health - this makes it a great target for the SIGTERM sniper tower, which was previously useless not always the best choice. Cloaking was my way of trying to spice up the types of enemies the player would have to deal with. Some enemies in a level will now be cloaked, which means they cannot be attacked until they have their cloaking removed by the new ‘defragmenter’ tower. I wanted a way for players to easily compare the stats of the various towers and enemies, and I also needed something else to add to my pause menu. I decided to kill two pieces of malware with one antivirus quarantine, by adding a compendium. This currently has two tabs, for towers and enemies, each showing you the stats of a tower / enemy when it’s selected. Please don’t ask me how long this took. I don’t want to talk about it. I also rebuilt the tutorial because it looked bad was a pain to build and test would break if i breathed too close to it So I completely scrapped the old system and built a new one Quote of the update: “Hidden malware is a pain - in this game, and in real life” Any suggestions, please let me know in the comments below.
Adding a global upgrade system Additions : Added ‘Zero day’ enemy Added a second level with 6 waves Added a xp system, with skill points and a skill tree Changes: Expanded wave variety in other levels I added a ‘Zero day’ enemy to my game. This enemy is invulnerable for the first 5 seconds after it first spawns in. This makes it highly annoying as it has a tendency to draw and absorb all attacks from high damage towers, and pass through a large portion of your damaging towers unscathed. I also added more waves and a second level, and I’ll slowly expand the playtime of the game as I also add more features The big change here is the xp system. Currently, finishing a level rewards you with some xp, which counts towards your level. Each level up rewards you with a skill point that can be spent in the skill tree. The xp required to level up increases exponentially as the current level gets higher and higher. Unlocks in the tree save to a file and read back on load, so progress is maintained. I was reminded here of my vehement dislike of handling files. For the second time during this project, I forgot where userspace files were stored in Godot. Check this devlog for a bit more detail. Now unfortunately, the demo currently online doesn’t include these new features because I need to write a devlog every 10 hours, but the features aren’t finished. I’ll push them as soon as they are ready™ To Do list : Add file saving for XP earned Allow actually accessing the skill tree from the menu Add a “reset all to default” option in settings Quote of the update: “I. Really. Hate. Files” Any suggestions, please let me know in the comments below.
Improving the global upgrade system Additions : Support for panning around the upgrade tree More upgrades ! Added icons to upgrades Added file saving for XP earned Allow accessing the skill tree from the menu Changes: Level completion is now tracked across multiple play sessions Refined “Currently: …” messages in the upgrade tree The features from the last devlog are now also public ! 🎉 I added some more upgrades to the upgrade tree, and I also gave all of them icons. The icons are… passable. I’m not a graphical artist, and it kind of shows. The “Currently…” messages at the bottom of the side panel got an overhaul, including the addition of units, specific to the type of value being upgraded The game now saves both xp earned and levels completed to files, so they persist between play sessions. This means you don’t have to replay the whole game every time you close it - this is no longer an 80s game ! The skill tree can also be accessed from the menu, so I’m no longer just booting it straight from the Godot editor. This makes it slightly more user friendly. This is probably where I will leave this project for now. I may come back to it now and then, but I’m happy with where this game demo has ended up. I’ll ship it soon, so watch out for that ! If you want to play the game, it is live here . If you are interested in the code, it is available here . To Do list : Add a “reset all to default” option in settings Quote of the update: “Next time I do this, remind me to actually build a proper tree structure” Any suggestions, please let me know in the comments below. Thanks for reading !
Ships:
Kernel Panic Hold off malware to give your firewall time to be repaired in this tower defence game prototype built using the Godot engine ! It is inspired by 1990s Unix systems and sci-fi classics like ‘The Matrix’. Play the demo at https://gianthotdog.itch.io/Kernel-Panic The game demo includes: Multiple levels including a tutorial GRUB-style menu A settings menu (Audio settings, Credits, VSync settings) A config file system so settings persist across play sessions An upgrade tree that contains global upgrades to towers and XP gains An XP and skill point system for purchasing those upgrades 4 distinct types of towers with adjustable targeting priorities Several enemy types Custom resources to handle: Single tower upgrades Enemy counts in waves Global upgrades Controls: Enter to skip startup sequence Click to select / interact / modify values AI: AI was used to write about 50 lines of code for the two shaders, and very occasionally for solving persistent bugs. It was only used for bug fixes after I tried repeatedly and failed to find a solution myself. It was also used for some feedback on aesthetic choices. All assets were designed by hand. All AI code was reviewed before implementation. Credits: Initial prototyping asset pack by Kenney Music by iamoneabe: https://opengameart.org/content/trunkful-of-junk...
|
1794020020.8871148
|
1794106420.8871148
|
|
52894
|
uncomMonACROPAD by @LeoMos | Stardance
|
LeoMos
|
0
|
17.6
|
0
|
[]
|
[{"post_id": 68773, "ts": "202 [{"post_id": 68773, "ts": "2026-09-15T18:44:14Z", "hours": 2.5833, "text": "finally finished the case, shipping"}, {"post_id": 66615, "ts": "2026-09-12T13:49:20Z", "hours": 5.4456, "text": "i finished the pbc and the diagram, the cut on the pbc is for the encoder and a button, both mounted on the side, those can connect on jp"}, {"post_id": 64784, "ts": "2026-09-09T13:25:50Z", "hours": 0.7336, "text": "pbc is taking too long, but this is what icomed up with, the encoder shoiuld sit on left sideconnected to jp99a1/b1 (edited footprint to have the gnd pad on center) if that dont work well, plan b is noprmal placing on top of line 1, the other jp are for other button"}, {"post_id": 59494, "ts": "2026-09-01T11:15:57Z", "hours": 5.45, "text": "so basically i comed up whit this idea, thoise side button, the pad in photo is one that i made earlier, it was with a pico(raspberry pi pico, circuitpy, adafruit-hid lib, and each button a pin, not maix, and everytingg was soldered whit a mess of wire) wile i was developing the pcb i comed up with this idea, the matrix of button is 4 button on 3 line but there is actually an 4th row. On the 4th row the first button is the sw on the rotary encoder, the other 3 are jp(those pin that are also on the microcontroller) but instead of there is the red button in photo on the first and the other 2 mayby illl add something, if some one can help me wiring the rotatryencoder orizzontally pls write me on comment or on slack"}, {"post_id": 58393, "ts": "2026-08-30T19:58:31Z", "hours": 3.3897, "text": "‘’‘Probably went to far my first pbc ever’’’ but i will not quit, more twist and updates soon"}]...
|
Title: uncomMonACROPAD by @LeoMos | Stardance
Dev Title: uncomMonACROPAD by @LeoMos | Stardance
Devlogs:
‘’‘Probably went to far my first pbc ever’’’ but i will not quit, more twist and updates soon
so basically i comed up whit this idea, thoise side button, the pad in photo is one that i made earlier, it was with a pico(raspberry pi pico, circuitpy, adafruit-hid lib, and each button a pin, not maix, and everytingg was soldered whit a mess of wire) wile i was developing the pcb i comed up with this idea, the matrix of button is 4 button on 3 line but there is actually an 4th row. On the 4th row the first button is the sw on the rotary encoder, the other 3 are jp(those pin that are also on the microcontroller) but instead of there is the red button in photo on the first and the other 2 mayby illl add something, if some one can help me wiring the rotatryencoder orizzontally pls write me on comment or on slack
pbc is taking too long, but this is what icomed up with, the encoder shoiuld sit on left sideconnected to jp99a1/b1 (edited footprint to have the gnd pad on center) if that dont work well, plan b is noprmal placing on top of line 1, the other jp are for other button
i finished the pbc and the diagram, the cut on the pbc is for the encoder and a button, both mounted on the side, those can connect on jp
finally finished the case, shipping...
|
1793461663.5056837
|
1794066463.5056837
|
|
61157
|
pomodoro timer by @Pery | Stardance
|
Pery
|
1
|
4.0
|
15
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T18:52:13Z", "hours": 4.0, "multiplier": 3.52, "payout": 15, "blessing": "neutral", "text": "done", "repo": "https://github.com/davidperyro-stack/pomodoro-timer", "demo": "https://davidperyro-stack.github.io/pomodoro-timer/"}]...
|
[{"post_id": 68772, "ts": "202 [{"post_id": 68772, "ts": "2026-09-15T18:44:12Z", "hours": 0.6597, "text": "devlog 6# made the task list save on localstorage Added shortcuts (space = start/pause ; r = reset)"}, {"post_id": 68284, "ts": "2026-09-14T20:57:18Z", "hours": 1.3036, "text": "devlog 5# I have been playing around with the design alot. until ive finally did something ive liked! but maybe the background i will make it a little colorful. Whats major update? Ive finally added a task list! you write a task, when you finish it press on it to cross it (or delete it). Also added the when you customize your minutes (break or focus) it saves locally! right now its only for that. but soon its for task list too!"}, {"post_id": 67536, "ts": "2026-09-13T17:38:47Z", "hours": 0.4169, "text": "devlog 4# Made the layout a little better! I only changed the text position and made the “set” button bigger because, why not :P. Also changed the color because i have free will AND YALL CANT STOP ME. Stay tuned for more update"}, {"post_id": 67231, "ts": "2026-09-13T09:12:55Z", "hours": 1.0, "text": "devlog 3# day 3 of working on this project. . Today (since ive woke up and made a coffiee) ive started focusing on the design of it. Im thinking to do the same as my personal website design (terminal theme but maybe other colors other than blueish). Im thinking to make something with the color pallate black,white and gray (ignore the yellow from the quote i just felt to put it like this cuz why not :P) Any new stuff added besides the design update? YES. ive added few quotes, everytime when you click start, a new quote (or a quote appears). its random quotes, few of them ive wrote myself (you will figure out what i wrote). in rest i will focus more on the design!!"}, {"post_id": 66424, "ts": "2026-09-12T07:47:27Z", "hours": 0.6358, "text": "devlog 2# Day 2 of creating a wonderful project! Yesterday (and today) ive continued on working on timers mechanic, and today ive finished the pause mechanic! And yesterday (because i did almost all of this at night) i did small changes to style.css. ive made the background black to keep my eyes safe (even tho i use dark mode on my phone in evening or mornings) ALSO i think today i will focus on design MAYBE."}, {"post_id": 66222, "ts": "2026-09-11T22:13:09Z", "hours": 0.3833, "text": "devlog 1# (Literally ive lost ideas what project to do so i chose to do this for no reason at all) WELCOME TO MY NEW PROJECT! today ive started making a pomodoro timer (aka a study timer). Why im doing this? i have no idea thanks for asking (even tho you didnt ask but whatever) ANYWAY i will start simple, focusing on the timer, then i will make a design (prob i will keep it simple or add a picture as background). my future plans for this is: -make the timer work -designing it -add stuff THAT nobody asked for it (motivation quotes prob) (my brain cant keep up for the future plans so thats all i can say for now. my RAM is falling inside my brain,good thing that devs added a 50$ grant for RAM, hope it works for my brain aswell)"}]...
|
Title: pomodoro timer by @Pery | Stardance
Devlog Title: pomodoro timer by @Pery | Stardance
Devlogs:
devlog 1# (Literally ive lost ideas what project to do so i chose to do this for no reason at all) WELCOME TO MY NEW PROJECT! today ive started making a pomodoro timer (aka a study timer). Why im doing this? i have no idea thanks for asking (even tho you didnt ask but whatever) ANYWAY i will start simple, focusing on the timer, then i will make a design (prob i will keep it simple or add a picture as background). my future plans for this is: -make the timer work -designing it -add stuff THAT nobody asked for it (motivation quotes prob) (my brain cant keep up for the future plans so thats all i can say for now. my RAM is falling inside my brain,good thing that devs added a 50$ grant for RAM, hope it works for my brain aswell)
devlog 2# Day 2 of creating a wonderful project! Yesterday (and today) ive continued on working on timers mechanic, and today ive finished the pause mechanic! And yesterday (because i did almost all of this at night) i did small changes to style.css. ive made the background black to keep my eyes safe (even tho i use dark mode on my phone in evening or mornings) ALSO i think today i will focus on design MAYBE.
devlog 3# day 3 of working on this project. . Today (since ive woke up and made a coffiee) ive started focusing on the design of it. Im thinking to do the same as my personal website design (terminal theme but maybe other colors other than blueish). Im thinking to make something with the color pallate black,white and gray (ignore the yellow from the quote i just felt to put it like this cuz why not :P) Any new stuff added besides the design update? YES. ive added few quotes, everytime when you click start, a new quote (or a quote appears). its random quotes, few of them ive wrote myself (you will figure out what i wrote). in rest i will focus more on the design!!
devlog 4# Made the layout a little better! I only changed the text position and made the “set” button bigger because, why not :P. Also changed the color because i have free will AND YALL CANT STOP ME. Stay tuned for more update
devlog 5# I have been playing around with the design alot. until ive finally did something ive liked! but maybe the background i will make it a little colorful. Whats major update? Ive finally added a task list! you write a task, when you finish it press on it to cross it (or delete it). Also added the when you customize your minutes (break or focus) it saves locally! right now its only for that. but soon its for task list too!
devlog 6# made the task list save on localstorage Added shortcuts (space = start/pause ; r = reset)
Ships:
done...
|
1794045377.204157
|
1794131777.204157
|
|
61456
|
modern walkman style mp3 player by @ainavv | Stard modern walkman style mp3 player by @ainavv | Stardance...
|
ainavv
|
0
|
1.27
|
0
|
[]
|
[{"post_id": 68761, "ts": "202 [{"post_id": 68761, "ts": "2026-09-15T18:13:43Z", "hours": 0.3086, "text": "thinking about taking inspo from this, (vid on youtube by ube), looks fire"}, {"post_id": 68191, "ts": "2026-09-14T17:55:14Z", "hours": 0.3625, "text": "Keep on getting this error when I import my pcb .stp file to onshape please help"}, {"post_id": 67328, "ts": "2026-09-13T12:13:06Z", "hours": 0.5958, "text": "Started on the research for the mp3 player i had in mind for a long time. It consists of a 3.5” waveshare esp32 display and a few additions, like a rotary encoder for scrolling, 3.5mm jack for wired earphones and support for bluetooth earbuds too (partly why i went for a display module over making it from scratch). i’ll work on the outer shell and i’m thinking of adding a few other buttons, but i’m not really sure which ones yet, and where. looking forward to finishing this project."}]...
|
Title: modern walkman style mp3 player by @ainavv Title: modern walkman style mp3 player by @ainavv | Stardance
Devlogs:
Started on the research for the mp3 player i had in mind for a long time. It consists of a 3.5” waveshare esp32 display and a few additions, like a rotary encoder for scrolling, 3.5mm jack for wired earphones and support for bluetooth earbuds too (partly why i went for a display module over making it from scratch). i’ll work on the outer shell and i’m thinking of adding a few other buttons, but i’m not really sure which ones yet, and where. looking forward to finishing this project.
Keep on getting this error when I import my pcb .stp file to onshape please help
thinking about taking inspo from this, (vid on youtube by ube), looks fire...
|
1793649094.8924532
|
1794253894.8924532
|
|
62200
|
Locate - GPS tracker by @RishitJain | Stardance
|
RishitJain
|
0
|
2.57
|
0
|
[]
|
[{"post_id": 68757, "ts": "202 [{"post_id": 68757, "ts": "2026-09-15T17:56:43Z", "hours": 1.0833, "text": "Finished making the CAD for my airtag-like locater project"}, {"post_id": 68660, "ts": "2026-09-15T14:23:20Z", "hours": 0.4, "text": "Started CAD for Locate"}, {"post_id": 68650, "ts": "2026-09-15T13:56:24Z", "hours": 1.0833, "text": "Designed PCB for Locate"}]...
|
Title: Locate - GPS tracker by @RishitJain | Stard Title: Locate - GPS tracker by @RishitJain | Stardance
Devlogs:
Designed PCB for Locate
Started CAD for Locate
Finished making the CAD for my airtag-like locater project...
|
1793652899.9565675
|
1794257699.9565675
|
|
58314
|
Smart Air Traffic Control System by @Sparky10 | St Smart Air Traffic Control System by @Sparky10 | Stardance...
|
Sparky10
|
1
|
2.36
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-06T15:24:59Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Smart Air Traffic Control System as a web project. It can track aircraft, check weather, detect possible collisions, detect emergencies and assign runways. The hardest part was getting the Flask backend, MySQL database and frontend to work together. I’m pretty proud of how everything came together and actually works as one system", "repo": "https://github.com/kaviyasuriya10-bot/Smart-Air-Traffic-System", "demo": "https://smart-air-traffic-system-a5wy.vercel.app/"}]...
|
[{"post_id": 68753, "ts": "202 [{"post_id": 68753, "ts": "2026-09-15T17:53:59Z", "hours": 0.3569, "text": "Hi guys, I made a important change after my first shipping ,and I faced a problem in hosting my web I mean creating a demo URL so I made some major changes in the code, completely removed python and MYSQL"}, {"post_id": 62227, "ts": "2026-09-05T14:17:50Z", "hours": 2.1222, "text": "Hi guys this is just a simulation of Air Traffic Control System, and I almost done with this small project and I am having a plan of integrating local Ollama Ai and if possible real satellites with help of some space research company. And i also added the flowchart for the better understanding of the flow of the code"}]...
|
Title: Smart Air Traffic Control System by @Sparky Title: Smart Air Traffic Control System by @Sparky10 | Stardance
Devlogs:
Hi guys this is just a simulation of Air Traffic Control System, and I almost done with this small project and I am having a plan of integrating local Ollama Ai and if possible real satellites with help of some space research company. And i also added the flowchart for the better understanding of the flow of the code
Hi guys, I made a important change after my first shipping ,and I faced a problem in hosting my web I mean creating a demo URL so I made some major changes in the code, completely removed python and MYSQL
Ships:
I made a Smart Air Traffic Control System as a web project. It can track aircraft, check weather, detect possible collisions, detect emergencies and assign runways. The hardest part was getting the Flask backend, MySQL database and frontend to work together. I’m pretty proud of how everything came together and actually works as one system...
|
1794066749.3170443
|
1794153149.3170443
|
|
4778
|
My personal droid army! by @Griffin_Olowin | Stard My personal droid army! by @Griffin_Olowin | Stardance...
|
Griffin_Olowin
|
0
|
3.76
|
0
|
[]
|
[{"post_id": 6875, "ts": "2026 [{"post_id": 6875, "ts": "2026-06-11T15:01:23Z", "hours": 1.0425, "text": "better /weather command and a newly commented code! So initally, my /gda-weather command only worked for Charlottesville (where I live), and only also in Fahrenheit (strictly inferior but sadly the only one I coherently understand). I started off today by doing some research into how to actually accomplish my goal of any city, any system. I actually ended up switching into a much better weather API that allowed me to tell the temperature by city. I am not particularly good at Javascript (for now), so I decided that the easiest way to have the difference in between Fahrenheit and Celsius was just to make a specifically Celsius version of the same /gda-weather command, /gda-celsius-weather. I know, so origional."}, {"post_id": 5079, "ts": "2026-06-08T19:20:57Z", "hours": 0.5314, "text": "Final bug fixes, sorting API keys, and testing. A lot of this time was just me realizing that for API’s to work propperly, you actually have to use the API key that they require. This is my first time in Javascript and using API’s, so I was quite unaware of how they worked. However, they make a lot more sense now!"}, {"post_id": 4543, "ts": "2026-06-07T21:44:52Z", "hours": 0.6003, "text": "Changing spacefact into Spaceimage. Spacefact was the inital version, and was meant to give you a random spacefact. However, there are not many API’s that do this, and the one I found did not do it well. I did stumble across NASA’s APOD, and was quite intrigued. I then reverse-engineered their API for it (It was written in python) to work in Javascript. I then spent a while trying (and mostly failing) to display the image directly in slack. I eventually figured out not only how to display it using a block, but also how to make it appear in slack."}, {"post_id": 4487, "ts": "2026-06-07T20:21:31Z", "hours": 1.1981, "text": "Other commands and testing bot in Slack. The other commands that I added in included /gda-8ball to give you magical predictions, /gda-weather, to give you the weather, and /gda-spacefact, to give you a random spacefact. Some of this time, as previously stated, was spent testing the bot commands in Slack. Some of them worked first try, but many had errors that I tried to figure out, including how to get the 8-ball to actually display anything besides [object Object] in Slack."}, {"post_id": 2753, "ts": "2026-06-05T15:02:54Z", "hours": 0.3872, "text": "Set up tokens and first basic command using the guide because I am new to Javascript and this is my first Hack Club project."}]...
|
Title: My personal droid army! by @Griffin_Olowin Title: My personal droid army! by @Griffin_Olowin | Stardance
Devlogs:
Set up tokens and first basic command using the guide because I am new to Javascript and this is my first Hack Club project.
Other commands and testing bot in Slack. The other commands that I added in included /gda-8ball to give you magical predictions, /gda-weather, to give you the weather, and /gda-spacefact, to give you a random spacefact. Some of this time, as previously stated, was spent testing the bot commands in Slack. Some of them worked first try, but many had errors that I tried to figure out, including how to get the 8-ball to actually display anything besides [object Object] in Slack.
Changing spacefact into Spaceimage. Spacefact was the inital version, and was meant to give you a random spacefact. However, there are not many API’s that do this, and the one I found did not do it well. I did stumble across NASA’s APOD, and was quite intrigued. I then reverse-engineered their API for it (It was written in python) to work in Javascript. I then spent a while trying (and mostly failing) to display the image directly in slack. I eventually figured out not only how to display it using a block, but also how to make it appear in slack.
Final bug fixes, sorting API keys, and testing. A lot of this time was just me realizing that for API’s to work propperly, you actually have to use the API key that they require. This is my first time in Javascript and using API’s, so I was quite unaware of how they worked. However, they make a lot more sense now!
better /weather command and a newly commented code! So initally, my /gda-weather command only worked for Charlottesville (where I live), and only also in Fahrenheit (strictly inferior but sadly the only one I coherently understand). I started off today by doing some research into how to actually accomplish my goal of any city, any system. I actually ended up switching into a much better weather API that allowed me to tell the temperature by city. I am not particularly good at Javascript (for now), so I decided that the easiest way to have the difference in between Fahrenheit and Celsius was just to make a specifically Celsius version of the same /gda-weather command, /gda-celsius-weather. I know, so origional....
|
1793462224.8076777
|
1794067024.8076777
|
|
49907
|
Sphere by @Mintia11 | Stardance
|
Mintia11
|
0
|
66.71
|
0
|
[]
|
[{"post_id": 68738, "ts": "202 [{"post_id": 68738, "ts": "2026-09-15T17:32:14Z", "hours": 9.2867, "text": "#devlog 10 Hii everyone, I finally got a working matroska demuxer going in my c rewrite!"}, {"post_id": 57473, "ts": "2026-08-29T17:00:30Z", "hours": 8.8133, "text": "#devlog 9 The rewrite in c is going well, I built my allocator and also tiny logging helpers and now I created a vulkan device with all the extensions I think i will need, and I also integrated SDL3 to build my window"}, {"post_id": 55664, "ts": "2026-08-27T17:01:44Z", "hours": 8.135, "text": "#devlog 8 Hii everyone,, I’m currently in the process of rewriting my codebase in C because Rust was giving me some headaches, so here’s a screenshot showcasing my slab allocator :)"}, {"post_id": 54995, "ts": "2026-08-26T12:55:06Z", "hours": 9.9436, "text": "#devlog 8 Got whatever is this from the h264 decoder, i don’t really think it’s right lol :*("}, {"post_id": 53751, "ts": "2026-08-24T12:53:52Z", "hours": 4.1311, "text": "#devlog 7 Finally got mono and stereo AAC decoding working, the only thing i’m missing now is h264 decoding, which I started doing but gave up half way because i hadn’t got audio/video sync working. So after this detour I can finally try to decode some frames!"}, {"post_id": 53122, "ts": "2026-08-23T15:31:47Z", "hours": 4.8753, "text": "#devlog 6 I have decided that decoding audio streams will be easier for the time being and it will help me to setup good synchronization primitives, so I have started to parse a simple mono AAC stream"}, {"post_id": 52397, "ts": "2026-08-22T14:50:49Z", "hours": 3.3042, "text": "#devlog 5 Got some menu’s going and I have started to create an h264 decoder using vulkan, in the video you can see the info lines the decoder generates for the track info window"}, {"post_id": 51214, "ts": "2026-08-20T18:58:08Z", "hours": 0.7944, "text": "#devlog 4 I finally finished my egui renderer, i just needed to iron out alpha blending and buffer/image creation"}, {"post_id": 51106, "ts": "2026-08-20T16:30:37Z", "hours": 6.3614, "text": "#devlog 3 Finally i got egui to render something using my custom renderer! I’m so happy lol :)"}, {"post_id": 50440, "ts": "2026-08-19T16:33:07Z", "hours": 1.8897, "text": "#devlog 2 Little update, i got a simple renderer running using my custom vulkan abstraction layer"}, {"post_id": 50259, "ts": "2026-08-19T12:45:18Z", "hours": 9.1783, "text": "#devlog 1 Got a simple mkv demuxer working, and i created a simple window with winit, in which i would like to put an egui based ui, with my custom vulkan renderer so that i can have the users view track info and a player bar and things like that"}]...
|
Title: Sphere by @Mintia11 | Stardance
Devlogs:
# Title: Sphere by @Mintia11 | Stardance
Devlogs:
#devlog 1 Got a simple mkv demuxer working, and i created a simple window with winit, in which i would like to put an egui based ui, with my custom vulkan renderer so that i can have the users view track info and a player bar and things like that
#devlog 2 Little update, i got a simple renderer running using my custom vulkan abstraction layer
#devlog 3 Finally i got egui to render something using my custom renderer! I’m so happy lol :)
#devlog 4 I finally finished my egui renderer, i just needed to iron out alpha blending and buffer/image creation
#devlog 5 Got some menu’s going and I have started to create an h264 decoder using vulkan, in the video you can see the info lines the decoder generates for the track info window
#devlog 6 I have decided that decoding audio streams will be easier for the time being and it will help me to setup good synchronization primitives, so I have started to parse a simple mono AAC stream
#devlog 7 Finally got mono and stereo AAC decoding working, the only thing i’m missing now is h264 decoding, which I started doing but gave up half way because i hadn’t got audio/video sync working. So after this detour I can finally try to decode some frames!
#devlog 8 Got whatever is this from the h264 decoder, i don’t really think it’s right lol :*(
#devlog 8 Hii everyone,, I’m currently in the process of rewriting my codebase in C because Rust was giving me some headaches, so here’s a screenshot showcasing my slab allocator :)
#devlog 9 The rewrite in c is going well, I built my allocator and also tiny logging helpers and now I created a vulkan device with all the extensions I think i will need, and I also integrated SDL3 to build my window
#devlog 10 Hii everyone, I finally got a working matroska demuxer going in my c rewrite!...
|
1794052089.8517156
|
1794656889.8517156
|
|
62324
|
NaxoOS by @lemae | Stardance
|
lemae
|
0
|
0.28
|
0
|
[]
|
[{"post_id": 68734, "ts": "202 [{"post_id": 68734, "ts": "2026-09-15T17:18:40Z", "hours": 0.2806, "text": "Today I worked on improving NaxoOS and making it feel more like a real operating system I added a new Quick Settings panel with Wifi, Bluetooth, volume and other controls I also upgraded the files app so folders can actually be opened and added a notification center with a working calendar I tested everything and fixed some problems"}]...
|
Title: NaxoOS by @lemae | Stardance
Devlogs:
Toda Title: NaxoOS by @lemae | Stardance
Devlogs:
Today I worked on improving NaxoOS and making it feel more like a real operating system I added a new Quick Settings panel with Wifi, Bluetooth, volume and other controls I also upgraded the files app so folders can actually be opened and added a notification center with a working calendar I tested everything and fixed some problems...
|
1793653003.5516837
|
1794257803.5516837
|
|
56243
|
Aksara by @Dat-One-Dev | Stardance
|
Dat-One-Dev
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T17:14:03Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "terminal desktop launcher lwk a fullscreen terminal thing that looks like a tiny desktop. it has a wallpaper, a search bar on top and a little info panel at the bottom. instead of clicking icons you just type. i made it because opening a file manager and a launcher and a terminal separately felt dumb when i basically live in the terminal anyway. so now the terminal IS the desktop. kinda.", "repo": "https://github.com/Dat-one-dev/Aksara", "demo": "https://github.com/Dat-one-dev/Aksara/releases/tag/v0.1.1"}]...
|
[{"post_id": 68731, "ts": "202 [{"post_id": 68731, "ts": "2026-09-15T17:13:21Z", "hours": 0.4275, "text": "Devlog 13 Nothing just completing the project readme and stuff uk"}, {"post_id": 67930, "ts": "2026-09-14T07:36:44Z", "hours": 0.3147, "text": "DEVLOG 12, Before the scope creeps onto me I am shipping this thing as fast as humanly possible I fixed xdg-open . but which we had I am lwk also planning to make a custom wallpaper and then thats it shipping rn working on the vhs gif and readme.md, lets procastinate if this proj is lwk 9h and i get 10 ratings then its 90 mehhhhhh I need 114 stardust rn for F75 AULA lol"}, {"post_id": 67484, "ts": "2026-09-13T16:29:21Z", "hours": 0.5808, "text": "DEVLOG 11 Tried to do something ended with nothing thus putting that something to nothing so that something never does anything to the something that i have inside this something which we call skull Ok let the shakespeare die, I tried adding left right panel idky they look bad so removing them…and maybe shipping by next devlog"}, {"post_id": 67243, "ts": "2026-09-13T09:30:30Z", "hours": 0.2867, "text": "Devlog 10 Now u can run normal terminal commands and actually see them using :! and now i am lwk ded so bye…its already ig 8h…i can ship it after adding some more features maybe this proj will go to 10h"}, {"post_id": 67225, "ts": "2026-09-13T08:46:27Z", "hours": 0.9328, "text": "DEVLOG 9 U can now use :! to directly pass command to terminal [although u cant view the output i am working on it rn] and also u can use :bg \"~/.config/aksara/wall.png\" to lwk change the default wallpaper [wht u see now is default one auto install at the path above]"}, {"post_id": 66659, "ts": "2026-09-12T14:55:15Z", "hours": 0.6428, "text": "Devlog 8 Config editing added now at ~/.config/aksara/config.json the config is added which can be used to fuzzy search from Aksara, u can either edit this config manually by nvim ~/.config/aksara/config.json or u can edit it inside aksara by using :w name : \"cmnd\" to add a shortcut and :r name to remove it, use e to focus on the search bar and then ESC to unfocus"}, {"post_id": 66605, "ts": "2026-09-12T13:33:42Z", "hours": 0.5889, "text": "DEVLOG 7 Ok my new idea lwk actually worked top panel loks tuffffffffffffff now i think i should add side panels too….lets see i would add them at last rn i am working on the main backend [ik backend is mostly a website term] side lwk making the json way of making TERMINAL APPLICATION ACCESSIBLE, would add some defaults one too ig"}, {"post_id": 66562, "ts": "2026-09-12T12:17:05Z", "hours": 0.4478, "text": "DEVLOG 6 IG I may not have a brain gentleman but I HAVE AN IDEA..HAHAHAHAHHAHAH ok nothing i am removing pop up search it ate up my mind and i dont wanan use that much AI for such basic input field so lwk adding 2 panels 1 at top another at bottom rn i removed the pop up search and then shifted the top panel to bottom and then in next devlog add the top panel which will become the one that searchs lwk smth like u see in browsers"}, {"post_id": 66538, "ts": "2026-09-12T11:44:38Z", "hours": 0.9928, "text": "DEVLOG 5 It went in adding feature and deleting it all i was tryna code the fuzzy search popup but it sucked now i deleted it all and restarting.."}, {"post_id": 61983, "ts": "2026-09-05T05:47:56Z", "hours": 1.0956, "text": "DEVLOG 4 IG Wallpaper feature added just do go run . -w “path.png” and it sets the png on the desired path as ur aksara wallpaper i gotta work on this more"}, {"post_id": 61411, "ts": "2026-09-04T09:47:01Z", "hours": 0.7644, "text": "DEVLOG 3 Prana Devlog has all the func i discussed in last devlog with some more things, Now I decided to work on actual project now instead of just framework…this project is called AKSARA…and framework and project are on diff repo but contri on same proj…Rn I imported diff libs and working on TOP PANEl…to display batter ram usage cpu usage time ect stuff…Dont ask me what this project is I know what it is but idk how to explain it"}, {"post_id": 60802, "ts": "2026-09-03T12:20:08Z", "hours": 0.6964, "text": "PRANA DEVLOG 2 My last TUI proj got preety good ratings thus I decided to lean more into TUI for that I am making a desktop env in TUI BUT THIS SS IS NOT THAT, before that I am making a TUI framework to make my work easier rn I added func like borderText [ignore it its a helper for me not for the framework user], Box [u give it width height and it makes box of it, u can also give it header[TEXT SHOWN ON TOP BORDER] footer[TEXT SHOWN ON BOTTOM BORDER] content[TEXT SHOWN INSIDE BOX] too…..then we have ScreenBox func that lwk us just Box func but it auto arguments it with width and height of whole terminal jus to make the it easyyyy, i also have TerminalSize to get Width and Height of the terminal….below SS shows usage of ScreenBox with Header Prana, Footer ESC TO EXIT;"}, {"post_id": 58100, "ts": "2026-08-30T13:35:03Z", "hours": 0.56, "text": "DEVLOG 1 PRANA: POV HOW PROCRASTINATING FOR 30MIN FEELS LIKE"}]...
|
Title: Aksara by @Dat-One-Dev | Stardance
Devlogs Title: Aksara by @Dat-One-Dev | Stardance
Devlogs:
DEVLOG 1 PRANA: POV HOW PROCRASTINATING FOR 30MIN FEELS LIKE
PRANA DEVLOG 2 My last TUI proj got preety good ratings thus I decided to lean more into TUI for that I am making a desktop env in TUI BUT THIS SS IS NOT THAT, before that I am making a TUI framework to make my work easier rn I added func like borderText [ignore it its a helper for me not for the framework user], Box [u give it width height and it makes box of it, u can also give it header[TEXT SHOWN ON TOP BORDER] footer[TEXT SHOWN ON BOTTOM BORDER] content[TEXT SHOWN INSIDE BOX] too…..then we have ScreenBox func that lwk us just Box func but it auto arguments it with width and height of whole terminal jus to make the it easyyyy, i also have TerminalSize to get Width and Height of the terminal….below SS shows usage of ScreenBox with Header Prana, Footer ESC TO EXIT;
DEVLOG 3 Prana Devlog has all the func i discussed in last devlog with some more things, Now I decided to work on actual project now instead of just framework…this project is called AKSARA…and framework and project are on diff repo but contri on same proj…Rn I imported diff libs and working on TOP PANEl…to display batter ram usage cpu usage time ect stuff…Dont ask me what this project is I know what it is but idk how to explain it
DEVLOG 4 IG Wallpaper feature added just do go run . -w “path.png” and it sets the png on the desired path as ur aksara wallpaper i gotta work on this more
DEVLOG 5 It went in adding feature and deleting it all i was tryna code the fuzzy search popup but it sucked now i deleted it all and restarting..
DEVLOG 6 IG I may not have a brain gentleman but I HAVE AN IDEA..HAHAHAHAHHAHAH ok nothing i am removing pop up search it ate up my mind and i dont wanan use that much AI for such basic input field so lwk adding 2 panels 1 at top another at bottom rn i removed the pop up search and then shifted the top panel to bottom and then in next devlog add the top panel which will become the one that searchs lwk smth like u see in browsers
DEVLOG 7 Ok my new idea lwk actually worked top panel loks tuffffffffffffff now i think i should add side panels too….lets see i would add them at last rn i am working on the main backend [ik backend is mostly a website term] side lwk making the json way of making TERMINAL APPLICATION ACCESSIBLE, would add some defaults one too ig
Devlog 8 Config editing added now at ~/.config/aksara/config.json the config is added which can be used to fuzzy search from Aksara, u can either edit this config manually by nvim ~/.config/aksara/config.json or u can edit it inside aksara by using :w name : "cmnd" to add a shortcut and :r name to remove it, use e to focus on the search bar and then ESC to unfocus
DEVLOG 9 U can now use :! to directly pass command to terminal [although u cant view the output i am working on it rn] and also u can use :bg "~/.config/aksara/wall.png" to lwk change the default wallpaper [wht u see now is default one auto install at the path above]
Devlog 10 Now u can run normal terminal commands and actually see them using :! and now i am lwk ded so bye…its already ig 8h…i can ship it after adding some more features maybe this proj will go to 10h
DEVLOG 11 Tried to do something ended with nothing thus putting that something to nothing so that something never does anything to the something that i have inside this something which we call skull Ok let the shakespeare die, I tried adding left right panel idky they look bad so removing them…and maybe shipping by next devlog
DEVLOG 12, Before the scope creeps onto me I am shipping this thing as fast as humanly possible I fixed xdg-open . but which we had I am lwk also planning to make a custom wallpaper and then thats it shipping rn working on the vhs gif and readme.md, lets procastinate if this proj is lwk 9h and i get 10 ratings then its 90 mehhhhhh I need 114 stardust rn for F75 AULA lol
Devlog 13 Nothing just completing the project readme and stuff uk
Ships:
terminal desktop launcher lwk a fullscreen terminal thing that looks like a tiny desktop. it has a wallpaper, a search bar on top and a little info panel at the bottom. instead of clicking icons you just type. i made it because opening a file manager and a launcher and a terminal separately felt dumb when i basically live in the terminal anyway. so now the terminal IS the desktop. kinda....
|
1794020055.1605513
|
1794106455.1605513
|
|
8856
|
The Ares Horizon by @alomnsh | Stardance
|
alomnsh
|
2
|
48.73
|
322
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-20T03:08:53Z", "hours": 19.0, "multiplier": 11.4, "payout": 217, "blessing": "neutral", "text": "What did you make? I made The Ares Horizon, a Python space adventure game where you play as a NASA Flight Director. Since my last ship, I over-hauled the game by adding a brand-new landing minigame with 3 difficulties, branch-linked storylines, and dynamic custom themes. What was challenging? Ditching Tkinter for Pygame was tough because I had to learn the library from scratch to eliminate bugs. I also lost 5 hours failing to host it on the web via noVNC/Docker, forcing me to stick to an .exe. Fixing cross-platform crashes and making it run smoothly on Python 3.14 was a huge headache. What are you proud of? I’m proud of building a robust Pygame + Tkinter interface with zero prior experience. The settings menu features a slick volume slider that changes color dynamically, a factory reset, and a text-speed slider. I also successfully added a seamless “Try Again” tracker without long loading screens. What should people know so they can test your project? Windows: Go to the Releases page and download the The.Ares.Horizon.exe file to play instantly. Mac/Linux: Follow the new README steps to install system dependencies (sdl2) and run inside a Python virtual environment. Python 3.14: Run pip install pygame --ce to avoid compilation errors. Warning: Turn down the audio in the custom Settings menu if the default launch mix is too loud.", "repo": "https://github.com/alomnsh/The-Ares-Horizon", "demo": "https://github.com/alomnsh/The-Ares-Horizon/releases/tag/v2.0.0"}, {"ship_num": 2, "ts": "2026-06-20T17:02:20Z", "hours": 12.0, "multiplier": 9.08, "payout": 105, "blessing": "neutral", "text": "I made my own choice python adventure game where the player takes a high-stake role of a Flight Director at NASA and there objective is to successfully launch, navigate and land a spacecraft on the surface of Mars. To play the game follow the steps in the README. (The game uses Desktop-Based GUI, so it cannot be hosted on clouds and has to run on your local computer). I am proud of how I made it look cinematic and similar to a NASA mission control terminal.", "repo": "https://github.com/alomnsh/The-Ares-Horizon", "demo": "https://github.com/alomnsh/The-Ares-Horizon/releases/tag/v2.0.0"}]...
|
[{"post_id": 68726, "ts": "202 [{"post_id": 68726, "ts": "2026-09-15T17:01:15Z", "hours": 2.5175, "text": "Devlog #16, posting this while at school 🏫 What I did: Fixed bugs in my minigame, there are still some left to resolve Fixed a bug where when you press try again, it put the user directly in the story mode even if they wished to play the mingame Fixed of bug of the emergency glow, it kept glowing after u pressed try again Rewrote parts of code I used AI in Removed and added new comments to make it more clear and not so chaotic Fixed the pygbag sizing issue Last thing, I previously had my setting.json file in the .gitignore for testing purposes and I forgot about it so my settings are what were seen by others instead of the factory settings they should have seen Notes: Fix minigame Optimize for low end devices Possibly add mobile or tablet support?? Make new v3.0.0 releases?? Releases for many OS??"}, {"post_id": 53416, "ts": "2026-08-23T23:10:43Z", "hours": 8.8311, "text": "Devlog #15, this is a big one What i did: So graphics are finally in I would say New hover effects like button glowing CRT lines, I first added them, didn’t go as planned removed em it the felt dead for some reason so added that back again Light mode The major one, improved the mini-game, a lot, it take up the whole screen now instead of just a section like it was earlier, it has added particle effects, and actual landing zone, star backgroud, fuel and velocity control The mini game looks real good but there are some bugs, many I would say I am currently working on fixing sizing issues with GitHub pages, I think pygbag is causing it via my deploy.yml Notes: When the bugs are removed and the sizing issue is fixed I think I will be ready to ship once more"}, {"post_id": 40503, "ts": "2026-08-04T02:29:20Z", "hours": 6.3825, "text": "Devlog #14 What I did: So after I 2nd ship, I went to AirVenture so no code there, It ruined my streak So I have finally, finally pushed the code on the web by making it entirely pygame then I ran pygbag so it is now finally live on GitHub Pages Proud of myself, there is still some work to do like fixing bugs Notes: My ship rating reasons suggested to add graphics so currently working on that I also have to improve the loading screen, looks like shit The biggest bug was getting the character and line spacing right, funny ik"}, {"post_id": 31582, "ts": "2026-07-20T02:55:39Z", "hours": 2.7858, "text": "Devlog 13 !! What’s New: I added Reset All Settings to default button, to reset every thing to the “Factory Setting” New setting, users can adjust how fast the typewriter writes on the screen If the user passes the mini game and lands successfully, they would unlock the option to just play the minigame instead of have to go through the the whole story again Notes: I promised that I will release web, I tried, failed miserably, so I am just releasing a new .exe I tried everything to pygame , didn’t work out, then tried to host it on noVNC, it acted up to, I finally gave up after 5 hrs of trying, didn’t count that because that was trial and error and not actual coding (although I did had to make and modify my Dockerfile like a 100 times)"}, {"post_id": 29177, "ts": "2026-07-15T22:03:47Z", "hours": 2.2292, "text": "Devlog #12 !! What I did: So as u guys know I added audio controls in the previous devlog, I made it even better now The settings menu is now in pygame instead of tkinter The slider changes color as the volume is changed (It looks so cool!!!!! ) There is a new “Mute All Sounds” check box Notes: tkinter sucks, I loved it at first it was easy but as my code becomes more complex it just causes unnecessary bugs, so I plan to switch entirely to pygame After I make the switch I can finally publish it to the web so you guys don’t have to download the source code or an .exe file (I was planning to do this, I got many reviews saying that a website would be better, so I am doing that)"}, {"post_id": 26902, "ts": "2026-07-11T23:05:32Z", "hours": 1.5653, "text": "Devlog #11 !!! What I did: So I switched from ctypes to the pygame audio engine this is so when my game is played on MacOS or Linux it doesn’t throw errors because ctypes is a Windows thing Added a settings menu to control the volume of the background music and the emergency sounds. The user preferences are saved using a .json file Updated my README.md so the instructions to how to play my game on another operating system aren’t broken Thanks to my ship suggestion, I am trying my best to implement those suggestions into my game and have already done so with a few of them!! What might be coming next: I hope that I can add to the settings menu so the user can control how they want the colors to look in the game, so basically full customization."}, {"post_id": 26133, "ts": "2026-07-10T19:03:00Z", "hours": 2.0886, "text": "My first ship is finally here, after 3 changes requested, I added a try again screen so the user doesn’t have to through the loading when they try again now it just shows there tries. Thanks for the idea from my first ship."}, {"post_id": 20472, "ts": "2026-07-02T02:15:56Z", "hours": 0.4544, "text": "Fixed the bug made the buttons disappear if your screen was too small or you weren’t fullscreened"}, {"post_id": 20339, "ts": "2026-07-01T22:18:29Z", "hours": 6.5228, "text": "v2.0.0 I think?? What’s New: New Landing minigame!! 3 difficulties The minigame features SPIKES!! Improved GUI Changes: I orginally started building my game on tkinter thinking it would be easy because my rest of the code was build on it, but I was wrong, it was so annoying to work with and caused so many bugs that I decided to switch to pygame I have never worked with pygame before so I ha to learn and then figure out a way to combine tkinter and pygame . Also, pygame is not supported in Python 3.14 so I had to do pip install pygame --ce the community edition I got it to work and I am so proud The video is a bit speed up"}, {"post_id": 16038, "ts": "2026-06-26T01:44:55Z", "hours": 1.09, "text": "I cleaned up the UI and linked the Solar Sails choice in branch 2 to the ending choice of branch 1. I know I promised that the update after the SFX one would be customization but I want to focus more on the game itself so I would just be adding a Dark and Light mode. And doing more customization options later."}, {"post_id": 14716, "ts": "2026-06-23T22:26:53Z", "hours": 2.4447, "text": "v 1.0.1 is incoming!! What’s New: Switched from the package of playsound to ctypes New SFXs, listen to them in the attachment (After this update rolls out, I will be working on given the user the freedom to customize how they want the game to look) Turn up your sound to listen to the sounds I cut out the parts where I selected options so that I don’t reveal the answers, if you want to try it out your self head over The Ares Horizon Repo"}, {"post_id": 12589, "ts": "2026-06-20T15:41:49Z", "hours": 1.0719, "text": "Finished my README and fixed crash bug with typewriter when the window is closed while it is typing"}, {"post_id": 11662, "ts": "2026-06-19T00:21:39Z", "hours": 1.5231, "text": "Currently working on my README for this project and before this I just fix a few things in my code. Added a background music loop that loops the audio forever and then fixed a crash bug"}, {"post_id": 10267, "ts": "2026-06-16T22:16:48Z", "hours": 4.3747, "text": "Added GUI to my games, fixed countless errors and bugs, added a loaded screen, Made it so that the buttons are interactive and only popup when the typing is finished. Added more colors to my text. Progress bar for the points."}, {"post_id": 8857, "ts": "2026-06-14T18:59:46Z", "hours": 3.4211, "text": "Finished all the choice, added typewriter function and color function. Changed how I want the text to be displayed when the code is running. Added background music. Made the background audio in Canva"}, {"post_id": 7134, "ts": "2026-06-11T22:21:25Z", "hours": 1.2161, "text": "Added 1st Choice Branch, worked on storyline, started to work on 2nd choice branch"}]...
|
Title: The Ares Horizon by @alomnsh | Stardance
D Title: The Ares Horizon by @alomnsh | Stardance
Devlogs:
Added 1st Choice Branch, worked on storyline, started to work on 2nd choice branch
Finished all the choice, added typewriter function and color function. Changed how I want the text to be displayed when the code is running. Added background music. Made the background audio in Canva
Added GUI to my games, fixed countless errors and bugs, added a loaded screen, Made it so that the buttons are interactive and only popup when the typing is finished. Added more colors to my text. Progress bar for the points.
Currently working on my README for this project and before this I just fix a few things in my code. Added a background music loop that loops the audio forever and then fixed a crash bug
Finished my README and fixed crash bug with typewriter when the window is closed while it is typing
v 1.0.1 is incoming!! What’s New: Switched from the package of playsound to ctypes New SFXs, listen to them in the attachment (After this update rolls out, I will be working on given the user the freedom to customize how they want the game to look) Turn up your sound to listen to the sounds I cut out the parts where I selected options so that I don’t reveal the answers, if you want to try it out your self head over The Ares Horizon Repo
I cleaned up the UI and linked the Solar Sails choice in branch 2 to the ending choice of branch 1. I know I promised that the update after the SFX one would be customization but I want to focus more on the game itself so I would just be adding a Dark and Light mode. And doing more customization options later.
v2.0.0 I think?? What’s New: New Landing minigame!! 3 difficulties The minigame features SPIKES!! Improved GUI Changes: I orginally started building my game on tkinter thinking it would be easy because my rest of the code was build on it, but I was wrong, it was so annoying to work with and caused so many bugs that I decided to switch to pygame I have never worked with pygame before so I ha to learn and then figure out a way to combine tkinter and pygame . Also, pygame is not supported in Python 3.14 so I had to do pip install pygame --ce the community edition I got it to work and I am so proud The video is a bit speed up
Fixed the bug made the buttons disappear if your screen was too small or you weren’t fullscreened
My first ship is finally here, after 3 changes requested, I added a try again screen so the user doesn’t have to through the loading when they try again now it just shows there tries. Thanks for the idea from my first ship.
Devlog #11 !!! What I did: So I switched from ctypes to the pygame audio engine this is so when my game is played on MacOS or Linux it doesn’t throw errors because ctypes is a Windows thing Added a settings menu to control the volume of the background music and the emergency sounds. The user preferences are saved using a .json file Updated my README.md so the instructions to how to play my game on another operating system aren’t broken Thanks to my ship suggestion, I am trying my best to implement those suggestions into my game and have already done so with a few of them!! What might be coming next: I hope that I can add to the settings menu so the user can control how they want the colors to look in the game, so basically full customization.
Devlog #12 !! What I did: So as u guys know I added audio controls in the previous devlog, I made it even better now The settings menu is now in pygame instead of tkinter The slider changes color as the volume is changed (It looks so cool!!!!! ) There is a new “Mute All Sounds” check box Notes: tkinter sucks, I loved it at first it was easy but as my code becomes more complex it just causes unnecessary bugs, so I plan to switch entirely to pygame After I make the switch I can finally publish it to the web so you guys don’t have to download the source code or an .exe file (I was planning to do this, I got many reviews saying that a website would be better, so I am doing that)
Devlog 13 !! What’s New: I added Reset All Settings to default button, to reset every thing to the “Factory Setting” New setting, users can adjust how fast the typewriter writes on the screen If the user passes the mini game and lands successfully, they would unlock the option to just play the minigame instead of have to go through the the whole story again Notes: I promised that I will release web, I tried, failed miserably, so I am just releasing a new .exe I tried everything to pygame , didn’t work out, then tried to host it on noVNC, it acted up to, I finally gave up after 5 hrs of trying, didn’t count that because that was trial and error and not actual coding (although I did had to make and modify my Dockerfile like a 100 times)
Devlog #14 What I did: So after I 2nd ship, I went to AirVenture so no code there, It ruined my streak So I have finally, finally pushed the code on the web by making it entirely pygame then I ran pygbag so it is now finally live on GitHub Pages Proud of myself, there is still some work to do like fixing bugs Notes: My ship rating reasons suggested to add graphics so currently working on that I also have to improve the loading screen, looks like shit The biggest bug was getting the character and line spacing right, funny ik
Devlog #15, this is a big one What i did: So graphics are finally in I would say New hover effects like button glowing CRT lines, I first added them, didn’t go as planned removed em it the felt dead for some reason so added that back again Light mode The major one, improved the mini-game, a lot, it take up the whole screen now instead of just a section like it was earlier, it has added particle effects, and actual landing zone, star backgroud, fuel and velocity control The mini game looks real good but there are some bugs, many I would say I am currently working on fixing sizing issues with GitHub pages, I think pygbag is causing it via my deploy.yml Notes: When the bugs are removed and the sizing issue is fixed I think I will be ready to ship once more
Devlog #16, posting this while at school 🏫 What I did: Fixed bugs in my minigame, there are still some left to resolve Fixed a bug where when you press try again, it put the user directly in the story mode even if they wished to play the mingame Fixed of bug of the emergency glow, it kept glowing after u pressed try again Rewrote parts of code I used AI in Removed and added new comments to make it more clear and not so chaotic Fixed the pygbag sizing issue Last thing, I previously had my setting.json file in the .gitignore for testing purposes and I forgot about it so my settings are what were seen by others instead of the factory settings they should have seen Notes: Fix minigame Optimize for low end devices Possibly add mobile or tablet support?? Make new v3.0.0 releases?? Releases for many OS??
Ships:
I made my own choice python adventure game where the player takes a high-stake role of a Flight Director at NASA and there objective is to successfully launch, navigate and land a spacecraft on the surface of Mars. To play the game follow the steps in the README. (The game uses Desktop-Based GUI, so it cannot be hosted on clouds and has to run on your local computer). I am proud of how I made it look cinematic and similar to a NASA mission control terminal.
What did you make? I made The Ares Horizon, a Python space adventure game where you play as a NASA Flight Director. Since my last ship, I over-hauled the game by adding a brand-new landing minigame with 3 difficulties, branch-linked storylines, and dynamic custom themes. What was challenging? Ditching Tkinter for Pygame was tough because I had to learn the library from scratch to eliminate bugs. I also lost 5 hours failing to host it on the web via noVNC/Docker, forcing me to stick to an .exe. Fixing cross-platform crashes and making it run smoothly on Python 3.14 was a huge headache. What are you proud of? I’m proud of building a robust Pygame + Tkinter interface with zero prior experience. The settings menu features a slick volume slider that changes color dynamically, a factory reset, and a text-speed slider. I also successfully added a seamless “Try Again” tracker without long loading screens. What should people know so they can test your project? Windows: Go to the Releases page and download the The.Ares.Horizon.exe file to play instantly. Mac/Linux: Follow the new README steps to install system dependencies (sdl2) and run inside a Python virtual environment. Python 3.14: Run pip install pygame --ce to avoid compilation errors. Warning: Turn down the audio in the custom Settings menu if the default launch mix is too loud....
|
1794012441.3673117
|
1794098841.3673117
|
|
29716
|
NYX by @Paulaner | Stardance
|
Paulaner
|
1
|
421.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-13T15:54:07Z", "hours": 421.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "nyx is a small operating-system kernel for 32-bit x86 PCs, written from scratch in Zig 0.15.2 with no C library and no external dependencies. It boots directly in QEMU and brings the machine up in 20 checked stages, from interrupts and timers through memory paging, a kernel heap, thread scheduling, disk and PCI drivers, and an in-memory filesystem loaded from an embedded tar archive. At boot it runs 15 built-in self-tests, then drops into an interactive shell with 30 commands that you can drive from the keyboard or over the serial port. It’s about 5,000 lines in total.", "repo": "https://github.com/Paul231007/nyx", "demo": "https://nyx-zeta-opal.vercel.app/"}]...
|
[{"post_id": 68723, "ts": "202 [{"post_id": 68723, "ts": "2026-09-15T16:57:50Z", "hours": 7.0203, "text": "📓 devlog · 2026-09-14 added initial architecture definition, establishing core components and their interactions for modularity. implemented key architectural components, focusing on separation of concerns to enhance maintainability. fleshed out various parts of the architecture, refining data flow and control structures between modules. wired up essential components to ensure proper communication and data exchange across the architecture. started multiple architectural elements concurrently, facilitating a more integrated approach to development. added several new architecture layers to improve scalability and support future feature additions. continued to implement and refine architecture, addressing edge cases related to component interaction and data integrity."}, {"post_id": 67883, "ts": "2026-09-14T05:39:42Z", "hours": 6.0667, "text": "📓 devlog · 2026-09-13 added initial implementation of the shell, establishing basic command parsing and execution flow. fleshed out shell functionality, improving command handling and improving error reporting for invalid inputs. wired up shell components, ensuring proper integration with existing modules for input and output processing. started multiple iterations of shell refinement, focusing on memory allocation strategies for command history storage. implemented additional features for the shell, including support for built-in commands and improved environment variable management. continued to flesh out shell behavior, addressing edge cases related to command substitution and pipeline execution."}, {"post_id": 67063, "ts": "2026-09-13T03:32:24Z", "hours": 10.8517, "text": "📓 devlog · 2026-09-12 implemented memory management, focused on allocation strategies and freeing unused memory blocks to optimize resource usage. fleshed out memory module, added support for variable-sized memory chunks, improving efficiency for dynamic allocation. started integration of memory system with existing components, ensuring compatibility and smooth data flow. added shell functionality, enabling user interaction with the memory management system through command-line inputs. wired up shell to the memory module, establishing command execution pathways for memory operations. performed multiple wiring adjustments in the shell, ensuring proper communication and error handling between components."}, {"post_id": 66150, "ts": "2026-09-11T19:42:45Z", "hours": 1.7425, "text": "📓 devlog · 2026-09-11 implemented the shell module, established basic command parsing and execution flow. fleshed out the shell with support for built-in commands, enhancing user interaction. added memory management functionality, introduced a structure for allocation tracking. wired up memory to the shell, enabling commands to manipulate memory directly. performed multiple whitespace fixes and formatting cleanups across all modules for better readability. started and fleshed out the memory module, ensuring proper initialization and allocation patterns. tidied shell code for improved maintainability, focusing on reducing complexity in command handling."}, {"post_id": 65818, "ts": "2026-09-11T06:38:13Z", "hours": 6.0333, "text": "📓 devlog · 2026-09-10 implemented the filesystem (fs), focused on directory structure and file allocation strategies for improved access speed. wired up the fs to ensure proper integration with existing modules, tested data flow between components during initial operations. started the shell, establishing basic command parsing and execution control flow to interface with the filesystem. added memory management capabilities, implemented a new allocation strategy to minimize fragmentation and optimize performance. cleaned up the shell code for readability, removed redundant whitespace to maintain consistent coding standards across the project. performed additional wiring for memory to ensure it interacts correctly with both the filesystem and shell for seamless operation. fleshed out the fs with additional features like file permissions and metadata handling, ensuring robustness for concurrent access."}, {"post_id": 65255, "ts": "2026-09-10T08:03:20Z", "hours": 6.4386, "text": "📓 devlog · 2026-09-09 implemented shell functionality, used a simple command parsing approach to handle user inputs effectively. added shell module, structured to handle basic commands and provide feedback to users. fleshed out shell with support for additional built-in commands, improving user experience and functionality. performed cleanup across multiple files, removing unused variables and optimizing control flow where necessary. started filesystem integration in shell, allowing for basic file operations within the command line. continued formatting work across the project, ensuring consistent code style and readability. tidied shell code for better organization, enhancing maintainability and future development efforts. 📓 devlog · 2026-09-09 implemented shell functionality, used a simple command parsing approach to handle user inputs effectively. added shell module, structured to handle basic commands and provide feedback to users. fleshed out shell with support for additional built-in commands, improving user experience and functionality. performed cleanup across multiple files, removing unused variables and optimizing control flow where necessary. started filesystem integration in shell, allowing for basic file operations within the command line. continued formatting work across the project, ensuring consistent code style and readability. tidied shell code for better organization, enhancing maintainability and future development efforts."}, {"post_id": 64632, "ts": "2026-09-09T05:28:16Z", "hours": 9.9, "text": "📓 devlog · 2026-09-08 added shell module, implemented basic command parsing and execution flow, using a simple function pointer array for command dispatch fleshed out shell functionality, included support for built-in commands and input handling, ensuring proper memory allocation for command buffers tidied up shell code, removed redundant whitespace and improved consistency in formatting to enhance readability performed multiple cleanups, refactored shell initialization code for better modularity and maintainability wired up shell to the main application loop, ensuring proper integration and execution flow with other components addressed multiple whitespace issues across files, ensuring consistent coding standards throughout the project"}, {"post_id": 63857, "ts": "2026-09-07T20:46:33Z", "hours": 12.5, "text": "📓 devlog · 2026-09-07 implemented fs, focused on the core file system structure, ensuring proper data layout for efficient file access. fixed a typo in the shell, improving command parsing accuracy and preventing potential runtime errors. tidied shell code by removing unnecessary whitespace and organizing functions for better readability and maintenance. performed multiple formatting updates across various files to adhere to coding standards, ensuring uniformity in style. continued work in progress on shell functionality, refining command handling and improving control flow for user input. completed cleanup tasks to remove unused variables and redundant code, optimizing memory usage and enhancing performance."}, {"post_id": 62472, "ts": "2026-09-05T20:33:49Z", "hours": 11.9333, "text": "📓 devlog · 2026-09-05 added drivers for peripheral devices, ensuring proper initialization and configuration settings. implemented a basic shell structure, allowing for command processing and execution. performed multiple whitespace fixes across various files for improved readability and consistency. cleaned up existing code, removing unused variables and dead code to streamline execution paths. created a rough outline for the shell functionality, defining command handling and parsing logic. updated shell implementation to handle user inputs and provide feedback on command execution. added stubs for future shell commands, preparing for further functionality expansion."}, {"post_id": 61112, "ts": "2026-09-03T20:52:00Z", "hours": 6.3667, "text": "📓 devlog · 2026-09-03 added drivers for peripheral communication, structured to allow for easier integration with existing modules. fleshed out driver implementations, ensuring proper handling of initialization and resource allocation. started sketching a shell interface, focusing on command parsing and execution flow. performed multiple whitespace fixes across various files for improved readability and consistency. conducted cleanup of redundant code segments in the driver files, reducing overall complexity. wired up drivers to interact with the new shell, establishing a basic command execution pathway. implemented additional driver functionality to support expanded hardware features, enhancing overall system capability."}, {"post_id": 60480, "ts": "2026-09-02T20:34:28Z", "hours": 6.4333, "text": "📓 devlog · 2026-09-02 tidied up the main module, removed unused imports and improved code readability through consistent formatting. wired up the main module with initial control flow, ensuring proper function calls and data handling. added a preliminary structure for the main module, including stubs for future function implementations. started development on drivers, implementing basic functionality and ensuring proper interaction with the main module. fleshed out the drivers with additional features, focusing on data handling and performance. sketched out the shell interface for user interaction, laying groundwork for input handling and command processing. performed multiple whitespace fixes across various files to maintain code clarity and consistency."}, {"post_id": 59835, "ts": "2026-09-01T20:12:40Z", "hours": 6.6333, "text": "📓 devlog · 2026-09-01 added main module, defined basic structure and entry point for the application flow. cleaned up code formatting across multiple files, improved readability and maintained consistency. fleshed out main functionality, implemented key features and logic required for initial operation. performed multiple whitespace fixes, ensured compliance with style guide and improved diff clarity. started additional main implementations, focused on refining specific functions and control flow. tidied main module, reorganized code for better logical grouping and clarity, enhanced maintainability. conducted cleanup, removed unused variables and functions, streamlined overall codebase."}, {"post_id": 59152, "ts": "2026-08-31T19:40:38Z", "hours": 7.5333, "text": "📓 devlog · 2026-08-31 added main module, set up initial structure and entry points for control flow. wired up main, ensured proper integration with existing components. cleaned up codebase, removed unused variables and streamlined functions for better readability. tidied up main, focused on consistent naming conventions and indentation. addressed multiple whitespace issues, ensuring uniform formatting throughout the code. fleshed out main with additional functionality, enh"}, {"post_id": 57902, "ts": "2026-08-30T07:19:42Z", "hours": 10.1333, "text": "📓 devlog · 2026-08-29 implemented main module, structured the control flow to handle various inputs and outputs efficiently. wired up main functionality, ensured integration with existing components while maintaining modularity. performed multiple whitespace fixes across the codebase to enhance readability and comply with formatting standards. cleaned up redundant code in main, improving maintainability without altering the core logic. fleshed out main, added necessary functions to support additional features and edge cases. tidied up main to simplify the execution path, reducing cognitive load for future development. formatted code consistently, aligning with project style guidelines for better collaboration."}, {"post_id": 56858, "ts": "2026-08-28T20:25:55Z", "hours": 2.1333, "text": "📓 devlog · 2026-08-28 cleaned up whitespace in several files to maintain code consistency and readability. implemented stub functions in module m8 to outline future functionality without full implementation. organized and tidied code in m8, removing unnecessary lines and improving structure. continued work in progress on module m8, addressing various incomplete sections. fleshed out details in module m8, adding logic to improve functionality and integration. added new features to m8, enhancing its capabilities based on recent requirements. performed additional cleanup in m8 to remove deprecated code and streamline performance."}, {"post_id": 56412, "ts": "2026-08-28T05:27:02Z", "hours": 10.4667, "text": "📓 devlog · 2026-08-27 cleaned up various sections of the codebase, focusing on removing redundant comments and unused variables for better readability. added module m7, defining its structure and initial state, laying groundwork for subsequent implementations. wired up m7 to existing systems, ensuring data flow and control paths are correctly established. fleshed out m7 with core functionality, implementing key methods and internal logic to meet specifications. began rough implementation of m9, setting up initial framework and placeholders for upcoming features. fixed typos in m9, correcting variable names and comments for clarity and consistency. implemented core functions for m9, following through on the designs sketched in earlier commits."}, {"post_id": 55216, "ts": "2026-08-26T20:02:26Z", "hours": 5.6, "text": "📓 devlog · 2026-08-26 implemented module m2, focused on core functionality, ensured proper data handling and state management wired up module m2, established connections with existing components, validated data flow between modules started development on module m7, created initial stubs to define interface and behavior expectations fixed a bug in module m7 related to incorrect state transitions, improved control flow conducted cleanup across various modules, removed unused variables and optimized memory layout worked on ktest, tidied up existing tests, improved structure for better readability and maintainability performed whitespace fixes across multiple files to maintain consistency and adhere to coding standards"}, {"post_id": 54746, "ts": "2026-08-25T20:40:36Z", "hours": 2.2667, "text": "📓 devlog · 2026-08-25- worked on scheduling system, added preliminary structures for new scheduling algorithms while ensuring compatibility with existing code.- performed code tidying in the scheduling module, improving readability and reducing cyclomatic complexity.- implemented core functionality for module m5, focusing on resource allocation and control flow for task management.- fixed whitespace issues throughout the codebase, ensuring consistent formatting and adherence to style guidelines.- completed the implementation of module m5, integrating features from earlier sketches and ensuring edge cases are handled.- conducted cleanup on multiple modules, removing redundant code and ensuring proper memory allocation practices are followed.- added preliminary sketches for module m2, laying groundwork for future functionality and ensuring alignment with overall architecture."}, {"post_id": 54346, "ts": "2026-08-25T09:29:39Z", "hours": 10.2333, "text": "📓 devlog · 2026-08-23- added ramfs module, implemented initial allocation and file structure layout for in-memory file system.- cleaned up whitespace and formatting across multiple files to improve readability and maintainability.- stubs created for m4 module, establishing the basic structure and placeholders for future development.- wired up ramfs to the existing system, ensuring proper integration with the kernel and other subsystems.- worked on m4 module, refining control flow and preparing it for handling input and output operations.- multiple sketches of ramfs and m4 completed, outlining potential features and behaviors for further implementation.- conducted overall cleanup of the codebase, addressing minor issues and ensuring consistent coding standards."}, {"post_id": 53333, "ts": "2026-08-23T20:21:43Z", "hours": 2.0667, "text": "📓 devlog · 2026-08-23 added ramfs module, implemented initial allocation and file structure layout for in-memory file system. cleaned up whitespace and formatting across multiple files to improve readability and maintainability. stubs created for m4 module, establishing the basic structure and placeholders for future development. wired up ramfs to the existing system, ensuring proper integration with the kernel and other subsystems. worked on m4 module, refining control flow and preparing it for handling input and output operations. multiple sketches of ramfs and m4 completed, outlining potential features and behaviors for further implementation. conducted overall cleanup of the codebase, addressing minor issues and ensuring consistent coding standards."}, {"post_id": 52832, "ts": "2026-08-23T05:57:49Z", "hours": 19.9, "text": "📓 devlog · 2026-08-22 implemented ramfs, defined basic structure and operations for file handling and memory layout fleshed out ramfs, added functions for reading and writing files, ensuring proper memory allocation started ramfs, established initial setup for in-memory filesystem structure and controls cleaned up code across multiple files, removed unnecessary whitespace for better readability performed formatting adjustments, ensured consistent code style and indentation throughout the project worked on rough elf, iterated on the ELF parsing logic and data structures for improved parsing accuracy added additional cleanup commits for better organization and maintainability of the codebase"}, {"post_id": 50669, "ts": "2026-08-19T23:15:32Z", "hours": 10.7733, "text": "📓 devlog · 2026-08-19 - cleaned up ktest, removed unnecessary code and improved readability for better maintainability. - began outlining ktest structure, defined major test cases and expected outcomes to streamline future development. - fleshed out vfs, added initial functions for file handling and directory structure, focusing on memory layout. - implemented basic elf loading, structured code to handle ELF file format parsing and memory allocation. - performed multiple cleanups across modules, consolidated formatting and fixed whitespace issues to adhere to style guidelines. - initiated elf module, set up initial framework for ELF support including header parsing and section handling."}, {"post_id": 49378, "ts": "2026-08-18T05:17:25Z", "hours": 14.9333, "text": "📓 devlog · 2026-08-17- implemented tar functionality, focusing on the compression algorithm and ensuring efficient file handling during archiving.- added multiple methods for extracting and listing files within the tar format, ensuring compatibility with various file types.- began work on the virtual file system (vfs), outlining the necessary data structures for managing file metadata and storage locations.- added initial stubs for vfs functions, setting up a foundation for future integration with the tar operations.- performed formatting changes across several files to improve code readability and maintain consistency in style.- addressed whitespace issues in the codebase to enhance clarity and adhere to coding standards.- continued development on vfs, sketching out control flow and interactions between the file system and tar operations."}, {"post_id": 47755, "ts": "2026-08-15T21:51:30Z", "hours": 5.7333, "text": "added module m6, structured to handle new data processing tasks with lower memory overhead.- wired up module m6, integrated it into the existing control flow to ensure correct data handling.- implemented core functionality for module m6, focusing on efficient allocation and deallocation.- wired up the hello module, ensuring it interfaces properly with other components.- implemented motd, providing a simple message on system start to enhance user experience.- worked on tar, stubbing out initial functionality while preparing for future enhancements.- performed cleanup across various modules, focusing on code readability and eliminating unused variables."}, {"post_id": 47187, "ts": "2026-08-14T22:17:59Z", "hours": 8.0667, "text": "📓 devlog · 2026-08-14 added initial sketches for ktest and pci modules, outlining the basic structure and intended functionality. conducted general cleanup across the repository, removing unused code and improving overall organization. made multiple formatting adjustments to ensure consistent code style throughout the project. implemented the pci module, focusing on memory allocation and control flow to handle device interactions. fixed typos in ktest documentation and comments to improve clarity and maintainability. worked on stubbing out ktest functionality, laying the groundwork for future testing features. addressed whitespace issues in several files to maintain code readability and adherence to style guidelines."}, {"post_id": 46521, "ts": "2026-08-13T20:07:57Z", "hours": 6.1667, "text": "📓 devlog · 2026-08-13 formatted various files for consistency, improved readability across the codebase. performed multiple cleanup tasks, removing dead code and refactoring functions for better maintainability. wired up the pci subsystem, ensuring proper connection and control flow with existing components. started initial implementation of ktest, laying out the basic structure and functions required for testing. tidied up the pci module by organizing functions and consolidating related code segments. addressed whitespace issues in several files to enhance overall code quality. stubbed out ktest functions to create placeholders for future testing scenarios and implementations."}, {"post_id": 45973, "ts": "2026-08-12T20:06:31Z", "hours": 5.5333, "text": "📓 devlog · 2026-08-12 cleaned up various modules, removed unused imports and redundant code for better readability and maintainability. fixed whitespace issues across multiple files to ensure consistent formatting and adhere to coding standards. fleshed out the pci module, implementing initial structures and outlining the control flow for device communication. tidied up the ktest module, improved the organization of test cases and ensured proper initialization of test variables. stubbed the ktest module to establish a framework for future unit tests, setting up basic test cases without implementation. started the pci module, laying the groundwork for further development and integration with existing components."}, {"post_id": 45412, "ts": "2026-08-11T20:47:58Z", "hours": 6.0333, "text": "📓 devlog · 2026-08-11 added initial implementation for pci, structured to facilitate device communication in the system. performed multiple cleanup operations across the codebase, focusing on removing redundant code and improving readability. fixed whitespace issues in several files, enhancing consistency in formatting. refined the pci module’s layout to ensure efficient data flow and reduce memory overhead. ensured all cleanup efforts adhered to the existing coding standards, promoting maintainability. adjusted comments and documentation to reflect recent changes, particularly for the pci module."}, {"post_id": 44820, "ts": "2026-08-10T20:53:14Z", "hours": 6.4667, "text": "📓 plan · 2026-08-10 I’m starting the day later than usual, so I plan to tackle the whitespace fixes first to ensure our code adheres to the style guide. Once those are out of the way, I’ll focus on fleshing out the PCI subsystem, aiming for a more robust memory layout and control flow that supports our concurrency model. The evening will be dedicated to cleanup and further tidying of the PCI components, wrapping up with formatting to maintain consistency. If all goes well, I’ll end the day with a well-structured and polished segment of the codebase."}, {"post_id": 44214, "ts": "2026-08-09T20:34:21Z", "hours": 12.7667, "text": "📓 devlog · 2026-08-09 added ata module, structured data layout to optimize access patterns and reduce allocation overhead. implemented ktest, focusing on the test harness for kernel functionalities, ensuring control flow is correctly validated. wired up pci, improved integration with ata, facilitating better data transfer between components. tidied up ata, removed unnecessary complexity in the data handling logic to enhance maintainability. fixed typos in ktest to improve readability and avoid potential confusion in the test cases. worked on rough ktest, established initial test cases for future enhancements and iterations."}, {"post_id": 42854, "ts": "2026-08-07T20:02:05Z", "hours": 5.3667, "text": "📓 devlog · 2026-08-07 implemented ata, added core functionality and basic data processing logic. started ktest, set up initial test structure with basic stubs for functionality. fleshed out ktest, integrated test cases and improved coverage for ata interactions. cleaned up codebase, removed unused variables and simplified function calls across modules. performed multiple formatting updates, ensured consistent indentation and styling in source files. created stubs for ata, outlined functions for future implementation. addressed whitespace issues, standardized whitespace across all files for better readability."}, {"post_id": 42227, "ts": "2026-08-06T20:52:42Z", "hours": 3.6333, "text": "📓 devlog · 2026-08-06 tidied up the acpi module, removed unused variables and streamlined function calls for better readability. started work on the acpi module, established initial data structures for handling ACPI tables. performed whitespace fixes across multiple files to maintain consistent formatting, aiding in code maintainability. initiated ktest module, set up basic test framework for kernel testing. tidied up ktest, improved code organization by grouping related functions and reducing code duplication. began rough implementation of ata support, focused on defining data structures for device management. implemented core ata functionality, ensuring proper handling of ATA commands and data transfers."}, {"post_id": 41635, "ts": "2026-08-05T23:41:07Z", "hours": 9.1, "text": "📓 devlog · 2026-08-05 added cpu module with basic structure and initial function outlines for core operations, set up initial memory allocation patterns. tidied up cpu code to improve readability, removed unused variables, and streamlined control flow in functions. began implementation of acpi, defining key data structures and laying out the function signatures required for system power management. wired up ktest to interface with cpu and acpi modules, ensuring proper data flow and control between the components. performed multiple cleanups throughout the codebase, focusing on removing redundant code and addressing formatting inconsistencies. fleshed out ktest to include test cases for cpu and acpi functionality, verifying expected behavior under various scenarios."}, {"post_id": 40954, "ts": "2026-08-04T20:19:12Z", "hours": 6.3667, "text": "📓 devlog · 2026-08-04 added initial structure for rtc, defined basic functions and headers for timekeeping. implemented core rtc functionality, allowing for setting and getting time with precision. cleaned up memory allocation in the cpu module, optimizing data access patterns. wired up cpu to handle rtc interrupts, ensuring correct handling of time-based events. fixed several whitespace and formatting issues across multiple files for consistency. addressed a typo in rtc definitions to prevent compilation errors. started work on syscall implementation, focusing on establishing foundational interfaces."}, {"post_id": 40355, "ts": "2026-08-03T20:02:26Z", "hours": 5.4667, "text": "📓 devlog · 2026-08-03 implemented syscall in the kernel, handling input and output operations for better interaction with user processes. wired up syscall to ensure proper communication between user space and kernel space, adjusting control flow for seamless execution. cleaned up codebase multiple times, focusing on removing redundant code and improving readability across various modules. added stub for rtc, laying the groundwork for real-time clock functionality, enabling time management features in future updates. addressed whitespace issues in several files, ensuring consistent formatting and adherence to style guidelines throughout the project."}, {"post_id": 39704, "ts": "2026-08-02T20:46:18Z", "hours": 6.2333, "text": "📓 devlog · 2026-08-02 started initial implementation of the scheduling module, focusing on basic structure and control flow. sketched out the keyboard input handling, defining data layout and key event management. performed a cleanup of the existing codebase, removing unused variables and improving readability. fixed a typo in the scheduling module that could lead to misinterpretation of scheduling logic. wired up the keyboard functionality to capture input events, ensuring proper allocation of resources for key states. cleaned up whitespace across multiple files, improving overall code consistency and formatting. stubs created for keyboard handling, setting the stage for future development of input features."}, {"post_id": 39124, "ts": "2026-08-01T20:39:59Z", "hours": 12.5667, "text": "📓 devlog · 2026-08-01 implemented physical memory management (pmm), structured memory allocation routines to handle page frames efficiently. added a programmable interrupt controller (pic), designed to manage hardware interrupts with a focus on prioritization and handling edge cases. started input subsystem, defined initial data structures and control flow for handling keyboard events. fixed typos and cleaned up whitespace across various files to improve code readability and maintainability. implemented keyboard handling, established key state tracking and event generation for input processing. performed multiple rounds of formatting and organization on the input code to align with project standards. created stubs for future input features, ensuring basic structure without full implementation for now."}, {"post_id": 37846, "ts": "2026-07-30T20:17:09Z", "hours": 6.4333, "text": "📓 devlog · 2026-07-30 added physical memory management (pmm) module, implemented basic allocation and deallocation routines for memory blocks. fleshed out pmm with additional functions for tracking free memory and fragmentation reduction strategies. wired up pmm with the scheduler, ensuring proper memory allocation during task creation and context switching. started work on the scheduler, focusing on establishing control flow for task prioritization and execution sequence. performed whitespace fixes across multiple files to improve code readability and maintain consistency."}, {"post_id": 37240, "ts": "2026-07-29T19:55:46Z", "hours": 3.1333, "text": "📓 devlog · 2026-07-29 removed unused variables in the scheduler module, improving readability and reducing confusion. organized the scheduling logic into smaller functions, enhancing maintainability and clarity in control flow. started work on the physical memory manager, focusing on the initial layout and allocation strategy. added basic structure for the physical memory manager, ensuring it aligns with existing memory management routines. performed multiple cleanups across the codebase, addressing formatting issues and whitespace for consistent style. iterated on the physical memory manager with rough implementations to establish a foundation for future development."}, {"post_id": 36718, "ts": "2026-07-28T23:16:55Z", "hours": 8.6667, "text": "📓 devlog · 2026-07-28 implemented basic structure for the ring buffer, focusing on data insertion and deletion mechanics. fixed issues in the ring buffer related to overflow conditions, ensuring proper wrap-around logic. started initial work on the scheduler module, defining its role in managing task execution order. cleaned up code in various modules, removing unused variables and optimizing function calls for clarity. made progress on physical memory management (pmm), refining allocation strategies and data structures. wired up pmm with the existing memory system, ensuring compatibility with current allocation patterns. cleaned up and sketched additional plans for pmm, setting groundwork for more advanced features."}, {"post_id": 35423, "ts": "2026-07-26T20:27:13Z", "hours": 2.0667, "text": "📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later. 📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later."}, {"post_id": 35069, "ts": "2026-07-26T08:05:46Z", "hours": 8.6, "text": "📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later."}, {"post_id": 34314, "ts": "2026-07-24T22:08:52Z", "hours": 3.6667, "text": "📓 devlog · 2026-07-24 implemented paging, added core functionality for memory management, ensuring proper control flow for page allocation and deallocation. fleshed out paging, defined page structures and their associated metadata for efficient access patterns. wired up slab, integrated slab allocation with paging to optimize memory usage and reduce fragmentation. rough paging, established initial framework for paging algorithms, focusing on basic page replacement strategies. performed cleanup in various modules, removing redundant code and improving readability. formatted code across multiple files, ensuring consistency in style and adherence to project guidelines. worked on libk, progressing on utility functions to support paging and slab management."}, {"post_id": 33893, "ts": "2026-07-24T05:28:56Z", "hours": 10.8333, "text": "📓 devlog · 2026-07-23 performed general cleanup across multiple files, removed unused variables and streamlined functions for better readability. initiated work on libk, added initial sketches for core functions and data structures, focused on modular design. formatted existing code for consistency, ensured alignment with style guide across all modified files. stubbed out additional functions in libk, set up basic structure for future implementation, no functional changes yet. implemented rough drafts of key algorithms in libk, focused on establishing functional outlines and placeholders. added sketches for paging functionality, laid ground for memory management, still a work in progress. fixed multiple instances of whitespace inconsistencies, ensured code meets formatting standards."}, {"post_id": 33142, "ts": "2026-07-22T19:42:34Z", "hours": 5.7667, "text": "📓 devlog · 2026-07-22 stub libk, added initial placeholder functions to define the interface and structure for future implementation. sketch libk, outlined key functionalities and features expected in libk to guide further development. ok actually fix libk, resolved an existing issue in the libk implementation that impacted function performance. cleanup, removed unnecessary code and comments in multiple files to improve readability and maintainability. formatting, standardized code formatting across several modules to ensure consistency in style and layout. add pic, integrated initial assets and images required for the project, ensuring proper paths and references. rough libk, created a basic version of libk to provide a foundational structure for ongoing enhancements."}, {"post_id": 32547, "ts": "2026-07-21T20:05:00Z", "hours": 3.4333, "text": "📓 devlog · 2026-07-21 added rough implementation of timefmt, establishing a basic structure for time formatting functionality. cleaned up code formatting across several modules to improve readability and maintainability. created stubs for timefmt, setting up placeholder functions for future development and integration. fixed a typo in the timefmt module, ensuring correct naming and preventing potential lookup errors. began work on paging, focusing on the initial design for memory management and data access. started implementing libk, aiming to enhance core library functions related to kernel operations. tidied up libk, removing unused code and optimizing existing functions for better performance."}, {"post_id": 32056, "ts": "2026-07-20T23:05:31Z", "hours": 8.8667, "text": "📓 devlog · 2026-07-20 implemented rough version of timefmt, focusing on initial parsing logic for time strings. wired up timefmt to the main application flow, ensuring it integrates correctly with existing date handling. sketched out the overall structure of timefmt, laying the groundwork for future enhancements. fixed whitespace inconsistencies in several files for better readability and maintainability. addressed a typo in the timefmt module to prevent potential runtime errors. performed additional cleanup across the codebase, removing unused variables and functions. added a stub for timefmt to facilitate further development and testing."}, {"post_id": 31435, "ts": "2026-07-19T20:03:21Z", "hours": 6.1, "text": "📓 devlog · 2026-07-19 implemented rough version of timefmt, focusing on initial parsing logic for time strings. wired up timefmt to the main application flow, ensuring it integrates correctly with existing date handling. sketched out the overall structure of timefmt, laying the groundwork for future enhancements. fixed whitespace inconsistencies in several files for better readability and maintainability. addressed a typo in the timefmt module to prevent potential runtime errors. performed additional cleanup across the codebase, removing unused variables and functions. added a stub for timefmt to facilitate further development and testing."}, {"post_id": 30855, "ts": "2026-07-18T20:05:37Z", "hours": 5.6028, "text": "📓 devlog · 2026-07-18 modified pic module to include initial implementation and basic structure, established interface for adding images. expanded functionality of pic module, incorporated methods for adding and manipulating image data. began initial work on timefmt module, implemented rough outline for time formatting functions. fixed identified issues in timefmt, corrected incorrect time string conversions and edge cases. performed multiple iterations and cleanups on timefmt, ensuring consistent formatting and removal of redundant code. addressed whitespace issues throughout the codebase, maintaining code readability and standards. completed additional stubs for timefmt, preparing for future enhancements and detailed functionality."}, {"post_id": 30370, "ts": "2026-07-17T20:56:25Z", "hours": 6.6667, "text": "📓 devlog · 2026-07-17 started working on the vga module, established initial structure and placeholder functions for further development. cleaned up existing code, focused on reducing redundant lines and improving readability across various modules. fleshed out vga functionality, added basic rendering capabilities and memory layout for pixel data. implemented a timer system, ensuring precise tracking of time intervals, adjusted allocation for timer objects. added stubs for pic and timefmt modules, set up basic function signatures for future implementation. made multiple whitespace fixes across all files to conform to coding standards and improve consistency. tidied up pic module, streamlined control flow and ensured compatibility with vga rendering logic."}, {"post_id": 29723, "ts": "2026-07-16T20:17:42Z", "hours": 6.6667, "text": "📓 devlog · 2026-07-16 implemented serial communication module, established basic data transfer protocols and control flow. added serial interface to the main system, allowing for external device communication. fleshed out serial functionality, including error checking and buffer management. wired up serial connections for data transmission, ensuring correct pin mappings and signal integrity. sketched out io module structure, focusing on input/output handling and data processing paths. added initial io functions, implementing basic read/write capabilities for peripheral devices. began rough implementation of vga module, focusing on pixel data handling and display timing."}, {"post_id": 29115, "ts": "2026-07-15T19:34:57Z", "hours": 5.3667, "text": "📓 devlog · 2026-07-15 implemented console, added basic input/output functionality for user interaction through standard input and output streams. wired up console, ensured proper integration with the main application loop for event handling. implemented blockcache, optimized data retrieval by caching frequently accessed blocks in memory. wired up blockcache, linked it to the data storage layer to enhance read performance. stubbed and tidied paging, established the foundational structure for memory paging without full implementation yet. tidied serial, cleaned up the existing codebase for serial communication, improving readability and maintainability. added serial, integrated serial port communication for external device interaction, allowing data transfer between the application and peripherals."}, {"post_id": 28515, "ts": "2026-07-14T20:24:25Z", "hours": 6.6283, "text": "📓 devlog · 2026-07-14 added initial work on interrupt handling, defined basic structure for interrupt service routines. performed code cleanup to improve readability, removed unnecessary comments and streamlined function definitions. cleaned up formatting across several files to adhere to style guidelines, ensuring consistent indentation and spacing. created stub implementations for interrupt handlers, laying groundwork for future development and testing. sketched out a more detailed design for interrupt architecture, focusing on data flow and control mechanisms. tidied up existing interrupt code, organized functions, and reduced duplication in the implementation. continued refining interrupt handling logic, addressing edge cases and ensuring proper allocation of resources."}, {"post_id": 27885, "ts": "2026-07-13T19:57:58Z", "hours": 6.5711, "text": "📓 devlog · 2026-07-13 added stub interrupts to initialize interrupt handling in the system, setting up for further implementation. created a work-in-progress blockcache module, laying the groundwork for efficient data storage and retrieval. implemented the timer functionality, ensuring accurate time tracking within the system for scheduling tasks. cleaned up various modules including blockcache and interrupts, improving readability and maintainability of the code. fleshed out timer implementation details, refining the control flow for better performance in timing operations. performed multiple formatting fixes across files for consistent coding style, aiding in future collaboration. organized and tidied blockcache code, improving memory layout and preparing it for future enhancements."}, {"post_id": 27323, "ts": "2026-07-12T20:03:59Z", "hours": 6.5561, "text": "📓 devlog · 2026-07-12 cleaned up interrupt handling code, focused on reducing redundancy and improving readability without changing functionality. implemented stubs for interrupt functions to facilitate future development, allowing for easier testing and integration. performed multiple whitespace fixes throughout the codebase to maintain consistency in style, improving overall readability. formatted code to align with the project’s style guide, ensuring uniformity across various modules and files. addressed various cleanup tasks, removing unused variables and optimizing import statements for better organization. worked on interrupt-related functionality, marked as work in progress, which requires further testing and validation. applied additional tidying to interrupt handling to ensure clear control flow and efficient resource management."}, {"post_id": 26805, "ts": "2026-07-11T20:12:50Z", "hours": 7.3297, "text": "📓 devlog · 2026-07-11 added basic interrupt handling, defined interrupt vectors and handlers for specific events, ensuring correct execution flow. cleaned up existing code, removed unused variables and streamlined function definitions for better readability and maintainability. implemented rough interrupt logic, focused on initial data capture and processing for incoming signals from hardware. tidied up the interrupt code, organized structure for clarity, and ensured consistent naming conventions across handlers. performed multiple whitespace fixes and formatting adjustments, ensuring adherence to style guidelines throughout the project. worked in progress on interrupt functionality, laying groundwork for future enhancements and optimizations in response handling."}, {"post_id": 26151, "ts": "2026-07-10T19:35:47Z", "hours": 1.6197, "text": "📓 devlog · 2026-07-10 implemented wiring for idt, ensuring proper interrupt handling flow. created initial sketches for gdt, focusing on data structure layout and alignment. performed multiple whitespace fixes across files for improved readability. refined gdt implementation with rough and tidy stages, optimizing memory layout. wired up gdt, enabling segment-based memory management for the system. cleaned up interrupt wiring, enhancing control flow during interrupt processing. standardized formatting across the codebase to maintain consistency and clarity."}, {"post_id": 25764, "ts": "2026-07-10T06:38:12Z", "hours": 13.3744, "text": "📓 devlog · 2026-07-09 fleshed out README content to provide clearer project guidelines and usage instructions, improved overall clarity. made multiple formatting adjustments across the README files to ensure consistency and readability. started and wired up the initial draft of the interrupt descriptor table (idt), focusing on basic structure and future implementation. added stubs for idt functions, preparing for further development while ensuring initial code integrity. corrected a typo in the idt implementation, ensuring accurate naming conventions in the codebase. performed cleanup tasks on both README and idt files, removing redundant lines and improving organization."}]...
|
Title: NYX by @Paulaner | Stardance
Devlogs:
📓 de Title: NYX by @Paulaner | Stardance
Devlogs:
📓 devlog · 2026-07-09 fleshed out README content to provide clearer project guidelines and usage instructions, improved overall clarity. made multiple formatting adjustments across the README files to ensure consistency and readability. started and wired up the initial draft of the interrupt descriptor table (idt), focusing on basic structure and future implementation. added stubs for idt functions, preparing for further development while ensuring initial code integrity. corrected a typo in the idt implementation, ensuring accurate naming conventions in the codebase. performed cleanup tasks on both README and idt files, removing redundant lines and improving organization.
📓 devlog · 2026-07-10 implemented wiring for idt, ensuring proper interrupt handling flow. created initial sketches for gdt, focusing on data structure layout and alignment. performed multiple whitespace fixes across files for improved readability. refined gdt implementation with rough and tidy stages, optimizing memory layout. wired up gdt, enabling segment-based memory management for the system. cleaned up interrupt wiring, enhancing control flow during interrupt processing. standardized formatting across the codebase to maintain consistency and clarity.
📓 devlog · 2026-07-11 added basic interrupt handling, defined interrupt vectors and handlers for specific events, ensuring correct execution flow. cleaned up existing code, removed unused variables and streamlined function definitions for better readability and maintainability. implemented rough interrupt logic, focused on initial data capture and processing for incoming signals from hardware. tidied up the interrupt code, organized structure for clarity, and ensured consistent naming conventions across handlers. performed multiple whitespace fixes and formatting adjustments, ensuring adherence to style guidelines throughout the project. worked in progress on interrupt functionality, laying groundwork for future enhancements and optimizations in response handling.
📓 devlog · 2026-07-12 cleaned up interrupt handling code, focused on reducing redundancy and improving readability without changing functionality. implemented stubs for interrupt functions to facilitate future development, allowing for easier testing and integration. performed multiple whitespace fixes throughout the codebase to maintain consistency in style, improving overall readability. formatted code to align with the project’s style guide, ensuring uniformity across various modules and files. addressed various cleanup tasks, removing unused variables and optimizing import statements for better organization. worked on interrupt-related functionality, marked as work in progress, which requires further testing and validation. applied additional tidying to interrupt handling to ensure clear control flow and efficient resource management.
📓 devlog · 2026-07-13 added stub interrupts to initialize interrupt handling in the system, setting up for further implementation. created a work-in-progress blockcache module, laying the groundwork for efficient data storage and retrieval. implemented the timer functionality, ensuring accurate time tracking within the system for scheduling tasks. cleaned up various modules including blockcache and interrupts, improving readability and maintainability of the code. fleshed out timer implementation details, refining the control flow for better performance in timing operations. performed multiple formatting fixes across files for consistent coding style, aiding in future collaboration. organized and tidied blockcache code, improving memory layout and preparing it for future enhancements.
📓 devlog · 2026-07-14 added initial work on interrupt handling, defined basic structure for interrupt service routines. performed code cleanup to improve readability, removed unnecessary comments and streamlined function definitions. cleaned up formatting across several files to adhere to style guidelines, ensuring consistent indentation and spacing. created stub implementations for interrupt handlers, laying groundwork for future development and testing. sketched out a more detailed design for interrupt architecture, focusing on data flow and control mechanisms. tidied up existing interrupt code, organized functions, and reduced duplication in the implementation. continued refining interrupt handling logic, addressing edge cases and ensuring proper allocation of resources.
📓 devlog · 2026-07-15 implemented console, added basic input/output functionality for user interaction through standard input and output streams. wired up console, ensured proper integration with the main application loop for event handling. implemented blockcache, optimized data retrieval by caching frequently accessed blocks in memory. wired up blockcache, linked it to the data storage layer to enhance read performance. stubbed and tidied paging, established the foundational structure for memory paging without full implementation yet. tidied serial, cleaned up the existing codebase for serial communication, improving readability and maintainability. added serial, integrated serial port communication for external device interaction, allowing data transfer between the application and peripherals.
📓 devlog · 2026-07-16 implemented serial communication module, established basic data transfer protocols and control flow. added serial interface to the main system, allowing for external device communication. fleshed out serial functionality, including error checking and buffer management. wired up serial connections for data transmission, ensuring correct pin mappings and signal integrity. sketched out io module structure, focusing on input/output handling and data processing paths. added initial io functions, implementing basic read/write capabilities for peripheral devices. began rough implementation of vga module, focusing on pixel data handling and display timing.
📓 devlog · 2026-07-17 started working on the vga module, established initial structure and placeholder functions for further development. cleaned up existing code, focused on reducing redundant lines and improving readability across various modules. fleshed out vga functionality, added basic rendering capabilities and memory layout for pixel data. implemented a timer system, ensuring precise tracking of time intervals, adjusted allocation for timer objects. added stubs for pic and timefmt modules, set up basic function signatures for future implementation. made multiple whitespace fixes across all files to conform to coding standards and improve consistency. tidied up pic module, streamlined control flow and ensured compatibility with vga rendering logic.
📓 devlog · 2026-07-18 modified pic module to include initial implementation and basic structure, established interface for adding images. expanded functionality of pic module, incorporated methods for adding and manipulating image data. began initial work on timefmt module, implemented rough outline for time formatting functions. fixed identified issues in timefmt, corrected incorrect time string conversions and edge cases. performed multiple iterations and cleanups on timefmt, ensuring consistent formatting and removal of redundant code. addressed whitespace issues throughout the codebase, maintaining code readability and standards. completed additional stubs for timefmt, preparing for future enhancements and detailed functionality.
📓 devlog · 2026-07-19 implemented rough version of timefmt, focusing on initial parsing logic for time strings. wired up timefmt to the main application flow, ensuring it integrates correctly with existing date handling. sketched out the overall structure of timefmt, laying the groundwork for future enhancements. fixed whitespace inconsistencies in several files for better readability and maintainability. addressed a typo in the timefmt module to prevent potential runtime errors. performed additional cleanup across the codebase, removing unused variables and functions. added a stub for timefmt to facilitate further development and testing.
📓 devlog · 2026-07-20 implemented rough version of timefmt, focusing on initial parsing logic for time strings. wired up timefmt to the main application flow, ensuring it integrates correctly with existing date handling. sketched out the overall structure of timefmt, laying the groundwork for future enhancements. fixed whitespace inconsistencies in several files for better readability and maintainability. addressed a typo in the timefmt module to prevent potential runtime errors. performed additional cleanup across the codebase, removing unused variables and functions. added a stub for timefmt to facilitate further development and testing.
📓 devlog · 2026-07-21 added rough implementation of timefmt, establishing a basic structure for time formatting functionality. cleaned up code formatting across several modules to improve readability and maintainability. created stubs for timefmt, setting up placeholder functions for future development and integration. fixed a typo in the timefmt module, ensuring correct naming and preventing potential lookup errors. began work on paging, focusing on the initial design for memory management and data access. started implementing libk, aiming to enhance core library functions related to kernel operations. tidied up libk, removing unused code and optimizing existing functions for better performance.
📓 devlog · 2026-07-22 stub libk, added initial placeholder functions to define the interface and structure for future implementation. sketch libk, outlined key functionalities and features expected in libk to guide further development. ok actually fix libk, resolved an existing issue in the libk implementation that impacted function performance. cleanup, removed unnecessary code and comments in multiple files to improve readability and maintainability. formatting, standardized code formatting across several modules to ensure consistency in style and layout. add pic, integrated initial assets and images required for the project, ensuring proper paths and references. rough libk, created a basic version of libk to provide a foundational structure for ongoing enhancements.
📓 devlog · 2026-07-23 performed general cleanup across multiple files, removed unused variables and streamlined functions for better readability. initiated work on libk, added initial sketches for core functions and data structures, focused on modular design. formatted existing code for consistency, ensured alignment with style guide across all modified files. stubbed out additional functions in libk, set up basic structure for future implementation, no functional changes yet. implemented rough drafts of key algorithms in libk, focused on establishing functional outlines and placeholders. added sketches for paging functionality, laid ground for memory management, still a work in progress. fixed multiple instances of whitespace inconsistencies, ensured code meets formatting standards.
📓 devlog · 2026-07-24 implemented paging, added core functionality for memory management, ensuring proper control flow for page allocation and deallocation. fleshed out paging, defined page structures and their associated metadata for efficient access patterns. wired up slab, integrated slab allocation with paging to optimize memory usage and reduce fragmentation. rough paging, established initial framework for paging algorithms, focusing on basic page replacement strategies. performed cleanup in various modules, removing redundant code and improving readability. formatted code across multiple files, ensuring consistency in style and adherence to project guidelines. worked on libk, progressing on utility functions to support paging and slab management.
📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later.
📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later. 📓 devlog · 2026-07-25 added a slab allocator to manage memory allocation more efficiently, reducing fragmentation and improving performance for small objects. implemented a rough version of the slab with basic allocation and deallocation logic, focusing on a fixed-size object layout. created a sketch for the slab design, outlining the data structures needed for cache management and object tracking. performed multiple cleanup commits to improve code readability, removing unnecessary whitespace and standardizing formatting. fixed a typo in the slab implementation to ensure consistency in naming conventions across the module. added stubs for future slab functionality, allowing for easier expansion and integration of additional features later.
📓 devlog · 2026-07-28 implemented basic structure for the ring buffer, focusing on data insertion and deletion mechanics. fixed issues in the ring buffer related to overflow conditions, ensuring proper wrap-around logic. started initial work on the scheduler module, defining its role in managing task execution order. cleaned up code in various modules, removing unused variables and optimizing function calls for clarity. made progress on physical memory management (pmm), refining allocation strategies and data structures. wired up pmm with the existing memory system, ensuring compatibility with current allocation patterns. cleaned up and sketched additional plans for pmm, setting groundwork for more advanced features.
📓 devlog · 2026-07-29 removed unused variables in the scheduler module, improving readability and reducing confusion. organized the scheduling logic into smaller functions, enhancing maintainability and clarity in control flow. started work on the physical memory manager, focusing on the initial layout and allocation strategy. added basic structure for the physical memory manager, ensuring it aligns with existing memory management routines. performed multiple cleanups across the codebase, addressing formatting issues and whitespace for consistent style. iterated on the physical memory manager with rough implementations to establish a foundation for future development.
📓 devlog · 2026-07-30 added physical memory management (pmm) module, implemented basic allocation and deallocation routines for memory blocks. fleshed out pmm with additional functions for tracking free memory and fragmentation reduction strategies. wired up pmm with the scheduler, ensuring proper memory allocation during task creation and context switching. started work on the scheduler, focusing on establishing control flow for task prioritization and execution sequence. performed whitespace fixes across multiple files to improve code readability and maintain consistency.
📓 devlog · 2026-08-01 implemented physical memory management (pmm), structured memory allocation routines to handle page frames efficiently. added a programmable interrupt controller (pic), designed to manage hardware interrupts with a focus on prioritization and handling edge cases. started input subsystem, defined initial data structures and control flow for handling keyboard events. fixed typos and cleaned up whitespace across various files to improve code readability and maintainability. implemented keyboard handling, established key state tracking and event generation for input processing. performed multiple rounds of formatting and organization on the input code to align with project standards. created stubs for future input features, ensuring basic structure without full implementation for now.
📓 devlog · 2026-08-02 started initial implementation of the scheduling module, focusing on basic structure and control flow. sketched out the keyboard input handling, defining data layout and key event management. performed a cleanup of the existing codebase, removing unused variables and improving readability. fixed a typo in the scheduling module that could lead to misinterpretation of scheduling logic. wired up the keyboard functionality to capture input events, ensuring proper allocation of resources for key states. cleaned up whitespace across multiple files, improving overall code consistency and formatting. stubs created for keyboard handling, setting the stage for future development of input features.
📓 devlog · 2026-08-03 implemented syscall in the kernel, handling input and output operations for better interaction with user processes. wired up syscall to ensure proper communication between user space and kernel space, adjusting control flow for seamless execution. cleaned up codebase multiple times, focusing on removing redundant code and improving readability across various modules. added stub for rtc, laying the groundwork for real-time clock functionality, enabling time management features in future updates. addressed whitespace issues in several files, ensuring consistent formatting and adherence to style guidelines throughout the project.
📓 devlog · 2026-08-04 added initial structure for rtc, defined basic functions and headers for timekeeping. implemented core rtc functionality, allowing for setting and getting time with precision. cleaned up memory allocation in the cpu module, optimizing data access patterns. wired up cpu to handle rtc interrupts, ensuring correct handling of time-based events. fixed several whitespace and formatting issues across multiple files for consistency. addressed a typo in rtc definitions to prevent compilation errors. started work on syscall implementation, focusing on establishing foundational interfaces.
📓 devlog · 2026-08-05 added cpu module with basic structure and initial function outlines for core operations, set up initial memory allocation patterns. tidied up cpu code to improve readability, removed unused variables, and streamlined control flow in functions. began implementation of acpi, defining key data structures and laying out the function signatures required for system power management. wired up ktest to interface with cpu and acpi modules, ensuring proper data flow and control between the components. performed multiple cleanups throughout the codebase, focusing on removing redundant code and addressing formatting inconsistencies. fleshed out ktest to include test cases for cpu and acpi functionality, verifying expected behavior under various scenarios.
📓 devlog · 2026-08-06 tidied up the acpi module, removed unused variables and streamlined function calls for better readability. started work on the acpi module, established initial data structures for handling ACPI tables. performed whitespace fixes across multiple files to maintain consistent formatting, aiding in code maintainability. initiated ktest module, set up basic test framework for kernel testing. tidied up ktest, improved code organization by grouping related functions and reducing code duplication. began rough implementation of ata support, focused on defining data structures for device management. implemented core ata functionality, ensuring proper handling of ATA commands and data transfers.
📓 devlog · 2026-08-07 implemented ata, added core functionality and basic data processing logic. started ktest, set up initial test structure with basic stubs for functionality. fleshed out ktest, integrated test cases and improved coverage for ata interactions. cleaned up codebase, removed unused variables and simplified function calls across modules. performed multiple formatting updates, ensured consistent indentation and styling in source files. created stubs for ata, outlined functions for future implementation. addressed whitespace issues, standardized whitespace across all files for better readability.
📓 devlog · 2026-08-09 added ata module, structured data layout to optimize access patterns and reduce allocation overhead. implemented ktest, focusing on the test harness for kernel functionalities, ensuring control flow is correctly validated. wired up pci, improved integration with ata, facilitating better data transfer between components. tidied up ata, removed unnecessary complexity in the data handling logic to enhance maintainability. fixed typos in ktest to improve readability and avoid potential confusion in the test cases. worked on rough ktest, established initial test cases for future enhancements and iterations.
📓 plan · 2026-08-10 I’m starting the day later than usual, so I plan to tackle the whitespace fixes first to ensure our code adheres to the style guide. Once those are out of the way, I’ll focus on fleshing out the PCI subsystem, aiming for a more robust memory layout and control flow that supports our concurrency model. The evening will be dedicated to cleanup and further tidying of the PCI components, wrapping up with formatting to maintain consistency. If all goes well, I’ll end the day with a well-structured and polished segment of the codebase.
📓 devlog · 2026-08-11 added initial implementation for pci, structured to facilitate device communication in the system. performed multiple cleanup operations across the codebase, focusing on removing redundant code and improving readability. fixed whitespace issues in several files, enhancing consistency in formatting. refined the pci module’s layout to ensure efficient data flow and reduce memory overhead. ensured all cleanup efforts adhered to the existing coding standards, promoting maintainability. adjusted comments and documentation to reflect recent changes, particularly for the pci module.
📓 devlog · 2026-08-12 cleaned up various modules, removed unused imports and redundant code for better readability and maintainability. fixed whitespace issues across multiple files to ensure consistent formatting and adhere to coding standards. fleshed out the pci module, implementing initial structures and outlining the control flow for device communication. tidied up the ktest module, improved the organization of test cases and ensured proper initialization of test variables. stubbed the ktest module to establish a framework for future unit tests, setting up basic test cases without implementation. started the pci module, laying the groundwork for further development and integration with existing components.
📓 devlog · 2026-08-13 formatted various files for consistency, improved readability across the codebase. performed multiple cleanup tasks, removing dead code and refactoring functions for better maintainability. wired up the pci subsystem, ensuring proper connection and control flow with existing components. started initial implementation of ktest, laying out the basic structure and functions required for testing. tidied up the pci module by organizing functions and consolidating related code segments. addressed whitespace issues in several files to enhance overall code quality. stubbed out ktest functions to create placeholders for future testing scenarios and implementations.
📓 devlog · 2026-08-14 added initial sketches for ktest and pci modules, outlining the basic structure and intended functionality. conducted general cleanup across the repository, removing unused code and improving overall organization. made multiple formatting adjustments to ensure consistent code style throughout the project. implemented the pci module, focusing on memory allocation and control flow to handle device interactions. fixed typos in ktest documentation and comments to improve clarity and maintainability. worked on stubbing out ktest functionality, laying the groundwork for future testing features. addressed whitespace issues in several files to maintain code readability and adherence to style guidelines.
added module m6, structured to handle new data processing tasks with lower memory overhead.- wired up module m6, integrated it into the existing control flow to ensure correct data handling.- implemented core functionality for module m6, focusing on efficient allocation and deallocation.- wired up the hello module, ensuring it interfaces properly with other components.- implemented motd, providing a simple message on system start to enhance user experience.- worked on tar, stubbing out initial functionality while preparing for future enhancements.- performed cleanup across various modules, focusing on code readability and eliminating unused variables.
📓 devlog · 2026-08-17- implemented tar functionality, focusing on the compression algorithm and ensuring efficient file handling during archiving.- added multiple methods for extracting and listing files within the tar format, ensuring compatibility with various file types.- began work on the virtual file system (vfs), outlining the necessary data structures for managing file metadata and storage locations.- added initial stubs for vfs functions, setting up a foundation for future integration with the tar operations.- performed formatting changes across several files to improve code readability and maintain consistency in style.- addressed whitespace issues in the codebase to enhance clarity and adhere to coding standards.- continued development on vfs, sketching out control flow and interactions between the file system and tar operations.
📓 devlog · 2026-08-19 - cleaned up ktest, removed unnecessary code and improved readability for better maintainability. - began outlining ktest structure, defined major test cases and expected outcomes to streamline future development. - fleshed out vfs, added initial functions for file handling and directory structure, focusing on memory layout. - implemented basic elf loading, structured code to handle ELF file format parsing and memory allocation. - performed multiple cleanups across modules, consolidated formatting and fixed whitespace issues to adhere to style guidelines. - initiated elf module, set up initial framework for ELF support including header parsing and section handling.
📓 devlog · 2026-08-22 implemented ramfs, defined basic structure and operations for file handling and memory layout fleshed out ramfs, added functions for reading and writing files, ensuring proper memory allocation started ramfs, established initial setup for in-memory filesystem structure and controls cleaned up code across multiple files, removed unnecessary whitespace for better readability performed formatting adjustments, ensured consistent code style and indentation throughout the project worked on rough elf, iterated on the ELF parsing logic and data structures for improved parsing accuracy added additional cleanup commits for better organization and maintainability of the codebase
📓 devlog · 2026-08-23 added ramfs module, implemented initial allocation and file structure layout for in-memory file system. cleaned up whitespace and formatting across multiple files to improve readability and maintainability. stubs created for m4 module, establishing the basic structure and placeholders for future development. wired up ramfs to the existing system, ensuring proper integration with the kernel and other subsystems. worked on m4 module, refining control flow and preparing it for handling input and output operations. multiple sketches of ramfs and m4 completed, outlining potential features and behaviors for further implementation. conducted overall cleanup of the codebase, addressing minor issues and ensuring consistent coding standards.
📓 devlog · 2026-08-23- added ramfs module, implemented initial allocation and file structure layout for in-memory file system.- cleaned up whitespace and formatting across multiple files to improve readability and maintainability.- stubs created for m4 module, establishing the basic structure and placeholders for future development.- wired up ramfs to the existing system, ensuring proper integration with the kernel and other subsystems.- worked on m4 module, refining control flow and preparing it for handling input and output operations.- multiple sketches of ramfs and m4 completed, outlining potential features and behaviors for further implementation.- conducted overall cleanup of the codebase, addressing minor issues and ensuring consistent coding standards.
📓 devlog · 2026-08-25- worked on scheduling system, added preliminary structures for new scheduling algorithms while ensuring compatibility with existing code.- performed code tidying in the scheduling module, improving readability and reducing cyclomatic complexity.- implemented core functionality for module m5, focusing on resource allocation and control flow for task management.- fixed whitespace issues throughout the codebase, ensuring consistent formatting and adherence to style guidelines.- completed the implementation of module m5, integrating features from earlier sketches and ensuring edge cases are handled.- conducted cleanup on multiple modules, removing redundant code and ensuring proper memory allocation practices are followed.- added preliminary sketches for module m2, laying groundwork for future functionality and ensuring alignment with overall architecture.
📓 devlog · 2026-08-26 implemented module m2, focused on core functionality, ensured proper data handling and state management wired up module m2, established connections with existing components, validated data flow between modules started development on module m7, created initial stubs to define interface and behavior expectations fixed a bug in module m7 related to incorrect state transitions, improved control flow conducted cleanup across various modules, removed unused variables and optimized memory layout worked on ktest, tidied up existing tests, improved structure for better readability and maintainability performed whitespace fixes across multiple files to maintain consistency and adhere to coding standards
📓 devlog · 2026-08-27 cleaned up various sections of the codebase, focusing on removing redundant comments and unused variables for better readability. added module m7, defining its structure and initial state, laying groundwork for subsequent implementations. wired up m7 to existing systems, ensuring data flow and control paths are correctly established. fleshed out m7 with core functionality, implementing key methods and internal logic to meet specifications. began rough implementation of m9, setting up initial framework and placeholders for upcoming features. fixed typos in m9, correcting variable names and comments for clarity and consistency. implemented core functions for m9, following through on the designs sketched in earlier commits.
📓 devlog · 2026-08-28 cleaned up whitespace in several files to maintain code consistency and readability. implemented stub functions in module m8 to outline future functionality without full implementation. organized and tidied code in m8, removing unnecessary lines and improving structure. continued work in progress on module m8, addressing various incomplete sections. fleshed out details in module m8, adding logic to improve functionality and integration. added new features to m8, enhancing its capabilities based on recent requirements. performed additional cleanup in m8 to remove deprecated code and streamline performance.
📓 devlog · 2026-08-29 implemented main module, structured the control flow to handle various inputs and outputs efficiently. wired up main functionality, ensured integration with existing components while maintaining modularity. performed multiple whitespace fixes across the codebase to enhance readability and comply with formatting standards. cleaned up redundant code in main, improving maintainability without altering the core logic. fleshed out main, added necessary functions to support additional features and edge cases. tidied up main to simplify the execution path, reducing cognitive load for future development. formatted code consistently, aligning with project style guidelines for better collaboration.
📓 devlog · 2026-08-31 added main module, set up initial structure and entry points for control flow. wired up main, ensured proper integration with existing components. cleaned up codebase, removed unused variables and streamlined functions for better readability. tidied up main, focused on consistent naming conventions and indentation. addressed multiple whitespace issues, ensuring uniform formatting throughout the code. fleshed out main with additional functionality, enh
📓 devlog · 2026-09-01 added main module, defined basic structure and entry point for the application flow. cleaned up code formatting across multiple files, improved readability and maintained consistency. fleshed out main functionality, implemented key features and logic required for initial operation. performed multiple whitespace fixes, ensured compliance with style guide and improved diff clarity. started additional main implementations, focused on refining specific functions and control flow. tidied main module, reorganized code for better logical grouping and clarity, enhanced maintainability. conducted cleanup, removed unused variables and functions, streamlined overall codebase.
📓 devlog · 2026-09-02 tidied up the main module, removed unused imports and improved code readability through consistent formatting. wired up the main module with initial control flow, ensuring proper function calls and data handling. added a preliminary structure for the main module, including stubs for future function implementations. started development on drivers, implementing basic functionality and ensuring proper interaction with the main module. fleshed out the drivers with additional features, focusing on data handling and performance. sketched out the shell interface for user interaction, laying groundwork for input handling and command processing. performed multiple whitespace fixes across various files to maintain code clarity and consistency.
📓 devlog · 2026-09-03 added drivers for peripheral communication, structured to allow for easier integration with existing modules. fleshed out driver implementations, ensuring proper handling of initialization and resource allocation. started sketching a shell interface, focusing on command parsing and execution flow. performed multiple whitespace fixes across various files for improved readability and consistency. conducted cleanup of redundant code segments in the driver files, reducing overall complexity. wired up drivers to interact with the new shell, establishing a basic command execution pathway. implemented additional driver functionality to support expanded hardware features, enhancing overall system capability.
📓 devlog · 2026-09-05 added drivers for peripheral devices, ensuring proper initialization and configuration settings. implemented a basic shell structure, allowing for command processing and execution. performed multiple whitespace fixes across various files for improved readability and consistency. cleaned up existing code, removing unused variables and dead code to streamline execution paths. created a rough outline for the shell functionality, defining command handling and parsing logic. updated shell implementation to handle user inputs and provide feedback on command execution. added stubs for future shell commands, preparing for further functionality expansion.
📓 devlog · 2026-09-07 implemented fs, focused on the core file system structure, ensuring proper data layout for efficient file access. fixed a typo in the shell, improving command parsing accuracy and preventing potential runtime errors. tidied shell code by removing unnecessary whitespace and organizing functions for better readability and maintenance. performed multiple formatting updates across various files to adhere to coding standards, ensuring uniformity in style. continued work in progress on shell functionality, refining command handling and improving control flow for user input. completed cleanup tasks to remove unused variables and redundant code, optimizing memory usage and enhancing performance.
📓 devlog · 2026-09-08 added shell module, implemented basic command parsing and execution flow, using a simple function pointer array for command dispatch fleshed out shell functionality, included support for built-in commands and input handling, ensuring proper memory allocation for command buffers tidied up shell code, removed redundant whitespace and improved consistency in formatting to enhance readability performed multiple cleanups, refactored shell initialization code for better modularity and maintainability wired up shell to the main application loop, ensuring proper integration and execution flow with other components addressed multiple whitespace issues across files, ensuring consistent coding standards throughout the project
📓 devlog · 2026-09-09 implemented shell functionality, used a simple command parsing approach to handle user inputs effectively. added shell module, structured to handle basic commands and provide feedback to users. fleshed out shell with support for additional built-in commands, improving user experience and functionality. performed cleanup across multiple files, removing unused variables and optimizing control flow where necessary. started filesystem integration in shell, allowing for basic file operations within the command line. continued formatting work across the project, ensuring consistent code style and readability. tidied shell code for better organization, enhancing maintainability and future development efforts. 📓 devlog · 2026-09-09 implemented shell functionality, used a simple command parsing approach to handle user inputs effectively. added shell module, structured to handle basic commands and provide feedback to users. fleshed out shell with support for additional built-in commands, improving user experience and functionality. performed cleanup across multiple files, removing unused variables and optimizing control flow where necessary. started filesystem integration in shell, allowing for basic file operations within the command line. continued formatting work across the project, ensuring consistent code style and readability. tidied shell code for better organization, enhancing maintainability and future development efforts.
📓 devlog · 2026-09-10 implemented the filesystem (fs), focused on directory structure and file allocation strategies for improved access speed. wired up the fs to ensure proper integration with existing modules, tested data flow between components during initial operations. started the shell, establishing basic command parsing and execution control flow to interface with the filesystem. added memory management capabilities, implemented a new allocation strategy to minimize fragmentation and optimize performance. cleaned up the shell code for readability, removed redundant whitespace to maintain consistent coding standards across the project. performed additional wiring for memory to ensure it interacts correctly with both the filesystem and shell for seamless operation. fleshed out the fs with additional features like file permissions and metadata handling, ensuring robustness for concurrent access.
📓 devlog · 2026-09-11 implemented the shell module, established basic command parsing and execution flow. fleshed out the shell with support for built-in commands, enhancing user interaction. added memory management functionality, introduced a structure for allocation tracking. wired up memory to the shell, enabling commands to manipulate memory directly. performed multiple whitespace fixes and formatting cleanups across all modules for better readability. started and fleshed out the memory module, ensuring proper initialization and allocation patterns. tidied shell code for improved maintainability, focusing on reducing complexity in command handling.
📓 devlog · 2026-09-12 implemented memory management, focused on allocation strategies and freeing unused memory blocks to optimize resource usage. fleshed out memory module, added support for variable-sized memory chunks, improving efficiency for dynamic allocation. started integration of memory system with existing components, ensuring compatibility and smooth data flow. added shell functionality, enabling user interaction with the memory management system through command-line inputs. wired up shell to the memory module, establishing command execution pathways for memory operations. performed multiple wiring adjustments in the shell, ensuring proper communication and error handling between components.
📓 devlog · 2026-09-13 added initial implementation of the shell, establishing basic command parsing and execution flow. fleshed out shell functionality, improving command handling and improving error reporting for invalid inputs. wired up shell components, ensuring proper integration with existing modules for input and output processing. started multiple iterations of shell refinement, focusing on memory allocation strategies for command history storage. implemented additional features for the shell, including support for built-in commands and improved environment variable management. continued to flesh out shell behavior, addressing edge cases related to command substitution and pipeline execution.
📓 devlog · 2026-09-14 added initial architecture definition, establishing core components and their interactions for modularity. implemented key architectural components, focusing on separation of concerns to enhance maintainability. fleshed out various parts of the architecture, refining data flow and control structures between modules. wired up essential components to ensure proper communication and data exchange across the architecture. started multiple architectural elements concurrently, facilitating a more integrated approach to development. added several new architecture layers to improve scalability and support future feature additions. continued to implement and refine architecture, addressing edge cases related to component interaction and data integrity.
Ships:
nyx is a small operating-system kernel for 32-bit x86 PCs, written from scratch in Zig 0.15.2 with no C library and no external dependencies. It boots directly in QEMU and brings the machine up in 20 checked stages, from interrupts and timers through memory paging, a kernel heap, thread scheduling, disk and PCI drivers, and an in-memory filesystem loaded from an embedded tar archive. At boot it runs 15 built-in self-tests, then drops into an interactive shell with 30 commands that you can drive from the keyboard or over the serial port. It’s about 5,000 lines in total....
|
1793587642.746212
|
1794451642.746212
|
|
41476
|
Contango by @igowu | Stardance
|
igowu
|
2
|
83.0
|
1107
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T20:46:02Z", "hours": 58.0, "multiplier": 19.01, "payout": 1046, "blessing": "neutral", "text": "Contango I built a Python framework for quantitative research of trading strategies, whether it be backtesting them, tuning parameter combinations, or turning the results into graphs that can easily reveal profitability/risk in strategies. It started as solely a backtesting framework, but it has grown into an entire suite for optimization and analysis. The latest release, v0.1.1, is now on PyPI. What it is It is an event-driven trading framework with two ways to build strategies. Strategy gives you complete control over the framework, while RuleBasedStrategy provides a higher-level interface for expressing trading rules with less boilerplate. On top of that is the research tooling. Contango can run Cartesian parameter sweeps, evaluating every combination of selected parameters rather than forcing you to manually run a strategy over and over. That makes it possible to take a strategy idea and view a whole parameter space in one run. Market data is handled through a local repository that caches OHLCV data, so repeated experiments don’t need to keep downloading the same data. This permits for offline usage once data has previously been downloaded. Yfinance (a data provider) works without setup or an API key, while the data provider system is designed so additional providers can be added without touching codebase’s internals. Possibly the most important part is the graphs. Equity curves, drawdowns, trade-quality metrics, parameter distributions, risk/return views, and more can be generated from the results of a research run. However, the goal isn’t just to analyze the amount of profit the strategy returns. Instead, it’s to make the behavior of the strategy visible by exposing a variety of different risk/trading/drawdown metrics, revealed clearly in the generated graphs. What was hard I spent a lot of time separating components, defining cleaner interfaces (modularity), and deciding where abstraction was beneficial rather than just adding redundancy and boilerplate. The parameter optimization system was another massive difficulty to create. A Cartesian sweep sounds simple on paper; however, the question arises: how do you distinguish all of the strategies from each other? My initial solution was to display all of the parameters for each strategy, but this ended up with strategy names that were way too large to render. Lastly, documentation ended up being much more work than I expected. I wanted someone to be able to use Contango without having to understand how its internals work first, while still having enough documentation available for someone who actually wants to extend the framework. What I’m proud of The part I’m happiest with is that Contango now feels genuinely easy to use after a small learning curve. You can write a strategy, point it at market data, sweep its parameters, and get a collection of research results and visualizations without having to manually glue all of those pieces together. The other thing I’m proud of is the amount of attention that I put into making the project understandable. The public API is documented, the internal API is documented, components have been modularized, and there are now unit tests for essentially everything that needs them. It’s not finished in the sense that no software ever is, but it finally feels complete. How to test it Install it from PyPI: pip install contango Then run the included research demo: python -m contango.research.demo_strategies.cartesian_bollinger_strategy.runner The demo runs a Bollinger Band strategy across a Cartesian grid of parameters and generates performance and parameter-analysis graphs (HTML) that can be reviewed. I want to thank Stardance for this experience - the opportunity to build software while earning rewards and be in such a welcoming community is amazing to me. I’m looking forward to future work with Hackclub!", "repo": "https://github.com/igowuu/Contango", "demo": "https://pypi.org/project/contango/"}, {"ship_num": 2, "ts": "2026-07-30T16:02:17Z", "hours": 25.0, "multiplier": 6.1, "payout": 61, "blessing": "neutral", "text": "Contango Have you ever wanted to create strategies programmatically for the stock market, cryptocurrencies, or anything else related to trading?! Maybe not… But I have! So, what is Contango? Contango is a full trading engine that allows you to make strategies in Python without worrying about any potential biases in your workflow. Instead of focusing on simulation, metrics, results, and graphs, you can avert your focus solely to the quality of the strategies you create. Strategies - what do they look like? Strategies are a part of an event-driven engine. This means that they receive and react to events that are released from a “mode”. A “mode” is anything that handles the logic of the event bus and/or engine - backtesting, live trading, etc. An example of a strategy: class MyStrategy ( Strategy ): \"\"\" A very simple strategy outline - not all logic is included. \"\"\" def on_market_event ( self , event : MarketDataEvent ) -> None : # Strategy market logic here def on_end ( self ) -> None : ... Results Contango processes the raw events emitted from your strategy and converts them to metrics. These metrics are then used to produce seven unique graphs. Each of these graphs tell you something unique about the strategy, whether it be profitability, risk, drawdown, consistency, win rate, etc. For most modern workflows, this is enough; however, all modules are cleanly decoupled from each other, so raw events or raw metrics can be processed & analyzed however you would like. Challenges Challenges: A massive learning curve. I’ve spent probably 50 hours or more just researching and absorbing the information used in this project. Packaging was difficult to get right, whether it be “missing type stub” warnings or incorrect rendering of my README.md. Documentation was terrible to write. Spending large amounts of time writing English words instead of code that accomplishes something was extremely tedious, yet completely necessary for a shipped project like this. I’m proud of this project Genuinely, this is one of the first big project I’ve ever made. I have never released anything to PyPI, nor shipped something of this scale before. Hackatime only shows 22 hours since I set it up partway through, but Contango’s been my main project since June, and it’s the second largest thing I’ve built. Usage The GitHub has detailed instructions, demos, videos, and more; however, since it’s so short, here is how to install the project & run the built-in demo from any python IDE: pip install contango python -m contango.research.research_strategies.bollinger_band_mean_reversion.runner Final Notes I’ve had a lot of fun with this project, and I hope anyone who sees this enjoys it just as much as me. Happy coding!", "repo": "https://github.com/igowuu/Contango", "demo": "https://pypi.org/project/contango/"}]...
|
[{"post_id": 68711, "ts": "202 [{"post_id": 68711, "ts": "2026-09-15T16:17:49Z", "hours": 6.9347, "text": "Contango - Devlog #8 (final devlog?) The latest version of Contango (v. 0.1.1) been is released on PyPI. What Changed? Rule-based strategies and Cartesian Sweeps Strategies can be created using a rule-based system that allows them to be swept over all combinations in a Cartesian Search. This is especially useful for finding a broad spectrum of tuned parameters after creating & coding a strategy concept. Documentation The documentation has been expanded to give direct tutorials on how to set up strategies and make additions to the framework without touching any of its internals. Further, the documentation now has in-depth explanations on the public AND private API. Other The graphs now have a GraphType subclass - essentially, graphs can now be added to or removed by the user if this is desired. This eliminates the hardcoding and confusing behavior that the graphs had prior to this change. Unit tests created for just about everything that needs it. General maturing of the framework, whether that be creating modular components, exposing or hiding certain details from the user, or creating docstrings for the public and private API. That’s all. This will likely be my last devlog before shipping for the final time. I’m praying to the Gods of Stardance that I can get a 3d printer! We’ll see."}, {"post_id": 62560, "ts": "2026-09-06T00:29:54Z", "hours": 6.6617, "text": "Contango - Devlog #7 Research Research has been rough. I haven’t found any real edge with a calmar ratio above 1.0, nor a sharpe ratio that is statistically meaningful to suggest a somewhat profitable strategy. Cartesian Parameterized Grid Search This system was absolutely effective in what it did; however, I’ve concluded that using brute-force to generate strategies does not yield any genuine edge. The system was powerful, but honestly hard to use; hence, I came to the decision of deleting it as it did not have much use other than brute-forcing trading strategies. Rule-based Strategies Rule-based strategies, again, allow for strategies to be created with minimal and highly declarative code. The API has improved significantly with less unnecessary generics and more docstrings. It will be the intended system for backtesting strategies rather than using static strategies. They will both coexist, however; the static strategies will be intended to be used for live trading if implemented in the future. Graphs The graph system was relatively ad-hoc, hard to use, and hardcoded; therefore, I have restructured it to take a more composable approach to allow for the user to create & add graphs. The default graphs have not disappeared; however, they can be overridden. New graphs can be subclassed and the user can register & create custom graphs if desirable. Future Finish the graphing system. Fix all of the demo strategies for the new structure. Create new unit tests for the codebase. Publish to PyPI and commit to github. I’m beginning to wrap up the project to get it to a publishable state."}, {"post_id": 55673, "ts": "2026-08-27T17:10:44Z", "hours": 6.5972, "text": "I was wrong . …But that’s okay. Hyper-parameterized Cartesian grid search I built a system capable of searching an enormous strategy space, and the system worked. My original goal was to have computers literally generate trading strategies and hypothesize by themselves through testing all possible indicator combinations. However, simple strategies based on widely known indicators aren’t producing the profitability I was initially looking for. However , this isn’t necessarily bad news - it just means that the system should be used to help hypothesizing rather than automating it entirely. The same system can be used heavily for optimization of a concept. For example, it can completely automate the process of testing if ATR scaling or an RSI confirmation yields better results. Further, I can still find optimal parameters through the grid search for a given strategy. On Overfitting A grid search inherently will find “amazing” results - however, that doesn’t necessarily mean that it would actually perform well in the market. The parallel coordinate graphs, heatmap graphs, and manual walk-forward tests have made it genuinely easy to pick out overfit results, so this accepts part of my hypothesis in the earlier devlogs. Future I finished most of the work I wanted to do. I stress tested the suite, created unit tests, and created the hyper-parameterization system in its entirety. Now is finally the fun part - research. I’m genuinely curious if I’m able to find some profitable strategies with my system, so my future devlogs will likely be related to the research I’m going to conduct. That’s all. Have a great day!"}, {"post_id": 53484, "ts": "2026-08-24T01:40:11Z", "hours": 13.0403, "text": "Devlog #5 - Contango Hyperparameter Cartesian grid search Apparently this isn’t easy to design! Who could have thought? Not me! Jokes aside, this has been a miserable experience. I’ve created two different designs so far. The first one failed outright - far in, I realized that having mutable objects in a nested grid search breaks all of the results, and it wasn’t easy to integrate Callable types with what I had already created, so I scrapped it. Another massive hurdle was trying to find out how to parameterize the rules that indicators must follow (i.e. close crosses above middle bollinger band crosses). The idea here is to have a set of rules, and have each and every one of them parameterized amongst each other to find the best rules in the subset. My current design uses callables to generate fresh instances of both the parameters and indicators used in the hyperparameter grid search. However, another issue has become known to me - how do you derive unique, dynamically created names for each individual parameterized result? My thought is to derive the name of the indicators from the caller (which I have been doing), but on top of that, force all rule-based modules in my codebase to implement an ABC & override repr . This has not been formally implemented yet. Future Finish & finalize the hyperparameter Cartesian grid search strategy. Create unit tests for it. Genuinely take some time to look over the codebase, see what may be confusing for any users, & implement fixes for them (whether it be documentation, simplifying concepts, or creating abstractions for modules). Add quite a lot of documentation. Ship."}, {"post_id": 48243, "ts": "2026-08-16T15:24:07Z", "hours": 6.8711, "text": "Devlog #4 - Contango Rule-based Strategies I found a lot of issues and limitations with them. However, after working for hours coding them, I believe I’ve reached a point where I’m happy with how they’re looking. To summarize, every strategy is composed of rules, where a rule has a condition & action. If the condition is true, the action (intent) is released. In the case of this suite, intents express to buy, sell, create stoploss orders, etc. You can see the syntax in the attached screenshot. Unit testing Unit tests are completely finished! The suite has 290 passing unit tests as of now. Parameterization I’m going to give parameterization another try. Instead of creating another layer on rule-based strategies, I’m going to instead pass indicators (or “streams” as I call them) into a base strategy along with their parameters in an attempt to perform a Cartisan hyperparameter grid search for both the indicators and their parameters. That was a mouthful to say; however, I’ll demonstrate what I mean in the next devlog (hopefully). Future As always, I like to document what I want to accomplish before shipping: Start & finish the Cartisan hyperparameter grid search API, along with testing it. Fix up documentation (there are major gaps at this point in my development from alpha v.0.1.0). Release on PyPI. That’s it. Happy coding!"}, {"post_id": 46293, "ts": "2026-08-13T12:50:56Z", "hours": 7.9789, "text": "Devlog #3 - Contango Rule-based Strategies I completed the rule-based strategy engine, and it seems to be yielding correct results with integration tests. It allows for both Cartesian Parameterization & indicator parameterization, mentioned in the previous devlog. Unit tests I’ve noticed that as I make more changes, my unit tests have been lacking. The majority of the time for this devlog has been spent creating unit tests for my code. This has proved to be very time consuming and tedious (it always is), and has taken more than five hours at this point. However, I’m only halfway done, so this might take a while longer… Future I always like to make a list for what I want to do before shipping. Here’s where I’m at now: Finish unit tests & fix any issues they reveal Manually test everything myself by creating example strategies Document everything (at this point there are massive gaps in documentation from the changes I have made) Release v.0.1.1 on PyPI & then ship That’s all. Have a great rest of your day!"}, {"post_id": 42736, "ts": "2026-08-07T16:30:57Z", "hours": 10.1167, "text": "Devlog #2 - Contango Massive changes have been made relating to strategy creation & the capability of the framework. Creating a strategy An entire Bollinger Band Mean Reversion strategy now looks like this: indicators = { \" bb \" : BollingerBands ( period = period , k = num_std )} rules : Sequence [ Rule [ TradingContext , Intent ]] = [ Rule ( Predicate ( lambda ctx : ctx . event . close < ctx . indicators [ \" bb \" ]. value . lower ), Emit ( EnterLongIntent ( symbol = symbol )) ), Rule ( Predicate ( lambda ctx : ctx . event . close > ctx . indicators [ \" bb \" ]. value . upper ), Emit ( ExitIntent ( symbol = symbol )), ) ] super (). __init__ ( indicators = indicators , rules = rules , position_sizer = AllocationPositionSizer ( size ) ) With this structure, an entire trading strategy can be expressed with a few unequivocal rules. Further, because indicators and their parameters are major components, both can now be parameterized during optimization. That means grid searches can iterate over not only different parameter values, but entirely different indicator combinations. In a favorable environment, this means that with enough computing power, you can automate the creation and development of strategies. However, in practice, real markets make this significantly less straightforward due to overfitting; therefore, human analysis is still essential since larger search spaces dramatically increase the risk of these biases. Nonetheless, this gives a major advantage to manually creating code for each strategy individually. Other things I restructured the file tree to make the codebase easier for new future contributors (including myself) to make changes. I created a rule system for the backtester under the hood that doesn’t hard-code any limitations in preparation for full support of pyramiding, multiple tickers, & short selling. Future There are some things I want to do before shipping. I’ll list them here: Complete the indicator grid search mentioned above. Stress-test everything & create unit tests where necessary. Complete the documentation - especially with strategy creation, which is not definitely extensive enough as of now. Anyway, enough technical talk for this devlog - happy coding!"}, {"post_id": 37644, "ts": "2026-07-30T15:09:38Z", "hours": 24.5403, "text": "Devlog #1 - Contango I have finally released Contango on PyPI! What is Contango? Contango is a full trading engine that helps you build trading strategies. It does all of the heavy lifting - the results, metrics, and the entire trading engine behind the hood. I’ve never created a package on PyPI, so doing this was a massive learning experience - from uploading to TestPyPI to iterating multiple times before I got my pyproject.toml right. I sent one of the graphs generated after testing my project demo out using the package. See the package on PyPI here: https://pypi.org/project/contango/ Have a great rest of your day!"}]...
|
Title: Contango by @igowu | Stardance
Devlogs:
De Title: Contango by @igowu | Stardance
Devlogs:
Devlog #1 - Contango I have finally released Contango on PyPI! What is Contango? Contango is a full trading engine that helps you build trading strategies. It does all of the heavy lifting - the results, metrics, and the entire trading engine behind the hood. I’ve never created a package on PyPI, so doing this was a massive learning experience - from uploading to TestPyPI to iterating multiple times before I got my pyproject.toml right. I sent one of the graphs generated after testing my project demo out using the package. See the package on PyPI here: https://pypi.org/project/contango/ Have a great rest of your day!
Devlog #2 - Contango Massive changes have been made relating to strategy creation & the capability of the framework. Creating a strategy An entire Bollinger Band Mean Reversion strategy now looks like this: indicators = { " bb " : BollingerBands ( period = period , k = num_std )} rules : Sequence [ Rule [ TradingContext , Intent ]] = [ Rule ( Predicate ( lambda ctx : ctx . event . close < ctx . indicators [ " bb " ]. value . lower ), Emit ( EnterLongIntent ( symbol = symbol )) ), Rule ( Predicate ( lambda ctx : ctx . event . close > ctx . indicators [ " bb " ]. value . upper ), Emit ( ExitIntent ( symbol = symbol )), ) ] super (). __init__ ( indicators = indicators , rules = rules , position_sizer = AllocationPositionSizer ( size ) ) With this structure, an entire trading strategy can be expressed with a few unequivocal rules. Further, because indicators and their parameters are major components, both can now be parameterized during optimization. That means grid searches can iterate over not only different parameter values, but entirely different indicator combinations. In a favorable environment, this means that with enough computing power, you can automate the creation and development of strategies. However, in practice, real markets make this significantly less straightforward due to overfitting; therefore, human analysis is still essential since larger search spaces dramatically increase the risk of these biases. Nonetheless, this gives a major advantage to manually creating code for each strategy individually. Other things I restructured the file tree to make the codebase easier for new future contributors (including myself) to make changes. I created a rule system for the backtester under the hood that doesn’t hard-code any limitations in preparation for full support of pyramiding, multiple tickers, & short selling. Future There are some things I want to do before shipping. I’ll list them here: Complete the indicator grid search mentioned above. Stress-test everything & create unit tests where necessary. Complete the documentation - especially with strategy creation, which is not definitely extensive enough as of now. Anyway, enough technical talk for this devlog - happy coding!
Devlog #3 - Contango Rule-based Strategies I completed the rule-based strategy engine, and it seems to be yielding correct results with integration tests. It allows for both Cartesian Parameterization & indicator parameterization, mentioned in the previous devlog. Unit tests I’ve noticed that as I make more changes, my unit tests have been lacking. The majority of the time for this devlog has been spent creating unit tests for my code. This has proved to be very time consuming and tedious (it always is), and has taken more than five hours at this point. However, I’m only halfway done, so this might take a while longer… Future I always like to make a list for what I want to do before shipping. Here’s where I’m at now: Finish unit tests & fix any issues they reveal Manually test everything myself by creating example strategies Document everything (at this point there are massive gaps in documentation from the changes I have made) Release v.0.1.1 on PyPI & then ship That’s all. Have a great rest of your day!
Devlog #4 - Contango Rule-based Strategies I found a lot of issues and limitations with them. However, after working for hours coding them, I believe I’ve reached a point where I’m happy with how they’re looking. To summarize, every strategy is composed of rules, where a rule has a condition & action. If the condition is true, the action (intent) is released. In the case of this suite, intents express to buy, sell, create stoploss orders, etc. You can see the syntax in the attached screenshot. Unit testing Unit tests are completely finished! The suite has 290 passing unit tests as of now. Parameterization I’m going to give parameterization another try. Instead of creating another layer on rule-based strategies, I’m going to instead pass indicators (or “streams” as I call them) into a base strategy along with their parameters in an attempt to perform a Cartisan hyperparameter grid search for both the indicators and their parameters. That was a mouthful to say; however, I’ll demonstrate what I mean in the next devlog (hopefully). Future As always, I like to document what I want to accomplish before shipping: Start & finish the Cartisan hyperparameter grid search API, along with testing it. Fix up documentation (there are major gaps at this point in my development from alpha v.0.1.0). Release on PyPI. That’s it. Happy coding!
Devlog #5 - Contango Hyperparameter Cartesian grid search Apparently this isn’t easy to design! Who could have thought? Not me! Jokes aside, this has been a miserable experience. I’ve created two different designs so far. The first one failed outright - far in, I realized that having mutable objects in a nested grid search breaks all of the results, and it wasn’t easy to integrate Callable types with what I had already created, so I scrapped it. Another massive hurdle was trying to find out how to parameterize the rules that indicators must follow (i.e. close crosses above middle bollinger band crosses). The idea here is to have a set of rules, and have each and every one of them parameterized amongst each other to find the best rules in the subset. My current design uses callables to generate fresh instances of both the parameters and indicators used in the hyperparameter grid search. However, another issue has become known to me - how do you derive unique, dynamically created names for each individual parameterized result? My thought is to derive the name of the indicators from the caller (which I have been doing), but on top of that, force all rule-based modules in my codebase to implement an ABC & override repr . This has not been formally implemented yet. Future Finish & finalize the hyperparameter Cartesian grid search strategy. Create unit tests for it. Genuinely take some time to look over the codebase, see what may be confusing for any users, & implement fixes for them (whether it be documentation, simplifying concepts, or creating abstractions for modules). Add quite a lot of documentation. Ship.
I was wrong . …But that’s okay. Hyper-parameterized Cartesian grid search I built a system capable of searching an enormous strategy space, and the system worked. My original goal was to have computers literally generate trading strategies and hypothesize by themselves through testing all possible indicator combinations. However, simple strategies based on widely known indicators aren’t producing the profitability I was initially looking for. However , this isn’t necessarily bad news - it just means that the system should be used to help hypothesizing rather than automating it entirely. The same system can be used heavily for optimization of a concept. For example, it can completely automate the process of testing if ATR scaling or an RSI confirmation yields better results. Further, I can still find optimal parameters through the grid search for a given strategy. On Overfitting A grid search inherently will find “amazing” results - however, that doesn’t necessarily mean that it would actually perform well in the market. The parallel coordinate graphs, heatmap graphs, and manual walk-forward tests have made it genuinely easy to pick out overfit results, so this accepts part of my hypothesis in the earlier devlogs. Future I finished most of the work I wanted to do. I stress tested the suite, created unit tests, and created the hyper-parameterization system in its entirety. Now is finally the fun part - research. I’m genuinely curious if I’m able to find some profitable strategies with my system, so my future devlogs will likely be related to the research I’m going to conduct. That’s all. Have a great day!
Contango - Devlog #7 Research Research has been rough. I haven’t found any real edge with a calmar ratio above 1.0, nor a sharpe ratio that is statistically meaningful to suggest a somewhat profitable strategy. Cartesian Parameterized Grid Search This system was absolutely effective in what it did; however, I’ve concluded that using brute-force to generate strategies does not yield any genuine edge. The system was powerful, but honestly hard to use; hence, I came to the decision of deleting it as it did not have much use other than brute-forcing trading strategies. Rule-based Strategies Rule-based strategies, again, allow for strategies to be created with minimal and highly declarative code. The API has improved significantly with less unnecessary generics and more docstrings. It will be the intended system for backtesting strategies rather than using static strategies. They will both coexist, however; the static strategies will be intended to be used for live trading if implemented in the future. Graphs The graph system was relatively ad-hoc, hard to use, and hardcoded; therefore, I have restructured it to take a more composable approach to allow for the user to create & add graphs. The default graphs have not disappeared; however, they can be overridden. New graphs can be subclassed and the user can register & create custom graphs if desirable. Future Finish the graphing system. Fix all of the demo strategies for the new structure. Create new unit tests for the codebase. Publish to PyPI and commit to github. I’m beginning to wrap up the project to get it to a publishable state.
Contango - Devlog #8 (final devlog?) The latest version of Contango (v. 0.1.1) been is released on PyPI. What Changed? Rule-based strategies and Cartesian Sweeps Strategies can be created using a rule-based system that allows them to be swept over all combinations in a Cartesian Search. This is especially useful for finding a broad spectrum of tuned parameters after creating & coding a strategy concept. Documentation The documentation has been expanded to give direct tutorials on how to set up strategies and make additions to the framework without touching any of its internals. Further, the documentation now has in-depth explanations on the public AND private API. Other The graphs now have a GraphType subclass - essentially, graphs can now be added to or removed by the user if this is desired. This eliminates the hardcoding and confusing behavior that the graphs had prior to this change. Unit tests created for just about everything that needs it. General maturing of the framework, whether that be creating modular components, exposing or hiding certain details from the user, or creating docstrings for the public and private API. That’s all. This will likely be my last devlog before shipping for the final time. I’m praying to the Gods of Stardance that I can get a 3d printer! We’ll see.
Ships:
Contango Have you ever wanted to create strategies programmatically for the stock market, cryptocurrencies, or anything else related to trading?! Maybe not… But I have! So, what is Contango? Contango is a full trading engine that allows you to make strategies in Python without worrying about any potential biases in your workflow. Instead of focusing on simulation, metrics, results, and graphs, you can avert your focus solely to the quality of the strategies you create. Strategies - what do they look like? Strategies are a part of an event-driven engine. This means that they receive and react to events that are released from a “mode”. A “mode” is anything that handles the logic of the event bus and/or engine - backtesting, live trading, etc. An example of a strategy: class MyStrategy ( Strategy ): """ A very simple strategy outline - not all logic is included. """ def on_market_event ( self , event : MarketDataEvent ) -> None : # Strategy market logic here def on_end ( self ) -> None : ... Results Contango processes the raw events emitted from your strategy and converts them to metrics. These metrics are then used to produce seven unique graphs. Each of these graphs tell you something unique about the strategy, whether it be profitability, risk, drawdown, consistency, win rate, etc. For most modern workflows, this is enough; however, all modules are cleanly decoupled from each other, so raw events or raw metrics can be processed & analyzed however you would like. Challenges Challenges: A massive learning curve. I’ve spent probably 50 hours or more just researching and absorbing the information used in this project. Packaging was difficult to get right, whether it be “missing type stub” warnings or incorrect rendering of my README.md. Documentation was terrible to write. Spending large amounts of time writing English words instead of code that accomplishes something was extremely tedious, yet completely necessary for a shipped project like this. I’m proud of this project Genuinely, this is one of the first big project I’ve ever made. I have never released anything to PyPI, nor shipped something of this scale before. Hackatime only shows 22 hours since I set it up partway through, but Contango’s been my main project since June, and it’s the second largest thing I’ve built. Usage The GitHub has detailed instructions, demos, videos, and more; however, since it’s so short, here is how to install the project & run the built-in demo from any python IDE: pip install contango python -m contango.research.research_strategies.bollinger_band_mean_reversion.runner Final Notes I’ve had a lot of fun with this project, and I hope anyone who sees this enjoys it just as much as me. Happy coding!
Contango I built a Python framework for quantitative research of trading strategies, whether it be backtesting them, tuning parameter combinations, or turning the results into graphs that can easily reveal profitability/risk in strategies. It started as solely a backtesting framework, but it has grown into an entire suite for optimization and analysis. The latest release, v0.1.1, is now on PyPI. What it is It is an event-driven trading framework with two ways to build strategies. Strategy gives you complete control over the framework, while RuleBasedStrategy provides a higher-level interface for expressing trading rules with less boilerplate. On top of that is the research tooling. Contango can run Cartesian parameter sweeps, evaluating every combination of selected parameters rather than forcing you to manually run a strategy over and over. That makes it possible to take a strategy idea and view a whole parameter space in one run. Market data is handled through a local repository that caches OHLCV data, so repeated experiments don’t need to keep downloading the same data. This permits for offline usage once data has previously been downloaded. Yfinance (a data provider) works without setup or an API key, while the data provider system is designed so additional providers can be added without touching codebase’s internals. Possibly the most important part is the graphs. Equity curves, drawdowns, trade-quality metrics, parameter distributions, risk/return views, and more can be generated from the results of a research run. However, the goal isn’t just to analyze the amount of profit the strategy returns. Instead, it’s to make the behavior of the strategy visible by exposing a variety of different risk/trading/drawdown metrics, revealed clearly in the generated graphs. What was hard I spent a lot of time separating components, defining cleaner interfaces (modularity), and deciding where abstraction was beneficial rather than just adding redundancy and boilerplate. The parameter optimization system was another massive difficulty to create. A Cartesian sweep sounds simple on paper; however, the question arises: how do you distinguish all of the strategies from each other? My initial solution was to display all of the parameters for each strategy, but this ended up with strategy names that were way too large to render. Lastly, documentation ended up being much more work than I expected. I wanted someone to be able to use Contango without having to understand how its internals work first, while still having enough documentation available for someone who actually wants to extend the framework. What I’m proud of The part I’m happiest with is that Contango now feels genuinely easy to use after a small learning curve. You can write a strategy, point it at market data, sweep its parameters, and get a collection of research results and visualizations without having to manually glue all of those pieces together. The other thing I’m proud of is the amount of attention that I put into making the project understandable. The public API is documented, the internal API is documented, components have been modularized, and there are now unit tests for essentially everything that needs them. It’s not finished in the sense that no software ever is, but it finally feels complete. How to test it Install it from PyPI: pip install contango Then run the included research demo: python -m contango.research.demo_strategies.cartesian_bollinger_strategy.runner The demo runs a Bollinger Band strategy across a Cartesian grid of parameters and generates performance and parameter-analysis graphs (HTML) that can be reviewed. I want to thank Stardance for this experience - the opportunity to build software while earning rewards and be in such a welcoming community is amazing to me. I’m looking forward to future work with Hackclub!...
|
1794009021.4913173
|
1794095421.4913173
|
|
62530
|
Pit-Wall by @tanzeemrockz | Stardance
|
tanzeemrockz
|
0
|
0.63
|
0
|
[]
|
[{"post_id": 68710, "ts": "202 [{"post_id": 68710, "ts": "2026-09-15T16:17:27Z", "hours": 0.6297, "text": "So i just started off my project only the barebones are done and it has no f1 functionality atm whatsoever lol. So, I’m looking forward to making this absolute!"}]...
|
Title: Pit-Wall by @tanzeemrockz | Stardance
Devl Title: Pit-Wall by @tanzeemrockz | Stardance
Devlogs:
So i just started off my project only the barebones are done and it has no f1 functionality atm whatsoever lol. So, I’m looking forward to making this absolute!...
|
1793656222.6279104
|
1794261022.6279104
|
|
62505
|
Korasa by @abdelkhaliq | Stardance
|
abdelkhaliq
|
1
|
32.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T20:12:36Z", "hours": 32.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "An app that helps me and 20 other users to store questions we worry about forgetting in the future, but now we never will!, I faced a lot of challenges building the mobile app honestly as I never had any prior experience in mobile development, but it turned out to be easy using react native, try this project out urself!", "repo": "https://github.com/abde1khaliq/Korasa", "demo": "https://www.korasa.study/"}]...
|
[{"post_id": 68709, "ts": "202 [{"post_id": 68709, "ts": "2026-09-15T16:17:08Z", "hours": 0.3333, "text": "Added the Forgot password functionality to the website version as it used to only exist on the mobile application."}, {"post_id": 68681, "ts": "2026-09-15T15:12:45Z", "hours": 31.755, "text": "Korasa was made before shipping to Stardance, thus it doesn’t include any devlogs but i’ll make sure I start adding dev logs to it when adding new features"}]...
|
Title: Korasa by @abdelkhaliq | Stardance
Devlogs Title: Korasa by @abdelkhaliq | Stardance
Devlogs:
Korasa was made before shipping to Stardance, thus it doesn’t include any devlogs but i’ll make sure I start adding dev logs to it when adding new features
Added the Forgot password functionality to the website version as it used to only exist on the mobile application.
Ships:
An app that helps me and 20 other users to store questions we worry about forgetting in the future, but now we never will!, I faced a lot of challenges building the mobile app honestly as I never had any prior experience in mobile development, but it turned out to be easy using react native, try this project out urself!...
|
1794052031.8961406
|
1794138431.8961406
|
|
54612
|
Portfolio by @ardevhere | Stardance
|
ardevhere
|
1
|
12.79
|
12
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-31T16:32:38Z", "hours": 10.0, "multiplier": 1.18, "payout": 12, "blessing": "neutral", "text": "I built an Apple-inspired full-stack developer portfolio and client acquisition platform from scratch using pure HTML5, CSS3, and Vanilla JavaScript. The most challenging part was engineering custom UI components—like the scroll progress indicator, glassmorphic blurred navigation bar, dynamic scroll-reveal animations using native IntersectionObserver API, and interactive contact modal—without relying on external libraries or frameworks like React or Tailwind. I am most proud of how clean, responsive, and fast the site feels. It includes dedicated sections for services, tech stack, structured pricing tiers, client testimonials, an interactive FAQ accordion, and a built-in contact modal that auto-generates structured email drafts directly in the client’s default mail app. To test the project: Scroll down the landing page to check out the scroll animations and sticky navigation header. Click any “Get started” or “Talk to me” buttons under the Pricing section to trigger the interactive contact modal. Test out the FAQ section by clicking the accordions to expand answers. Fill out the contact form inside the modal and submit it to see how it dynamically parses your input into a ready-to-send email draft!", "repo": "https://github.com/reetadevi7979-max/portfolioproject", "demo": "https://portfolioproject-xi-one.vercel.app/"}]...
|
[{"post_id": 68708, "ts": "202 [{"post_id": 68708, "ts": "2026-09-15T16:16:20Z", "hours": 2.7925, "text": "I just rebuild my site"}, {"post_id": 59007, "ts": "2026-08-31T16:14:51Z", "hours": 3.6867, "text": "I just completed the whole project with very high energy."}, {"post_id": 57469, "ts": "2026-08-29T16:55:05Z", "hours": 3.2811, "text": "Today i completed 90% percent of my work on project."}, {"post_id": 55352, "ts": "2026-08-27T04:14:18Z", "hours": 3.1225, "text": "coding session 1"}]...
|
Title: Portfolio by @ardevhere | Stardance
Devlog Title: Portfolio by @ardevhere | Stardance
Devlogs:
coding session 1
Today i completed 90% percent of my work on project.
I just completed the whole project with very high energy.
I just rebuild my site
Ships:
I built an Apple-inspired full-stack developer portfolio and client acquisition platform from scratch using pure HTML5, CSS3, and Vanilla JavaScript. The most challenging part was engineering custom UI components—like the scroll progress indicator, glassmorphic blurred navigation bar, dynamic scroll-reveal animations using native IntersectionObserver API, and interactive contact modal—without relying on external libraries or frameworks like React or Tailwind. I am most proud of how clean, responsive, and fast the site feels. It includes dedicated sections for services, tech stack, structured pricing tiers, client testimonials, an interactive FAQ accordion, and a built-in contact modal that auto-generates structured email drafts directly in the client’s default mail app. To test the project: Scroll down the landing page to check out the scroll animations and sticky navigation header. Click any “Get started” or “Talk to me” buttons under the Pricing section to trigger the interactive contact modal. Test out the FAQ section by clicking the accordions to expand answers. Fill out the contact form inside the modal and submit it to see how it dynamically parses your input into a ready-to-send email draft!...
|
1793872086.2318091
|
1793958486.2318091
|
|
58297
|
svts hackpad by @svt_demon | Stardance
|
svt_demon
|
0
|
4.4
|
0
|
[]
|
[{"post_id": 68699, "ts": "202 [{"post_id": 68699, "ts": "2026-09-15T15:47:01Z", "hours": 0.9575, "text": "Finished the project and now waiting for funding to build it physically"}, {"post_id": 65521, "ts": "2026-09-10T18:32:17Z", "hours": 0.8942, "text": "Finished the 3D model for my hackpad by joining the front plate and the case"}, {"post_id": 64384, "ts": "2026-09-08T18:26:02Z", "hours": 1.9628, "text": "working on the case and the top plate for my hackpad!!"}, {"post_id": 62783, "ts": "2026-09-06T09:27:43Z", "hours": 0.5828, "text": "Finished the PCB design for my 4 key Hackpad!!"}]...
|
Title: svts hackpad by @svt_demon | Stardance
Dev Title: svts hackpad by @svt_demon | Stardance
Devlogs:
Finished the PCB design for my 4 key Hackpad!!
working on the case and the top plate for my hackpad!!
Finished the 3D model for my hackpad by joining the front plate and the case
Finished the project and now waiting for funding to build it physically...
|
1793483415.2100303
|
1794088215.2100303
|
|
62466
|
Meteoduo by @Alexandru | Stardance
|
Alexandru
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-15T15:26:06Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a radio station,it was very stubborn at first but after it was super chill,im very proud of it and its very easy to make it", "repo": "https://github.com/Quietbyte23/meteoduo", "demo": "https://drive.google.com/drive/folders/11u8ztJten__PNwRAyxolBJSRclqk0fW5"}]...
|
[{"post_id": 68682, "ts": "202 [{"post_id": 68682, "ts": "2026-09-15T15:13:24Z", "hours": 0.3864, "text": "i am woerking on the code for the meteo here is a screenshot!"}]...
|
Title: Meteoduo by @Alexandru | Stardance
Devlogs Title: Meteoduo by @Alexandru | Stardance
Devlogs:
i am woerking on the code for the meteo here is a screenshot!
Ships:
i made a radio station,it was very stubborn at first but after it was super chill,im very proud of it and its very easy to make it...
|
1794048962.618221
|
1794135362.618221
|
|
61686
|
my slack bot. by @adam_fisal | Stardance
|
adam_fisal
|
0
|
0.78
|
0
|
[]
|
[{"post_id": 68680, "ts": "202 [{"post_id": 68680, "ts": "2026-09-15T15:11:58Z", "hours": 0.7781, "text": "i add 3 commands all what i need is link it with git hub."}]...
|
Title: my slack bot. by @adam_fisal | Stardance
D Title: my slack bot. by @adam_fisal | Stardance
Devlogs:
i add 3 commands all what i need is link it with git hub....
|
1793649311.1787524
|
1794254111.1787524
|
|
42332
|
Ultra-high-speed RC nitro car by @Lokpriyanth | St Ultra-high-speed RC nitro car by @Lokpriyanth | Stardance...
|
Lokpriyanth
|
1
|
4.22
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T10:13:35Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I basically made half of the car this year, I genuinely wanted to complete everything by the time this program ends, but I wasn’t able to. My exams started so, poor me. This is what I managed to do in this project:- I finalized the gearbox, body and chassis design and printed them. I finished up the body(painting, sanding etc..) and assembled everything else. I made a custom gearbox, so yeah, that’s about it.", "repo": "https://github.com/lokpriyanth/ultra-high-speed-nitro-car", "demo": ""}]...
|
[{"post_id": 68675, "ts": "202 [{"post_id": 68675, "ts": "2026-09-15T15:00:56Z", "hours": 2.2214, "text": "This is my final post for the year!! (I think) I just gave a few final finishing touches to the car, and now the foundation is ready. This is the completed car and gearbox in all its glory:-"}, {"post_id": 53753, "ts": "2026-08-24T12:58:06Z", "hours": 1.0856, "text": "Firstly, I spray-painted the car and then spent a bit of time on improvising the axle mount to house a 696 bearing as well for more freedom. I also assembled the chassis, sadly I couldn’t record it because I was trying to complete it in between my 40 page math project that I was writing. But I will give you full context.I started with the attaching the two chassis plate together with a connector and screwing it in, and then many parts when screwed in, and voila it is ready, It only took about 30 min of my homework time anyway. And also sadly, this will be my last devlog for the year!! I am sooo sad, IDK WHY MY EXAMS HAD TO BE NEXT WEEK?!?!?"}, {"post_id": 50375, "ts": "2026-08-19T15:25:12Z", "hours": 1.5342, "text": "I basically switched from onshape to blender FOR TODAY (hopefully), cause for some reason onshape just doesn’t wanna let me edit imported files and also bombards me with the most obnoxious amount of unwanted facetting. I tried to give the tiny details required for the car, but then decided than I will do the changes physically, cause I genuinely DO NOT know how to use blender, I was so used to onshape and now it deserted me :( I spent the day learning the basics of blender. This is me with no idea what I am doing —>"}, {"post_id": 47034, "ts": "2026-08-14T17:08:11Z", "hours": 0.3658, "text": "(I couldn’t get a good photo.) :) I basically tested the tires for any ballooning, and they did not dissapoint, (IDK what I was expecting from that hard of a plastic, after all, I used PLA to print it). I used my old plane’s fuselage as a testing rig, as it literally had everything I needed- A 1800kv motor to reach about 19000rpm, a rigid coroplast frame for me to hold on to the motor, a 2200mah battery, a 30w esc, and last but not the least a servo tester. I ran the wheel, at max throttle, and this is what I found- 1)The wheel design is really rigid laterally (wonderphul) 2)The wheel WILL NOT HOLD ON WITH HOT GLUE. 3)You also can’t forget to balance the wheel, as there are too many vibrations for my liking. And yes, my dad did hold it when testing, as I couldn’t record and test at the same time."}, {"post_id": 45179, "ts": "2026-08-11T14:32:23Z", "hours": 1.2, "text": "So, I basically completed puttying the car. For those who don’t know, putty is like a cement kinda thing and “ing” is usually a continuous tense. So that means I was addING(continuous tense) cement-like stuff to the car in the PAST (past tense). I am definitely getting worried if I am going to be able to complete it or not."}, {"post_id": 45099, "ts": "2026-08-11T11:23:45Z", "hours": 1.3872, "text": "The prototype is halfway through. (That’s probably it, there is nothing else I can say.) :-)"}, {"post_id": 44054, "ts": "2026-08-09T15:59:20Z", "hours": 1.65, "text": "I basically, worked on attaching some of the 3d printed parts today, and this is where I stopped at as I also have unfinished homework. I hope to finish building this prototype Porsche by day after tomorrow so I will have a clear time gap to make changes, complete the gearbox aaand ship it. I hope to ship the thing by 20th or else I am COOOOKED(with 4 O’s)."}, {"post_id": 43320, "ts": "2026-08-08T14:50:10Z", "hours": 2.1328, "text": "This is a demo website I built, you can visit to know what and how I am gonna be achieving overdrive in an rc car like the one I am building. I also switched from using my own completely custom body and chassis and I realized that I’d rather not do this for 69 hrs straight for the next 67 days, so I chose cormango’s Porsche 911 model that he has already made(IDK how he made it sooo detailed). I am also not going to be copy pasting every single thing he has modelled as It does not have active aero, so I will have to look into that tomorrow maybe. I have also 3d printed half the parts of the prototype Porsche that I am currently going to be using as the body shell."}, {"post_id": 41457, "ts": "2026-08-05T17:52:37Z", "hours": 1.6006, "text": "I couldn’t do anything productive today, I basically only did “research”."}, {"post_id": 40815, "ts": "2026-08-04T16:01:34Z", "hours": 1.3336, "text": "WHEEL-ARCHES, WHEEL-ARCHES, WHEEL-ARCHES, I know it looks a bit goofy for now, but trust the process."}, {"post_id": 40230, "ts": "2026-08-03T17:07:21Z", "hours": 2.3714, "text": "I COMPLETED THE CHASSIS! (This is the under-side)."}, {"post_id": 39579, "ts": "2026-08-02T17:14:04Z", "hours": 1.0167, "text": "I managed to kinda complete the active aero(not done yet.)"}, {"post_id": 39017, "ts": "2026-08-01T17:54:49Z", "hours": 2.065, "text": "I completed the basics for the rc hyper-car"}, {"post_id": 38260, "ts": "2026-07-31T15:50:29Z", "hours": 0.8161, "text": "I made the gears that will go in the differentials, I still have to start the casing."}, {"post_id": 38190, "ts": "2026-07-31T13:43:28Z", "hours": 0.9508, "text": "I completed designing the gearbox, so it’s time to print it"}]...
|
Title: Ultra-high-speed RC nitro car by @Lokpriyan Title: Ultra-high-speed RC nitro car by @Lokpriyanth | Stardance
Devlogs:
I completed designing the gearbox, so it’s time to print it
I made the gears that will go in the differentials, I still have to start the casing.
I completed the basics for the rc hyper-car
I managed to kinda complete the active aero(not done yet.)
I COMPLETED THE CHASSIS! (This is the under-side).
WHEEL-ARCHES, WHEEL-ARCHES, WHEEL-ARCHES, I know it looks a bit goofy for now, but trust the process.
I couldn’t do anything productive today, I basically only did “research”.
This is a demo website I built, you can visit to know what and how I am gonna be achieving overdrive in an rc car like the one I am building. I also switched from using my own completely custom body and chassis and I realized that I’d rather not do this for 69 hrs straight for the next 67 days, so I chose cormango’s Porsche 911 model that he has already made(IDK how he made it sooo detailed). I am also not going to be copy pasting every single thing he has modelled as It does not have active aero, so I will have to look into that tomorrow maybe. I have also 3d printed half the parts of the prototype Porsche that I am currently going to be using as the body shell.
I basically, worked on attaching some of the 3d printed parts today, and this is where I stopped at as I also have unfinished homework. I hope to finish building this prototype Porsche by day after tomorrow so I will have a clear time gap to make changes, complete the gearbox aaand ship it. I hope to ship the thing by 20th or else I am COOOOKED(with 4 O’s).
The prototype is halfway through. (That’s probably it, there is nothing else I can say.) :-)
So, I basically completed puttying the car. For those who don’t know, putty is like a cement kinda thing and “ing” is usually a continuous tense. So that means I was addING(continuous tense) cement-like stuff to the car in the PAST (past tense). I am definitely getting worried if I am going to be able to complete it or not.
(I couldn’t get a good photo.) :) I basically tested the tires for any ballooning, and they did not dissapoint, (IDK what I was expecting from that hard of a plastic, after all, I used PLA to print it). I used my old plane’s fuselage as a testing rig, as it literally had everything I needed- A 1800kv motor to reach about 19000rpm, a rigid coroplast frame for me to hold on to the motor, a 2200mah battery, a 30w esc, and last but not the least a servo tester. I ran the wheel, at max throttle, and this is what I found- 1)The wheel design is really rigid laterally (wonderphul) 2)The wheel WILL NOT HOLD ON WITH HOT GLUE. 3)You also can’t forget to balance the wheel, as there are too many vibrations for my liking. And yes, my dad did hold it when testing, as I couldn’t record and test at the same time.
I basically switched from onshape to blender FOR TODAY (hopefully), cause for some reason onshape just doesn’t wanna let me edit imported files and also bombards me with the most obnoxious amount of unwanted facetting. I tried to give the tiny details required for the car, but then decided than I will do the changes physically, cause I genuinely DO NOT know how to use blender, I was so used to onshape and now it deserted me :( I spent the day learning the basics of blender. This is me with no idea what I am doing —>
Firstly, I spray-painted the car and then spent a bit of time on improvising the axle mount to house a 696 bearing as well for more freedom. I also assembled the chassis, sadly I couldn’t record it because I was trying to complete it in between my 40 page math project that I was writing. But I will give you full context.I started with the attaching the two chassis plate together with a connector and screwing it in, and then many parts when screwed in, and voila it is ready, It only took about 30 min of my homework time anyway. And also sadly, this will be my last devlog for the year!! I am sooo sad, IDK WHY MY EXAMS HAD TO BE NEXT WEEK?!?!?
This is my final post for the year!! (I think) I just gave a few final finishing touches to the car, and now the foundation is ready. This is the completed car and gearbox in all its glory:-
Ships:
I basically made half of the car this year, I genuinely wanted to complete everything by the time this program ends, but I wasn’t able to. My exams started so, poor me. This is what I managed to do in this project:- I finalized the gearbox, body and chassis design and printed them. I finished up the body(painting, sanding etc..) and assembled everything else. I made a custom gearbox, so yeah, that’s about it....
|
1794016154.5157356
|
1794102554.5157356
|
|
62493
|
Custom Keyboard by @anvaymathur | Stardance
|
anvaymathur
|
0
|
0.31
|
0
|
[]
|
[{"post_id": 68673, "ts": "202 [{"post_id": 68673, "ts": "2026-09-15T14:52:08Z", "hours": 0.3058, "text": "This isn’t a devlog, but it is a bypass for my Custom Keyboard Project. I brainstormed and designed a 100% size keyboard in KiCad and Onshape. I created it originally for the KEEB hack club, but I also wanted to submit it here. This project helped me learn KiCad for the first time and get more familiar with Onshape. This is the GitHub link to the project, which involves my journal that can be used as the devlogs for the project."}]...
|
Title: Custom Keyboard by @anvaymathur | Stardance Title: Custom Keyboard by @anvaymathur | Stardance
Devlogs:
This isn’t a devlog, but it is a bypass for my Custom Keyboard Project. I brainstormed and designed a 100% size keyboard in KiCad and Onshape. I created it originally for the KEEB hack club, but I also wanted to submit it here. This project helped me learn KiCad for the first time and get more familiar with Onshape. This is the GitHub link to the project, which involves my journal that can be used as the devlogs for the project....
|
1793422230.4251852
|
1794286230.4251852
|
|
45657
|
BasbOSa by @sarahzoghly | Stardance
|
sarahzoghly
|
2
|
24.63
|
87
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T18:06:56Z", "hours": 12.0, "multiplier": 7.59, "payout": 87, "blessing": "neutral", "text": "That took so much time even though it might look simple, but I am new to web dev, and that is really a huge step from the first version of it. I added 2 other apps, a web search bar, a ticker, and a weather widget. That was too much fun to make, and I had fun making Basbousa into a character like I wanted.", "repo": "https://github.com/sarahzoghly/personal-OS", "demo": "https://sarahzoghly.github.io/personal-OS/"}, {"ship_num": 2, "ts": "2026-08-11T17:42:47Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "That one was harder than the personal website one but it was also fun to make and customize. I still plan to add some other stuff later.", "repo": "https://github.com/sarahzoghly/personal-OS", "demo": "https://sarahzoghly.github.io/personal-OS/"}]...
|
[{"post_id": 68667, "ts": "202 [{"post_id": 68667, "ts": "2026-09-15T14:32:00Z", "hours": 0.6322, "text": "I moved the taskbar to the bottom (bec it hide the apps sometimes), fixed its position and fixed Basbousa to the center too. I still have to adjust the other stuff on the screen so they look nice on all screen views."}, {"post_id": 68169, "ts": "2026-09-14T17:13:21Z", "hours": 1.2411, "text": "Final touchesss"}, {"post_id": 65506, "ts": "2026-09-10T18:17:42Z", "hours": 0.6358, "text": "Added a side window to put Basbousa (the cat) in when the game is being played. I just need to make the cat Gifs for the drawing and game apps and I think I am done"}, {"post_id": 64502, "ts": "2026-09-08T23:07:00Z", "hours": 0.5203, "text": "Added a ticker"}, {"post_id": 64489, "ts": "2026-09-08T22:27:36Z", "hours": 1.9558, "text": "Made a weather widget!"}, {"post_id": 63903, "ts": "2026-09-07T22:49:36Z", "hours": 0.58, "text": "addded a search bar, looks cool."}, {"post_id": 63874, "ts": "2026-09-07T21:30:35Z", "hours": 1.7106, "text": "That is kinda fun honestly even if I was really more optimistic about the ‘ai guesses the drawing’ thing than what I ended up with (which isn’t really an ai, it just chooses smth random to say from a list) but it works so that is good."}, {"post_id": 63148, "ts": "2026-09-06T19:49:03Z", "hours": 1.5339, "text": "Made a sketchpad! It works,u can draw on it now. I wanna make this app like Quick, Draw! thing, Basbousa (the cat) is supposed to guess what u r drawing. I will still figure out that part"}, {"post_id": 59236, "ts": "2026-08-31T22:16:46Z", "hours": 1.6856, "text": "Added a game! That is supposed to be a gaming app with different games in there, I added the first one (which is a demo for a game that I made). I still have to add “choose a game” and make the actual app interface."}, {"post_id": 45432, "ts": "2026-08-11T21:25:44Z", "hours": 1.6467, "text": "Fixed all the CSS bugs (or what I found anyway) that is how it looks in different screen views"}, {"post_id": 45298, "ts": "2026-08-11T17:40:45Z", "hours": 0.5931, "text": "changed the title and made the bg cat disappear when the info app is open"}, {"post_id": 45243, "ts": "2026-08-11T16:13:05Z", "hours": 3.2922, "text": "Finally made the first app! (or second if I am counting the info one), it is a simple chatbot with a cat that u can pet."}, {"post_id": 44935, "ts": "2026-08-11T00:54:38Z", "hours": 2.5547, "text": "Added the first app window (info), made it draggable and closeable."}, {"post_id": 44868, "ts": "2026-08-10T22:06:00Z", "hours": 1.8494, "text": "Added some stuff. Made the cat eyes move better, added a top bar with a logout button, and added a pop-up that I will still make work properly"}, {"post_id": 44077, "ts": "2026-08-09T16:28:32Z", "hours": 1.7697, "text": "Changed the welcome screen (still didn’t think about a name for the OS), added a cat with tracking eyes (Claude helped me with that) and made the OS bg."}, {"post_id": 43620, "ts": "2026-08-09T00:13:57Z", "hours": 1.7789, "text": "Made working button that switch to the OS. Most stuff r placeholders that I will change later."}]...
|
Title: BasbOSa by @sarahzoghly | Stardance
Devlog Title: BasbOSa by @sarahzoghly | Stardance
Devlogs:
Made working button that switch to the OS. Most stuff r placeholders that I will change later.
Changed the welcome screen (still didn’t think about a name for the OS), added a cat with tracking eyes (Claude helped me with that) and made the OS bg.
Added some stuff. Made the cat eyes move better, added a top bar with a logout button, and added a pop-up that I will still make work properly
Added the first app window (info), made it draggable and closeable.
Finally made the first app! (or second if I am counting the info one), it is a simple chatbot with a cat that u can pet.
changed the title and made the bg cat disappear when the info app is open
Fixed all the CSS bugs (or what I found anyway) that is how it looks in different screen views
Added a game! That is supposed to be a gaming app with different games in there, I added the first one (which is a demo for a game that I made). I still have to add “choose a game” and make the actual app interface.
Made a sketchpad! It works,u can draw on it now. I wanna make this app like Quick, Draw! thing, Basbousa (the cat) is supposed to guess what u r drawing. I will still figure out that part
That is kinda fun honestly even if I was really more optimistic about the ‘ai guesses the drawing’ thing than what I ended up with (which isn’t really an ai, it just chooses smth random to say from a list) but it works so that is good.
addded a search bar, looks cool.
Made a weather widget!
Added a ticker
Added a side window to put Basbousa (the cat) in when the game is being played. I just need to make the cat Gifs for the drawing and game apps and I think I am done
Final touchesss
I moved the taskbar to the bottom (bec it hide the apps sometimes), fixed its position and fixed Basbousa to the center too. I still have to adjust the other stuff on the screen so they look nice on all screen views.
Ships:
That one was harder than the personal website one but it was also fun to make and customize. I still plan to add some other stuff later.
That took so much time even though it might look simple, but I am new to web dev, and that is really a huge step from the first version of it. I added 2 other apps, a web search bar, a ticker, and a weather widget. That was too much fun to make, and I had fun making Basbousa into a character like I wanted....
|
1794045117.0966778
|
1794131517.0966778
|
|
45065
|
A.R.E.S by @koshuub | Stardance
|
koshuub
|
0
|
5.55
|
0
|
[]
|
[{"post_id": 68665, "ts": "202 [{"post_id": 68665, "ts": "2026-09-15T14:30:52Z", "hours": 0.4669, "text": "im still waiting on the funding and i also am doin a log.md on my github"}, {"post_id": 67981, "ts": "2026-09-14T09:51:07Z", "hours": 1.3833, "text": "so i FINALLY fully finished the BOH.csv file in my github so now we are waiting for hack lcub to check us and approve our funding request ig"}, {"post_id": 67645, "ts": "2026-09-13T20:03:46Z", "hours": 0.3333, "text": "i finished up the github and BOM.csv and finally requested funding now i can go to sleep since it is 2 am…"}, {"post_id": 67621, "ts": "2026-09-13T19:28:06Z", "hours": 3.3653, "text": "im working on the github page and funding of our project"}]...
|
Title: A.R.E.S by @koshuub | Stardance
Devlogs:
i Title: A.R.E.S by @koshuub | Stardance
Devlogs:
im working on the github page and funding of our project
i finished up the github and BOM.csv and finally requested funding now i can go to sleep since it is 2 am…
so i FINALLY fully finished the BOH.csv file in my github so now we are waiting for hack lcub to check us and approve our funding request ig
im still waiting on the funding and i also am doin a log.md on my github...
|
1794052075.0493417
|
1794656875.0493417
|