|
59437
|
Fractal Explorer by @exasperadou | Stardance
|
exasperadou
|
1
|
4.0
|
13
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:42:29Z", "hours": 4.0, "multiplier": 3.46, "payout": 13, "blessing": "neutral", "text": "Fractal Explorer is a fractal visualizer where you can explore fractals and create your own. This project wasn’t as fun as i expected :( . I had to learn some OpenGL and it was kinda hard but i did know some C, which helped me understand some of the syntax and logic. School started which caused me to not work on this a lot, but i did it. I hope you like it", "repo": "https://github.com/exasperadou-max/fractal-Explorer", "demo": "https://exasperadou-max.github.io/fractal-Explorer/"}]...
|
[{"post_id": 71479, "ts": "202 [{"post_id": 71479, "ts": "2026-09-20T22:00:17Z", "hours": 2.0667, "text": "Im done!!!"}, {"post_id": 65709, "ts": "2026-09-11T01:21:16Z", "hours": 1.2756, "text": "I progressed on the CSS and the design of the page, not the fractal yet :)"}, {"post_id": 63960, "ts": "2026-09-08T01:40:30Z", "hours": 0.3536, "text": "Fractal Explorer is a website where you can visualize and explore some fractals and even make your own :) . I finished the html and it looks good so far, i actually took like 1.4 hours doing this but the hackatime didnt work so i had to reset it and make it work"}]...
|
Title: Fractal Explorer by @exasperadou | Stardanc Title: Fractal Explorer by @exasperadou | Stardance
Devlogs:
Fractal Explorer is a website where you can visualize and explore some fractals and even make your own :) . I finished the html and it looks good so far, i actually took like 1.4 hours doing this but the hackatime didnt work so i had to reset it and make it work
I progressed on the CSS and the design of the page, not the fractal yet :)
Im done!!!
Ships:
Fractal Explorer is a fractal visualizer where you can explore fractals and create your own. This project wasn’t as fun as i expected :( . I had to learn some OpenGL and it was kinda hard but i did know some C, which helped me understand some of the syntax and logic. School started which caused me to not work on this a lot, but i did it. I hope you like it...
|
1793353687.5019045
|
1793440087.5019045
|
|
9315
|
RBWR Web by @I-like-BWRs | Stardance
|
I-like-BWRs
|
0
|
3.32
|
0
|
[]
|
[{"post_id": 7148, "ts": "2026 [{"post_id": 7148, "ts": "2026-06-11T22:45:51Z", "hours": 1.5183, "text": "Basic UI improvements"}, {"post_id": 3305, "ts": "2026-06-06T05:08:57Z", "hours": 1.8008, "text": "First Part of Web Development (Update logs)"}]...
|
Title: RBWR Web by @I-like-BWRs | Stardance
Devlo Title: RBWR Web by @I-like-BWRs | Stardance
Devlogs:
First Part of Web Development (Update logs)
Basic UI improvements...
|
1792803009.935386
|
1793407809.935386
|
|
63223
|
Hackpad by @Dantheman240402 | Stardance
|
Dantheman240402
|
0
|
1.19
|
0
|
[]
|
[{"post_id": 71481, "ts": "202 [{"post_id": 71481, "ts": "2026-09-20T22:03:58Z", "hours": 0.7, "text": "Hackpad on fusion"}, {"post_id": 70355, "ts": "2026-09-19T01:05:38Z", "hours": 0.4894, "text": "I just finished the PCB board stuff and next I will work on the Fusion360 part (photo low quality cause its from Lapse and its zoomed out a bit)"}]...
|
Title: Hackpad by @Dantheman240402 | Stardance
De Title: Hackpad by @Dantheman240402 | Stardance
Devlogs:
I just finished the PCB board stuff and next I will work on the Fusion360 part (photo low quality cause its from Lapse and its zoomed out a bit)
Hackpad on fusion...
|
1793051249.6892366
|
1793656049.6892366
|
|
53903
|
MechSim by @rayzchen | Stardance
|
rayzchen
|
1
|
34.0
|
667
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T11:26:58Z", "hours": 34.0, "multiplier": 19.88, "payout": 667, "blessing": "neutral", "text": "MechSim MechSim is a mechanical system simulator that uses Lagrangian mechanics and Runge-Kutta methods to simulate various constrained systems. From expressions of energy it is capable of deriving equations of motion using symbolic differentiation and then stepping through them in time to simulate the motion of the system. How to use The homepage has links to each of the system simulator pages. Each page has an energy label and diagram, playback buttons and sometimes system equations. The Rolling Disk Pendulum has equations of motion too complex to display on the screen. There is also a button to view the Python system file that creates the solver. The page runs best on a landscape desktop orientation. Code structure The project is written in both Python and JavaScript: the main Lagrangian system solver uses Python for its polymorphism and flexible OOP, while the renderer uses JS to efficiently draw the system and update the GUI. Minimal external dependencies are used, so almost all of the code has been written from scratch. Neither component uses nor requires the internals of the other: the system solver simply outputs a few numbers representing the phase state of the system, and the renderer uses those numbers to calculate the positions of objects to draw. Challenges One of the first major issues encountered was how to simplify expressions. Many of the basic rules in algebra are rather complicated to systematically apply, such as collecting like terms or using index laws. In fact, since the expressions obtained from the Euler-Lagrange equations are of a specific format, this symbolic differentiation engine is not fully-featured. Another detail that required significant attention was how to embed Python into a JavaScript powered webpage. The library used for this, PyScript, has two different Python interpreters: Pyodide and MicroPython, the latter of which is 37x smaller in size. The symbolic differentiation engine does not require any external dependencies, but the RK4 time stepper does use NumPy, which is not available on MicroPython. This meant that much of the code needed to be rewritten using ulab, the MicroPython equivalent. In addition to this, many of the CPython-specific implementation details were different, such as dictionary key order and hash function limitations, had varying behaviour on MicroPython and had to be taken account of. One of the techniques I used was dynamically creating each simulation webpage entirely using JavaScript without any frameworks such as jQuery. This meant that each simulation would have almost identical HTML and simply differing diagram drawing JS, which made adding new simulations a matter of copying the template code and editing the rendering script. Merits The system code is extremely intuitive to the point where even non-programmers should be capable of understanding how the system is set up. The most complex system, the Rolling Disk Pendulum, has no less than 7 components exerting classical forces on each other, but the Euler-Lagrange equations convert this simply to a set of simultaneous equations that can be solved instantly for individual accelerations. This results in fluid motion appearing on the screen, no matter how chaotic the system is.", "repo": "https://github.com/rayzchen/mechsim", "demo": "https://rayzchen.github.io/mechsim/"}]...
|
[{"post_id": 71486, "ts": "202 [{"post_id": 71486, "ts": "2026-09-20T22:10:29Z", "hours": 0.3753, "text": "Final fixes Changed the behaviour of the playback button icons to keep sync with the simulation. Also fixed a layering issue in the CSS. The project should now be ready to ship! Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 70744, "ts": "2026-09-19T18:11:01Z", "hours": 0.8522, "text": "Playback Controls Added reset, play/pause and step buttons! Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 70180, "ts": "2026-09-18T17:06:37Z", "hours": 0.7183, "text": "Energy Bar Added a bar on the left to graphically show the ratio between kinetic and potential energies (the faster things are moving, the more light grey there is). Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 70158, "ts": "2026-09-18T16:19:19Z", "hours": 0.7106, "text": "Homepage! Finally able to navigate through the six simulation systems from one place 🔥🔥 Had to wrestle with CSS flexbox and transitions to make nice animations! Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 69204, "ts": "2026-09-16T16:21:41Z", "hours": 0.9172, "text": "Cart + Pendulum Added a simple cart and pendulum system, and realised the internal rotation angles were COMPLETELY opposite… Spent half an hour of unlogged time just to find out that all of the systems were symmetric in angles except ONE which had a wrong sign in the rendering code, making it LOOK symmetric… Fixed that without too much of a headache once found :D"}, {"post_id": 69138, "ts": "2026-09-16T13:30:59Z", "hours": 1.0844, "text": "System file viewer Added a button to view the Python code that sets up the physical system. Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 65038, "ts": "2026-09-09T20:59:17Z", "hours": 0.6514, "text": "More simulations New simulations added: Swinging Atwood Machine Ball on Slope Simple Pendulum Temporary deployments can be found at https://rayzchen.github.io/mechsim/"}, {"post_id": 64996, "ts": "2026-09-09T19:25:27Z", "hours": 0.8075, "text": "Website structure rewrite To make adding new simulations easier, I restructured the file layout and added more dynamic code to the shared JS to create the elements required rather than copy pasting everything in every file. Also added labels to the tab title and bottom right corner. Also rewrote the drawing code for the rolling disk to add more details. Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk/"}, {"post_id": 56937, "ts": "2026-08-28T23:23:50Z", "hours": 4.4119, "text": "Complex System Demo This system contains a semicircular anulus rocking on a rough plane, with a circular disk inside attached to a compound pendulum, and constrained with three springs. Adjusting the parameters took an awfully long time… Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk.html"}, {"post_id": 56254, "ts": "2026-08-27T22:49:48Z", "hours": 5.4453, "text": "Circular Disks After much headache, two new constraints have been implemented: disk rolling on a plane and disk rolling in a circle. There were also lots of bugs in the LaTeX output, which I just kept encountering one by one, but hopefully they should now all be fixed. Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk.html"}, {"post_id": 55340, "ts": "2026-08-27T02:46:15Z", "hours": 1.0178, "text": "GitHub deployment Temporary deployments can be found at https://rayzchen.github.io/mechsim/pend.html"}, {"post_id": 55304, "ts": "2026-08-27T01:35:48Z", "hours": 5.4156, "text": "LaTeX and more simplification This devlog was supposed to be two separate ones, but Stardance was refusing to calculate logged hours :( There’s a big list of changes here: Added a label to show kinetic and potential energies (and demonstrating conservation of energy!) Finally implemented combining like terms (3x + 2x = 5x) and like powers (sin(x) * sin(x) = sin^2(x)), which provides a huge speed increase since the equations of motion are now simpler Fixed a BUNCH of bugs that were cropping up under MicroPython (annoyingly CPython’s dict keys in order of assignment is an implementation detail that isn’t in MicroPython, and the hashing function in MicroPython is completely unreliable) Added LaTeX mode for converting expressions into strings, which automatically handles subscripts and symbols Added labels to the diagram also with LaTeX, tweaked for visibility"}, {"post_id": 55177, "ts": "2026-08-26T17:39:33Z", "hours": 3.4461, "text": "Officially brought to web! I had to wrestle with PyScript for an incredibly long time, but it’s finally running smoothly! Two big changes to the code are: micropython support, which runs and loads SO much faster than Pyodide (but meant I had to rewrite itertools.product and np.linalg.solve) helper classes to create a mechanical system and create energy formulae, which abstracts the math away into much more of an intuitive system! The code for setting up the system gets simpler and simpler each time…"}, {"post_id": 55036, "ts": "2026-08-26T13:50:10Z", "hours": 0.8836, "text": "PyScript testing Spent some time reading through the documentation of PyScript ( https://pyscript.net/ ) to see how well the code will run in the browser. Got the double pendulum code to run in the browser, and I will start writing a full demo soon."}, {"post_id": 54584, "ts": "2026-08-25T16:39:49Z", "hours": 1.2239, "text": "RK4 solver class I have implemented a class that handles solving, susbtitution and iteration of a system from the lagrangian and tested it with a pendulum-cart setup like the one found at https://www.myphysicslab.com/pendulum/cart-pendulum-en.html ."}, {"post_id": 54508, "ts": "2026-08-25T15:12:57Z", "hours": 1.5611, "text": "Better syntax and other tests The expressions can now be written in a much simpler syntax, making it easier to read! Below is also a test run simulating the angle of a rocking semicircle."}, {"post_id": 54158, "ts": "2026-08-25T00:26:04Z", "hours": 0.7797, "text": "Optimisations The old code used to substitute values and perform thousands of simplifications when they weren’t even necessary. Now the values are directly calculated, resulting in much better execution times."}, {"post_id": 54130, "ts": "2026-08-24T23:11:27Z", "hours": 1.7872, "text": "More complicated math The solver can now handle sin and cos, as well as expanding brackets! Also added the equation of motion solver to obtain a value for acceleration. Tested with a different rendering tool with a double pendulum setup. I will eventually create my own simulation using more math and rendering, this window is not part of the project. TODO: collecting like terms and cancelling down, optimising value substitution"}, {"post_id": 54084, "ts": "2026-08-24T21:19:34Z", "hours": 1.0189, "text": "Differentiation! The symbol engine is now capable of performing partial differentiation with respect to any variable, allowing the use of Euler-Lagrange to form differential equations. See https://en.wikipedia.org/wiki/Euler%E2%80%93Lagrange_equation"}, {"post_id": 54050, "ts": "2026-08-24T20:14:45Z", "hours": 0.4261, "text": "Basic expression manipulation The goal of this project is to write a library that can perform symbolic differentiation and solve for an “equation of motion” which can be used to run a simulation. The code for substituting variables is now complete. Here is a sample of how the substitution works."}]...
|
Title: MechSim by @rayzchen | Stardance
Devlogs:
Title: MechSim by @rayzchen | Stardance
Devlogs:
Basic expression manipulation The goal of this project is to write a library that can perform symbolic differentiation and solve for an “equation of motion” which can be used to run a simulation. The code for substituting variables is now complete. Here is a sample of how the substitution works.
Differentiation! The symbol engine is now capable of performing partial differentiation with respect to any variable, allowing the use of Euler-Lagrange to form differential equations. See https://en.wikipedia.org/wiki/Euler%E2%80%93Lagrange_equation
More complicated math The solver can now handle sin and cos, as well as expanding brackets! Also added the equation of motion solver to obtain a value for acceleration. Tested with a different rendering tool with a double pendulum setup. I will eventually create my own simulation using more math and rendering, this window is not part of the project. TODO: collecting like terms and cancelling down, optimising value substitution
Optimisations The old code used to substitute values and perform thousands of simplifications when they weren’t even necessary. Now the values are directly calculated, resulting in much better execution times.
Better syntax and other tests The expressions can now be written in a much simpler syntax, making it easier to read! Below is also a test run simulating the angle of a rocking semicircle.
RK4 solver class I have implemented a class that handles solving, susbtitution and iteration of a system from the lagrangian and tested it with a pendulum-cart setup like the one found at https://www.myphysicslab.com/pendulum/cart-pendulum-en.html .
PyScript testing Spent some time reading through the documentation of PyScript ( https://pyscript.net/ ) to see how well the code will run in the browser. Got the double pendulum code to run in the browser, and I will start writing a full demo soon.
Officially brought to web! I had to wrestle with PyScript for an incredibly long time, but it’s finally running smoothly! Two big changes to the code are: micropython support, which runs and loads SO much faster than Pyodide (but meant I had to rewrite itertools.product and np.linalg.solve) helper classes to create a mechanical system and create energy formulae, which abstracts the math away into much more of an intuitive system! The code for setting up the system gets simpler and simpler each time…
LaTeX and more simplification This devlog was supposed to be two separate ones, but Stardance was refusing to calculate logged hours :( There’s a big list of changes here: Added a label to show kinetic and potential energies (and demonstrating conservation of energy!) Finally implemented combining like terms (3x + 2x = 5x) and like powers (sin(x) * sin(x) = sin^2(x)), which provides a huge speed increase since the equations of motion are now simpler Fixed a BUNCH of bugs that were cropping up under MicroPython (annoyingly CPython’s dict keys in order of assignment is an implementation detail that isn’t in MicroPython, and the hashing function in MicroPython is completely unreliable) Added LaTeX mode for converting expressions into strings, which automatically handles subscripts and symbols Added labels to the diagram also with LaTeX, tweaked for visibility
GitHub deployment Temporary deployments can be found at https://rayzchen.github.io/mechsim/pend.html
Circular Disks After much headache, two new constraints have been implemented: disk rolling on a plane and disk rolling in a circle. There were also lots of bugs in the LaTeX output, which I just kept encountering one by one, but hopefully they should now all be fixed. Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk.html
Complex System Demo This system contains a semicircular anulus rocking on a rough plane, with a circular disk inside attached to a compound pendulum, and constrained with three springs. Adjusting the parameters took an awfully long time… Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk.html
Website structure rewrite To make adding new simulations easier, I restructured the file layout and added more dynamic code to the shared JS to create the elements required rather than copy pasting everything in every file. Also added labels to the tab title and bottom right corner. Also rewrote the drawing code for the rolling disk to add more details. Temporary deployments can be found at https://rayzchen.github.io/mechsim/disk/
More simulations New simulations added: Swinging Atwood Machine Ball on Slope Simple Pendulum Temporary deployments can be found at https://rayzchen.github.io/mechsim/
System file viewer Added a button to view the Python code that sets up the physical system. Temporary deployments can be found at https://rayzchen.github.io/mechsim/
Cart + Pendulum Added a simple cart and pendulum system, and realised the internal rotation angles were COMPLETELY opposite… Spent half an hour of unlogged time just to find out that all of the systems were symmetric in angles except ONE which had a wrong sign in the rendering code, making it LOOK symmetric… Fixed that without too much of a headache once found :D
Homepage! Finally able to navigate through the six simulation systems from one place 🔥🔥 Had to wrestle with CSS flexbox and transitions to make nice animations! Temporary deployments can be found at https://rayzchen.github.io/mechsim/
Energy Bar Added a bar on the left to graphically show the ratio between kinetic and potential energies (the faster things are moving, the more light grey there is). Temporary deployments can be found at https://rayzchen.github.io/mechsim/
Playback Controls Added reset, play/pause and step buttons! Temporary deployments can be found at https://rayzchen.github.io/mechsim/
Final fixes Changed the behaviour of the playback button icons to keep sync with the simulation. Also fixed a layering issue in the CSS. The project should now be ready to ship! Temporary deployments can be found at https://rayzchen.github.io/mechsim/
Ships:
MechSim MechSim is a mechanical system simulator that uses Lagrangian mechanics and Runge-Kutta methods to simulate various constrained systems. From expressions of energy it is capable of deriving equations of motion using symbolic differentiation and then stepping through them in time to simulate the motion of the system. How to use The homepage has links to each of the system simulator pages. Each page has an energy label and diagram, playback buttons and sometimes system equations. The Rolling Disk Pendulum has equations of motion too complex to display on the screen. There is also a button to view the Python system file that creates the solver. The page runs best on a landscape desktop orientation. Code structure The project is written in both Python and JavaScript: the main Lagrangian system solver uses Python for its polymorphism and flexible OOP, while the renderer uses JS to efficiently draw the system and update the GUI. Minimal external dependencies are used, so almost all of the code has been written from scratch. Neither component uses nor requires the internals of the other: the system solver simply outputs a few numbers representing the phase state of the system, and the renderer uses those numbers to calculate the positions of objects to draw. Challenges One of the first major issues encountered was how to simplify expressions. Many of the basic rules in algebra are rather complicated to systematically apply, such as collecting like terms or using index laws. In fact, since the expressions obtained from the Euler-Lagrange equations are of a specific format, this symbolic differentiation engine is not fully-featured. Another detail that required significant attention was how to embed Python into a JavaScript powered webpage. The library used for this, PyScript, has two different Python interpreters: Pyodide and MicroPython, the latter of which is 37x smaller in size. The symbolic differentiation engine does not require any external dependencies, but the RK4 time stepper does use NumPy, which is not available on MicroPython. This meant that much of the code needed to be rewritten using ulab, the MicroPython equivalent. In addition to this, many of the CPython-specific implementation details were different, such as dictionary key order and hash function limitations, had varying behaviour on MicroPython and had to be taken account of. One of the techniques I used was dynamically creating each simulation webpage entirely using JavaScript without any frameworks such as jQuery. This meant that each simulation would have almost identical HTML and simply differing diagram drawing JS, which made adding new simulations a matter of copying the template code and editing the rendering script. Merits The system code is extremely intuitive to the point where even non-programmers should be capable of understanding how the system is set up. The most complex system, the Rolling Disk Pendulum, has no less than 7 components exerting classical forces on each other, but the Euler-Lagrange equations convert this simply to a set of simultaneous equations that can be solved instantly for individual accelerations. This results in fluid motion appearing on the screen, no matter how chaotic the system is....
|
1793350590.1234407
|
1793436990.1234407
|
|
63715
|
Nemeso by @IKONIK | Stardance
|
IKONIK
|
0
|
4.01
|
0
|
[]
|
[{"post_id": 71490, "ts": "202 [{"post_id": 71490, "ts": "2026-09-20T22:16:52Z", "hours": 2.1303, "text": "package managment and cleaned up the code finally. (biggest update yet) (get ready for something big. v1.0 shhhhh)"}, {"post_id": 70895, "ts": "2026-09-19T23:37:47Z", "hours": 1.4039, "text": "basic model manager (finally actual development) you can pull, delete and select your models now :)"}, {"post_id": 70556, "ts": "2026-09-19T11:19:40Z", "hours": 0.4792, "text": "got ollama to work on my computer. cant wait to finally start programming"}]...
|
Title: Nemeso by @IKONIK | Stardance
Devlogs:
got Title: Nemeso by @IKONIK | Stardance
Devlogs:
got ollama to work on my computer. cant wait to finally start programming
basic model manager (finally actual development) you can pull, delete and select your models now :)
package managment and cleaned up the code finally. (biggest update yet) (get ready for something big. v1.0 shhhhh)...
|
1793054903.367133
|
1793659703.367133
|
|
22644
|
AI Footprint by @cinnamahi | Stardance
|
cinnamahi
|
0
|
25.37
|
0
|
[]
|
[{"post_id": 71495, "ts": "202 [{"post_id": 71495, "ts": "2026-09-20T22:35:56Z", "hours": 9.1725, "text": "Devlog #3: TBD What I have so far: Since the last devlog, I have added the location personalization and reworked the UI to make it more conducive to new additions. The location personalization, which allows users to input their country and have their emissions calculated from its annual average grid carbon density, uses a database from OurWorldInData. Initially I used Papaparse to try to achieve this, but I was using a small csv so it proved easier to parse the data with vanilla js while avoiding the errors from importing Papa. I also created pages for the pop-up: a main screen, settings, and dashboard. I seperated the code into files for each page because it had begun to get really messy. The settings page includes toggles for an always on display and light/dark mode, both of which are a work in progress, and a place to input your country. (It must be noted that this is optional and the default is set to the US.) I spent a lot of time troubleshooting the buttons because they would often stop working while I was editing unrelated code (usually because I messed with their code on accident), but they finally work consistently! What I Need To Work On As I mentioned earlier, I am working on personalization settings such as light/dark mode and an always on display rather than just a pop up when you click on the icon. I also am going to add a history function for the dashboard to track your AI usage over time; the goal is for it to display a week’s worth of time."}, {"post_id": 38620, "ts": "2026-08-01T03:29:28Z", "hours": 8.7367, "text": "Devlog #2: AI Footprint Detection What I Have So Far The extension now accurately detects and displays the stopwatch when the user is on an AI website (specifically ChatGPT, Claude, and Gemini so far). I had some difficulty with this due to certain variables being set at weird times and slight inconsistencies with event listeners, so the time wouldn’t store correctly or keep resetting. Along with fixing that, I added the ability for the stopwatch time to be stored within the user’s chrome storage and a daily reset. Finally, I cleaned up the pop-up appearance. What I Need To Work On My next step is user personalization, both in display and the actual calculation, for which certain values are user-dependent (location, device, etc.). I have already begun to draft the location part but the code is commented out right now as to not break the emissions count right now. The ultimate goal is detecting key strokes for a more accurate measure of time using AI, but that’s for the future."}, {"post_id": 12302, "ts": "2026-06-20T02:17:47Z", "hours": 7.4628, "text": "Devlog #1: AI Footprint (tentative name) I finally have some semblance of a chrome extension to submit evidence of! This is my first time working on an extension so majority of this time was spent experimenting and figuring out how to structure the program. The Concept With the increased usage of AI, I believed it was necessary to bring to light its environmental impacts. Most people think of its costs in general terms: takes up land, a water guzzler, produces carbon dioxide. This chrome extension displays real-time data for people who like the see the actual numbers. What I Have So Far The extension opens successfully, the popup displays as intended, and the stopwatch and carbon emissions tracker run when the user is on the Claude website. What I Need To Work On At the moment, the extension only detects Claude. I have yet to figure out why it does not work on ChatGPT or Gemini (my two other test subjects) but that is what I’ll focus on next. In addition, it assumes average values for power draw and grid carbon density among others which all depend on geographical location and device processor, which I intend to turn into user inputs at a later point."}]...
|
Title: AI Footprint by @cinnamahi | Stardance
Dev Title: AI Footprint by @cinnamahi | Stardance
Devlogs:
Devlog #1: AI Footprint (tentative name) I finally have some semblance of a chrome extension to submit evidence of! This is my first time working on an extension so majority of this time was spent experimenting and figuring out how to structure the program. The Concept With the increased usage of AI, I believed it was necessary to bring to light its environmental impacts. Most people think of its costs in general terms: takes up land, a water guzzler, produces carbon dioxide. This chrome extension displays real-time data for people who like the see the actual numbers. What I Have So Far The extension opens successfully, the popup displays as intended, and the stopwatch and carbon emissions tracker run when the user is on the Claude website. What I Need To Work On At the moment, the extension only detects Claude. I have yet to figure out why it does not work on ChatGPT or Gemini (my two other test subjects) but that is what I’ll focus on next. In addition, it assumes average values for power draw and grid carbon density among others which all depend on geographical location and device processor, which I intend to turn into user inputs at a later point.
Devlog #2: AI Footprint Detection What I Have So Far The extension now accurately detects and displays the stopwatch when the user is on an AI website (specifically ChatGPT, Claude, and Gemini so far). I had some difficulty with this due to certain variables being set at weird times and slight inconsistencies with event listeners, so the time wouldn’t store correctly or keep resetting. Along with fixing that, I added the ability for the stopwatch time to be stored within the user’s chrome storage and a daily reset. Finally, I cleaned up the pop-up appearance. What I Need To Work On My next step is user personalization, both in display and the actual calculation, for which certain values are user-dependent (location, device, etc.). I have already begun to draft the location part but the code is commented out right now as to not break the emissions count right now. The ultimate goal is detecting key strokes for a more accurate measure of time using AI, but that’s for the future.
Devlog #3: TBD What I have so far: Since the last devlog, I have added the location personalization and reworked the UI to make it more conducive to new additions. The location personalization, which allows users to input their country and have their emissions calculated from its annual average grid carbon density, uses a database from OurWorldInData. Initially I used Papaparse to try to achieve this, but I was using a small csv so it proved easier to parse the data with vanilla js while avoiding the errors from importing Papa. I also created pages for the pop-up: a main screen, settings, and dashboard. I seperated the code into files for each page because it had begun to get really messy. The settings page includes toggles for an always on display and light/dark mode, both of which are a work in progress, and a place to input your country. (It must be noted that this is optional and the default is set to the US.) I spent a lot of time troubleshooting the buttons because they would often stop working while I was editing unrelated code (usually because I messed with their code on accident), but they finally work consistently! What I Need To Work On As I mentioned earlier, I am working on personalization settings such as light/dark mode and an always on display rather than just a pop up when you click on the icon. I also am going to add a history function for the dashboard to track your AI usage over time; the goal is for it to display a week’s worth of time....
|
1793209670.3008955
|
1793814470.3008955
|
|
64248
|
OrbitOS by @eliziv027 | Stardance
|
eliziv027
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T22:39:37Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built OrbitOS, a space-themed WebOS with draggable windows, a dock, and Welcome, Projects, Sticky Notes, and Orbit Terminal apps. I focused on smoother window dragging and focus behavior, then added Orbit Terminal as a feature beyond the guide. It is deployed without a password—open several apps, drag their title bars, and try the Terminal.", "repo": "https://github.com/zivzancoeli-commits/orbit-os", "demo": "https://zivzancoeli-commits.github.io/orbit-os/"}]...
|
[{"post_id": 71497, "ts": "202 [{"post_id": 71497, "ts": "2026-09-20T22:36:47Z", "hours": 0.3675, "text": "Orbit Terminal + Sticky Notes + Pages deploy; AI helped; Eli directed."}, {"post_id": 71483, "ts": "2026-09-20T22:05:42Z", "hours": 0.6394, "text": "Today I improved draggable window behavior and focus handling in OrbitOS, and refined the Welcome and Projects apps. I tested moving windows and bringing the active window to the front."}, {"post_id": 71461, "ts": "2026-09-20T21:21:41Z", "hours": 0.3125, "text": "I worked on OrbitOS by refining the space-themed WebOS interface and improving the draggable window experience. I polished the dock and the Welcome, Projects, Notes, and Terminal apps, including the extra Orbit Terminal feature. Next I will keep testing interactions and improving the overall usability."}]...
|
Title: OrbitOS by @eliziv027 | Stardance
Devlogs: Title: OrbitOS by @eliziv027 | Stardance
Devlogs:
I worked on OrbitOS by refining the space-themed WebOS interface and improving the draggable window experience. I polished the dock and the Welcome, Projects, Notes, and Terminal apps, including the extra Orbit Terminal feature. Next I will keep testing interactions and improving the overall usability.
Today I improved draggable window behavior and focus handling in OrbitOS, and refined the Welcome and Projects apps. I tested moving windows and bringing the active window to the front.
Orbit Terminal + Sticky Notes + Pages deploy; AI helped; Eli directed.
Ships:
I built OrbitOS, a space-themed WebOS with draggable windows, a dock, and Welcome, Projects, Sticky Notes, and Orbit Terminal apps. I focused on smoother window dragging and focus behavior, then added Orbit Terminal as a feature beyond the guide. It is deployed without a password—open several apps, drag their title bars, and try the Terminal....
|
1793213531.7049754
|
1793299931.7049754
|
|
52073
|
After Playlist by @Jolly_VFX | Stardance
|
Jolly_VFX
|
2
|
14.0
|
229
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T23:41:39Z", "hours": 7.0, "multiplier": 12.4, "payout": 107, "blessing": "neutral", "text": "After Playlist v5.0.0 BOOM! I’ve finally finished with my second ship for this project. Honestly I’ve had a blast making this and I hope everyone likes it! What did I make? I made a Adobe After Effects ScriptUI Panel that lets you control what music is playing through PowerShell and Windows Script Host. This all happens asynchronously so no need to worry about AE lagging, losing focus, or simply just crashing. It’s all handled outside. The project is designed to save those extra few seconds and to make sure that you never have to leave the editing “flow-state.” I also made another video! :D Major QoL improvements: Multiple guides: Majorly helps users install, troubleshoot, or even just figure out if they can run the script. Settings panel: Give more control and freedom over the script Error codes! I really should’ve added these earlier. They help the user troubleshoot more easily and figure out what’s wrong! Challenges I didn’t have too much difficulty this time tbh. I had to research quite I bit to figure out how to even make a settings panel which I tried to make before but failed HORRIBLY. I updated the UI which wasn’t too challenging at all. I suppose the biggest challenge was how tiring it was to make all those functions for the settings menu. Thanks for the feedback I got some AMAZING feedback from the previous ship and I made sure to address each of them. They mainly said to fix/update the UI and I did so. I do agree the previous UI wasn’t exactly… appealing. AI disclaimer I didn’t use as much AI as last ship. It was mainly just for ideas and I asked once why my settings menu wasn’t opening and I got some feedback from Manus which steered me in the right direction. I only copy and pasted a few times for the unicode symbols because I decided that symbols would look better and cleaner than text. Thanks to everyone at Hackclub for making Stardance. It really gave me a purpose (and i also needed motivation to learn coding lol).", "repo": "https://github.com/pi-vfx-aep/After-Playlist", "demo": "https://github.com/pi-vfx-aep/After-Playlist/releases/tag/v5.0"}, {"ship_num": 2, "ts": "2026-08-28T00:40:39Z", "hours": 7.0, "multiplier": 14.99, "payout": 122, "blessing": "neutral", "text": "After Playlist V4.0.0 for Windows 11 Time spent: ~7 hours (5h developing and 2h asset creation and video editing). Editors like myself often find themselves in a state known as the flow state. The flow state is a time where an editor is completely locked in and fully focused on editing. A major contributor to achieving this state is music. Music is what relaxes you and gets you focused at the same time. The Problem: The big issue is that flipping between Spotify or other media platforms can easily break the creative flow. I personally hate going back and forth between Adobe After Effects (AE) and Spotify just to pause a song or look at what the song is called. Standard AE scripts that aim to fix this problem usually end up making AE freeze. The Solution: After Playlist is a media controller that stays docked inside AE. It uses an Asynchronous architecture to communicate with Windows silently to make sure AE doesn’t keep freezing. The 4 Major QoL Improvements: A non-blocking asynchronous engine: It uses a small little hidden VBScript/Powershell bridge to keep AE responsive (errors can occur!) A live now-playing section: Every 6 seconds the artist name and song name is fetched through background polling. It uses a marquee scrolling effect for long names. Spotify launcher and media controls: The main part is the media controls (Play/pause, next, previous, volume up/down, and mute. It also has a button to launch Spotify incase you haven’t already :D Diagnostics test: The button near the button runs a test to make sure the script will work (Can be inaccurate). Challenges: As I’ve mentioned in a previous devlog and the Github README, I had a hard time figuring out how to even make this work. Some deep researching led me to PowerShell and VBScript. Another challenge was not much a challenge and rather an annoying bug that would register multiple clicks at once causing either AE to crash or the script to not work. AI Disclaimer: Manus and Claude were used quite a bit for pointing out errors that I missed and they also helped come up with ideas to add to the script. The name was based off a ChatGPT suggestion lol. Technical details: Language used: Adobe ExtendScript (Based on ECMAScript) Code editor used: VS Code Software used for testing: Adobe After Effects 2025. Hope people use this! Have an absolutely spectacular day!", "repo": "https://github.com/pi-vfx-aep/After-Playlist", "demo": "https://github.com/pi-vfx-aep/After-Playlist/releases/tag/v5.0"}]...
|
[{"post_id": 71501, "ts": "202 [{"post_id": 71501, "ts": "2026-09-20T22:54:34Z", "hours": 1.8772, "text": "I’m Finally Done (Hopefully) I decided to make a little “Minimum System Requirements” sheet because well, why not? It felt like a good addition because I don’t want people installing the script and then not being able to use it. The other important thing I did was make another video. Is it necessary? No. Is it absolutely awesome and cool? ONE HUNDRED PERCENT! My passion for video editing is so strong I just couldn’t bring myself to not make another video. This one is a little different however. I didn’t showcase the tool at all, its more so just an ad to get people interested. The style of it is also different. I went with a low fps, grainy, style of video. References: https://www.youtube.com/watch?v=EUoHKh86mX0 https://www.youtube.com/watch?v=cxA-qJsJL30 Video Details: FPS: 18 Resolution: 1920 x 1080 px How cool it is: 10/10"}, {"post_id": 69406, "ts": "2026-09-17T00:04:29Z", "hours": 4.0544, "text": "Possible my second last devlog I did quite a lot in these 4 hours. Before I tell you, I’d like to thank everyone at stardance for this amazing opportunity to pursue this project and also get a cool prize :D What I added I added a settings menu! I actually tried to add one a while back but it unfortunately it did not work. I did not give up. I decided to add it back in the 5.0 version (releasing soon, probably when I ship). I also added a couple more things: Fixed status text Fixed minor bugs Added error codes Added tooltips to error codes New manuals I also created two manuals so far. A user manual and a troubleshooting manual. The troubleshooting manual defines all the error codes and gives fixes, general fixes, how to report a problem, and known limitations of the script. The user manual gives explicit info on the script and its functions and it has a simplified version of how to install it (more in depth instructions on readme). Error codes While seemingly irrelevant, error codes are SUPER important. It lets the user reference the trouble shooting guide much easier and they also have much less to remember. AI disclaimer As always I have to provide an AI disclaimer. Now most of this didn’t really use much AI since it was pretty basic stuff especially the error codes. All I really asked AI about was what I should add to the settings since I’m not exactly creative. As for how to make the settings panel, I just researched a little online, dug through some forums, and that’s pretty much it. THANKS TO EVERYONE AT STARDANCE LOVE YALL"}, {"post_id": 63188, "ts": "2026-09-06T21:08:19Z", "hours": 1.2042, "text": "I’m back. I got some amazing feedback on this project and I’m honored to get a blessing. It has boosted my motivation to continue this silly project of mine. I’ve been quite inactive lately because I was sick but fret not because I’m back to working on After Playlist. This time, I worked a lot more on the UI because most of my feedback was that the UI looked boring and generic. Fair enough. I changed up some colors and positions of the buttons and then I set this as a new release on my github. I plan on spending atleast 6 more hours on this because only then will I be able to get the thing I want (the keebcard). I am not really sure what to add so if you are reading this please give me suggestions! AI disclaimer Not much AI used this time as all I did was change up the UI. I did however use Claude to tell me what I should do to improve the AI but otherwise none of the code was written by AI. Have a great day!"}, {"post_id": 56286, "ts": "2026-08-28T00:08:39Z", "hours": 1.0578, "text": "The final devlog: The journey was fun. I’d never thought I’d make something that I’d use almost every day. After Playlist has evolved ALOT in a short time. When I first made it, I had low hopes. Almost as if it’d be a fail. And though it did indeed fail, I pushed through and made it work. So for my last update, I added two buttons: C - Enables compact mode by hiding everything except the media controls and diagnostics section. S - Launches Spotify for the people like me who feel too lazy to even open Spotify normally. I wont go too much in detail but I used the Spotify protocol which works with every version of Spotify and the compact mode was very simple, all it did was hide certain aspects. I also learned something new. I never actually knew how helpTips worked and I researched them a bit and added two helpTips. One to each button because you can’t really tell what each button does. I’m going to ship this project shortly after everything is in order. AI usage: HUGE thanks to manus once again my goat helped my find out why the diagnostics text was getting cut off and also how to use helpTips properly. Have a good day!"}, {"post_id": 55312, "ts": "2026-08-27T01:47:21Z", "hours": 0.8581, "text": "I did it, I finally added the now playing feature! So as you may know, I revealed in my second devlog of this project that the now playing feature had to be removed because I just could not get it to work. Today I woke up and thought: “Let’s give it another shot” ##My biggest challenge: I had thought of a way to make it work but AE would still keep freezing every now and then because the process was happening through AE. How I made it and fixed the freezing problem: I made a sort of “scout” that would launch a small, hidden powershell process in the background every 6 seconds. This scout then asks windows: “Bro what song is playing right now? I gotta know.” So then windows responds with the answer written in a temporary file. AE then reads this file and displays it on the “Now Playing” section near the top. If the answer comes empty then AE keeps the same song. This way AE doesn’t freeze because the process happens outside AE. One other problem was that the text would get cutoff due to panel resizing issues. To fix this I simply added a marquee scrolling effect to keep it nice and smooth. I won’t go into detail about that but know that I had to search up how to do it since I’ve never done it. AI usage disclaimer: Claude Sonnet was used to point out syntax errors and Manus was used to help guide me to using the “background scout” method. Both AI helped out a whole lot. Hope someone uses this and if you are reading it, have a great day!"}, {"post_id": 52779, "ts": "2026-08-23T03:48:38Z", "hours": 2.5169, "text": "I made another video So if you’ve seen my previous script: “Wiggle Me Timbers,” you’d know I made a short, sick looking demo video so people know how it works. Well, I did it again. My main talent lies in motion graphics and video editing so not making a video would feel like a crime. This video is a bit different from the other one. Instead of making a simple video, I added a fun twist using my knowledge of 3D typography. Anyways the video IS done but I haven’t rendered it yet because I don’t intend to upload it right now. Hope you guys like it!"}, {"post_id": 52012, "ts": "2026-08-22T01:37:11Z", "hours": 1.3683, "text": "FINALLY! So I had a minor (actually kinda major) problem with the original version. It had MAJOR delay! It was honestly very irritating. To fix this I reduced the unecessary delays by reducing the key-down/key-up timing from 40 miliseconds to 15 miliseconds, and the response-file polling interval was reduced from 100 miliseconds to 25. This made it faster yes, but After Effects was still waiting synchronously :( I made the script create a temporary PowerShell script and a hidden VBScript launcher. The VBScript uses WScript.Shell.Run with style 0 and the False wait parameter. I did a little more but I don’t want to bore you :D Anyways if anyone read to the end, I hope you guys have a great day and that someone can actually find this useful."}, {"post_id": 51368, "ts": "2026-08-21T00:22:21Z", "hours": 0.2553, "text": "Now I realized that the idea was i bit far fetched and that making it work first try would be… impossible. It took a while of debugging which i forgot to record so there goes some hours BUT i did record ~15 mins of me testing and updating the README so theres that. I changed the UI, removed and entire feature and make a lot of tweaks to FINALLY make it work. Great thing is manus and claude helped me identify tons of the errors. Have a good day :D"}, {"post_id": 51345, "ts": "2026-08-20T23:20:53Z", "hours": 0.7486, "text": "After Playlist (V1.0) I basically made everything in this one session but technically it’s not fully done. The next few devlogs will include QoL improvements, UI changes, etc. It’s a lightweight media controller for After Effects. If you use AE for hours like me and you need music to stay focused, this is honestly perfect for you. Note: This only works on Windows and the desktop app of Spotify, other desktop apps may work How it works (in more simple terms) Now most of this I needed quite a bit of help for like how to integrate Windows SMTC (System Media Transport Control) Now ExtendScript, the programming language for After Effects ScriptUI Panels doesn’t really support asynchronous Windows API’s :( The good this is you can still build a simple PowerShell Bridge, (It’s not actually that simple for a new coder like me 😭 ) So for the people who can actually understand this… It generates a temporary .ps1 script tapping into GlobalSystemMediaTransportControlsSessionManager wow, thats a real mouthful. Anyways then it uses a custom Await helper via .NET reflection to query the active media session for the song name, artist and the playback status :D Then it reads the cached input from Folder.temp back into the UI Panel (stay with me we’re almost done) Lastly the playback is mapped directly through Poweshell SendKeys commands. AI usage Claude Sonnet was used to debug the code and provide some suggestions on what to add (im not super creative 😭 ) Anyways have fun guys I hope someone will actually use this!"}]...
|
Title: After Playlist by @Jolly_VFX | Stardance
D Title: After Playlist by @Jolly_VFX | Stardance
Devlogs:
After Playlist (V1.0) I basically made everything in this one session but technically it’s not fully done. The next few devlogs will include QoL improvements, UI changes, etc. It’s a lightweight media controller for After Effects. If you use AE for hours like me and you need music to stay focused, this is honestly perfect for you. Note: This only works on Windows and the desktop app of Spotify, other desktop apps may work How it works (in more simple terms) Now most of this I needed quite a bit of help for like how to integrate Windows SMTC (System Media Transport Control) Now ExtendScript, the programming language for After Effects ScriptUI Panels doesn’t really support asynchronous Windows API’s :( The good this is you can still build a simple PowerShell Bridge, (It’s not actually that simple for a new coder like me 😭 ) So for the people who can actually understand this… It generates a temporary .ps1 script tapping into GlobalSystemMediaTransportControlsSessionManager wow, thats a real mouthful. Anyways then it uses a custom Await helper via .NET reflection to query the active media session for the song name, artist and the playback status :D Then it reads the cached input from Folder.temp back into the UI Panel (stay with me we’re almost done) Lastly the playback is mapped directly through Poweshell SendKeys commands. AI usage Claude Sonnet was used to debug the code and provide some suggestions on what to add (im not super creative 😭 ) Anyways have fun guys I hope someone will actually use this!
Now I realized that the idea was i bit far fetched and that making it work first try would be… impossible. It took a while of debugging which i forgot to record so there goes some hours BUT i did record ~15 mins of me testing and updating the README so theres that. I changed the UI, removed and entire feature and make a lot of tweaks to FINALLY make it work. Great thing is manus and claude helped me identify tons of the errors. Have a good day :D
FINALLY! So I had a minor (actually kinda major) problem with the original version. It had MAJOR delay! It was honestly very irritating. To fix this I reduced the unecessary delays by reducing the key-down/key-up timing from 40 miliseconds to 15 miliseconds, and the response-file polling interval was reduced from 100 miliseconds to 25. This made it faster yes, but After Effects was still waiting synchronously :( I made the script create a temporary PowerShell script and a hidden VBScript launcher. The VBScript uses WScript.Shell.Run with style 0 and the False wait parameter. I did a little more but I don’t want to bore you :D Anyways if anyone read to the end, I hope you guys have a great day and that someone can actually find this useful.
I made another video So if you’ve seen my previous script: “Wiggle Me Timbers,” you’d know I made a short, sick looking demo video so people know how it works. Well, I did it again. My main talent lies in motion graphics and video editing so not making a video would feel like a crime. This video is a bit different from the other one. Instead of making a simple video, I added a fun twist using my knowledge of 3D typography. Anyways the video IS done but I haven’t rendered it yet because I don’t intend to upload it right now. Hope you guys like it!
I did it, I finally added the now playing feature! So as you may know, I revealed in my second devlog of this project that the now playing feature had to be removed because I just could not get it to work. Today I woke up and thought: “Let’s give it another shot” ##My biggest challenge: I had thought of a way to make it work but AE would still keep freezing every now and then because the process was happening through AE. How I made it and fixed the freezing problem: I made a sort of “scout” that would launch a small, hidden powershell process in the background every 6 seconds. This scout then asks windows: “Bro what song is playing right now? I gotta know.” So then windows responds with the answer written in a temporary file. AE then reads this file and displays it on the “Now Playing” section near the top. If the answer comes empty then AE keeps the same song. This way AE doesn’t freeze because the process happens outside AE. One other problem was that the text would get cutoff due to panel resizing issues. To fix this I simply added a marquee scrolling effect to keep it nice and smooth. I won’t go into detail about that but know that I had to search up how to do it since I’ve never done it. AI usage disclaimer: Claude Sonnet was used to point out syntax errors and Manus was used to help guide me to using the “background scout” method. Both AI helped out a whole lot. Hope someone uses this and if you are reading it, have a great day!
The final devlog: The journey was fun. I’d never thought I’d make something that I’d use almost every day. After Playlist has evolved ALOT in a short time. When I first made it, I had low hopes. Almost as if it’d be a fail. And though it did indeed fail, I pushed through and made it work. So for my last update, I added two buttons: C - Enables compact mode by hiding everything except the media controls and diagnostics section. S - Launches Spotify for the people like me who feel too lazy to even open Spotify normally. I wont go too much in detail but I used the Spotify protocol which works with every version of Spotify and the compact mode was very simple, all it did was hide certain aspects. I also learned something new. I never actually knew how helpTips worked and I researched them a bit and added two helpTips. One to each button because you can’t really tell what each button does. I’m going to ship this project shortly after everything is in order. AI usage: HUGE thanks to manus once again my goat helped my find out why the diagnostics text was getting cut off and also how to use helpTips properly. Have a good day!
I’m back. I got some amazing feedback on this project and I’m honored to get a blessing. It has boosted my motivation to continue this silly project of mine. I’ve been quite inactive lately because I was sick but fret not because I’m back to working on After Playlist. This time, I worked a lot more on the UI because most of my feedback was that the UI looked boring and generic. Fair enough. I changed up some colors and positions of the buttons and then I set this as a new release on my github. I plan on spending atleast 6 more hours on this because only then will I be able to get the thing I want (the keebcard). I am not really sure what to add so if you are reading this please give me suggestions! AI disclaimer Not much AI used this time as all I did was change up the UI. I did however use Claude to tell me what I should do to improve the AI but otherwise none of the code was written by AI. Have a great day!
Possible my second last devlog I did quite a lot in these 4 hours. Before I tell you, I’d like to thank everyone at stardance for this amazing opportunity to pursue this project and also get a cool prize :D What I added I added a settings menu! I actually tried to add one a while back but it unfortunately it did not work. I did not give up. I decided to add it back in the 5.0 version (releasing soon, probably when I ship). I also added a couple more things: Fixed status text Fixed minor bugs Added error codes Added tooltips to error codes New manuals I also created two manuals so far. A user manual and a troubleshooting manual. The troubleshooting manual defines all the error codes and gives fixes, general fixes, how to report a problem, and known limitations of the script. The user manual gives explicit info on the script and its functions and it has a simplified version of how to install it (more in depth instructions on readme). Error codes While seemingly irrelevant, error codes are SUPER important. It lets the user reference the trouble shooting guide much easier and they also have much less to remember. AI disclaimer As always I have to provide an AI disclaimer. Now most of this didn’t really use much AI since it was pretty basic stuff especially the error codes. All I really asked AI about was what I should add to the settings since I’m not exactly creative. As for how to make the settings panel, I just researched a little online, dug through some forums, and that’s pretty much it. THANKS TO EVERYONE AT STARDANCE LOVE YALL
I’m Finally Done (Hopefully) I decided to make a little “Minimum System Requirements” sheet because well, why not? It felt like a good addition because I don’t want people installing the script and then not being able to use it. The other important thing I did was make another video. Is it necessary? No. Is it absolutely awesome and cool? ONE HUNDRED PERCENT! My passion for video editing is so strong I just couldn’t bring myself to not make another video. This one is a little different however. I didn’t showcase the tool at all, its more so just an ad to get people interested. The style of it is also different. I went with a low fps, grainy, style of video. References: https://www.youtube.com/watch?v=EUoHKh86mX0 https://www.youtube.com/watch?v=cxA-qJsJL30 Video Details: FPS: 18 Resolution: 1920 x 1080 px How cool it is: 10/10
Ships:
After Playlist V4.0.0 for Windows 11 Time spent: ~7 hours (5h developing and 2h asset creation and video editing). Editors like myself often find themselves in a state known as the flow state. The flow state is a time where an editor is completely locked in and fully focused on editing. A major contributor to achieving this state is music. Music is what relaxes you and gets you focused at the same time. The Problem: The big issue is that flipping between Spotify or other media platforms can easily break the creative flow. I personally hate going back and forth between Adobe After Effects (AE) and Spotify just to pause a song or look at what the song is called. Standard AE scripts that aim to fix this problem usually end up making AE freeze. The Solution: After Playlist is a media controller that stays docked inside AE. It uses an Asynchronous architecture to communicate with Windows silently to make sure AE doesn’t keep freezing. The 4 Major QoL Improvements: A non-blocking asynchronous engine: It uses a small little hidden VBScript/Powershell bridge to keep AE responsive (errors can occur!) A live now-playing section: Every 6 seconds the artist name and song name is fetched through background polling. It uses a marquee scrolling effect for long names. Spotify launcher and media controls: The main part is the media controls (Play/pause, next, previous, volume up/down, and mute. It also has a button to launch Spotify incase you haven’t already :D Diagnostics test: The button near the button runs a test to make sure the script will work (Can be inaccurate). Challenges: As I’ve mentioned in a previous devlog and the Github README, I had a hard time figuring out how to even make this work. Some deep researching led me to PowerShell and VBScript. Another challenge was not much a challenge and rather an annoying bug that would register multiple clicks at once causing either AE to crash or the script to not work. AI Disclaimer: Manus and Claude were used quite a bit for pointing out errors that I missed and they also helped come up with ideas to add to the script. The name was based off a ChatGPT suggestion lol. Technical details: Language used: Adobe ExtendScript (Based on ECMAScript) Code editor used: VS Code Software used for testing: Adobe After Effects 2025. Hope people use this! Have an absolutely spectacular day!
After Playlist v5.0.0 BOOM! I’ve finally finished with my second ship for this project. Honestly I’ve had a blast making this and I hope everyone likes it! What did I make? I made a Adobe After Effects ScriptUI Panel that lets you control what music is playing through PowerShell and Windows Script Host. This all happens asynchronously so no need to worry about AE lagging, losing focus, or simply just crashing. It’s all handled outside. The project is designed to save those extra few seconds and to make sure that you never have to leave the editing “flow-state.” I also made another video! :D Major QoL improvements: Multiple guides: Majorly helps users install, troubleshoot, or even just figure out if they can run the script. Settings panel: Give more control and freedom over the script Error codes! I really should’ve added these earlier. They help the user troubleshoot more easily and figure out what’s wrong! Challenges I didn’t have too much difficulty this time tbh. I had to research quite I bit to figure out how to even make a settings panel which I tried to make before but failed HORRIBLY. I updated the UI which wasn’t too challenging at all. I suppose the biggest challenge was how tiring it was to make all those functions for the settings menu. Thanks for the feedback I got some AMAZING feedback from the previous ship and I made sure to address each of them. They mainly said to fix/update the UI and I did so. I do agree the previous UI wasn’t exactly… appealing. AI disclaimer I didn’t use as much AI as last ship. It was mainly just for ideas and I asked once why my settings menu wasn’t opening and I got some feedback from Manus which steered me in the right direction. I only copy and pasted a few times for the unicode symbols because I decided that symbols would look better and cleaner than text. Thanks to everyone at Hackclub for making Stardance. It really gave me a purpose (and i also needed motivation to learn coding lol)....
|
1793314159.2872155
|
1793400559.2872155
|
|
64280
|
bread&bair by @devlx | Stardance
|
devlx
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T23:35:28Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made Bread & Bair, a terminal-based fantasy text adventure where players explore Morrowfen’s haunted forest to rescue Bair, a missing baker’s apprentice. I’m proud of the branching choices, random travel events, item-based progression, and multiple endings. The main challenge was just designing the game although nothing major.", "repo": "https://github.com/DevanshLath/bread-bair", "demo": "https://pypi.org/project/bread-bair/"}]...
|
[{"post_id": 71503, "ts": "202 [{"post_id": 71503, "ts": "2026-09-20T23:03:56Z", "hours": 1.4019, "text": "Devlog #1 Welcome to Bread & BairBread & Bair is a small fantasy text adventure set in the shadowy woods around Morrowfen Village.The story follows Bair, a baker’s apprentice who disappears after chasing strange lights into the forest. Players must explore dangerous paths, gather key items, uncover the River Hag’s weakness, and return Bair home before the third sunrise.This first version focuses on branching choices, limited inventory, random travel events, multiple discoveries, score tracking, and two possible successful endings. The true ending requires finding both the Amber Tear and the Moonstone, then awakening the star arch.The game is written in Python and runs directly in the terminal with no external dependencies. Future updates could add more locations, character interactions, additional endings, and richer consequences for player choices."}]...
|
Title: bread&bair by @devlx | Stardance
Devlo Title: bread&bair by @devlx | Stardance
Devlogs:
Devlog #1 Welcome to Bread & BairBread & Bair is a small fantasy text adventure set in the shadowy woods around Morrowfen Village.The story follows Bair, a baker’s apprentice who disappears after chasing strange lights into the forest. Players must explore dangerous paths, gather key items, uncover the River Hag’s weakness, and return Bair home before the third sunrise.This first version focuses on branching choices, limited inventory, random travel events, multiple discoveries, score tracking, and two possible successful endings. The true ending requires finding both the Amber Tear and the Moonstone, then awakening the star arch.The game is written in Python and runs directly in the terminal with no external dependencies. Future updates could add more locations, character interactions, additional endings, and richer consequences for player choices.
Ships:
I made Bread & Bair, a terminal-based fantasy text adventure where players explore Morrowfen’s haunted forest to rescue Bair, a missing baker’s apprentice. I’m proud of the branching choices, random travel events, item-based progression, and multiple endings. The main challenge was just designing the game although nothing major....
|
1793213539.7103982
|
1793299939.7103982
|
|
7577
|
Sonora Music by @Samuel-Dingle | Stardance
|
Samuel-Dingle
|
1
|
15.0
|
112
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:34:20Z", "hours": 15.0, "multiplier": 7.41, "payout": 112, "blessing": "neutral", "text": "I built a macOS native music app called Sonora Music. It is designed to be a simple music player for local files. It uses Apple’s own AV Frameworks in order to be lightweight. The main thing I found challenging at the start was configuring all of the rust code to get actual audio playback. After some reading and a bit of help from AI, I was able to get a basic player, from which I scaled up with Shuffle, Repeat, a working playbar that supports scrubbing, and a queue system. To try out the project, just click the try project button and download the latest release from github. I have included 2 songs to test the app with!", "repo": "https://github.com/TheApparition1/Sonora-Music", "demo": "https://github.com/TheApparition1/Sonora-Music/releases"}]...
|
[{"post_id": 71504, "ts": "202 [{"post_id": 71504, "ts": "2026-09-20T23:07:40Z", "hours": 1.9058, "text": "Devlog 7 - Sonora Music I decided that with so little time left with Stardance, it wasn’t worth migrating to a new audio engine, especially with all the testing that would have to be done. I ended up deciding to just clean up the app, fix some small errors and making general fixes here and there. Here’s a short list of some bugs I fixed: Fixed a loud bang when spamming skip or closing the app with media playing The app being unable to select directories with only one file Broken UI theme selection Other than that, I’ve just spent time on rewording the readme and making the DMG background and App logo to prepare for shipping the app. Of course in typical developer logic, the build command just has to break, only for me to spend time debugging a missing image file."}, {"post_id": 52821, "ts": "2026-08-23T05:24:42Z", "hours": 2.95, "text": "Devlog 6 - Sonora Music So I left this project alone for a while to focus on other things, but i’m back! I ended up fixing a few bugs here and there, and removing 2 themes I thought didn’t look great. I also added a fallback for that, so if you were using Sonora with that theme, and updated, your app won’t break. I fixed a few memory leaks, mostly because I fell victim to a bunch of them while writing code and testing things. From what I can tell, it was because AVAudioPlayer wasn’t properly releasing itself. This meant that more instances accumulated over time, eating up more RAM and CPU. I also did some visual polishing, by cleaning up unnecessary icons I added, and also just making the UI more refined. I pinned the playbar and controls to the bottom of the screen so that you can always see the controls, and fixed the broken color swatches for the themes so you can see what you are applying. I’m getting close to being ready to ship this project, all I really have left to do is to decide if migrating to AVAudioEngine is worth it as it is an extremely intensive task, and will require lots of tedious work and debugging. The other thing I’ll consider is writing a windows build in Symphonia or some other thing so that this can be cross platform. The main reason I am migrating is so that I can have more refined control of the signal chain and DSP (The chain that your audio passes through and how it is modified, say for an EQ). AVAudioPlayer is designed to just play audio easily, where I want more control and be able to implement the ability to add EQ down the line to further enhance the experience. Hopefully the migration goes well, and I should be able to ship in the next week or two."}, {"post_id": 22506, "ts": "2026-07-05T00:38:03Z", "hours": 4.9175, "text": "Sonora Music – Pain Edition After a week of absolute debugging hell, I finally located and fixed an issue that prevented audio from playing entirely. That took up most of my week, and I also forgot to reinstall Wakatime after I reset my laptop and lost 2-3 hrs there :( While I was at it, I also added Shuffle and Repeat functionality, making the player a bit nicer to use. I’m currently experimenting with a few UI prototypes because I’d really like to add proper playlist creation and management in the future. In terms of releases, I uploaded the first version to GitHub, then realised I built my backup one that didn’t have shuffle and repeat, or the customisation. After uploading the correct build, my next steps are just to update the Sonora Website (another Stardance project ofc) Here’s what I want to tackle next: Migrate the audio system to AVAudioEngine so I can implement more advanced audio features. Add a 3-band EQ (This is why I need to migrate over to AVAudioEngine, as my current AVF Framework doesn’t have support for these types of things or DSP in general). Implement a proper library and playlist view. Create a few custom themes which are similar to the current palette. Add a dedicated Settings page for things like themes, EQ controls, and other app parameters to keep the main UI less cluttered. Overall, this update was mostly focused on bug fixes and polishing. Aside from the features above, I also designed a custom application logo and branded the DMG installer with a custom Sonora Music background, replacing the plain white installer window with something that actually matches the application’s style. Hopefully, the next devlog is a little less about debugging and a little more about adding new features. Maybe? Please???"}, {"post_id": 12851, "ts": "2026-06-21T01:30:51Z", "hours": 1.2872, "text": "I was able to add a working play bar to the app and got the controls to work so that you are now able to skip forward and back songs. I now want to remove that scroll bar on the side and pin the play controls to the bottom of the screen."}, {"post_id": 12428, "ts": "2026-06-20T08:53:34Z", "hours": 0.7778, "text": "So I decided to pivot the whole application to be macOS native by using AVFoundation for Audio. I had too many issues with rodio which is used with rust. While this means it is only for macOS users, it does mean that I can focus on creating for only one OS, and I can develop easier and better. After implementing AVFoundation I am able to select a song using the UI I developed earlier, and then play the song. The next step is to add player controls and a time bar, and work on adding a shuffle feature."}, {"post_id": 12396, "ts": "2026-06-20T07:11:11Z", "hours": 0.4494, "text": "I added logic to select a folder for music and have it list the songs in the folder! I’m now going to add the ability to play music back"}, {"post_id": 11065, "ts": "2026-06-18T03:15:52Z", "hours": 2.8081, "text": "I added the main UI as a mockup. This is only the first page, the player window. Eventually I will add a few more pages and only after will I write the logic to play music."}]...
|
Title: Sonora Music by @Samuel-Dingle | Stardance
Title: Sonora Music by @Samuel-Dingle | Stardance
Devlogs:
I added the main UI as a mockup. This is only the first page, the player window. Eventually I will add a few more pages and only after will I write the logic to play music.
I added logic to select a folder for music and have it list the songs in the folder! I’m now going to add the ability to play music back
So I decided to pivot the whole application to be macOS native by using AVFoundation for Audio. I had too many issues with rodio which is used with rust. While this means it is only for macOS users, it does mean that I can focus on creating for only one OS, and I can develop easier and better. After implementing AVFoundation I am able to select a song using the UI I developed earlier, and then play the song. The next step is to add player controls and a time bar, and work on adding a shuffle feature.
I was able to add a working play bar to the app and got the controls to work so that you are now able to skip forward and back songs. I now want to remove that scroll bar on the side and pin the play controls to the bottom of the screen.
Sonora Music – Pain Edition After a week of absolute debugging hell, I finally located and fixed an issue that prevented audio from playing entirely. That took up most of my week, and I also forgot to reinstall Wakatime after I reset my laptop and lost 2-3 hrs there :( While I was at it, I also added Shuffle and Repeat functionality, making the player a bit nicer to use. I’m currently experimenting with a few UI prototypes because I’d really like to add proper playlist creation and management in the future. In terms of releases, I uploaded the first version to GitHub, then realised I built my backup one that didn’t have shuffle and repeat, or the customisation. After uploading the correct build, my next steps are just to update the Sonora Website (another Stardance project ofc) Here’s what I want to tackle next: Migrate the audio system to AVAudioEngine so I can implement more advanced audio features. Add a 3-band EQ (This is why I need to migrate over to AVAudioEngine, as my current AVF Framework doesn’t have support for these types of things or DSP in general). Implement a proper library and playlist view. Create a few custom themes which are similar to the current palette. Add a dedicated Settings page for things like themes, EQ controls, and other app parameters to keep the main UI less cluttered. Overall, this update was mostly focused on bug fixes and polishing. Aside from the features above, I also designed a custom application logo and branded the DMG installer with a custom Sonora Music background, replacing the plain white installer window with something that actually matches the application’s style. Hopefully, the next devlog is a little less about debugging and a little more about adding new features. Maybe? Please???
Devlog 6 - Sonora Music So I left this project alone for a while to focus on other things, but i’m back! I ended up fixing a few bugs here and there, and removing 2 themes I thought didn’t look great. I also added a fallback for that, so if you were using Sonora with that theme, and updated, your app won’t break. I fixed a few memory leaks, mostly because I fell victim to a bunch of them while writing code and testing things. From what I can tell, it was because AVAudioPlayer wasn’t properly releasing itself. This meant that more instances accumulated over time, eating up more RAM and CPU. I also did some visual polishing, by cleaning up unnecessary icons I added, and also just making the UI more refined. I pinned the playbar and controls to the bottom of the screen so that you can always see the controls, and fixed the broken color swatches for the themes so you can see what you are applying. I’m getting close to being ready to ship this project, all I really have left to do is to decide if migrating to AVAudioEngine is worth it as it is an extremely intensive task, and will require lots of tedious work and debugging. The other thing I’ll consider is writing a windows build in Symphonia or some other thing so that this can be cross platform. The main reason I am migrating is so that I can have more refined control of the signal chain and DSP (The chain that your audio passes through and how it is modified, say for an EQ). AVAudioPlayer is designed to just play audio easily, where I want more control and be able to implement the ability to add EQ down the line to further enhance the experience. Hopefully the migration goes well, and I should be able to ship in the next week or two.
Devlog 7 - Sonora Music I decided that with so little time left with Stardance, it wasn’t worth migrating to a new audio engine, especially with all the testing that would have to be done. I ended up deciding to just clean up the app, fix some small errors and making general fixes here and there. Here’s a short list of some bugs I fixed: Fixed a loud bang when spamming skip or closing the app with media playing The app being unable to select directories with only one file Broken UI theme selection Other than that, I’ve just spent time on rewording the readme and making the DMG background and App logo to prepare for shipping the app. Of course in typical developer logic, the build command just has to break, only for me to spend time debugging a missing image file.
Ships:
I built a macOS native music app called Sonora Music. It is designed to be a simple music player for local files. It uses Apple’s own AV Frameworks in order to be lightweight. The main thing I found challenging at the start was configuring all of the rust code to get actual audio playback. After some reading and a bit of help from AI, I was able to get a basic player, from which I scaled up with Shuffle, Repeat, a working playbar that supports scrubbing, and a queue system. To try out the project, just click the try project button and download the latest release from github. I have included 2 songs to test the app with!...
|
1793339254.2654974
|
1793425654.2654974
|
|
24246
|
Pineapple Chess GUI by @Theenash | Stardance
|
Theenash
|
2
|
28.0
|
448
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:40:27Z", "hours": 6.0, "multiplier": 8.66, "payout": 64, "blessing": "neutral", "text": "I made a chess software called Pineapple Chess, this is my second ship on this project, this ship is the major change of porting it to the web. The summary will stay mostly the same for any newcomers to the second ship. — SUMMARY — So basically it’s like any other chess software but it is pineapple themed(don’t worry if you don’t like the way it looks you can switch themes)! With 3 themes: Light, Dark, and Pineapple! There is a 2 player mode, if you have 2 people in front of a computer, you can play against each other on 1 computer! With an optional board flip feature! You can play against bots, powered by Stockfish, you can play against bots with different difficulties. And this time built with Javascript. Basically the original version was made in Java, but in the last ship, I got a lot of feedback saying I should port this to the web, so I did! — LINKS — To Play on web: Play now: https://shadowtech1234.github.io/pineapplechess/ — CHALLENGES — Here are some challenges I faced. When I first started porting this, I had to learn another brand new language that I had never used, which is JavaScript(last time was Java), so it took me a while to get used to it and progress was very slow at the start. Like a lot of hours I spent on the project was not really captured by Hackatime because I was on documentation and troubleshooting a lot. A very, very big task was efficiency. JavaScript is very, very fragile. I had a lot of problems where it would always freeze and stop, which lead to phantom moves in chess and broke it a lot. Learning to code in JavaScript with this efficiency was a bit hard because I had to make sure everything was perfect and there was no holes in it. Like for example in Java, I just coded in whatever way works, and there probably was holes and leaks in that but it wouldn’t be noticeable, in JavaScript it was the complete opposite. (This is what I noticed when I coded, I don’t know if this is factual that JavaScript is very hard when coding to make sure it’s efficient, it might just be me) Another problem was when I tried putting this on GitHub Pages, because the source for it had to be like in one folder I had to rearrange my code and rewrite some parts to make it work on GitHub Pages, The last challenge I faced was stopping. This is the same as last time. I have a lot of ideas to add to this, but I realized that if I did all of it, it would be a waste of time. This includes adding a evaluation bar, game export and import, game analysis, and maybe multiplayer. Working on this is a fun side project but I don’t have the time to work on it as much right now as I have a lot of work from school, and Stardance is ending soon anyways, so I wanted to get it as polished as possible and ship it. That’s basically it. I had a lot of fun making this, it’s not much but I will add features in the future, maybe in the next Hack Club event. Thank you!", "repo": "https://github.com/Shadowtech1234/pineapplechess", "demo": "https://shadowtech1234.github.io/pineapplechess/"}, {"ship_num": 2, "ts": "2026-08-03T00:03:27Z", "hours": 22.0, "multiplier": 14.56, "payout": 384, "blessing": "neutral", "text": "I made a chess software called Pineapple Chess. — SUMMARY — So basically it’s like any other chess software but it is pineapple themed(don’t worry if you don’t like the way it looks you can switch themes)! With 3 themes: Light, Dark, and Pineapple! There is a 2 player mode, if you have 2 people in front of a computer, you can play against each other on 1 computer! With an optional board flip feature! You can play against bots, powered by Stockfish, you can play against bots with different difficulties. And built with Java. — LINKS — Github: https://github.com/Shadowtech1234/pineapplechess/ If you want to download, simply go to the Github repo, and go to the releases tab and download it! For more detailed instructions, it is on the Github readme. — SHOWCASE VIDEO — Showcase video is available on the very top of the readme in the Github repo. (I wasn’t able to attach the video to this Ship post) — CHALLENGES — Here are some challenges I faced. When I first started, I had to learn a brand new language that I had never used, which is Java, so it took me a while to get used to it and progress was very slow at the start. Like a lot of hours I spent on the project was not really captured by Hackatime because I was on documentation and troubleshooting a lot. A very, very big task was app resizing. What I mean is when you resize the app, for example make it fit the entire screen, the app has to make every component scale up, or scale down with a ratio to make it look good. This took me so long to implement and it works, there is just one problem, you have to click the app after you change the window for the resize to apply, so it looks weird when you resize, but you just need to click on the app to refresh it. Hopefully I can fix that in the next update of my app. Another problem was when I tried building my app to an installer to make it as easy as possible for the user. It just never worked for a while. Like every time I tried to build it would give me a problem, and after I fixed it it just gave me another. This went on 7 times. Of the times I had to rewrite a couple major parts of my app including image loading of the pieces, it worked well in developer mode(which is just clicking the run button in VS Code), but Java kind works differently when compiled into a finished product, so the images didn’t load in a couple builds. But now it works and has a user-friendly installer. The last challenge I faced was stopping. I have a lot of ideas to add to this, but I realized that if I did all of it, it would be a waste of time. This includes multi-platform support over MacOS and Linux, not only Windows. Working on this is a fun side project but I want to do something more meaningful. So I am shipping this project right now and trying to make it as clean as possible with the current features of the app, and moving on to the next project. I will still be working on this project, but I will probably come back to it after summer ends or ever later. That’s basically it. I had a lot of fun making the app, it’s not much but I will add features in the future. Thank you!", "repo": "https://github.com/Shadowtech1234/pineapplechess", "demo": "https://shadowtech1234.github.io/pineapplechess/"}]...
|
[{"post_id": 71505, "ts": "202 [{"post_id": 71505, "ts": "2026-09-20T23:20:37Z", "hours": 6.0689, "text": "JavaScript Port After finishing Pineapple Chess in Java , which meant you need to download my app, which is Windows only, I started getting a lot of people asking if I could port this to the web. So I did, yay. From Java to JavaScript The original version of Pineapple Chess was built entirely in Java, and after finishing it, I figured porting it to JavaScript would be a pretty interesting challenge. The reason why I have to use JavaScript for anyone curious is because that is one of the best for web development. The goal was to recreate the game in JavaScript while keeping the same basic gameplay and features from the original version. This meant going through the original code and rebuilding a lot of the game’s logic in a completely different language. Rebuilding the Game One of the biggest parts of the process was getting the chess logic working again. I had to recreate things like: Piece movement Check and checkmate Special chess moves Turn switching Selecting and moving pieces Detecting when the game ends Since I already had the Java version working, I wasn’t starting completely from scratch. I could use the original game as a reference for how everything was supposed to work, which made the process a lot easier. Why JavaScript? The main reason for making the JavaScript version was accessibility. The original Java version worked, but having a JavaScript version makes it much easier to run and share. Instead of needing to set up the Java version first, the JavaScript version can be used in a much more web-friendly environment. Basically, Pineapple Chess is now significantly easier to get running. And That’s a Wrap! This is actually going to be my last devlog for this event. With the event ending in about two weeks, I wanted to squeeze in one last piece of work before it wraps up, and porting Pineapple Chess to JavaScript felt like the perfect way to finish things off. I know this devlog isn’t much of a change, and there are a lot of features in Pineapple Chess that I would love to add, it’s just I don’t have the time as I have a lot of work in school, and Stardance is ending soon, I will be working on this in the future though. It’s pretty cool seeing a project that I originally made in Java now running in JavaScript. The original version isn’t going anywhere, but now Pineapple Chess has a new form too. I will be shipping this soon, stay tuned! And also, thank you to everyone who followed along with my devlogs, gave feedback, played Pineapple Chess, or suggested things for me to work on. All of the feedback and support throughout the event has genuinely been really helpful and made working on this project a lot more fun. It’s been awesome being able to work on Pineapple Chess throughout this event, it’s not a big project like what other people make but it was a passion project for me for fun. One last update before the event ends. 🍍❤️ Thanks for reading, and I’ll see you around the next Hack Club event!"}, {"post_id": 38375, "ts": "2026-07-31T18:34:51Z", "hours": 1.9519, "text": "I WAS SANE BEFORE TODAY😭😭😭. I have done it, I have finished my app. That part was so easy. But compiling it into a downloadable installer has cost me so much I might as well have sold my soul. I had to build the stupid thing 7 TIMES. I had to mess around with the dependencies for so long, this took like 8 hours but most of it was just trying to fix dependencies and working in the terminal trying to debug why my installer wont work. My installer now works never the less. It is very easy to install in a user’s perspective and it automatically makes a shortcut in the desktop. Sadly this installer is only for windows, sorry Mac and Linux. I will be shipping this project soon. As you can see in the pictures attached, it created the shortcut! And it works!🎉🎉🎉"}, {"post_id": 37946, "ts": "2026-07-31T00:05:38Z", "hours": 4.3528, "text": "This for some reason genuinely took the life out of me. I have finally added the whole point of this chess app, PINEAPPLES! NEW BOARD COLOR, NEW UI THEME, NEW CHESS PEICES. Don’t worry, if you or any other user doesn’t like it, I have added the ability in settings to be able to switch between Light, Dark, and Pineapple Mode. But why would you not want to play with this beauty! The addition of the theme was easy, it was the settings that your able to switch themes that was the hard part. On top of that since I added new chess pieces, the entirety of the image load system in my code and organization of the resources in the source code had to be completely redone, the re-organizing for the file management was not tracked by hackatime but that took way too long. But yea, yay🎉🎉🎉"}, {"post_id": 30885, "ts": "2026-07-18T21:08:29Z", "hours": 4.2989, "text": "I have successfully added Stockfish, an chess engine that is extremely powerful to my app. Took a bit of work, but now you can play against a bot! I have added setting to customize the game against Stockfish if you click it so there’s difficulty selection and the side chooser which lets you choose which side you want to play on. Hardest part was getting the code to work with Stockfish as Stockfish communicates via the Universal Chess Interface (UCI) protocol. The chess engine itself is basically a command line and you can put in the current position and it will spit out the best move in the command line. Its not very user friendly which is why chess GUI’s come in to play like mine, my code translates it from he UI to the command line and vice versa. UCI lets me to be able to use any chess engine I want as long as it uses the UCI protocol, meaning in the future if I decide to make my own chess engine, I can implement it to my app, but for now it will remain as Stockfish."}, {"post_id": 25560, "ts": "2026-07-09T21:44:03Z", "hours": 3.5764, "text": "A LOT OF NEW STUFF. Easiest part was dark mode yay. but what took me 3 hours and was so hard to do was reseizing, what I mean is you can resize the app how ever way and it works with any screen and it always sets the board at the center, I don’t know why it took this long but I did it yay. I have attached a example of it centering it self on multiple aspect ratios."}, {"post_id": 15990, "ts": "2026-06-25T23:28:19Z", "hours": 1.3036, "text": "for a very small feature, this should not have taken this long. i added 2 features, the side bar in the left for future stuff, the play button on he left allows to choose the game mode when i add the feature to be able to play bots, i want to be able to choose what I want to be able to do, either play 2 player or bots, so basically the sidebar is the foundation for future features. Then is the feature that should have taken like 10 minutes, but it took me a hour and a half. It is the feature that flips the board after every turn in 2 player mode because 2 player means 2 people are using one computer to play so the board should flip. Like it used to flip the peices were upside down, liekt he images were, and i tried to add code to make it flip but it didnt work, so then I added a seperate folder with the peices edited to be flipped, but then after implemeting that, id id some stuff it swithc the pictures to that folder only when the baord is flipped, BUT THEN IT STILL REMAINED FLIPPED. So i tried so much to finally figure out I did somehtign that amde the peices flip by themselves without editing and using the different stuff, but when i tired to remove the folder andf only use one folder wiht the peices IT STOPPED WORKING, so now I have 2 folder wiht the exact same pictures of the peices and it works😭. sry if I yapped too much but I needed to vent, In the picture attached it shows the baord flipped and the sidebar as well if you wanna see the final product of the work ive done so far. but im gieunly tweaking rn😭"}, {"post_id": 15336, "ts": "2026-06-24T22:21:00Z", "hours": 0.63, "text": "added a new popup system where instead of it opening a new separate window with the popup, it is more cleaner and in the app, my next step is to add a sidebar to the left and have like a bunch of different stuff there 😄"}, {"post_id": 15119, "ts": "2026-06-24T15:53:12Z", "hours": 1.2217, "text": "BIG PROGRESS, fixed possible move highlights. added a move history to the side, and added draw detection for all possible draws. Next job is hopefully being able to export and import PGN."}, {"post_id": 14788, "ts": "2026-06-24T00:56:39Z", "hours": 1.1747, "text": "A lot of progress has been done, I have put in all the special moves like castling, en passant, and pawn promotion. And I have also added check and checkmate detection. Also I have added UI popups that appear when you promote so you can choose what piece you want as well as the game over pop up when you checkmate and a rematch button which resets the board. So foundation of my chess game GUI is complete, I have recreated the game, I just have some small tweaks that i can do later like when you click a piece while you are in check, it still shows the viable options that don’t protect your king, but it wont let you move there but it still shows it. On top of that I also want to make the pop ups happen in game without opening a new window. But my main next step is add a move history, draw detection, which can only be done with a move history because 2 ways a draw can happen is when 50 moves have passed and a piece has not been captured, or the same position has been repeated 3 times."}, {"post_id": 14609, "ts": "2026-06-23T19:40:15Z", "hours": 1.9833, "text": "I have made my chess board render pieces, show viable moves, make moves, and only allow legal moves. Not all special moves have been added like castling, en passant, pawn promotion, stalemate, or even checkmate(you can take the opponent’s king and the opponent can still move😭)."}, {"post_id": 14437, "ts": "2026-06-23T15:52:11Z", "hours": 0.7981, "text": "I made the Chess Board"}, {"post_id": 14362, "ts": "2026-06-23T13:55:21Z", "hours": 0.6683, "text": "I have started my project, most of my time was taken switching my GUI from Java Swing to JavaFX. This is just a simple window so far but we are going somewhere. This isn’t a lot but I am learning Java, so its just slow and steady progress."}]...
|
Title: Pineapple Chess GUI by @Theenash | Stardanc Title: Pineapple Chess GUI by @Theenash | Stardance
Devlogs:
I have started my project, most of my time was taken switching my GUI from Java Swing to JavaFX. This is just a simple window so far but we are going somewhere. This isn’t a lot but I am learning Java, so its just slow and steady progress.
I made the Chess Board
I have made my chess board render pieces, show viable moves, make moves, and only allow legal moves. Not all special moves have been added like castling, en passant, pawn promotion, stalemate, or even checkmate(you can take the opponent’s king and the opponent can still move😭).
A lot of progress has been done, I have put in all the special moves like castling, en passant, and pawn promotion. And I have also added check and checkmate detection. Also I have added UI popups that appear when you promote so you can choose what piece you want as well as the game over pop up when you checkmate and a rematch button which resets the board. So foundation of my chess game GUI is complete, I have recreated the game, I just have some small tweaks that i can do later like when you click a piece while you are in check, it still shows the viable options that don’t protect your king, but it wont let you move there but it still shows it. On top of that I also want to make the pop ups happen in game without opening a new window. But my main next step is add a move history, draw detection, which can only be done with a move history because 2 ways a draw can happen is when 50 moves have passed and a piece has not been captured, or the same position has been repeated 3 times.
BIG PROGRESS, fixed possible move highlights. added a move history to the side, and added draw detection for all possible draws. Next job is hopefully being able to export and import PGN.
added a new popup system where instead of it opening a new separate window with the popup, it is more cleaner and in the app, my next step is to add a sidebar to the left and have like a bunch of different stuff there 😄
for a very small feature, this should not have taken this long. i added 2 features, the side bar in the left for future stuff, the play button on he left allows to choose the game mode when i add the feature to be able to play bots, i want to be able to choose what I want to be able to do, either play 2 player or bots, so basically the sidebar is the foundation for future features. Then is the feature that should have taken like 10 minutes, but it took me a hour and a half. It is the feature that flips the board after every turn in 2 player mode because 2 player means 2 people are using one computer to play so the board should flip. Like it used to flip the peices were upside down, liekt he images were, and i tried to add code to make it flip but it didnt work, so then I added a seperate folder with the peices edited to be flipped, but then after implemeting that, id id some stuff it swithc the pictures to that folder only when the baord is flipped, BUT THEN IT STILL REMAINED FLIPPED. So i tried so much to finally figure out I did somehtign that amde the peices flip by themselves without editing and using the different stuff, but when i tired to remove the folder andf only use one folder wiht the peices IT STOPPED WORKING, so now I have 2 folder wiht the exact same pictures of the peices and it works😭. sry if I yapped too much but I needed to vent, In the picture attached it shows the baord flipped and the sidebar as well if you wanna see the final product of the work ive done so far. but im gieunly tweaking rn😭
A LOT OF NEW STUFF. Easiest part was dark mode yay. but what took me 3 hours and was so hard to do was reseizing, what I mean is you can resize the app how ever way and it works with any screen and it always sets the board at the center, I don’t know why it took this long but I did it yay. I have attached a example of it centering it self on multiple aspect ratios.
I have successfully added Stockfish, an chess engine that is extremely powerful to my app. Took a bit of work, but now you can play against a bot! I have added setting to customize the game against Stockfish if you click it so there’s difficulty selection and the side chooser which lets you choose which side you want to play on. Hardest part was getting the code to work with Stockfish as Stockfish communicates via the Universal Chess Interface (UCI) protocol. The chess engine itself is basically a command line and you can put in the current position and it will spit out the best move in the command line. Its not very user friendly which is why chess GUI’s come in to play like mine, my code translates it from he UI to the command line and vice versa. UCI lets me to be able to use any chess engine I want as long as it uses the UCI protocol, meaning in the future if I decide to make my own chess engine, I can implement it to my app, but for now it will remain as Stockfish.
This for some reason genuinely took the life out of me. I have finally added the whole point of this chess app, PINEAPPLES! NEW BOARD COLOR, NEW UI THEME, NEW CHESS PEICES. Don’t worry, if you or any other user doesn’t like it, I have added the ability in settings to be able to switch between Light, Dark, and Pineapple Mode. But why would you not want to play with this beauty! The addition of the theme was easy, it was the settings that your able to switch themes that was the hard part. On top of that since I added new chess pieces, the entirety of the image load system in my code and organization of the resources in the source code had to be completely redone, the re-organizing for the file management was not tracked by hackatime but that took way too long. But yea, yay🎉🎉🎉
I WAS SANE BEFORE TODAY😭😭😭. I have done it, I have finished my app. That part was so easy. But compiling it into a downloadable installer has cost me so much I might as well have sold my soul. I had to build the stupid thing 7 TIMES. I had to mess around with the dependencies for so long, this took like 8 hours but most of it was just trying to fix dependencies and working in the terminal trying to debug why my installer wont work. My installer now works never the less. It is very easy to install in a user’s perspective and it automatically makes a shortcut in the desktop. Sadly this installer is only for windows, sorry Mac and Linux. I will be shipping this project soon. As you can see in the pictures attached, it created the shortcut! And it works!🎉🎉🎉
JavaScript Port After finishing Pineapple Chess in Java , which meant you need to download my app, which is Windows only, I started getting a lot of people asking if I could port this to the web. So I did, yay. From Java to JavaScript The original version of Pineapple Chess was built entirely in Java, and after finishing it, I figured porting it to JavaScript would be a pretty interesting challenge. The reason why I have to use JavaScript for anyone curious is because that is one of the best for web development. The goal was to recreate the game in JavaScript while keeping the same basic gameplay and features from the original version. This meant going through the original code and rebuilding a lot of the game’s logic in a completely different language. Rebuilding the Game One of the biggest parts of the process was getting the chess logic working again. I had to recreate things like: Piece movement Check and checkmate Special chess moves Turn switching Selecting and moving pieces Detecting when the game ends Since I already had the Java version working, I wasn’t starting completely from scratch. I could use the original game as a reference for how everything was supposed to work, which made the process a lot easier. Why JavaScript? The main reason for making the JavaScript version was accessibility. The original Java version worked, but having a JavaScript version makes it much easier to run and share. Instead of needing to set up the Java version first, the JavaScript version can be used in a much more web-friendly environment. Basically, Pineapple Chess is now significantly easier to get running. And That’s a Wrap! This is actually going to be my last devlog for this event. With the event ending in about two weeks, I wanted to squeeze in one last piece of work before it wraps up, and porting Pineapple Chess to JavaScript felt like the perfect way to finish things off. I know this devlog isn’t much of a change, and there are a lot of features in Pineapple Chess that I would love to add, it’s just I don’t have the time as I have a lot of work in school, and Stardance is ending soon, I will be working on this in the future though. It’s pretty cool seeing a project that I originally made in Java now running in JavaScript. The original version isn’t going anywhere, but now Pineapple Chess has a new form too. I will be shipping this soon, stay tuned! And also, thank you to everyone who followed along with my devlogs, gave feedback, played Pineapple Chess, or suggested things for me to work on. All of the feedback and support throughout the event has genuinely been really helpful and made working on this project a lot more fun. It’s been awesome being able to work on Pineapple Chess throughout this event, it’s not a big project like what other people make but it was a passion project for me for fun. One last update before the event ends. 🍍❤️ Thanks for reading, and I’ll see you around the next Hack Club event!
Ships:
I made a chess software called Pineapple Chess. — SUMMARY — So basically it’s like any other chess software but it is pineapple themed(don’t worry if you don’t like the way it looks you can switch themes)! With 3 themes: Light, Dark, and Pineapple! There is a 2 player mode, if you have 2 people in front of a computer, you can play against each other on 1 computer! With an optional board flip feature! You can play against bots, powered by Stockfish, you can play against bots with different difficulties. And built with Java. — LINKS — Github: https://github.com/Shadowtech1234/pineapplechess/ If you want to download, simply go to the Github repo, and go to the releases tab and download it! For more detailed instructions, it is on the Github readme. — SHOWCASE VIDEO — Showcase video is available on the very top of the readme in the Github repo. (I wasn’t able to attach the video to this Ship post) — CHALLENGES — Here are some challenges I faced. When I first started, I had to learn a brand new language that I had never used, which is Java, so it took me a while to get used to it and progress was very slow at the start. Like a lot of hours I spent on the project was not really captured by Hackatime because I was on documentation and troubleshooting a lot. A very, very big task was app resizing. What I mean is when you resize the app, for example make it fit the entire screen, the app has to make every component scale up, or scale down with a ratio to make it look good. This took me so long to implement and it works, there is just one problem, you have to click the app after you change the window for the resize to apply, so it looks weird when you resize, but you just need to click on the app to refresh it. Hopefully I can fix that in the next update of my app. Another problem was when I tried building my app to an installer to make it as easy as possible for the user. It just never worked for a while. Like every time I tried to build it would give me a problem, and after I fixed it it just gave me another. This went on 7 times. Of the times I had to rewrite a couple major parts of my app including image loading of the pieces, it worked well in developer mode(which is just clicking the run button in VS Code), but Java kind works differently when compiled into a finished product, so the images didn’t load in a couple builds. But now it works and has a user-friendly installer. The last challenge I faced was stopping. I have a lot of ideas to add to this, but I realized that if I did all of it, it would be a waste of time. This includes multi-platform support over MacOS and Linux, not only Windows. Working on this is a fun side project but I want to do something more meaningful. So I am shipping this project right now and trying to make it as clean as possible with the current features of the app, and moving on to the next project. I will still be working on this project, but I will probably come back to it after summer ends or ever later. That’s basically it. I had a lot of fun making the app, it’s not much but I will add features in the future. Thank you!
I made a chess software called Pineapple Chess, this is my second ship on this project, this ship is the major change of porting it to the web. The summary will stay mostly the same for any newcomers to the second ship. — SUMMARY — So basically it’s like any other chess software but it is pineapple themed(don’t worry if you don’t like the way it looks you can switch themes)! With 3 themes: Light, Dark, and Pineapple! There is a 2 player mode, if you have 2 people in front of a computer, you can play against each other on 1 computer! With an optional board flip feature! You can play against bots, powered by Stockfish, you can play against bots with different difficulties. And this time built with Javascript. Basically the original version was made in Java, but in the last ship, I got a lot of feedback saying I should port this to the web, so I did! — LINKS — To Play on web: Play now: https://shadowtech1234.github.io/pineapplechess/ — CHALLENGES — Here are some challenges I faced. When I first started porting this, I had to learn another brand new language that I had never used, which is JavaScript(last time was Java), so it took me a while to get used to it and progress was very slow at the start. Like a lot of hours I spent on the project was not really captured by Hackatime because I was on documentation and troubleshooting a lot. A very, very big task was efficiency. JavaScript is very, very fragile. I had a lot of problems where it would always freeze and stop, which lead to phantom moves in chess and broke it a lot. Learning to code in JavaScript with this efficiency was a bit hard because I had to make sure everything was perfect and there was no holes in it. Like for example in Java, I just coded in whatever way works, and there probably was holes and leaks in that but it wouldn’t be noticeable, in JavaScript it was the complete opposite. (This is what I noticed when I coded, I don’t know if this is factual that JavaScript is very hard when coding to make sure it’s efficient, it might just be me) Another problem was when I tried putting this on GitHub Pages, because the source for it had to be like in one folder I had to rearrange my code and rewrite some parts to make it work on GitHub Pages, The last challenge I faced was stopping. This is the same as last time. I have a lot of ideas to add to this, but I realized that if I did all of it, it would be a waste of time. This includes adding a evaluation bar, game export and import, game analysis, and maybe multiplayer. Working on this is a fun side project but I don’t have the time to work on it as much right now as I have a lot of work from school, and Stardance is ending soon anyways, so I wanted to get it as polished as possible and ship it. That’s basically it. I had a lot of fun making this, it’s not much but I will add features in the future, maybe in the next Hack Club event. Thank you!...
|
1793278458.2056851
|
1793364858.2056851
|
|
55629
|
Drawpad by @magomango | Stardance
|
magomango
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:55:01Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a drawpad using Arduino. It includes a screen and a reset button physically. There’s an intial passcode screen to protect your devious drawings and a clear button the side which functions as a lock button or a clear pass attempt. Currently there’s 4 colors and a clear button.", "repo": "https://github.com/magnolia345/Gamepad", "demo": ""}]...
|
[{"post_id": 71519, "ts": "202 [{"post_id": 71519, "ts": "2026-09-20T23:59:07Z", "hours": 3.7739, "text": "Added a simple pass You now need to enter the correct passcode to view the drawpad, and it locks by pressing the left side button. Necessary to protect any… private drawings. 👀 But then i just leaked it to everyone who sees this. Oops gotta change it"}, {"post_id": 63669, "ts": "2026-09-07T16:31:47Z", "hours": 6.2542, "text": "A cool gamepad - 1st Devlog, DRAWPAD This is the first time I’m posting hardware, and I lwk didn’t know there was an option to record build time lmao. Uh ok. And also forgot to make devlogs along the way so we got this. ~ What is this? I’m making a gamepad using Arduino, with different games on it. With Arduino Uno and a TFT LCD Display, I made this tiny drawing pad, which will eventually be one part of the overall gamepad, with 4 different colors and a clear button. For size reference, it’s about the size of an airpod pro case. ~ Plan For this drawpad specifically, I’ll add an erase button and possibly more colors! I will make a retro pingpong game and add it to the overall gameboard. More to come on that. corn…."}]...
|
Title: Drawpad by @magomango | Stardance
Devlogs: Title: Drawpad by @magomango | Stardance
Devlogs:
A cool gamepad - 1st Devlog, DRAWPAD This is the first time I’m posting hardware, and I lwk didn’t know there was an option to record build time lmao. Uh ok. And also forgot to make devlogs along the way so we got this. ~ What is this? I’m making a gamepad using Arduino, with different games on it. With Arduino Uno and a TFT LCD Display, I made this tiny drawing pad, which will eventually be one part of the overall gamepad, with 4 different colors and a clear button. For size reference, it’s about the size of an airpod pro case. ~ Plan For this drawpad specifically, I’ll add an erase button and possibly more colors! I will make a retro pingpong game and add it to the overall gameboard. More to come on that. corn….
Added a simple pass You now need to enter the correct passcode to view the drawpad, and it locks by pressing the left side button. Necessary to protect any… private drawings. 👀 But then i just leaked it to everyone who sees this. Oops gotta change it
Ships:
I made a drawpad using Arduino. It includes a screen and a reset button physically. There’s an intial passcode screen to protect your devious drawings and a clear button the side which functions as a lock button or a clear pass attempt. Currently there’s 4 colors and a clear button....
|
1793346557.0842092
|
1793432957.0842092
|
|
63966
|
tab of stars by @arsenal4eva | Stardance
|
arsenal4eva
|
1
|
1.38
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T09:54:55Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Ayy finally shipped had some deployment errors due to unfamiliarity with vite but managed to figure it out, had a fun time adding animations. (The nasa api is slow, if it says connection timeout for the daily pics just refresh)", "repo": "https://github.com/arsenal4eva/tab-of-stars", "demo": "https://arsenal4eva.github.io/tab-of-stars"}]...
|
[{"post_id": 71522, "ts": "202 [{"post_id": 71522, "ts": "2026-09-21T00:09:26Z", "hours": 0.3836, "text": "Turns out I forgot to update my README how silly also good news I fixed all my stuff."}, {"post_id": 71098, "ts": "2026-09-20T09:14:30Z", "hours": 1.0014, "text": "tab of stars: first draft complete, but having some issues with deployment. Trying to fix"}]...
|
Title: tab of stars by @arsenal4eva | Stardance
D Title: tab of stars by @arsenal4eva | Stardance
Devlogs:
tab of stars: first draft complete, but having some issues with deployment. Trying to fix
Turns out I forgot to update my README how silly also good news I fixed all my stuff.
Ships:
Ayy finally shipped had some deployment errors due to unfamiliarity with vite but managed to figure it out, had a fun time adding animations. (The nasa api is slow, if it says connection timeout for the daily pics just refresh)...
|
1792957994.96552
|
1793821994.96552
|
|
36238
|
DIY Solder Fume Extractor + Air Quality Sensor by DIY Solder Fume Extractor + Air Quality Sensor by @james-lian | Stardance...
|
james-lian
|
1
|
21.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T00:57:44Z", "hours": 21.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a small hobbyist solder fume extractor complete with an air quality sensor for soldering applications. Features include: powered by a 12V DC power supply 0.91inch OLED SSD1306 LM2596-3.3 buck converter for 3V3 supply ENS160+AHT21 sensor to detect VOCs and eCO2 ESP-01S microcontroller custom 3d-printed casing 12V desk fan which pulls solder fumes through an activated carbon filter flip flop switch circuit + MOSFET to control the fan, flyback diode to prevent MOSFET damage A challenge that pushed the project’s completion date back was a manufacturing error that occurred on my PCB. The specific buck converter I ordered from JLCPCB assembly was the LM2596-3.3, but the first batch that was sent to me had the LM2596-ADJ, which output the default ~1.3V instead of 3V3. I only found out about this after soldering on both PCB boards, which meant I had wasted time, effort, and some good usable components which I failed to desolder.", "repo": "https://github.com/James-Lian/Solder-Fume-Extractor", "demo": ""}]...
|
[{"post_id": 71524, "ts": "202 [{"post_id": 71524, "ts": "2026-09-21T00:25:53Z", "hours": 3.2508, "text": "Devlog #7: Completion The replacement PCB board from JLCPCB arrived today, and I spent a couple hours resoldering all the components. Finally, it’s done!"}, {"post_id": 59947, "ts": "2026-09-02T00:32:00Z", "hours": 5.5417, "text": "Devlog #6: Getting throttled Attempting to complete my PCBs, and I’m going through it, fr. Fried transistors + attempted fixes After receiving my PCBs, I got to work to solder my components. I had ordered PCBA for any components I didn’t have, such as inductors, the barrel jack connection, etc., but I was planning to save money by hand-soldering components I DID already have, such as transistors and my entire MCU system. This also gave me the added benefit of testing these components beforehand, and it allowed me to go through several iterations of code on the ESP-01S. The first issue I encountered with hand-soldering was with soldering the tiny, microscopic transistor holes (it was my first time doing so). The copper pads for my PN2222 breadboard transistors are super close together, and with my shaky hands, I accidentally whiffed, put too much solder, and left a solder connection between all three pads. Whoops! I eventually managed to fix it with a solder sucker. But after soldering, I decided to test the transistors with a multimeter to check if they were damaged, and both transistors were duds. I probably spent too long trying to fix it with the soldering iron and ended up frying them both. After this, I attempted to salvage the project by desoldering some of the more expensive components from the board and using it on the second backup PCBA I ordered from JLCPCB. I managed to salvage the OLED screen, but while desoldering the ESP-01S, I broke off several pins, essentially leaving the chip unusable. I decided not to salvage the bigger chips (e.g. ESP-01S, ENS160+AHT21), and decided to just reorder some components instead for the second attempt. New attempt: flip-flop switch fix + MCU not working I managed to solder all components to the second PCB cleanly, without any hiccups. However, on trying my project out, I encountered two issues: The flip flop switch turns on the fan, but it doesn’t turn it off. The 3.3V MCU system (including the OLED, ESP-01S, and ENS160+AHT21 sensor) doesn’t seem to turn on. The first issue was relatively easy to fix. Turns out, I had forgotten to add a pull-up resistor near the bottom of the flip-flop switch, and thus my steering capacitors had no path to VCC to “refill” (reset) their charge after the initial button press. I quickly soldered a pull-up resistor to VCC to fix it. The second issue stumped me for a while. I found out that I had forgotten to connect pin 4 (EN) of the ESP-01S to 3V3, so I quickly soldered a connection, but it still wasn’t working. Eventually, I took a look with my multimeter and found the problem: my 3V3 logic chips were actually running on 1.23V for some reason. It turns out, JLCPCB had sent me PCBA’s with the WRONG BUCK CONVERTER. I had ordered an TDSEMIC LM2596S-3.3, which would normally work perfectly, but JLCPCB had sent me PCBA’s with TDSEMIC LM2596S-ADJ instead. I’ll have to either contact JLCPCB for a refund, or attempt to salvage the PCB myself by modding it. I’ve burnt enough allowance on this ;-; Below: desoldering fail, attempted fixes (2), close-up of LM2596S-ADJ vs what I actually ordered ( https://www.lcsc.com/product-detail/C42421958.html?s_z=n_q_C42421958&globalKeyword=C42421958 )"}, {"post_id": 54994, "ts": "2026-08-26T12:52:38Z", "hours": 5.3325, "text": "Devlog #5 CAD Modeling With the code and PCB done, I needed a frame to hold all of the hardware together. Therefore, I spent a couple hours designing two cases in Fusion360 - one to house the PCB, and one to house the fan and the carbon filter I was using. PCB Case This PCB case is a little different than the ones I’ve designed so far. For one, the MOSFET and the capacitor that arrived on the PCB assembly I ordered from JLCPCB were much larger than I’d imagined, so I needed to design holes in my casing to accommodate for their size. Additionally, the ENS160 + AHT21 sensor needs generous access to air in order to provide accurate readings. I couldn’t encase them in the casing entirely, so I needed several unusual holes in my design so as not to interfere with the placements on my PCB board. I ended up designing a snap-fit housing with two parts - top and bottom (my first time designing a snap-fit joint!). The top part has several holes to ensure enough spacing for PCB components such as the OLED screen and keyswitch. It’s not air tight, but I really only need it to keep the PCB isolated and make things more presentable. Fan Holder Case I also needed to model a CAD case for the desktop fan to hold it and the active carbon filter in place. The fan case itself is actually a very simple design - three separate “panels” held in place with 4 screws and heat inserts."}, {"post_id": 54243, "ts": "2026-08-25T04:02:06Z", "hours": 3.2061, "text": "Devlog #4 Finalizing MCU program I used the breadboard prototype I had from Devlog #1 to finalize a working version of the ENS160 + AHT21 sensor program on the ESP-01S. I use the Adafruit libraries for these components to extract their readings, and then display it on a scrolling background on my 0.91 inch OLED SSD1306. This program is the final step before I solder the remaining components onto my PCB, which conveniently arrived as I was on vacation. It displays the following information: Line 1: Temp (deg C), Temp (deg F), Humidity (relative %) Line 2: Air Quality Index (AQI), Total Volatile Organic Compounds (ppb - TVOC), eCO2 (ppm - estimated CO2)"}, {"post_id": 31068, "ts": "2026-07-19T05:01:26Z", "hours": 1.7156, "text": "Devlog #3 - PCB design Once I had the design finalized from the schematic, it was straightforward enough to convert it into a PCB. I spent some time rearranging components to try and use as little space as possible. I had to leave some extra space for the ENS160+AHT21 air quality sensor, as it doesn’t work without consistent exposure to air."}, {"post_id": 30977, "ts": "2026-07-19T00:12:45Z", "hours": 1.6228, "text": "Devlog #2 - schematic design After confirming that the ESP-01S was a viable microcontroller for this project, I continued with designing the schematic for the PCB. Power Management ESP-01S is a 3.3V native controller, and the ENS160+AHT21 and the I2C OLED both use 3.3V logic. If I plug my 12V DC adapter directly into the ESP-01S, I’ll fry all my MCU components. Thus, I’m using an LM2596 buck converter to step-down some of the charge to 3.3V. Air Quality Sensor + MCU This section contains the sensor components and MCU. The air quality sensors and the OLED both share the same SCL/SDA I2C communication pins, which we established was possible in the previous devlog. Flip-Flop Switch + MOSFET Since the pins on the ESP-01S are being used, I decided to try exploring other options to turn my fan ON/OFF. I decided to use a flip-flop switch circuit. This allows me to persistently alter the fan’s ON/OFF state by simply clicking one pushbutton. The flip-flop switch circuit is a bistable multivibrator. It has two stable states where it can output a persistent signal (either 0 or 1), thus why we say it can represent a single bit of information. One of the states (transistors) is connected to a MOSFET (STP55NF06L), a heavy-duty voltage-controlled component which handles heavy loads much better than a simple transistor. The MOSFET helps control the fan. I attached a flyback diode in parallel to the fan. Because a fan is fundamentally wire coiled around magnets (an inductor), when the flip-flop switch suddenly turns off, the magnetic field of the fan collapses, converting back into an extremely high-voltage electric signal that, if not protected against, could instantly fry my MOSFET. The flyback diode allows the current to loop back around through the inductor until it is harmlessly dissipated as heat. Power-On Circuit On its own, the flip-flop switch’s initial state is hard to control . It’s based on chance, and small manufacturing differences between identical resistors and capacitors used in the circuit. To ensure the flip-flop switch always initializes to an OFF state, I added a tiny 10nF capacitor to one of the transistors. This makes one of the transistors slightly slower, thus ensuring the other one will always “win” the race condition. Next, I’ll be designing the PCB and programming the ESP-01S!"}, {"post_id": 30435, "ts": "2026-07-17T23:44:14Z", "hours": 0.7667, "text": "Devlog #1 - breadboard prototype I’ve been soldering a lot more recently thanks to starting a variety of electronics projects, and I’m starting to feel the need to get a fume extractor and some sort of air quality sensor to monitor my workspace. After some consideration, I decided making my own fume extractor would be a fun project idea, and also a great way to use up some electronics components that I have lying around. Components To make this project, I ordered some cheap $6 12V cooling fans meant for PC setups. For the microcontroller, I’ll be using an ESP-01S, an ENS160+AHT21 (which can measure air quality and VOCs), and an I2C 0.91 inch OLED display, all components I already have. I spent some time desoldering the OLED display from an older PCB project to reuse it in this one. Breadboarding The ESP-01S is an incredibly small controller, with only two pins (GPIO0 and GPIO2) available as digital pins (apart from RX and TX, but I plan to use those for debugging). Since both the OLED and the ENS160+AHT21 are I2C components that communicate with Serial Data (SDA) and Serial Clock (SCL), theoretically these components could share GPIO0 and GPIO2 as SDA and SCL pins if they had different device addresses. However, to be sure, I breadboarded and flashed a quick program to output the addresses and confirm that I had three separate, unique identifiers. Now that I have this information, I’m ready to design the PCB next."}]...
|
Title: DIY Solder Fume Extractor + Air Quality Sen Title: DIY Solder Fume Extractor + Air Quality Sensor by @james-lian | Stardance
Devlogs:
Devlog #1 - breadboard prototype I’ve been soldering a lot more recently thanks to starting a variety of electronics projects, and I’m starting to feel the need to get a fume extractor and some sort of air quality sensor to monitor my workspace. After some consideration, I decided making my own fume extractor would be a fun project idea, and also a great way to use up some electronics components that I have lying around. Components To make this project, I ordered some cheap $6 12V cooling fans meant for PC setups. For the microcontroller, I’ll be using an ESP-01S, an ENS160+AHT21 (which can measure air quality and VOCs), and an I2C 0.91 inch OLED display, all components I already have. I spent some time desoldering the OLED display from an older PCB project to reuse it in this one. Breadboarding The ESP-01S is an incredibly small controller, with only two pins (GPIO0 and GPIO2) available as digital pins (apart from RX and TX, but I plan to use those for debugging). Since both the OLED and the ENS160+AHT21 are I2C components that communicate with Serial Data (SDA) and Serial Clock (SCL), theoretically these components could share GPIO0 and GPIO2 as SDA and SCL pins if they had different device addresses. However, to be sure, I breadboarded and flashed a quick program to output the addresses and confirm that I had three separate, unique identifiers. Now that I have this information, I’m ready to design the PCB next.
Devlog #2 - schematic design After confirming that the ESP-01S was a viable microcontroller for this project, I continued with designing the schematic for the PCB. Power Management ESP-01S is a 3.3V native controller, and the ENS160+AHT21 and the I2C OLED both use 3.3V logic. If I plug my 12V DC adapter directly into the ESP-01S, I’ll fry all my MCU components. Thus, I’m using an LM2596 buck converter to step-down some of the charge to 3.3V. Air Quality Sensor + MCU This section contains the sensor components and MCU. The air quality sensors and the OLED both share the same SCL/SDA I2C communication pins, which we established was possible in the previous devlog. Flip-Flop Switch + MOSFET Since the pins on the ESP-01S are being used, I decided to try exploring other options to turn my fan ON/OFF. I decided to use a flip-flop switch circuit. This allows me to persistently alter the fan’s ON/OFF state by simply clicking one pushbutton. The flip-flop switch circuit is a bistable multivibrator. It has two stable states where it can output a persistent signal (either 0 or 1), thus why we say it can represent a single bit of information. One of the states (transistors) is connected to a MOSFET (STP55NF06L), a heavy-duty voltage-controlled component which handles heavy loads much better than a simple transistor. The MOSFET helps control the fan. I attached a flyback diode in parallel to the fan. Because a fan is fundamentally wire coiled around magnets (an inductor), when the flip-flop switch suddenly turns off, the magnetic field of the fan collapses, converting back into an extremely high-voltage electric signal that, if not protected against, could instantly fry my MOSFET. The flyback diode allows the current to loop back around through the inductor until it is harmlessly dissipated as heat. Power-On Circuit On its own, the flip-flop switch’s initial state is hard to control . It’s based on chance, and small manufacturing differences between identical resistors and capacitors used in the circuit. To ensure the flip-flop switch always initializes to an OFF state, I added a tiny 10nF capacitor to one of the transistors. This makes one of the transistors slightly slower, thus ensuring the other one will always “win” the race condition. Next, I’ll be designing the PCB and programming the ESP-01S!
Devlog #3 - PCB design Once I had the design finalized from the schematic, it was straightforward enough to convert it into a PCB. I spent some time rearranging components to try and use as little space as possible. I had to leave some extra space for the ENS160+AHT21 air quality sensor, as it doesn’t work without consistent exposure to air.
Devlog #4 Finalizing MCU program I used the breadboard prototype I had from Devlog #1 to finalize a working version of the ENS160 + AHT21 sensor program on the ESP-01S. I use the Adafruit libraries for these components to extract their readings, and then display it on a scrolling background on my 0.91 inch OLED SSD1306. This program is the final step before I solder the remaining components onto my PCB, which conveniently arrived as I was on vacation. It displays the following information: Line 1: Temp (deg C), Temp (deg F), Humidity (relative %) Line 2: Air Quality Index (AQI), Total Volatile Organic Compounds (ppb - TVOC), eCO2 (ppm - estimated CO2)
Devlog #5 CAD Modeling With the code and PCB done, I needed a frame to hold all of the hardware together. Therefore, I spent a couple hours designing two cases in Fusion360 - one to house the PCB, and one to house the fan and the carbon filter I was using. PCB Case This PCB case is a little different than the ones I’ve designed so far. For one, the MOSFET and the capacitor that arrived on the PCB assembly I ordered from JLCPCB were much larger than I’d imagined, so I needed to design holes in my casing to accommodate for their size. Additionally, the ENS160 + AHT21 sensor needs generous access to air in order to provide accurate readings. I couldn’t encase them in the casing entirely, so I needed several unusual holes in my design so as not to interfere with the placements on my PCB board. I ended up designing a snap-fit housing with two parts - top and bottom (my first time designing a snap-fit joint!). The top part has several holes to ensure enough spacing for PCB components such as the OLED screen and keyswitch. It’s not air tight, but I really only need it to keep the PCB isolated and make things more presentable. Fan Holder Case I also needed to model a CAD case for the desktop fan to hold it and the active carbon filter in place. The fan case itself is actually a very simple design - three separate “panels” held in place with 4 screws and heat inserts.
Devlog #6: Getting throttled Attempting to complete my PCBs, and I’m going through it, fr. Fried transistors + attempted fixes After receiving my PCBs, I got to work to solder my components. I had ordered PCBA for any components I didn’t have, such as inductors, the barrel jack connection, etc., but I was planning to save money by hand-soldering components I DID already have, such as transistors and my entire MCU system. This also gave me the added benefit of testing these components beforehand, and it allowed me to go through several iterations of code on the ESP-01S. The first issue I encountered with hand-soldering was with soldering the tiny, microscopic transistor holes (it was my first time doing so). The copper pads for my PN2222 breadboard transistors are super close together, and with my shaky hands, I accidentally whiffed, put too much solder, and left a solder connection between all three pads. Whoops! I eventually managed to fix it with a solder sucker. But after soldering, I decided to test the transistors with a multimeter to check if they were damaged, and both transistors were duds. I probably spent too long trying to fix it with the soldering iron and ended up frying them both. After this, I attempted to salvage the project by desoldering some of the more expensive components from the board and using it on the second backup PCBA I ordered from JLCPCB. I managed to salvage the OLED screen, but while desoldering the ESP-01S, I broke off several pins, essentially leaving the chip unusable. I decided not to salvage the bigger chips (e.g. ESP-01S, ENS160+AHT21), and decided to just reorder some components instead for the second attempt. New attempt: flip-flop switch fix + MCU not working I managed to solder all components to the second PCB cleanly, without any hiccups. However, on trying my project out, I encountered two issues: The flip flop switch turns on the fan, but it doesn’t turn it off. The 3.3V MCU system (including the OLED, ESP-01S, and ENS160+AHT21 sensor) doesn’t seem to turn on. The first issue was relatively easy to fix. Turns out, I had forgotten to add a pull-up resistor near the bottom of the flip-flop switch, and thus my steering capacitors had no path to VCC to “refill” (reset) their charge after the initial button press. I quickly soldered a pull-up resistor to VCC to fix it. The second issue stumped me for a while. I found out that I had forgotten to connect pin 4 (EN) of the ESP-01S to 3V3, so I quickly soldered a connection, but it still wasn’t working. Eventually, I took a look with my multimeter and found the problem: my 3V3 logic chips were actually running on 1.23V for some reason. It turns out, JLCPCB had sent me PCBA’s with the WRONG BUCK CONVERTER. I had ordered an TDSEMIC LM2596S-3.3, which would normally work perfectly, but JLCPCB had sent me PCBA’s with TDSEMIC LM2596S-ADJ instead. I’ll have to either contact JLCPCB for a refund, or attempt to salvage the PCB myself by modding it. I’ve burnt enough allowance on this ;-; Below: desoldering fail, attempted fixes (2), close-up of LM2596S-ADJ vs what I actually ordered ( https://www.lcsc.com/product-detail/C42421958.html?s_z=n_q_C42421958&globalKeyword=C42421958 )
Devlog #7: Completion The replacement PCB board from JLCPCB arrived today, and I spent a couple hours resoldering all the components. Finally, it’s done!
Ships:
I made a small hobbyist solder fume extractor complete with an air quality sensor for soldering applications. Features include: powered by a 12V DC power supply 0.91inch OLED SSD1306 LM2596-3.3 buck converter for 3V3 supply ENS160+AHT21 sensor to detect VOCs and eCO2 ESP-01S microcontroller custom 3d-printed casing 12V desk fan which pulls solder fumes through an activated carbon filter flip flop switch circuit + MOSFET to control the fan, flyback diode to prevent MOSFET damage A challenge that pushed the project’s completion date back was a manufacturing error that occurred on my PCB. The specific buck converter I ordered from JLCPCB assembly was the LM2596-3.3, but the first batch that was sent to me had the LM2596-ADJ, which output the default ~1.3V instead of 3V3. I only found out about this after soldering on both PCB boards, which meant I had wasted time, effort, and some good usable components which I failed to desolder....
|
1793350164.4113595
|
1793436564.4113595
|
|
3071
|
Planet Shalom by @shalabdulai | Stardance
|
shalabdulai
|
0
|
44.0
|
0
|
[]
|
[{"post_id": 71525, "ts": "202 [{"post_id": 71525, "ts": "2026-09-21T00:27:00Z", "hours": 5.3572, "text": "I’M FINALLY DONE WITH MY WEBOS. School came along, so I was busy and couldn’t commit enough hours. I had so many app ideas for my OS, but I couldn’t execute them properly because of my lack of coding knowledge (plus I didn’t want to rely on Claude code too much). So here’s my finisehd project. I’m super excited to continue working on other things now. I made a Photbooth app, but I didn’t end up keeping it in because I didn’t like the aesthetic feel of it."}, {"post_id": 35414, "ts": "2026-07-26T20:05:26Z", "hours": 10.6128, "text": "I’ve attached my app windows so you see that progress has been made. So far, we have 5 apps but only 4 of them have some content. I still have to debug my Contact Me app, as it actually doesn’t send out an email. For next time, here’s my to-do list: 1. Debug Contact Me, 2. Work on my game mode 3. Add some of my projects to Archive"}, {"post_id": 29377, "ts": "2026-07-16T09:15:32Z", "hours": 7.8853, "text": "Lots of progress, guys! We’ve made 4 apps - The Archive, Photobooth, Gallery and Links. I have so many new ideas, it’ overwhelming - I’m thinking of adding a game mode, a contact app, making my windows resizeable, adding some sound effects/ background music. Also, I’m really excited to continue making my Photobooth app - it will be an app that creates a little photo id to show that people have visited my “planet”. For tomorrow: Make the app icons, and finish the content for the apps. Bye for now, guys. I wish you all the best in your endeavours."}, {"post_id": 25775, "ts": "2026-07-10T07:17:09Z", "hours": 4.4131, "text": "I’m proud of myself for making it this far. I’m almost done with this mission, and I’ve created my first app icon. (Also, I fixed my previous bug). As usual, there are a few problems. First, when I select my app icon, it doesn’t deselect immediately. Second, the my app window hides behind my home window - so it isn’t actually visible. Ugh, I’m lowkey fed up with fixing these annoying bugs."}, {"post_id": 18131, "ts": "2026-06-29T04:30:13Z", "hours": 8.1547, "text": "We’ve made some progress! - my welcome window is now draggable, and closeable. However, there are a few bugs. For instance, the welcome window breaks after reopening it (as shown in this video). For tomorrow, I plan to fix that bug, customize my window by adding apps and other cool features. Bye for now!"}, {"post_id": 16825, "ts": "2026-06-27T10:02:09Z", "hours": 7.575, "text": "You can now read the current time from my webpage. Notice how I’m working on this at 2 am! Anyways, today, I added the top bar and the time feature. For tomorrow, I’m going to make a Window graphic design, and make it draggable, closable and openable. Bye for now!"}]...
|
Title: Planet Shalom by @shalabdulai | Stardance
Title: Planet Shalom by @shalabdulai | Stardance
Devlogs:
You can now read the current time from my webpage. Notice how I’m working on this at 2 am! Anyways, today, I added the top bar and the time feature. For tomorrow, I’m going to make a Window graphic design, and make it draggable, closable and openable. Bye for now!
We’ve made some progress! - my welcome window is now draggable, and closeable. However, there are a few bugs. For instance, the welcome window breaks after reopening it (as shown in this video). For tomorrow, I plan to fix that bug, customize my window by adding apps and other cool features. Bye for now!
I’m proud of myself for making it this far. I’m almost done with this mission, and I’ve created my first app icon. (Also, I fixed my previous bug). As usual, there are a few problems. First, when I select my app icon, it doesn’t deselect immediately. Second, the my app window hides behind my home window - so it isn’t actually visible. Ugh, I’m lowkey fed up with fixing these annoying bugs.
Lots of progress, guys! We’ve made 4 apps - The Archive, Photobooth, Gallery and Links. I have so many new ideas, it’ overwhelming - I’m thinking of adding a game mode, a contact app, making my windows resizeable, adding some sound effects/ background music. Also, I’m really excited to continue making my Photobooth app - it will be an app that creates a little photo id to show that people have visited my “planet”. For tomorrow: Make the app icons, and finish the content for the apps. Bye for now, guys. I wish you all the best in your endeavours.
I’ve attached my app windows so you see that progress has been made. So far, we have 5 apps but only 4 of them have some content. I still have to debug my Contact Me app, as it actually doesn’t send out an email. For next time, here’s my to-do list: 1. Debug Contact Me, 2. Work on my game mode 3. Add some of my projects to Archive
I’M FINALLY DONE WITH MY WEBOS. School came along, so I was busy and couldn’t commit enough hours. I had so many app ideas for my OS, but I couldn’t execute them properly because of my lack of coding knowledge (plus I didn’t want to rely on Claude code too much). So here’s my finisehd project. I’m super excited to continue working on other things now. I made a Photbooth app, but I didn’t end up keeping it in because I didn’t like the aesthetic feel of it....
|
1793379297.2617874
|
1793984097.2617874
|
|
6985
|
Model United Nations - A Software Approach by @Sea Model United Nations - A Software Approach by @SeanBlitz | Stardance...
|
SeanBlitz
|
0
|
15.27
|
0
|
[]
|
[{"post_id": 7153, "ts": "2026 [{"post_id": 7153, "ts": "2026-06-11T23:00:33Z", "hours": 2.8156, "text": "Fully debugged my Command Line Interface after moving everything into OOP. Change twin logic variable call (it was supposed to call list index 0, but called 1) to solve linking issue for double delegate committees. Fix relative imports by adding “.” to my init .py files. During this I learned a lot about how the python interpreter views files and locations. Also separated responsibilities by splitting functions. Now, my libraries are no longer aware of each other, to allow for easier debug and changes later. I will need to take out my business logic from the infrastructure and put it with my main files, to further separate responsibilties."}, {"post_id": 6470, "ts": "2026-06-10T21:42:22Z", "hours": 2.8264, "text": "Moved everything into Object Oriented Programming Classes This included Gmail, Sheets, and Drive Functions. I will probably do the same for the other folders soon, but they are not connected. I have yet to fully debug the command line interface, especially after these changes. Will do that soon."}, {"post_id": 5979, "ts": "2026-06-10T00:56:27Z", "hours": 1.085, "text": "Continued debugging my command line interface and adding some necessary business features. Previously a new committee was only checked against the main list of names. Now, it is split by type of committee to prevent switching between types. Add ability to print suggestions to user if committee selections are double, advising them to change the other delegate in the same committee if needed. Fix twin logic error and place code into more organized functions. With this part of the debugging, I began to understand the importance of splitting all code into functions, and grouping those functions into classes. Previously, all my code was a rough draft minimum viable product designed to just get the job done. Now, with the need to edit things in the future and share with other developers in my team, I began to sort things into functions (which turn out to be amazingly useful and easy to debug). In the next update I might begin writing classes."}, {"post_id": 5726, "ts": "2026-06-09T17:00:07Z", "hours": 2.3719, "text": "Began debugging my command line interface code. Discover that the columns which referred to my Google Sheet were incorrect; fixed string in code. Bold print statements in terminal for readability, and fixed ANSI escape codes to properly clear the terminal. Fix iterator problems. Previously, there did not exist a global tracker variable, and since i reset after every while loop, the number stored to finalassignments dictionary was incorrect. Fix infinite looping in the while loop for edge cases where none of the conditions are satisfied. Now with a proper error statement and ending of loop. Added a continue statement to prevent code from pushing before the questionary interface has finished receiving all inputs. Most of these errors were small bugs in the system, not major conceptual issues. However, I did learn how to use the VSCode debugging feature while going through this, as it is a program that is easy to set breakpoints in and analyze variables."}, {"post_id": 5249, "ts": "2026-06-08T23:15:54Z", "hours": 4.1458, "text": "Finished making the Command Line Interface. It checks for availability whenever the user inputs assignments in the questionary interface using sets. Stores all assignments in a dictionary, which is then converted into a cell map after the user finished all assignments. This cell map accurately recreates the cells that were pulled, except that used assignments now get blank cells. School assignments go into a separate sheet, where they are listed as “country name (committee name)”. During this process I learned a lot about safely converting data between types, i.e. from dictionaries to lists to sets, and their respective advantages for later processing. For example, sets are great with the “in” keyword, which gives O(1) time complexity, an important feature when I expect datasets with 800+ values. I also learned some intuitive strategies on improving code efficiency. Instead of writing multiple for loops, using tuples to do multiple jobs within one loop is usually much more efficient. Converting the dictionary that contains {(“committee”, “country_name”): “sheet_coordinate”} into a dictionary with the sheet coordinate as the key and the value as committee and country name took some thought and studying into dictionary rules in python. The function add_assignments_and_map_cells() took a lot of editing. What started as a simple questionary function that returns user inputs in a dictionary evolved into a full input-checker and cell mapper. I originally wanted the latter process to happen in the main code, but I discovered that the function had all necessary variables, and that it would be cleaner to simply pass back all the completed variables. Also decided that pushes are inherently untrustworthy, because my data goes from Google Sheets into a dictionary into a cell map, and finally back to Google Sheets. Multiple edge cases and errors may be possible during this time. Implemented a basic checker at the very end to confirm against the counta() function built into the sheet. Screenshot is not all; have yet to test the code for errors. Very excited to see this work! It used to take dozens of hours to complete, with plenty of human errors (especially double assignments), but with the loop pushing final values after every school and only operating within the list of possible assignments, many human errors are eliminated."}, {"post_id": 1953, "ts": "2026-06-04T06:19:55Z", "hours": 0.7656, "text": "Added an Inquirer to confirm committee auto-assignments and add assignments manually."}, {"post_id": 1932, "ts": "2026-06-04T05:29:00Z", "hours": 1.2558, "text": "Finished committee auto-selection greedy algorithm, accounting for double delegation committees and committee types."}]...
|
Title: Model United Nations - A Software Approach Title: Model United Nations - A Software Approach by @SeanBlitz | Stardance
Devlogs:
Finished committee auto-selection greedy algorithm, accounting for double delegation committees and committee types.
Added an Inquirer to confirm committee auto-assignments and add assignments manually.
Finished making the Command Line Interface. It checks for availability whenever the user inputs assignments in the questionary interface using sets. Stores all assignments in a dictionary, which is then converted into a cell map after the user finished all assignments. This cell map accurately recreates the cells that were pulled, except that used assignments now get blank cells. School assignments go into a separate sheet, where they are listed as “country name (committee name)”. During this process I learned a lot about safely converting data between types, i.e. from dictionaries to lists to sets, and their respective advantages for later processing. For example, sets are great with the “in” keyword, which gives O(1) time complexity, an important feature when I expect datasets with 800+ values. I also learned some intuitive strategies on improving code efficiency. Instead of writing multiple for loops, using tuples to do multiple jobs within one loop is usually much more efficient. Converting the dictionary that contains {(“committee”, “country_name”): “sheet_coordinate”} into a dictionary with the sheet coordinate as the key and the value as committee and country name took some thought and studying into dictionary rules in python. The function add_assignments_and_map_cells() took a lot of editing. What started as a simple questionary function that returns user inputs in a dictionary evolved into a full input-checker and cell mapper. I originally wanted the latter process to happen in the main code, but I discovered that the function had all necessary variables, and that it would be cleaner to simply pass back all the completed variables. Also decided that pushes are inherently untrustworthy, because my data goes from Google Sheets into a dictionary into a cell map, and finally back to Google Sheets. Multiple edge cases and errors may be possible during this time. Implemented a basic checker at the very end to confirm against the counta() function built into the sheet. Screenshot is not all; have yet to test the code for errors. Very excited to see this work! It used to take dozens of hours to complete, with plenty of human errors (especially double assignments), but with the loop pushing final values after every school and only operating within the list of possible assignments, many human errors are eliminated.
Began debugging my command line interface code. Discover that the columns which referred to my Google Sheet were incorrect; fixed string in code. Bold print statements in terminal for readability, and fixed ANSI escape codes to properly clear the terminal. Fix iterator problems. Previously, there did not exist a global tracker variable, and since i reset after every while loop, the number stored to finalassignments dictionary was incorrect. Fix infinite looping in the while loop for edge cases where none of the conditions are satisfied. Now with a proper error statement and ending of loop. Added a continue statement to prevent code from pushing before the questionary interface has finished receiving all inputs. Most of these errors were small bugs in the system, not major conceptual issues. However, I did learn how to use the VSCode debugging feature while going through this, as it is a program that is easy to set breakpoints in and analyze variables.
Continued debugging my command line interface and adding some necessary business features. Previously a new committee was only checked against the main list of names. Now, it is split by type of committee to prevent switching between types. Add ability to print suggestions to user if committee selections are double, advising them to change the other delegate in the same committee if needed. Fix twin logic error and place code into more organized functions. With this part of the debugging, I began to understand the importance of splitting all code into functions, and grouping those functions into classes. Previously, all my code was a rough draft minimum viable product designed to just get the job done. Now, with the need to edit things in the future and share with other developers in my team, I began to sort things into functions (which turn out to be amazingly useful and easy to debug). In the next update I might begin writing classes.
Moved everything into Object Oriented Programming Classes This included Gmail, Sheets, and Drive Functions. I will probably do the same for the other folders soon, but they are not connected. I have yet to fully debug the command line interface, especially after these changes. Will do that soon.
Fully debugged my Command Line Interface after moving everything into OOP. Change twin logic variable call (it was supposed to call list index 0, but called 1) to solve linking issue for double delegate committees. Fix relative imports by adding “.” to my init .py files. During this I learned a lot about how the python interpreter views files and locations. Also separated responsibilities by splitting functions. Now, my libraries are no longer aware of each other, to allow for easier debug and changes later. I will need to take out my business logic from the infrastructure and put it with my main files, to further separate responsibilties....
|
1793364725.7625513
|
1793969525.7625513
|
|
52596
|
My first slack bot! - Blackreaper by @DaviSilva | My first slack bot! - Blackreaper by @DaviSilva | Stardance...
|
DaviSilva
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:02:51Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What I built I made a Slack bot called BlackReaper. It has a few different commands like ping, help, cat facts, jokes, dice, coin flip, and random dog photos. Some of them also use APIs, like the cat fact, joke, and dog photo commands. I also added the three extra commands that were required for the challenge. They are all in my code, but for some reason the three new ones aren’t showing up in Slack. I’m not really sure what happened with the configuration, but I’m still shipping the project since the commands are already in the code. If someone knows what I did wrong or can help me get them working in Slack, I’d really appreciate it. What was challenging I started this project basically knowing nothing about JavaScript, so there was definitely a lot to figure out. The setup was probably the hardest part for me, especially VS Code and the Nest configuration. I ran into a bunch of problems and had to use AI to help me figure some of them out, but I also learned from fixing those problems. What I’m proud of I’m really proud that I actually finished the project. This is my first project on StarDance, and I started it without really knowing JavaScript or how to make a bot. Seeing everything actually work after all the problems I had was really cool. What people should know I put a lot of time and effort into this project and made it with a lot of care. The main commands are working, and the three extra commands are already in the code. The only thing I’m still trying to figure out is why those new commands aren’t showing up in Slack. If someone can help me fix that, I’d really appreciate it!", "repo": "https://github.com/X-BlackScythe/BlackReaper---First-Slack-Bot-", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 71534, "ts": "202 [{"post_id": 71534, "ts": "2026-09-21T00:54:33Z", "hours": 0.35, "text": "So for this new version I added 4 new commands, the joke example from the mission guide, roll a dice, flip a coin and dog photo, Idk if I have to restart something or what but on the VsCode the code for the commands is there but when I try using them on Slack they do not appear…. I’ll ship the project because IDK what to do now, But I did my work with everything that I have :)"}, {"post_id": 62372, "ts": "2026-09-05T18:18:48Z", "hours": 0.3969, "text": "Almost done! - First Slack Bot. Today I made my nest account and got to put my bot (BlackReaper) to work 24/7, I had some problems along the way and had the help of AI to explain it to me, the biggest problem that I had was with the name Index.js hahahaha, I was trying to run it by writing “ node index.js” and it wasn’t working because I had to write “ node Index.js” with the big “i”, I spent 5 minutes just to notice this. I want to add at least 1 more command with API before finishing the project. I also added in the GitHub repository the “README.ms”. Thanks for reading!"}, {"post_id": 54788, "ts": "2026-08-25T22:04:23Z", "hours": 0.4278, "text": "(DevLog #01) First Slack Bot - Blackreaper Until yesterday I didn’t know anything about a slack bot, but today I got to make one and put it to work! I named it Blackreaper, it main purpose its to respond commands in the channel #bot-spam on (Hack Club - Slack) , it has the commands /blackreaper-ping /blackreaper-help and /blackreaper-catfacts ( The last one use an API to get the facts!), I got some problems with VsCode Git and NodeJS but nothing seriously just some configurations, I want to add more commands that uses API’s in the future. That is my first DevLog! Thanks!"}]...
|
Title: My first slack bot! - Blackreaper by @DaviS Title: My first slack bot! - Blackreaper by @DaviSilva | Stardance
Devlogs:
(DevLog #01) First Slack Bot - Blackreaper Until yesterday I didn’t know anything about a slack bot, but today I got to make one and put it to work! I named it Blackreaper, it main purpose its to respond commands in the channel #bot-spam on (Hack Club - Slack) , it has the commands /blackreaper-ping /blackreaper-help and /blackreaper-catfacts ( The last one use an API to get the facts!), I got some problems with VsCode Git and NodeJS but nothing seriously just some configurations, I want to add more commands that uses API’s in the future. That is my first DevLog! Thanks!
Almost done! - First Slack Bot. Today I made my nest account and got to put my bot (BlackReaper) to work 24/7, I had some problems along the way and had the help of AI to explain it to me, the biggest problem that I had was with the name Index.js hahahaha, I was trying to run it by writing “ node index.js” and it wasn’t working because I had to write “ node Index.js” with the big “i”, I spent 5 minutes just to notice this. I want to add at least 1 more command with API before finishing the project. I also added in the GitHub repository the “README.ms”. Thanks for reading!
So for this new version I added 4 new commands, the joke example from the mission guide, roll a dice, flip a coin and dog photo, Idk if I have to restart something or what but on the VsCode the code for the commands is there but when I try using them on Slack they do not appear…. I’ll ship the project because IDK what to do now, But I did my work with everything that I have :)
Ships:
What I built I made a Slack bot called BlackReaper. It has a few different commands like ping, help, cat facts, jokes, dice, coin flip, and random dog photos. Some of them also use APIs, like the cat fact, joke, and dog photo commands. I also added the three extra commands that were required for the challenge. They are all in my code, but for some reason the three new ones aren’t showing up in Slack. I’m not really sure what happened with the configuration, but I’m still shipping the project since the commands are already in the code. If someone knows what I did wrong or can help me get them working in Slack, I’d really appreciate it. What was challenging I started this project basically knowing nothing about JavaScript, so there was definitely a lot to figure out. The setup was probably the hardest part for me, especially VS Code and the Nest configuration. I ran into a bunch of problems and had to use AI to help me figure some of them out, but I also learned from fixing those problems. What I’m proud of I’m really proud that I actually finished the project. This is my first project on StarDance, and I started it without really knowing JavaScript or how to make a bot. Seeing everything actually work after all the problems I had was really cool. What people should know I put a lot of time and effort into this project and made it with a lot of care. The main commands are working, and the three extra commands are already in the code. The only thing I’m still trying to figure out is why those new commands aren’t showing up in Slack. If someone can help me fix that, I’d really appreciate it!...
|
1793350192.636607
|
1793436592.636607
|
|
62003
|
Rune of Foot by @NotIdhant | Stardance
|
NotIdhant
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:12:15Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Rune of Foot was a rollercoaster for me. Now that Chapter 1 is finished, I guess I can finally have my sleep hehe - but really though, it was difficult because it was my first ever time coding a big Python project like this. So I’m exceptionally proud. Check it out on my Github page, just download the ZIP and you’re good! Thank you for all the support!", "repo": "https://github.com/NotIdhant/Rune-of-Foot/", "demo": "https://humble-space-halibut-qv4qvgq7rww4fx4xw.github.dev/"}]...
|
[{"post_id": 71538, "ts": "202 [{"post_id": 71538, "ts": "2026-09-21T01:07:58Z", "hours": 2.4781, "text": "FINISHED AND READY TO SHIP BABY - chapter 1, the village and the forest, are finished, with save files"}, {"post_id": 71348, "ts": "2026-09-20T17:53:30Z", "hours": 3.0286, "text": "yeep its been a while since i did my last devlog, and i’ve worked rlly hard! so here’s some updates for rUnE oF fOoTtTtTtTt so first of all, i finished the first level of the game <3 the forest is complete! so is the Tax Collector™! you’ll meet him later hehe - also i completed a save file system so that you don’t permadie after an hour of grinding and lose all your progress. also finished the creepy place called the pocket. so yea, thats what i did, cya when its shipped !!!"}, {"post_id": 70339, "ts": "2026-09-19T00:01:01Z", "hours": 0.4728, "text": "Hey yall !! Chances are you have no idea what my game is because I have literally one follower :( but now’s your time to stop scrolling and uh be enlightened i guess !! 😅 so Rune of Foot is a text-based Python RPG. contrary to popular belief its not just a wall of if statements! theres a whole lotta meat to it (im so sorry) and you should check it out by clickin on my profile! so rn i worked on some new enemies and debugged my spawning mechanic! so so excited to ship this, it’ll be my first ever project! so cya !!"}, {"post_id": 70307, "ts": "2026-09-18T22:11:16Z", "hours": 0.3983, "text": "hehe, doors fans might recognize this, but I added a rift-like feature to my game (image below from Doors, not my game lmao) called the Pocket. you can store items inside and they get saved upon death! pretty neat, right?"}, {"post_id": 69917, "ts": "2026-09-18T02:07:51Z", "hours": 0.4153, "text": "my new fav enemy in my game: Rock, Paper, Scissors! he sounds very simple but is actually very deadly. His top attack does up to 20 damage (almost 50% of your health when you first have the chance to meet him), and his lesser attacks do really. really. really bad status effects. imagine the wither effect in minecraft but at the same time ur bleeding out :I so yea, i rlly enjoy fighting him, it is strategic because you need to defend so that you dont bleed out or get demolished by rock attacks but also attack because he doesnt have very much health!"}, {"post_id": 69894, "ts": "2026-09-18T00:57:54Z", "hours": 0.3575, "text": "in love with my player.attack() function <3. a good game developer would prob look down on me and say “gosh this kid is stupid, he’s so proud of making an absurd text based game in python.” but nah, i’ve evolved from those stupid if statement choose-your-own-adventure spirals (rune of foot is so much more than that, check my project’s repository) and i’m genuinely so happy rn so let me be plz :DDDD"}, {"post_id": 69869, "ts": "2026-09-17T23:26:09Z", "hours": 0.7617, "text": "The Hackatime thing isnt working :( i have 2 hours 22 minutes but it shows 45 minutes only. But anyways Devlog 1: Crap I’ve come far, finished 75% of brawling mechanics (I have 3 current actions, attack, defend, and check, planning to add a use inventory action next, no I’m not copying Undertale harrumph ). Also finished the status effects system, just gotta - uh - add status effects 😅 Also got the first enemy (Frail Psychopath) down, it’s a very easy but nice introductory brawl. So yea, hopefully Hackatime fixes itself soon and cya in devlog 2!"}]...
|
Title: Rune of Foot by @NotIdhant | Stardance
Dev Title: Rune of Foot by @NotIdhant | Stardance
Devlogs:
The Hackatime thing isnt working :( i have 2 hours 22 minutes but it shows 45 minutes only. But anyways Devlog 1: Crap I’ve come far, finished 75% of brawling mechanics (I have 3 current actions, attack, defend, and check, planning to add a use inventory action next, no I’m not copying Undertale harrumph ). Also finished the status effects system, just gotta - uh - add status effects 😅 Also got the first enemy (Frail Psychopath) down, it’s a very easy but nice introductory brawl. So yea, hopefully Hackatime fixes itself soon and cya in devlog 2!
in love with my player.attack() function <3. a good game developer would prob look down on me and say “gosh this kid is stupid, he’s so proud of making an absurd text based game in python.” but nah, i’ve evolved from those stupid if statement choose-your-own-adventure spirals (rune of foot is so much more than that, check my project’s repository) and i’m genuinely so happy rn so let me be plz :DDDD
my new fav enemy in my game: Rock, Paper, Scissors! he sounds very simple but is actually very deadly. His top attack does up to 20 damage (almost 50% of your health when you first have the chance to meet him), and his lesser attacks do really. really. really bad status effects. imagine the wither effect in minecraft but at the same time ur bleeding out :I so yea, i rlly enjoy fighting him, it is strategic because you need to defend so that you dont bleed out or get demolished by rock attacks but also attack because he doesnt have very much health!
hehe, doors fans might recognize this, but I added a rift-like feature to my game (image below from Doors, not my game lmao) called the Pocket. you can store items inside and they get saved upon death! pretty neat, right?
Hey yall !! Chances are you have no idea what my game is because I have literally one follower :( but now’s your time to stop scrolling and uh be enlightened i guess !! 😅 so Rune of Foot is a text-based Python RPG. contrary to popular belief its not just a wall of if statements! theres a whole lotta meat to it (im so sorry) and you should check it out by clickin on my profile! so rn i worked on some new enemies and debugged my spawning mechanic! so so excited to ship this, it’ll be my first ever project! so cya !!
yeep its been a while since i did my last devlog, and i’ve worked rlly hard! so here’s some updates for rUnE oF fOoTtTtTtTt so first of all, i finished the first level of the game <3 the forest is complete! so is the Tax Collector™! you’ll meet him later hehe - also i completed a save file system so that you don’t permadie after an hour of grinding and lose all your progress. also finished the creepy place called the pocket. so yea, thats what i did, cya when its shipped !!!
FINISHED AND READY TO SHIP BABY - chapter 1, the village and the forest, are finished, with save files
Ships:
Rune of Foot was a rollercoaster for me. Now that Chapter 1 is finished, I guess I can finally have my sleep hehe - but really though, it was difficult because it was my first ever time coding a big Python project like this. So I’m exceptionally proud. Check it out on my Github page, just download the ZIP and you’re good! Thank you for all the support!...
|
1793209882.0744336
|
1793296282.0744336
|
|
62717
|
GMM_Tab by @GMM | Stardance
|
GMM
|
2
|
11.0
|
5
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:17:40Z", "hours": 8.0, "multiplier": 1.18, "payout": 5, "blessing": "neutral", "text": "I just made a site that updates the nasa image daily (and that was the most difficult part). In it, I added a calculator, a search bar and a button I thought would be cool, just to fill in the blank. I am very proud that I used my creativity in it.", "repo": "https://github.com/GuilhermeMartins-GMM/GMM_Tab", "demo": "https://guilhermemartins-gmm.github.io/GMM_Tab/"}, {"ship_num": 2, "ts": "2026-09-16T16:40:00Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a searching site, I tried to put the NASA thing and a calculator, but, even though it worked in my tablet, when I uploaded, it didn’t. So, IT’S NOT COMPLETE. I’m going to make them work. But, by now, I think the result is doing great.", "repo": "https://github.com/GuilhermeMartins-GMM/GMM_Tab", "demo": "https://guilhermemartins-gmm.github.io/GMM_Tab/"}]...
|
[{"post_id": 71541, "ts": "202 [{"post_id": 71541, "ts": "2026-09-21T01:13:40Z", "hours": 1.5689, "text": "I added an interactive button (replacing the snake game that was AI made)"}, {"post_id": 70805, "ts": "2026-09-19T19:49:05Z", "hours": 1.3311, "text": "I re-wrote the code, removed the AI snake game, and updated the readme."}, {"post_id": 70407, "ts": "2026-09-19T03:56:43Z", "hours": 0.2769, "text": "I added mouse spotlight."}, {"post_id": 70400, "ts": "2026-09-19T03:26:23Z", "hours": 2.6092, "text": "Uptated the readme and re-wrote the code."}, {"post_id": 69401, "ts": "2026-09-16T23:53:46Z", "hours": 1.8861, "text": "Now it can be used in phones too."}, {"post_id": 69218, "ts": "2026-09-16T16:35:30Z", "hours": 3.1586, "text": "I am trying to add a calculator, but the site is looking great."}]...
|
Title: GMM_Tab by @GMM | Stardance
Devlogs:
I am Title: GMM_Tab by @GMM | Stardance
Devlogs:
I am trying to add a calculator, but the site is looking great.
Now it can be used in phones too.
Uptated the readme and re-wrote the code.
I added mouse spotlight.
I re-wrote the code, removed the AI snake game, and updated the readme.
I added an interactive button (replacing the snake game that was AI made)
Ships:
I made a searching site, I tried to put the NASA thing and a calculator, but, even though it worked in my tablet, when I uploaded, it didn’t. So, IT’S NOT COMPLETE. I’m going to make them work. But, by now, I think the result is doing great.
I just made a site that updates the nasa image daily (and that was the most difficult part). In it, I added a calculator, a search bar and a button I thought would be cool, just to fill in the blank. I am very proud that I used my creativity in it....
|
1793210079.7435517
|
1793296479.7435517
|
|
43242
|
mtg tool by @flyingfish | Stardance
|
flyingfish
|
1
|
46.0
|
400
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:16:08Z", "hours": 46.0, "multiplier": 8.6, "payout": 400, "blessing": "neutral", "text": "i made a tool for making custom mtg cards in bulk i dont aurally know anything about mtg my brother just wanted me to make this", "repo": "https://github.com/dinotiger01/frfr", "demo": "https://github.com/dinotiger01/frfr/releases/tag/idk"}]...
|
[{"post_id": 71543, "ts": "202 [{"post_id": 71543, "ts": "2026-09-21T01:14:49Z", "hours": 1.4325, "text": "just some last minute repo fixes"}, {"post_id": 44887, "ts": "2026-08-10T22:42:40Z", "hours": 9.2114, "text": "it works on windows"}, {"post_id": 43638, "ts": "2026-08-09T00:43:02Z", "hours": 8.2292, "text": "i have spent the past 4 HOURS trying to fix a bug and nothing works(i am going to try to ship by the end of today if i can fix this stupid bug)"}, {"post_id": 42311, "ts": "2026-08-06T23:27:47Z", "hours": 8.6642, "text": "it can conect to an api now"}, {"post_id": 41448, "ts": "2026-08-05T17:41:26Z", "hours": 9.0586, "text": "it can export now"}, {"post_id": 39896, "ts": "2026-08-03T05:48:25Z", "hours": 4.0275, "text": "its too late in the day for this jusdt work for like 10 hrs today"}, {"post_id": 39784, "ts": "2026-08-02T23:52:07Z", "hours": 5.8589, "text": "ykyk"}]...
|
Title: mtg tool by @flyingfish | Stardance
Devlog Title: mtg tool by @flyingfish | Stardance
Devlogs:
ykyk
its too late in the day for this jusdt work for like 10 hrs today
it can export now
it can conect to an api now
i have spent the past 4 HOURS trying to fix a bug and nothing works(i am going to try to ship by the end of today if i can fix this stupid bug)
it works on windows
just some last minute repo fixes
Ships:
i made a tool for making custom mtg cards in bulk i dont aurally know anything about mtg my brother just wanted me to make this...
|
1793339483.68441
|
1793425883.68441
|
|
9616
|
revo by @ratmuds | Stardance
|
ratmuds
|
1
|
134.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:26:40Z", "hours": 134.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I wanted to make a robot arm that punched above it’s weight. The price is pretty similar to smaller robot arms on Amazon that may not include cameras, which would need to be purchased seperately. The way this is achieved by using cheap servos, servos that are 100% NOT made for this purpose, and adding most of the functionality of a smart servo back by using a TON of PCBs. It was a lot of soldering. I just wanted to make something that had more features for less money :) This project was SUPER difficult for me, and pushed my limits a bit. The amount of tolerences especially for the stupid custom motor case and magnet and PCBs and the crazy mainboard and generally having everything play well together took so long, I had many days where I quit frustrated. I’m very happy about how it turned out though, even seeing the lots of shortcomings it has.", "repo": "https://github.com/ratmuds/revo", "demo": ""}]...
|
[{"post_id": 71545, "ts": "202 [{"post_id": 71545, "ts": "2026-09-21T01:17:14Z", "hours": 1.7336, "text": "Finish Project Up :) I wrote a ton in the repository im tired :( https://github.com/ratmuds/revo"}, {"post_id": 71258, "ts": "2026-09-20T15:14:42Z", "hours": 3.1572, "text": "Setup VR and Gripper, Robot Rapidly Disassembles my robot arm is broken I setup VR and fixed some more IK when I go into VR and try playing around, it instantly flies out and throws itself off the table and breaks into pieces. This is going to be fun to fix."}, {"post_id": 70809, "ts": "2026-09-19T19:55:52Z", "hours": 3.8861, "text": "Integration Hell I’ve just been like trying to get this stupid project to work. Screws keep falling out, the IK keeps failing, things are hitting each other and wires are being strained I’m in integration hell. Everything works fine on its own, but combining everything is horrible. I’ve been reassembling and trying to fix this stupid thing for so long. Anyway I’ve went through a few more revisions of some CAD and some more refinements and the gripper and camera is now mounted but this is just incredibly incredibly annoying :(((("}, {"post_id": 69881, "ts": "2026-09-18T00:05:17Z", "hours": 3.8311, "text": "Fixed Broken Magnet, Redoing all IK joint data and offsets, Stereo depth test An encoder magnet broke off, so I had to disassemble and reassemble the top half of the arm to get to the encoder magnet and glue it back on. I also started properly punching in the IK joint data, before it was mostly just random data but now almost all of the data is mostly correct, and I’m waiting for a print to complete that will flip a motor to finally get the IK simulation matching with real life and have the IK endpoint be tracked at the tip of the gripper. It was a lot of trial and error and measurements. I also started experimenting with adding depth estimation. Eventually this could add collision avoidance IK pathfinding, which would be really cool but it’s just a pointcloud in the render right now. But the robot arm is slowly coming together finally! I’ll be able to grab something soon I think."}, {"post_id": 68903, "ts": "2026-09-16T00:31:34Z", "hours": 2.8461, "text": "Assembled Full Arm (not all motors active yet for safety) and Basic Interpolation for Control I assembled the new full arm assembly minus the end effector and didn’t plug in the first two motors as they have the highest chance of doing something really bad. I also made some general changes to the code and also added a flag to some motors to interpolate their movement slowly to not explode the robot arm while controlling it."}, {"post_id": 68352, "ts": "2026-09-15T00:17:44Z", "hours": 2.5044, "text": "Significantly Better Motor Control and Gripper CAD The motor code was getting a bit messy, so I rewrote it. I separated the motor code from the main control code which cleaned it up a bit. LADRC I’m using LADRC now. It’s kind of like PID, but advanced. I took the implementation from online. I feed it the motor current, encoder value, and the target and it goes. The algorithm or whatever somehow calculates the velocity of the motor and how much “effort” it’s using and then gives an effort to put to the motor. It somehow cancels out like disturbances like gravity, backlash, the general physics, etc. As you can see, the motor control is so so so much better than before. It cleanly decelerates. It handles load and dynamically increases effort. Before there was some oscillation because it just couldn’t figure out how to get to the target, this one is just so much better and so hands off. There’s basically like no calibration as it does it over time :)))"}, {"post_id": 67779, "ts": "2026-09-14T00:57:25Z", "hours": 1.4489, "text": "Assembled last 4 DoF for Integrated Test I assembled the MG996R servos in a test piece that will represent the full regular arm segment to test if everything worked. With some fiddling it worked. As you can see there’s more transparent pieces. The pieces that connect the previous joint are transparent to show the Neopixel below it a lot better as before the LED was almost completely occluded. The bright green LEDs power status ones are too bright but I can cover them later."}, {"post_id": 67735, "ts": "2026-09-13T23:20:04Z", "hours": 6.6769, "text": "Dashboard Revamp WIP, Tons of CAD changes, Code Updates, Tolerances I’ve just been refining everything and it’s just going really slowly. Many problems. Magnets shorting out stuff. Magnet too far and not being detected. Wires breaking. I’ve also redesigned the dashboard UI to hopefully look better. I’m still working on it, hopefully it will look more polished later. The dashboard It shows a load speedometer type thing, with the load (max current from a motor out of 500mA) and the temp on the right (for now just dummy value) The motors have cool little animations now too and look less cluttered. I’ve just been working on it a lot. Just everything in general tbh."}, {"post_id": 65061, "ts": "2026-09-09T22:13:56Z", "hours": 5.7644, "text": "Debugging and Fixing Is Killing Me and the Mainboard Exploded :( I have spent SO many hours trying to get this to work. It’s so annoying. This isn’t near how many hours I spent, I’ve been too frustrated to log it. The case is incredibly annoying. Getting the initial case works fine. Doing all of this stuff makes it complicated and break and jam up. The RS485 busses just randomly stop working. The servo output is wiggly and not stable. A PCB header snapped and I didn’t have replacements so I had to bodge solder it back on. The mainboard voltage regulator literally exploded. It was a cheap part but yeah that literally just broke stuff. Fixes to everything. CAD. Firmware. bruh"}, {"post_id": 60577, "ts": "2026-09-03T00:49:54Z", "hours": 6.7731, "text": "MG996Rs Finally Working The servos finally work. I don’t even think this amount of hours logged is equal to how long this took, because I just got tired of it. I think I printed like 20 new revisions of the case and servo mount. It was just so so annoying. While the general case worked, getting a reliable magnet output shaft was impossible. From tolerances, to my own errors to binding to hot glue getting everywhere, or superglue binding random gears, or my getting my fingers stuck to the actual case from superglue (was not fun and hurt) The case finally works. And the prototype code somewhat works too. It basically rotates until the sensor hits zero, it resets the “ticks”. A tick is a raw output from the AS5600. Because this magnet shaft spins faster than the output shaft, like 10x faster, the MCU needs to poll the sensor super quickly, which also needed some optimizations to clear the blocking bus communication wait that would let the magnet skip multiple full turns. The sensor doesn’t internally count turns so we just need to count manually and detect when it jumps from 4096-0 or the other way around. It then spins around until the sensor is hit AGAIN to calculate tick to degrees, assuming the sensor was zeroed before, and then the current ticks would equal 360 degrees. Another problem was the servo needs a PWM signal to move. The threshold from stop to go is pretty garbage on these cheap servos, leading it to spin quite fast already when at the lowest PWM value. Instead when far from the value it increases the PWM signal, closer it brings to minimum and starts linearly flickering the PWM signal from 0 to the speed, with the closer it is the more ratio of time stopped to inch it closer to the target. It actually surprisingly works. It’s very fragile though, any skipped reads, from potentially slow bus transfers would completely throw it off, so all the code running locally on the weak 8 bit MCU needs to be extremely lightweight. Yeah this was super super painful. I’ve been sitting here redoing superglue and code for hours."}, {"post_id": 58979, "ts": "2026-08-31T15:36:35Z", "hours": 3.4036, "text": "Servo Code I did some slight refining to the servo case again, making the tolerances tighter to keep the gears from wobbling. It’s still sort of loose, so I need to just keep trying over and over again. I’m also still writing the servo code. It’s already much more organized than before. I’m also learning Vim keybinds and stuff to try and code faster. The RS485 bus communication works now, and it’s just sending dummy telemetry data back right now. It can also control the servo fine. I’ve just been doing like the lower level architecting I guess, or not really I’m not sure. Before everything was crammed into a single file and now there’s actually header files and multiple source files and it’s actually somewhat readable. I had an issue with LED control for a second but that’s fixed now :)"}, {"post_id": 58467, "ts": "2026-08-30T21:44:37Z", "hours": 2.4922, "text": "V2 Servo Case Working; Servo Code Revamp WIP After around 10 more revisions, the new servo case is fully working with the magnetic extender. The V2 is significantly better designed and higher efficiency than the last, more guess and check result. I’ve also started to rewrite the servo code. Right now, its really messy and just kind of snowballed over time as I’ve slapped on patches and features to a fundamentally weak base. I’m in the progress of writing that now, hopefully it will be done soon. It will also include the new auto calibration and encoder usage and PID (and potentially advanced auto tuned curve to combat motor acceleration overshoot and backlash)"}, {"post_id": 57778, "ts": "2026-08-30T02:16:49Z", "hours": 3.8514, "text": "Working on IK System & Resoldered Joints Again Bruh so my robot arm after finally being assembled by the way exceeded it’s limits and tore its wires out. I had to take apart the mainboard assembly again, which just is SO TEDIOUS. I just dumped solder and hot glue again and fixed a short caused from another wire being sheared off. Also I’m working on the IK system, but it’s not really going well right now. I need to add offsets and config to each of the motors to get them to work correctly. The motors hooked up right now started crashing into my table sadly. Hopefully it will work soon. I also continued working on the servo case. I still haven’t added the code to calibrate and get closed loop control on the MG996R servos. The DS5180 encoders should be easier though."}, {"post_id": 57272, "ts": "2026-08-29T11:42:11Z", "hours": 3.1006, "text": "Reprinted Arm Segments; Added Segment Cover; Servo Mount Working; Working on Web UI I reprinted the arm segments, hopefully for one of the last times, I’ve went through so much filament already. It now allows the mainboard to be neatly packed inside, hiding most of it while still allowing wires to come out. Due to the design of the mainboard, the wires do have to stick out the front like that sadly. To avoid crushing wires, the servo mount has been expanded to allow more clearance for wires and general electronics. The servo mount works now with a new design. I remeasured and adjusted the sketches and added proper hole sizes and a little chamfer to allow the insert to slot in before using a soldering iron to melt it in to help align much better than before. The web UI now shows a representation of the arm. It’s not tuned yet, so the angles are wrong but I’ll fix it soon. I had to move everything from Fusion to Onshape to create the assemblies, and then use a Python library to convert the Onshape assembly into a URDF file that can be rendered with the correct joints inside ThreeJS. Next, I’ll be adding IK and general arm control."}, {"post_id": 56800, "ts": "2026-08-28T18:32:28Z", "hours": 3.1978, "text": "Heatset Inserts Working; Fixing Faulty Motor Power Connections; Internal Fan Power Connectors I verified that the servo cover works, and it’s much much better than the last version. The tolerances are much better this time, leading to less stress on the gears. The same amount of turning uses around 100mA compared to 300mA before, almost reaching it’s limit without any load. Some motor power connectors disconnected, so I found it with a multimeter and added hot glue to some connectors to secure them. I soldered the fan power things inside the PCB, but realized that the JST connectors I’m using are different from the fans. I might have to make a sort of adapter or something by crimping more wires. And the heatset inserts finally work after some tweaking, before the inserts would get misaligned when put in, now with a aligning lip thing it can be slotted in and melted in more accurately."}, {"post_id": 56316, "ts": "2026-08-28T01:34:32Z", "hours": 4.6306, "text": "New Mainboard Cover, Wiring, Bearing Revamp, Heatset Inserts, Servo Cover I added space for the mainboard segment, now it has clearance to actually fit, I redid the cover for this segment, and now it can allow the wires to come out The servo mount now has heatset inserts, because the previous screw in print kept slipping out, but this time the screws just would not go into the inserts through the mount for some reason? The screws went in normally, but with the tolerances, when multiple screws go in they just fight and push against the edge of the insert instead of going in. The MG996R servo housing now has been redesigned, based off of picture references and calipers to attempt to be more accurate than the last one to try and reduce the amount of bad tolerances affecting the gears and making them misaligned, reducing torque output. And just general wiring and CAD work."}, {"post_id": 55294, "ts": "2026-08-27T01:14:32Z", "hours": 2.9064, "text": "Assembled Basic Arm Parts and Packaged Main Board Assembly; Reprogrammed servo MCUs & worked on web UI I redid some soldering on the mainboard PCB, secured connections, and secured everything with tape for now. I’ll likely have to reprint the first arm segment to fit everything in flush because as you can see there are wires and things bulging out of the segment itself right now. I also redesigned the CAD to include heat set inserts. I did programming and a bunch of bug testing and fixing too. An hour of time was lost because Lapse errored out :((((( very sad about that :( I also had an issue with data corruption on the RS485 bus but that is fixed now, and it works like it should."}, {"post_id": 54840, "ts": "2026-08-26T00:29:08Z", "hours": 4.3236, "text": "Mainboard Stack Redo & Firmware Updates and Test Web UI I had to take the electronics out, and redo some of the wiring. The screw terminals are pretty cheap and suck, which makes it incredibly annoying to use as it’s impossible to fit these thicker AWG wires in and they sometimes slide out of the terminals. When I’m done I’m probably going to hot glue the wires. The incredibly fragile flexible extension jumpers for data transfer between the stack is also super fragile, and especially doesn’t grip. Sometimes the data wires just slip out. I took apart the arm, as during testing the motor stripped some screws. I’ve ordered some heat set inserts to prevent that from happening again, which will require me to reprint all the arm segments again. I also added a simple web UI for moving the joints. There is an empty ThreeJS sidebar and the right has some graphs (real data) from the mainboard sensors. The smaller MG996R servos haven’t been mounted yet due to a power delivery issue from the mainboard but hopefully that will be fixed soon."}, {"post_id": 28657, "ts": "2026-07-15T01:25:27Z", "hours": 4.0167, "text": "Test assembly and fitting of robot arm I am mostly done with the core functionality of the mainboard, so i packed everything together and double checked eerything works including power Then I started assembling most of the servos The smaller servo casing doesn’t fit very well, and the transparent window doesn’t fit either But the magnetic cover for the arm segments works great :) It was a lot of fitting, screwing, testing with multimeter, etc"}, {"post_id": 28409, "ts": "2026-07-14T17:26:49Z", "hours": 5.1303, "text": "Finalizing hardware I crimped and soldered almost the remaining wires, I’ve made some last redesigns to the arm CAD and I’m now fitting everything into the new prints and assembling. I’ve also had a ton of trouble with my servo PCBs lately, but I found out a lot of the issue was my programmer is actually fried somehow, so I’m now using an old RPi Pico to act as a UPDI adapter so PlatformIO can now successfully program the ATtinys much better now. A lot of the CAD was slightly tweaked so that everything fits better"}, {"post_id": 26853, "ts": "2026-07-11T21:36:43Z", "hours": 1.175, "text": "Servo firmware almost done The servo firmware now (with the mainboard) sends validation data back and forth so both the servo and mainboard can verify that the data was sent successfully and can ignore corrupted packets because my wiring can be flaky sometimes The firmware now sends real data again and is much more robust, with a proper stateful LED that shows useful information, like offline, online and driving motor, homing, error (fast flashing of LED as red), and the error state is also triggered in the case of corrupted packets (I tried it and it works :)) I’m also still printing out the pieces to assemble the arm. I actually have more hours working on it, I just forgot to log :((((((("}, {"post_id": 26218, "ts": "2026-07-10T21:40:32Z", "hours": 8.1217, "text": "Rewrote all firmware; Fixing Servo Cover and a ton of other CAD; Almost fried everything For the CAD, it doesn’t look like much changed, but I’ve basically redesigned a bunch of things and fixed tolerances and now it should move really smoothly. With the bearings added, everything moves incredibly smoothly now Especially the servo cover was annoying. I needed to attach a magnet to the shaft which was really annoying. I haven’t logged that well, I’ve done more like 15 hours of work instead of just 5 but whatever Most of those hours was the painful debugging. RS-485 busses, JSON not communcating with the PC, dropped connections, corrupted data, disconnected jumpers, FTDI programmer becoming flaky for some reason It’s just been pain :((( Now the PC (screenshot) recieves all the data and sends all the data You can see a lot (not all) of the telemetry being received. Ignore the volts though my math is wrong. Realtime connecting now works smoothly, as you can see the other RS485 servos are offline."}, {"post_id": 24091, "ts": "2026-07-07T13:11:08Z", "hours": 5.9586, "text": "Bidirectional Communication To PC/RPi 5 with LeRobot & More CAD changes I setup a basic class for my robot in LeRobot (which was a little confusing) and then I also got communication between the Pico and my PC working. Originally I have SPI pins exposed on my mainboard PCB to connect to the RPi 5’s GPIO pins, but for some reason after lots of debugging, even running it at super low speeds it just would not work. So I switched to just using serial over USB, and using the SerialTransfer library to send data more reliably. The script on the PC now can send target joint angles, and receive a lot of data back, like if the joint is online, temp, current, angle, homing sensor, home status, LED, firmware version, voltage, etc I also iterated on the CAD for everything, and it should be done soon. It’s just a bunch of tolerance fixes to make everything fit at this point and some new things like mounts for encoders and DC buck modules and fixing the CAD for the custom MG996R case."}, {"post_id": 23468, "ts": "2026-07-06T13:46:37Z", "hours": 1.9767, "text": "Mainboard and other CAD I got the mainboard to stack on top of each other with a weird jumper and two piece jumper holder and some screws setup which required some revisions and trying to get everything to fit. I’ve squeezed one of the DC buck modules into between the mainboard, and the second arm segment will hold the two remaining DC buck modules. The bottom mainboard PCB also has 2 smaller buck modules. There’s a lot of things going on with the voltages in this project due to the servos peak current draw being so large. I also refined the arm segment CAD by some reprints and made the DS5180 servo fit better. I’ve also made one of the buck module mounts for the second arm segment to fit more cleanly."}, {"post_id": 22393, "ts": "2026-07-04T21:03:02Z", "hours": 4.3272, "text": "Servo Control Working, More CAD and 3D Printing I got the mainboard to be able to control the servo on the servo PCBs. I also tested a bunch of the functions, like the magnetic sensor, neopixel LED, etc The communication now sends the PCB ID, and the target speed and the servo PCB echos it back and moves the servo. I also worked on the CAD (and refined) for the mainboard connector that will make connecting the two mainboards not a total pain. I also soldered the connectors on the mainboard PCBs for them to connect to each other."}, {"post_id": 21568, "ts": "2026-07-03T16:23:00Z", "hours": 0.4833, "text": "Servo PCB Daisy Chaining Working I plugged in the JST VH and JST 1.25mm wires into the PCBs, and they seem to work! I adjusted the message struct to hold a desired PCB sort of address or ID. When the MCU detects that the ID matches the PCB (by using the solder jumpers at the bottom of each PCB to program the PCB ID), only then it lights up the LED and replies to the main board. The mainboard now loops through IDs and sends a message and waits for a response. I’m very very happy this worked without any really big problems."}, {"post_id": 21540, "ts": "2026-07-03T15:45:12Z", "hours": 3.4667, "text": "Crimped JST VH wires, Connected JST 1.25mm wires, Soldered more PCB connectors Crimping JST VH wires is a ton easier than JST 1.25mm, and after a bunch of failed attempts still, I got some okay crimps that work finally. It took me a long time because I didn’t know that I had to rotate the wire for the hook on the terminal to go into the housing hole, and then also that the box shape part on the terminal actually has to stick out of the crimper or the crimper will crush the whole terminal into bits"}, {"post_id": 21185, "ts": "2026-07-03T00:14:50Z", "hours": 4.7722, "text": "Finished Soldering all Smaller PCBs & Got RS-485 communication working from main board to servo PCBs First, I finished soldering the PCBs. I added the connectors for power and the small data connectors. I also finished the servo expansion boards that hold the magnetic encoder and sensor. I also finished soldering the joint encoder PCBs that will track shoulder and elbow lift servo positions. I also got the bus communication to work. It was really really painful and I was really scared it wouldn’t work. First, the PCBs wouldn’t communicate at all. But eventually, I realized that it was because I wasn’t supplying 3.3V to the main board. This is when I realized that I haven’t adjusted the buck converters on the main board to supply the correct voltage, so I was about to unsolder the buck converter when I realized that I could just set the power supply to 5V (which the ICs on the mainboard can handle luckily), and then adjust the voltage down to 3.3V. But after a really long time of debugging, it still wasn’t working. The connection would sometimes work but was really flaky. Eventually, I soldered on the RPi Pico 2 onto the board completely and then found out the reason, it was because the ATtiny3216 was set to clock at a slow speed that would mess with the communication. I made them use the SerialTransfer library to send data more reliably and it now can communicate properly :)"}, {"post_id": 20354, "ts": "2026-07-01T22:40:54Z", "hours": 5.5597, "text": "Done Soldering Most PCBs, Crimped JST wires kind of I’m pretty much done soldering, I just have like 3 more tiny PCBs and I should be done. The big main board PCBs are pretty much done, I just need to make some botched tall headers since the clearance of regular headers are too small, and the servo PCBs are almost done, with just some connectors left to solder. Soldering JST 1.25mm wires ARE THE WORST EVER THING TO EVER EXIST I spent 2 hours crimping terminals on multiple wires and its so so so annoying. I can barely hold the terminal itself and they are so easy to bend. I couldn’t afford the real tool to crimp them, so I have cheap crimpers that are the wrong size and can’t technically crimp these. If crimping the metal things wasn’t bad enough, inserting the terminals into the housing was even worse. The housing would bend, or I would accidentally somehow insert it where it shorts the pin next to it??? Also while soldering a JST 1.25mm connector on a PCB, I ripped the pads clean off the PCB. I guess that one just will be missing the daisy chain feature because it only has one connector for data now and all the components and MCU are already soldered on, which really sucks. The rest of the servo PCB (4 in total for now) went fine though, and I’m getting faster at it."}, {"post_id": 18843, "ts": "2026-06-30T01:27:03Z", "hours": 4.7572, "text": "Worked on firmware & CAD & Soldered Second PCB I got the PCB and ATtiny3216 to power a servo. I soldered on the remaining components on it, like the custom LED (which just turns on when the motor is spinning for now) and the 100uF capacitor and also the RS485 bus IC. I also changed the CAD of the arm to use a bearing and changed the servo horn to fit inside of the bearing. I’ve ordered right angle headers and the bearing and metal servo horn already. I also added some transparent parts to the arm design to make it look more interesting hopefully. I also am almost done soldering the second servo PCB. Now that I have all the parts ready and I actually got better at soldering ICs I can do it faster now."}, {"post_id": 17022, "ts": "2026-06-27T17:00:47Z", "hours": 4.0433, "text": "Finally got ATtiny3216 on PCB Working This took so so long. Basically, I spent hours trying to get it to work. First, the 3.3V rail wasn’t getting power and the LED wasn’t lighting so I had to resolder the voltage regulator and then both green LEDs lit up, meaning everything was working. Then I got my FTDI programmer, and plugged it into my PCB. Because I have a FTDI programmer and the ATtiny3216 has a UPDI programming interface, there is a resistor on the board to combine the two pins into one. Even just getting megaTinyCore installed in Arduino IDE was a pain. The website that hosted the package info was down again, with an expired certificate. Apparently, this happens very often with it but I found an alternative mirror. Then I tried flashing code, and it didn’t work. Then I realized that the board type I was using was the Optiboot version, and I couldn’t find the non Optiboot version so I had to flash Optiboot onto the MCU. I did not realize that doing this would cause problems later on. I also had to switch the programmer from the one that programs Arduinos to the UPDI programmer. But I STILL couldn’t get any GPIO to work. I just tried things for hours. I switched to PlatformIO. I tried switching from C to Arduino in PlatformIO. I tried unplugging the programmer because I saw some voltage leaking from it. I tried emptying the caps and trying again. I probed every single pin to see if I wrote the wrong pin. Then after all of that, when I switched to non Optiboot (having to find online that I have to downgrade megaTinyCore), and flashing that, it works. I think it was because flashing a bootloader burns some fuses to expect a bootloader, but when I flash my code it actually overwrites the bootloader code because I don’t have access to the TX and RX pins typically used to flash when Optiboot is installed, and that just caused the code to not run."}, {"post_id": 14058, "ts": "2026-06-23T01:15:22Z", "hours": 2.3747, "text": "Soldered Smaller PCBs, Ordered Missing Parts, Continued CAD work I soldered most of the small PCBs, but now I need to order the parts I missed from the first order I placed. I’m also running out of 0.1uF caps, which sucks. I added a spot and holes for a fan on the camera mount and also some arm segment CAD improvements and back plating to hold the metal rods in. I printed out a test and it works fine. As for the PCBs, I’m still waiting for a few parts."}, {"post_id": 13444, "ts": "2026-06-22T00:49:23Z", "hours": 2.6311, "text": "Continued Soldering PCB (Diodes/LEDs, power circuitry, etc) and worked on arm CAD. For the PCB, after some time, I got the power switching circuit to output power. It’s a collection of things that I hope will make it safer, with a some diodes and a fuse, some MOSFETs, so the main MCU can command to send power, and also another stage that requires the E-STOP to not be pressed to actually be able to send power through with two MOSFETs (one main power, another switch the main MOSFET). I added a fan to the global shutter main wrist camera since it gets hot, and added a new “head” to the arm segment CAD (the heads are swappable depending on what you need to print) for the smaller motor for the last DOFs in the arm. It fits my custom daisy chaining two part PCB hat for the MG996R to give it current, temp, power sensing, and daisy chaining power and data via a RS485 bus with an onboard MCU to provide communication and control. I added some holes for airflow for this PCB. I also added some screw holes to actually connect the halves of the arm together."}, {"post_id": 12830, "ts": "2026-06-21T00:22:41Z", "hours": 1.6036, "text": "Continued Soldering and Working on CAD I snapped some headers and soldered on some more ICs on the PCBs. I did also mess up and ordered a wrong footprint for a part, so now I have to delay that too. It’s so tiny I can barely see the pins. I also worked on the CAD, where I designed the stereo camera holder, added a spot for the RPi 5 to go on top, and maybe a display. I also made a V2 of my grabber since the old one didn’t work well. It also seems that Stardance isn’t syncing my time properly, and it’s missing a few hours so that’s annoying :("}, {"post_id": 12281, "ts": "2026-06-20T01:43:23Z", "hours": 5.3406, "text": "I soldered some parts on the PCB, and worked on the CAD files some more I did realize that I forgot some parts, so I ordered them on DigiKey. I’ll continue soldering the rest tomorrow. One of the parts was the LDO, which I only found out because I soldered the parts and realized that the voltage being put on the 3.3V rail is 5V My project needs both versions of the same LDO and I only bought the 5V one I also bought the wrong resistors. I’ve ordered them and they should arrive in a week or so. My design of stacking the PCBs and then adding the buck modules in the middle might be very challenging, and I might need to stack multiple headers on top of each other to fit the modules inside. Hopefully it will still fit inside my arm segment and not short anything. There also needs to be sufficient airflow, which is def a challenge"}, {"post_id": 10584, "ts": "2026-06-17T12:06:26Z", "hours": 1.8508, "text": "Added Bottom Reinforcements with holes for magnets and wiring Added Fans and airflow holes And just fixed and refined the CAD, like adding spots for magnetic attached front and back plates and more"}]...
|
Title: revo by @ratmuds | Stardance
Devlogs:
Adde Title: revo by @ratmuds | Stardance
Devlogs:
Added Bottom Reinforcements with holes for magnets and wiring Added Fans and airflow holes And just fixed and refined the CAD, like adding spots for magnetic attached front and back plates and more
I soldered some parts on the PCB, and worked on the CAD files some more I did realize that I forgot some parts, so I ordered them on DigiKey. I’ll continue soldering the rest tomorrow. One of the parts was the LDO, which I only found out because I soldered the parts and realized that the voltage being put on the 3.3V rail is 5V My project needs both versions of the same LDO and I only bought the 5V one I also bought the wrong resistors. I’ve ordered them and they should arrive in a week or so. My design of stacking the PCBs and then adding the buck modules in the middle might be very challenging, and I might need to stack multiple headers on top of each other to fit the modules inside. Hopefully it will still fit inside my arm segment and not short anything. There also needs to be sufficient airflow, which is def a challenge
Continued Soldering and Working on CAD I snapped some headers and soldered on some more ICs on the PCBs. I did also mess up and ordered a wrong footprint for a part, so now I have to delay that too. It’s so tiny I can barely see the pins. I also worked on the CAD, where I designed the stereo camera holder, added a spot for the RPi 5 to go on top, and maybe a display. I also made a V2 of my grabber since the old one didn’t work well. It also seems that Stardance isn’t syncing my time properly, and it’s missing a few hours so that’s annoying :(
Continued Soldering PCB (Diodes/LEDs, power circuitry, etc) and worked on arm CAD. For the PCB, after some time, I got the power switching circuit to output power. It’s a collection of things that I hope will make it safer, with a some diodes and a fuse, some MOSFETs, so the main MCU can command to send power, and also another stage that requires the E-STOP to not be pressed to actually be able to send power through with two MOSFETs (one main power, another switch the main MOSFET). I added a fan to the global shutter main wrist camera since it gets hot, and added a new “head” to the arm segment CAD (the heads are swappable depending on what you need to print) for the smaller motor for the last DOFs in the arm. It fits my custom daisy chaining two part PCB hat for the MG996R to give it current, temp, power sensing, and daisy chaining power and data via a RS485 bus with an onboard MCU to provide communication and control. I added some holes for airflow for this PCB. I also added some screw holes to actually connect the halves of the arm together.
Soldered Smaller PCBs, Ordered Missing Parts, Continued CAD work I soldered most of the small PCBs, but now I need to order the parts I missed from the first order I placed. I’m also running out of 0.1uF caps, which sucks. I added a spot and holes for a fan on the camera mount and also some arm segment CAD improvements and back plating to hold the metal rods in. I printed out a test and it works fine. As for the PCBs, I’m still waiting for a few parts.
Finally got ATtiny3216 on PCB Working This took so so long. Basically, I spent hours trying to get it to work. First, the 3.3V rail wasn’t getting power and the LED wasn’t lighting so I had to resolder the voltage regulator and then both green LEDs lit up, meaning everything was working. Then I got my FTDI programmer, and plugged it into my PCB. Because I have a FTDI programmer and the ATtiny3216 has a UPDI programming interface, there is a resistor on the board to combine the two pins into one. Even just getting megaTinyCore installed in Arduino IDE was a pain. The website that hosted the package info was down again, with an expired certificate. Apparently, this happens very often with it but I found an alternative mirror. Then I tried flashing code, and it didn’t work. Then I realized that the board type I was using was the Optiboot version, and I couldn’t find the non Optiboot version so I had to flash Optiboot onto the MCU. I did not realize that doing this would cause problems later on. I also had to switch the programmer from the one that programs Arduinos to the UPDI programmer. But I STILL couldn’t get any GPIO to work. I just tried things for hours. I switched to PlatformIO. I tried switching from C to Arduino in PlatformIO. I tried unplugging the programmer because I saw some voltage leaking from it. I tried emptying the caps and trying again. I probed every single pin to see if I wrote the wrong pin. Then after all of that, when I switched to non Optiboot (having to find online that I have to downgrade megaTinyCore), and flashing that, it works. I think it was because flashing a bootloader burns some fuses to expect a bootloader, but when I flash my code it actually overwrites the bootloader code because I don’t have access to the TX and RX pins typically used to flash when Optiboot is installed, and that just caused the code to not run.
Worked on firmware & CAD & Soldered Second PCB I got the PCB and ATtiny3216 to power a servo. I soldered on the remaining components on it, like the custom LED (which just turns on when the motor is spinning for now) and the 100uF capacitor and also the RS485 bus IC. I also changed the CAD of the arm to use a bearing and changed the servo horn to fit inside of the bearing. I’ve ordered right angle headers and the bearing and metal servo horn already. I also added some transparent parts to the arm design to make it look more interesting hopefully. I also am almost done soldering the second servo PCB. Now that I have all the parts ready and I actually got better at soldering ICs I can do it faster now.
Done Soldering Most PCBs, Crimped JST wires kind of I’m pretty much done soldering, I just have like 3 more tiny PCBs and I should be done. The big main board PCBs are pretty much done, I just need to make some botched tall headers since the clearance of regular headers are too small, and the servo PCBs are almost done, with just some connectors left to solder. Soldering JST 1.25mm wires ARE THE WORST EVER THING TO EVER EXIST I spent 2 hours crimping terminals on multiple wires and its so so so annoying. I can barely hold the terminal itself and they are so easy to bend. I couldn’t afford the real tool to crimp them, so I have cheap crimpers that are the wrong size and can’t technically crimp these. If crimping the metal things wasn’t bad enough, inserting the terminals into the housing was even worse. The housing would bend, or I would accidentally somehow insert it where it shorts the pin next to it??? Also while soldering a JST 1.25mm connector on a PCB, I ripped the pads clean off the PCB. I guess that one just will be missing the daisy chain feature because it only has one connector for data now and all the components and MCU are already soldered on, which really sucks. The rest of the servo PCB (4 in total for now) went fine though, and I’m getting faster at it.
Finished Soldering all Smaller PCBs & Got RS-485 communication working from main board to servo PCBs First, I finished soldering the PCBs. I added the connectors for power and the small data connectors. I also finished the servo expansion boards that hold the magnetic encoder and sensor. I also finished soldering the joint encoder PCBs that will track shoulder and elbow lift servo positions. I also got the bus communication to work. It was really really painful and I was really scared it wouldn’t work. First, the PCBs wouldn’t communicate at all. But eventually, I realized that it was because I wasn’t supplying 3.3V to the main board. This is when I realized that I haven’t adjusted the buck converters on the main board to supply the correct voltage, so I was about to unsolder the buck converter when I realized that I could just set the power supply to 5V (which the ICs on the mainboard can handle luckily), and then adjust the voltage down to 3.3V. But after a really long time of debugging, it still wasn’t working. The connection would sometimes work but was really flaky. Eventually, I soldered on the RPi Pico 2 onto the board completely and then found out the reason, it was because the ATtiny3216 was set to clock at a slow speed that would mess with the communication. I made them use the SerialTransfer library to send data more reliably and it now can communicate properly :)
Crimped JST VH wires, Connected JST 1.25mm wires, Soldered more PCB connectors Crimping JST VH wires is a ton easier than JST 1.25mm, and after a bunch of failed attempts still, I got some okay crimps that work finally. It took me a long time because I didn’t know that I had to rotate the wire for the hook on the terminal to go into the housing hole, and then also that the box shape part on the terminal actually has to stick out of the crimper or the crimper will crush the whole terminal into bits
Servo PCB Daisy Chaining Working I plugged in the JST VH and JST 1.25mm wires into the PCBs, and they seem to work! I adjusted the message struct to hold a desired PCB sort of address or ID. When the MCU detects that the ID matches the PCB (by using the solder jumpers at the bottom of each PCB to program the PCB ID), only then it lights up the LED and replies to the main board. The mainboard now loops through IDs and sends a message and waits for a response. I’m very very happy this worked without any really big problems.
Servo Control Working, More CAD and 3D Printing I got the mainboard to be able to control the servo on the servo PCBs. I also tested a bunch of the functions, like the magnetic sensor, neopixel LED, etc The communication now sends the PCB ID, and the target speed and the servo PCB echos it back and moves the servo. I also worked on the CAD (and refined) for the mainboard connector that will make connecting the two mainboards not a total pain. I also soldered the connectors on the mainboard PCBs for them to connect to each other.
Mainboard and other CAD I got the mainboard to stack on top of each other with a weird jumper and two piece jumper holder and some screws setup which required some revisions and trying to get everything to fit. I’ve squeezed one of the DC buck modules into between the mainboard, and the second arm segment will hold the two remaining DC buck modules. The bottom mainboard PCB also has 2 smaller buck modules. There’s a lot of things going on with the voltages in this project due to the servos peak current draw being so large. I also refined the arm segment CAD by some reprints and made the DS5180 servo fit better. I’ve also made one of the buck module mounts for the second arm segment to fit more cleanly.
Bidirectional Communication To PC/RPi 5 with LeRobot & More CAD changes I setup a basic class for my robot in LeRobot (which was a little confusing) and then I also got communication between the Pico and my PC working. Originally I have SPI pins exposed on my mainboard PCB to connect to the RPi 5’s GPIO pins, but for some reason after lots of debugging, even running it at super low speeds it just would not work. So I switched to just using serial over USB, and using the SerialTransfer library to send data more reliably. The script on the PC now can send target joint angles, and receive a lot of data back, like if the joint is online, temp, current, angle, homing sensor, home status, LED, firmware version, voltage, etc I also iterated on the CAD for everything, and it should be done soon. It’s just a bunch of tolerance fixes to make everything fit at this point and some new things like mounts for encoders and DC buck modules and fixing the CAD for the custom MG996R case.
Rewrote all firmware; Fixing Servo Cover and a ton of other CAD; Almost fried everything For the CAD, it doesn’t look like much changed, but I’ve basically redesigned a bunch of things and fixed tolerances and now it should move really smoothly. With the bearings added, everything moves incredibly smoothly now Especially the servo cover was annoying. I needed to attach a magnet to the shaft which was really annoying. I haven’t logged that well, I’ve done more like 15 hours of work instead of just 5 but whatever Most of those hours was the painful debugging. RS-485 busses, JSON not communcating with the PC, dropped connections, corrupted data, disconnected jumpers, FTDI programmer becoming flaky for some reason It’s just been pain :((( Now the PC (screenshot) recieves all the data and sends all the data You can see a lot (not all) of the telemetry being received. Ignore the volts though my math is wrong. Realtime connecting now works smoothly, as you can see the other RS485 servos are offline.
Servo firmware almost done The servo firmware now (with the mainboard) sends validation data back and forth so both the servo and mainboard can verify that the data was sent successfully and can ignore corrupted packets because my wiring can be flaky sometimes The firmware now sends real data again and is much more robust, with a proper stateful LED that shows useful information, like offline, online and driving motor, homing, error (fast flashing of LED as red), and the error state is also triggered in the case of corrupted packets (I tried it and it works :)) I’m also still printing out the pieces to assemble the arm. I actually have more hours working on it, I just forgot to log :(((((((
Finalizing hardware I crimped and soldered almost the remaining wires, I’ve made some last redesigns to the arm CAD and I’m now fitting everything into the new prints and assembling. I’ve also had a ton of trouble with my servo PCBs lately, but I found out a lot of the issue was my programmer is actually fried somehow, so I’m now using an old RPi Pico to act as a UPDI adapter so PlatformIO can now successfully program the ATtinys much better now. A lot of the CAD was slightly tweaked so that everything fits better
Test assembly and fitting of robot arm I am mostly done with the core functionality of the mainboard, so i packed everything together and double checked eerything works including power Then I started assembling most of the servos The smaller servo casing doesn’t fit very well, and the transparent window doesn’t fit either But the magnetic cover for the arm segments works great :) It was a lot of fitting, screwing, testing with multimeter, etc
Mainboard Stack Redo & Firmware Updates and Test Web UI I had to take the electronics out, and redo some of the wiring. The screw terminals are pretty cheap and suck, which makes it incredibly annoying to use as it’s impossible to fit these thicker AWG wires in and they sometimes slide out of the terminals. When I’m done I’m probably going to hot glue the wires. The incredibly fragile flexible extension jumpers for data transfer between the stack is also super fragile, and especially doesn’t grip. Sometimes the data wires just slip out. I took apart the arm, as during testing the motor stripped some screws. I’ve ordered some heat set inserts to prevent that from happening again, which will require me to reprint all the arm segments again. I also added a simple web UI for moving the joints. There is an empty ThreeJS sidebar and the right has some graphs (real data) from the mainboard sensors. The smaller MG996R servos haven’t been mounted yet due to a power delivery issue from the mainboard but hopefully that will be fixed soon.
Assembled Basic Arm Parts and Packaged Main Board Assembly; Reprogrammed servo MCUs & worked on web UI I redid some soldering on the mainboard PCB, secured connections, and secured everything with tape for now. I’ll likely have to reprint the first arm segment to fit everything in flush because as you can see there are wires and things bulging out of the segment itself right now. I also redesigned the CAD to include heat set inserts. I did programming and a bunch of bug testing and fixing too. An hour of time was lost because Lapse errored out :((((( very sad about that :( I also had an issue with data corruption on the RS485 bus but that is fixed now, and it works like it should.
New Mainboard Cover, Wiring, Bearing Revamp, Heatset Inserts, Servo Cover I added space for the mainboard segment, now it has clearance to actually fit, I redid the cover for this segment, and now it can allow the wires to come out The servo mount now has heatset inserts, because the previous screw in print kept slipping out, but this time the screws just would not go into the inserts through the mount for some reason? The screws went in normally, but with the tolerances, when multiple screws go in they just fight and push against the edge of the insert instead of going in. The MG996R servo housing now has been redesigned, based off of picture references and calipers to attempt to be more accurate than the last one to try and reduce the amount of bad tolerances affecting the gears and making them misaligned, reducing torque output. And just general wiring and CAD work.
Heatset Inserts Working; Fixing Faulty Motor Power Connections; Internal Fan Power Connectors I verified that the servo cover works, and it’s much much better than the last version. The tolerances are much better this time, leading to less stress on the gears. The same amount of turning uses around 100mA compared to 300mA before, almost reaching it’s limit without any load. Some motor power connectors disconnected, so I found it with a multimeter and added hot glue to some connectors to secure them. I soldered the fan power things inside the PCB, but realized that the JST connectors I’m using are different from the fans. I might have to make a sort of adapter or something by crimping more wires. And the heatset inserts finally work after some tweaking, before the inserts would get misaligned when put in, now with a aligning lip thing it can be slotted in and melted in more accurately.
Reprinted Arm Segments; Added Segment Cover; Servo Mount Working; Working on Web UI I reprinted the arm segments, hopefully for one of the last times, I’ve went through so much filament already. It now allows the mainboard to be neatly packed inside, hiding most of it while still allowing wires to come out. Due to the design of the mainboard, the wires do have to stick out the front like that sadly. To avoid crushing wires, the servo mount has been expanded to allow more clearance for wires and general electronics. The servo mount works now with a new design. I remeasured and adjusted the sketches and added proper hole sizes and a little chamfer to allow the insert to slot in before using a soldering iron to melt it in to help align much better than before. The web UI now shows a representation of the arm. It’s not tuned yet, so the angles are wrong but I’ll fix it soon. I had to move everything from Fusion to Onshape to create the assemblies, and then use a Python library to convert the Onshape assembly into a URDF file that can be rendered with the correct joints inside ThreeJS. Next, I’ll be adding IK and general arm control.
Working on IK System & Resoldered Joints Again Bruh so my robot arm after finally being assembled by the way exceeded it’s limits and tore its wires out. I had to take apart the mainboard assembly again, which just is SO TEDIOUS. I just dumped solder and hot glue again and fixed a short caused from another wire being sheared off. Also I’m working on the IK system, but it’s not really going well right now. I need to add offsets and config to each of the motors to get them to work correctly. The motors hooked up right now started crashing into my table sadly. Hopefully it will work soon. I also continued working on the servo case. I still haven’t added the code to calibrate and get closed loop control on the MG996R servos. The DS5180 encoders should be easier though.
V2 Servo Case Working; Servo Code Revamp WIP After around 10 more revisions, the new servo case is fully working with the magnetic extender. The V2 is significantly better designed and higher efficiency than the last, more guess and check result. I’ve also started to rewrite the servo code. Right now, its really messy and just kind of snowballed over time as I’ve slapped on patches and features to a fundamentally weak base. I’m in the progress of writing that now, hopefully it will be done soon. It will also include the new auto calibration and encoder usage and PID (and potentially advanced auto tuned curve to combat motor acceleration overshoot and backlash)
Servo Code I did some slight refining to the servo case again, making the tolerances tighter to keep the gears from wobbling. It’s still sort of loose, so I need to just keep trying over and over again. I’m also still writing the servo code. It’s already much more organized than before. I’m also learning Vim keybinds and stuff to try and code faster. The RS485 bus communication works now, and it’s just sending dummy telemetry data back right now. It can also control the servo fine. I’ve just been doing like the lower level architecting I guess, or not really I’m not sure. Before everything was crammed into a single file and now there’s actually header files and multiple source files and it’s actually somewhat readable. I had an issue with LED control for a second but that’s fixed now :)
MG996Rs Finally Working The servos finally work. I don’t even think this amount of hours logged is equal to how long this took, because I just got tired of it. I think I printed like 20 new revisions of the case and servo mount. It was just so so annoying. While the general case worked, getting a reliable magnet output shaft was impossible. From tolerances, to my own errors to binding to hot glue getting everywhere, or superglue binding random gears, or my getting my fingers stuck to the actual case from superglue (was not fun and hurt) The case finally works. And the prototype code somewhat works too. It basically rotates until the sensor hits zero, it resets the “ticks”. A tick is a raw output from the AS5600. Because this magnet shaft spins faster than the output shaft, like 10x faster, the MCU needs to poll the sensor super quickly, which also needed some optimizations to clear the blocking bus communication wait that would let the magnet skip multiple full turns. The sensor doesn’t internally count turns so we just need to count manually and detect when it jumps from 4096-0 or the other way around. It then spins around until the sensor is hit AGAIN to calculate tick to degrees, assuming the sensor was zeroed before, and then the current ticks would equal 360 degrees. Another problem was the servo needs a PWM signal to move. The threshold from stop to go is pretty garbage on these cheap servos, leading it to spin quite fast already when at the lowest PWM value. Instead when far from the value it increases the PWM signal, closer it brings to minimum and starts linearly flickering the PWM signal from 0 to the speed, with the closer it is the more ratio of time stopped to inch it closer to the target. It actually surprisingly works. It’s very fragile though, any skipped reads, from potentially slow bus transfers would completely throw it off, so all the code running locally on the weak 8 bit MCU needs to be extremely lightweight. Yeah this was super super painful. I’ve been sitting here redoing superglue and code for hours.
Debugging and Fixing Is Killing Me and the Mainboard Exploded :( I have spent SO many hours trying to get this to work. It’s so annoying. This isn’t near how many hours I spent, I’ve been too frustrated to log it. The case is incredibly annoying. Getting the initial case works fine. Doing all of this stuff makes it complicated and break and jam up. The RS485 busses just randomly stop working. The servo output is wiggly and not stable. A PCB header snapped and I didn’t have replacements so I had to bodge solder it back on. The mainboard voltage regulator literally exploded. It was a cheap part but yeah that literally just broke stuff. Fixes to everything. CAD. Firmware. bruh
Dashboard Revamp WIP, Tons of CAD changes, Code Updates, Tolerances I’ve just been refining everything and it’s just going really slowly. Many problems. Magnets shorting out stuff. Magnet too far and not being detected. Wires breaking. I’ve also redesigned the dashboard UI to hopefully look better. I’m still working on it, hopefully it will look more polished later. The dashboard It shows a load speedometer type thing, with the load (max current from a motor out of 500mA) and the temp on the right (for now just dummy value) The motors have cool little animations now too and look less cluttered. I’ve just been working on it a lot. Just everything in general tbh.
Assembled last 4 DoF for Integrated Test I assembled the MG996R servos in a test piece that will represent the full regular arm segment to test if everything worked. With some fiddling it worked. As you can see there’s more transparent pieces. The pieces that connect the previous joint are transparent to show the Neopixel below it a lot better as before the LED was almost completely occluded. The bright green LEDs power status ones are too bright but I can cover them later.
Significantly Better Motor Control and Gripper CAD The motor code was getting a bit messy, so I rewrote it. I separated the motor code from the main control code which cleaned it up a bit. LADRC I’m using LADRC now. It’s kind of like PID, but advanced. I took the implementation from online. I feed it the motor current, encoder value, and the target and it goes. The algorithm or whatever somehow calculates the velocity of the motor and how much “effort” it’s using and then gives an effort to put to the motor. It somehow cancels out like disturbances like gravity, backlash, the general physics, etc. As you can see, the motor control is so so so much better than before. It cleanly decelerates. It handles load and dynamically increases effort. Before there was some oscillation because it just couldn’t figure out how to get to the target, this one is just so much better and so hands off. There’s basically like no calibration as it does it over time :)))
Assembled Full Arm (not all motors active yet for safety) and Basic Interpolation for Control I assembled the new full arm assembly minus the end effector and didn’t plug in the first two motors as they have the highest chance of doing something really bad. I also made some general changes to the code and also added a flag to some motors to interpolate their movement slowly to not explode the robot arm while controlling it.
Fixed Broken Magnet, Redoing all IK joint data and offsets, Stereo depth test An encoder magnet broke off, so I had to disassemble and reassemble the top half of the arm to get to the encoder magnet and glue it back on. I also started properly punching in the IK joint data, before it was mostly just random data but now almost all of the data is mostly correct, and I’m waiting for a print to complete that will flip a motor to finally get the IK simulation matching with real life and have the IK endpoint be tracked at the tip of the gripper. It was a lot of trial and error and measurements. I also started experimenting with adding depth estimation. Eventually this could add collision avoidance IK pathfinding, which would be really cool but it’s just a pointcloud in the render right now. But the robot arm is slowly coming together finally! I’ll be able to grab something soon I think.
Integration Hell I’ve just been like trying to get this stupid project to work. Screws keep falling out, the IK keeps failing, things are hitting each other and wires are being strained I’m in integration hell. Everything works fine on its own, but combining everything is horrible. I’ve been reassembling and trying to fix this stupid thing for so long. Anyway I’ve went through a few more revisions of some CAD and some more refinements and the gripper and camera is now mounted but this is just incredibly incredibly annoying :((((
Setup VR and Gripper, Robot Rapidly Disassembles my robot arm is broken I setup VR and fixed some more IK when I go into VR and try playing around, it instantly flies out and throws itself off the table and breaks into pieces. This is going to be fun to fix.
Finish Project Up :) I wrote a ton in the repository im tired :( https://github.com/ratmuds/revo
Ships:
I wanted to make a robot arm that punched above it’s weight. The price is pretty similar to smaller robot arms on Amazon that may not include cameras, which would need to be purchased seperately. The way this is achieved by using cheap servos, servos that are 100% NOT made for this purpose, and adding most of the functionality of a smart servo back by using a TON of PCBs. It was a lot of soldering. I just wanted to make something that had more features for less money :) This project was SUPER difficult for me, and pushed my limits a bit. The amount of tolerences especially for the stupid custom motor case and magnet and PCBs and the crazy mainboard and generally having everything play well together took so long, I had many days where I quit frustrated. I’m very happy about how it turned out though, even seeing the lots of shortcomings it has....
|
1793350237.982681
|
1793436637.982681
|
|
60464
|
Fast Delights by @Orbernator | Stardance
|
Orbernator
|
2
|
20.0
|
217
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T01:26:37Z", "hours": 17.0, "multiplier": 11.1, "payout": 194, "blessing": "neutral", "text": "I made the official Wiki for Fast Delights, this took WAAAAY longer than it should have, and is contaned in a seperate repo, for ease of use. View the Shipped Page here: https://orbernator.github.io/FastDelightsDocs/ And the source code here: https://github.com/Orbernator/FastDelightsDocs Enjoy my Suffering!", "repo": "https://github.com/Orbernator/FastDelights", "demo": "https://modrinth.com/mod/fast-delights"}, {"ship_num": 2, "ts": "2026-09-11T08:12:11Z", "hours": 3.0, "multiplier": 8.74, "payout": 23, "blessing": "neutral", "text": "This is the 0.3.1 release of the mod, just wanting to gauge feedback from the community! More to come over the remaining time of Stardance!", "repo": "https://github.com/Orbernator/FastDelights", "demo": "https://modrinth.com/mod/fast-delights"}]...
|
[{"post_id": 71547, "ts": "202 [{"post_id": 71547, "ts": "2026-09-21T01:24:51Z", "hours": 0.7153, "text": "Alright! Its all done! The Docs are up, and its time to ship! Viewable here: https://orbernator.github.io/FastDelightsDocs/ And source code is here: https://github.com/Orbernator/FastDelightsDocs Enjoy the fruits of my Suffering!"}, {"post_id": 71520, "ts": "2026-09-21T00:00:24Z", "hours": 1.3628, "text": "ALRIGHTY! Got the recipes all in! Just got to make the pages and I can FINALLY SHIP! Time to celebrate!"}, {"post_id": 69931, "ts": "2026-09-18T02:49:43Z", "hours": 2.3581, "text": "Added all cutting board recipes, and the shapeless ones! Just the cooking pots to go!"}, {"post_id": 69535, "ts": "2026-09-17T07:43:20Z", "hours": 2.2547, "text": "Finished fixing all the recipes, added smelting and smoking recipes."}, {"post_id": 68980, "ts": "2026-09-16T04:57:13Z", "hours": 0.8208, "text": "Alright! The Smelting method is in, the AI crap is fully gone, along with the 6 random branches it made and protected. (nothing a little –force couldnt fix) and now I need to rework the recipes to work with the new system. My fingers may fall off."}, {"post_id": 68557, "ts": "2026-09-15T10:05:59Z", "hours": 0.7447, "text": "Well, I have learned why you dont let AI code. In 30min it managed to cause around 6 different error messages, and then crash the site, then proceed to not fix it, but say it was fixed for around 15 minutes. I am never letting AI code by itself again. This has scarred me for life. Thanks to git, I can revert back to working version!"}, {"post_id": 68535, "ts": "2026-09-15T08:41:40Z", "hours": 1.1694, "text": "So, turns out, to get the smelting in, I have to rewrite the recipe files, and the other methods. So guess what wiki wont work right now. Mine. Nose back to the grindstone"}, {"post_id": 68492, "ts": "2026-09-15T06:56:40Z", "hours": 1.1147, "text": "So, all of the Shaped Crafting table recipes are in! Now I just have to add items from other mods so that its happy! Now, to work on the next ones!"}, {"post_id": 68471, "ts": "2026-09-15T05:17:29Z", "hours": 0.9483, "text": "Alright! All of the shaped crafting table recipes are in! Now I need to work out how to get the shapeless, furnace, smoker, cutting-board, cooking pots, and more in! This is taking a lot longer than I thought it would."}, {"post_id": 68420, "ts": "2026-09-15T02:49:47Z", "hours": 0.3225, "text": "Finally, all the items are in! Time to make the recipes, and individual pages!"}, {"post_id": 68370, "ts": "2026-09-15T00:57:58Z", "hours": 0.4306, "text": "Allllrighty! All of the Mod Items are in the database, now to add images, and then the shudders recipes. Wish me luck!"}, {"post_id": 68338, "ts": "2026-09-14T23:30:16Z", "hours": 0.5281, "text": "So far so good! I have about half of the items into the docs, then I just need to add the dependends, and then figure out how to add the custom recipes, like cutting, ect ect"}, {"post_id": 68318, "ts": "2026-09-14T22:37:46Z", "hours": 0.4572, "text": "Ok! So the framework for the wiki is down! Now, to start adding all the items in groans wish me luck guys"}, {"post_id": 67992, "ts": "2026-09-14T10:28:13Z", "hours": 0.9828, "text": "So, the AI code didn’t work, hands up who’s surprised! no-one puts their hands up so. 20m of troubleshootin later, and I figure out the problem! And it works! So, now to add everything!"}, {"post_id": 67874, "ts": "2026-09-14T05:13:54Z", "hours": 1.1494, "text": "Wow, this is longer than I have ever worked on a project without DevLogging, so here we go! So, because I am not, and will not copy-paste AI, I am writing it by hand! It has taken me almost 1h to write about 3 files with a LOOOT of mistakes. But. I have cut out, and reordered, and changed it to be my own. Anyway, nose back to the grindstone, and I hope that when I finish, all of these errors will go away!"}, {"post_id": 67830, "ts": "2026-09-14T02:49:25Z", "hours": 0.2703, "text": "So, after all that, what am I doin now? Well, I gave in and had to look up how to make the recipe page look good. BUT! I have standards! NO AI CODE HAS BEEN COPY PASTED (Which kinda defeats the whole point of AI making stuff shorter), and I am not just using its code. I am still writing it myself. But, that means I do have to update the AI declaration on my project :("}, {"post_id": 67815, "ts": "2026-09-14T02:16:05Z", "hours": 0.3389, "text": "Ok! So in the past 20m, I have made the framework of a website, pushed to github, and am currently setting up GitHub Actions. So far, so good. (Things are gonna go downhill, I can sense it)"}, {"post_id": 67759, "ts": "2026-09-14T00:24:47Z", "hours": 0.3181, "text": "Started work on the Docs, for Fast Delights. These will be held in a seperate repo, to hopefully not get them mixed up. I am using VitePress to make the docs, first time ever using it so, somthing is going to go wrong. Murphys Law and all that"}, {"post_id": 67731, "ts": "2026-09-13T23:01:53Z", "hours": 0.3033, "text": "First DevLog of the day! Committed my changes to Github, fixed the recipes, and added translations! All in all, good start to the day"}, {"post_id": 67219, "ts": "2026-09-13T08:31:56Z", "hours": 0.3767, "text": "Added recipe for Frickles, KFC eat your heart out."}, {"post_id": 66288, "ts": "2026-09-12T01:09:02Z", "hours": 0.2706, "text": "I have created the model of the Frickle, shown below"}, {"post_id": 66273, "ts": "2026-09-12T00:37:03Z", "hours": 0.2606, "text": "I am beginning work on my next update, 0.4.0, the vegtables update, when I see that KFC, now have a whole Pickle menu. So. Guess what I gotta add now? Thats right! Frickles!"}, {"post_id": 65824, "ts": "2026-09-11T07:01:34Z", "hours": 0.9403, "text": "Added new files, and working on adding a avacado plant! Because avacado’s taste really good!"}, {"post_id": 65211, "ts": "2026-09-10T05:49:04Z", "hours": 0.2642, "text": "Fixed the Creative tab not showing items, and changed the logo"}, {"post_id": 65183, "ts": "2026-09-10T04:05:16Z", "hours": 0.3019, "text": "Updated the readme, and patched a issue with the Recipes not saving. Uploading to Modrinth as I type this."}, {"post_id": 65171, "ts": "2026-09-10T03:36:53Z", "hours": 0.7556, "text": "Added the textures for the update, and created the recipes and languages."}, {"post_id": 65108, "ts": "2026-09-10T00:38:27Z", "hours": 0.3467, "text": "Added registrations for items, then added Recipes for sliced_onion and onion_rings"}]...
|
Title: Fast Delights by @Orbernator | Stardance
D Title: Fast Delights by @Orbernator | Stardance
Devlogs:
Added registrations for items, then added Recipes for sliced_onion and onion_rings
Added the textures for the update, and created the recipes and languages.
Updated the readme, and patched a issue with the Recipes not saving. Uploading to Modrinth as I type this.
Fixed the Creative tab not showing items, and changed the logo
Added new files, and working on adding a avacado plant! Because avacado’s taste really good!
I am beginning work on my next update, 0.4.0, the vegtables update, when I see that KFC, now have a whole Pickle menu. So. Guess what I gotta add now? Thats right! Frickles!
I have created the model of the Frickle, shown below
Added recipe for Frickles, KFC eat your heart out.
First DevLog of the day! Committed my changes to Github, fixed the recipes, and added translations! All in all, good start to the day
Started work on the Docs, for Fast Delights. These will be held in a seperate repo, to hopefully not get them mixed up. I am using VitePress to make the docs, first time ever using it so, somthing is going to go wrong. Murphys Law and all that
Ok! So in the past 20m, I have made the framework of a website, pushed to github, and am currently setting up GitHub Actions. So far, so good. (Things are gonna go downhill, I can sense it)
So, after all that, what am I doin now? Well, I gave in and had to look up how to make the recipe page look good. BUT! I have standards! NO AI CODE HAS BEEN COPY PASTED (Which kinda defeats the whole point of AI making stuff shorter), and I am not just using its code. I am still writing it myself. But, that means I do have to update the AI declaration on my project :(
Wow, this is longer than I have ever worked on a project without DevLogging, so here we go! So, because I am not, and will not copy-paste AI, I am writing it by hand! It has taken me almost 1h to write about 3 files with a LOOOT of mistakes. But. I have cut out, and reordered, and changed it to be my own. Anyway, nose back to the grindstone, and I hope that when I finish, all of these errors will go away!
So, the AI code didn’t work, hands up who’s surprised! no-one puts their hands up so. 20m of troubleshootin later, and I figure out the problem! And it works! So, now to add everything!
Ok! So the framework for the wiki is down! Now, to start adding all the items in groans wish me luck guys
So far so good! I have about half of the items into the docs, then I just need to add the dependends, and then figure out how to add the custom recipes, like cutting, ect ect
Allllrighty! All of the Mod Items are in the database, now to add images, and then the shudders recipes. Wish me luck!
Finally, all the items are in! Time to make the recipes, and individual pages!
Alright! All of the shaped crafting table recipes are in! Now I need to work out how to get the shapeless, furnace, smoker, cutting-board, cooking pots, and more in! This is taking a lot longer than I thought it would.
So, all of the Shaped Crafting table recipes are in! Now I just have to add items from other mods so that its happy! Now, to work on the next ones!
So, turns out, to get the smelting in, I have to rewrite the recipe files, and the other methods. So guess what wiki wont work right now. Mine. Nose back to the grindstone
Well, I have learned why you dont let AI code. In 30min it managed to cause around 6 different error messages, and then crash the site, then proceed to not fix it, but say it was fixed for around 15 minutes. I am never letting AI code by itself again. This has scarred me for life. Thanks to git, I can revert back to working version!
Alright! The Smelting method is in, the AI crap is fully gone, along with the 6 random branches it made and protected. (nothing a little –force couldnt fix) and now I need to rework the recipes to work with the new system. My fingers may fall off.
Finished fixing all the recipes, added smelting and smoking recipes.
Added all cutting board recipes, and the shapeless ones! Just the cooking pots to go!
ALRIGHTY! Got the recipes all in! Just got to make the pages and I can FINALLY SHIP! Time to celebrate!
Alright! Its all done! The Docs are up, and its time to ship! Viewable here: https://orbernator.github.io/FastDelightsDocs/ And source code is here: https://github.com/Orbernator/FastDelightsDocs Enjoy the fruits of my Suffering!
Ships:
This is the 0.3.1 release of the mod, just wanting to gauge feedback from the community! More to come over the remaining time of Stardance!
I made the official Wiki for Fast Delights, this took WAAAAY longer than it should have, and is contaned in a seperate repo, for ease of use. View the Shipped Page here: https://orbernator.github.io/FastDelightsDocs/ And the source code here: https://github.com/Orbernator/FastDelightsDocs Enjoy my Suffering!...
|
1793206426.763026
|
1793292826.763026
|
|
64308
|
Spiderman Media Pipe Project by @gowripaliwal | St Spiderman Media Pipe Project by @gowripaliwal | Stardance...
|
gowripaliwal
|
0
|
349.79
|
0
|
[]
|
[{"post_id": 71550, "ts": "202 [{"post_id": 71550, "ts": "2026-09-21T01:31:21Z", "hours": 349.7869, "text": "Built the model!"}]...
|
Title: Spiderman Media Pipe Project by @gowripaliw Title: Spiderman Media Pipe Project by @gowripaliwal | Stardance
Devlogs:
Built the model!...
|
1793058927.2390792
|
1793663727.2390792
|
|
15205
|
build your villain lair by @Neph | Stardance
|
Neph
|
0
|
0.83
|
0
|
[]
|
[{"post_id": 7156, "ts": "2026 [{"post_id": 7156, "ts": "2026-06-11T23:10:47Z", "hours": 0.8333, "text": "I worked a little on it before I added hackatime, but during the time I had hackatime on the project, I changed some code I had errors in and added the two starting rooms, along with adding a gold amount. I have a small ui to just test the code out, nothing permanent yet :D"}]...
|
Title: build your villain lair by @Neph | Stardanc Title: build your villain lair by @Neph | Stardance
Devlogs:
I worked a little on it before I added hackatime, but during the time I had hackatime on the project, I changed some code I had errors in and added the two starting rooms, along with adding a gold amount. I have a small ui to just test the code out, nothing permanent yet :D...
|
1792788641.1046271
|
1793393441.1046271
|
|
42968
|
TriMed by @FloppyBirdFly | Stardance
|
FloppyBirdFly
|
0
|
5.86
|
0
|
[]
|
[{"post_id": 71563, "ts": "202 [{"post_id": 71563, "ts": "2026-09-21T02:01:09Z", "hours": 1.7253, "text": "Haven’t been able to work on stardance because of school, but I did some finishing touches today and printed out the first full version of the bottle. I think I’m ready to ship. I’m probably going to turn this into a multi-project thing so I can at least get some stardust before this is over."}, {"post_id": 40590, "ts": "2026-08-04T07:37:07Z", "hours": 2.3, "text": "Little Fixes: Devlog 2 Today I almost finished the pill bottle. I figured out the snapping mechanism and made the lid. I’m pretty new to Fusion so I kinda messed up the threads and will have to fix them tomorrow. I’ll also have to add some finishing touches and make it look a bit prettier."}, {"post_id": 39914, "ts": "2026-08-03T06:56:07Z", "hours": 1.8342, "text": "Devlog 1. I started working on designing a 3 section pill organizer to make it easier to carry medications around. I just finished the main body and this revolving thing in the center that makes it easier to take out only one medication at a time. The only problem is that right now it rotates freely, but I want it to snap to each of the 3 sections, I really don’t know how to do this. If anyone has any ideas, please tell me."}]...
|
Title: TriMed by @FloppyBirdFly | Stardance
Devlo Title: TriMed by @FloppyBirdFly | Stardance
Devlogs:
Devlog 1. I started working on designing a 3 section pill organizer to make it easier to carry medications around. I just finished the main body and this revolving thing in the center that makes it easier to take out only one medication at a time. The only problem is that right now it rotates freely, but I want it to snap to each of the 3 sections, I really don’t know how to do this. If anyone has any ideas, please tell me.
Little Fixes: Devlog 2 Today I almost finished the pill bottle. I figured out the snapping mechanism and made the lid. I’m pretty new to Fusion so I kinda messed up the threads and will have to fix them tomorrow. I’ll also have to add some finishing touches and make it look a bit prettier.
Haven’t been able to work on stardance because of school, but I did some finishing touches today and printed out the first full version of the bottle. I think I’m ready to ship. I’m probably going to turn this into a multi-project thing so I can at least get some stardust before this is over....
|
1793195684.526843
|
1793800484.526843
|
|
47119
|
Polaris - TVC Rocket by @Sreeni | Stardance
|
Sreeni
|
0
|
20.25
|
0
|
[]
|
[{"post_id": 71571, "ts": "202 [{"post_id": 71571, "ts": "2026-09-21T02:22:47Z", "hours": 1.1, "text": "So today I worked on integration, I first began by cutting out the holes for the servo motors to fit and then I installed the tvc mount into the main airframe, everything went pretty well although I overestimated how much of teh cardboard I needed to cut out and made a pretty oversized hole but it fine, My current servo push rods dont really work in the current airframe so I need to make new ones, other than that the resistors I ordered last time still haven’t shipped im going to call digikey customer support and figure out whats going on, I also have to finish assembling the rest of the components and then integrate everythign for its first test flight."}, {"post_id": 66913, "ts": "2026-09-12T21:32:06Z", "hours": 1.8339, "text": "So today I began assembling that actual flight computer, Most of the parts arrived a while ago but I only have time on weekends to work on projects because of school and plus im in my junior year right now. I took a while to plan everything out because I would only have around 2 hours until the solder paste dried so when I put the solder paste on I began speedrunning, Most of the components went smoothly but the really small capacitors were kinda annoying, I still have a bunch of resistors and capacitors I havent placed yet but I placed the majority of the main parts. I haven’t started assembly on the backside of the pcb so that will be next week. I also have some solder bridges on the stm32 chip and I bent one of the pins but I think I can rebend it so it should be fine.Also I realized that I had messed up during ordering one of the parts I had only ordered 5 of the resistors even though I needed 19, I dont know how I missed this but its alright because I had enough money left in my grant to buy the extra so that will also arrive next week and thats basically it. (Also note to reviewer during my lapse for this session I left for around 30 minutes to eat lunch and forgot to pause so you can remove the time accoridngly if thats possible)"}, {"post_id": 62608, "ts": "2026-09-06T02:32:44Z", "hours": 1.95, "text": "So today my 3d printed parts arrived which was awesome, My Body tube had also arrived a while before that so I got to assembling, I first started with the landing mount and assemebled using m3 screws, I used nylon for most of them and heat set inserts but I might switch to steel screws, I used some rubberbands I had lying around and tested wheter it works and it did kinda? there was a weird issue where the whole rocket tilted a little and put all the weight on 3 legs instead of 4, This was probably because of warp in the 3d print probably, I added some blue painter tape to the edges to help with this Another thing I found was that the landing legs themselves acted as a spring, When you dropped it from a certain height or put enough pressure the leg itself bent. I actually like this accidental design because it helps with softer landings The TVC mount was where I messed up. I realized that I hadn’t left space for the bottom y axis mount to move the way it should and structurally there were some issues also, to solve this I used a soldering iron to melt at the plastic and created a messy area for it the move and that helped pretty well, I have to redesign this in v2. Besides that I also forgot to tell my printer I needed my avionics bay printed and that I needed 2 tvc rockets not one, so i’ve decided that I’m going to focus more on getting one succesful flight up and parachute or do something like bps space did with echo and drop the rocket from a drone at high altitudue and try to land it (this is probably what im going to do). The rest of my parts are going arrive in the coming week but school also started so progress will be slow."}, {"post_id": 54781, "ts": "2026-08-25T21:53:33Z", "hours": 2.7669, "text": "Today I worked on finalizing the bom, and I tidied up my repo, I added the old firmware I had coded with the flight computer but I’ll have to update it, I also came across this really weird issue with the pcb, last time I placed a fake order just to see the final price it came out to $350, but today somehow its 270? and also my shipping and customs alone are close to $100 which is crazy, I’m going to fix this pcb issue and submit but thats all, I also made a wiring diagram for the launchpad stuff Edit: So I sent a question in the help channel and I decided that im going to be assembling the pcb my self, this will be much harder but it’s worth it for the cost savings."}, {"post_id": 54014, "ts": "2026-08-24T19:11:48Z", "hours": 5.3372, "text": "Today was working mostly on my landing legs, I first got some inspiration from actual rockets like the falcon 9 and began designing. I first began by modeling the mount that will hold the legs and then worked on actual legs and struts, The main issues was making sure it fit proerly and wouldnt rub against the main ariframe, I made some cutouts in the landing mount to fit the servos, The landing legs will have rubber bands that act as spring and they will be held in the up position with a rubber band, Using a nichrome wire the rubber band will be heated and cut when I need it to deploy. Other than that the final steps will be making the wiring diagram for the launchpad updating github with my code and cad models. I also made a render with gemini that came out suprisingly well."}, {"post_id": 52744, "ts": "2026-08-23T02:28:46Z", "hours": 1.1167, "text": "I did some small work today, I first began by making my own water deluge system, I first made a container that fits under the rocket launch pad and has a small sumersible water pump that pushes water directly under where the motors engine heat will be concentrated, I did this to mainly to lengthen the lifetime of the launchpad because after a certain number of launches this will probably just be too damaged. I also chose the uno r4 edition as my board that will control all my electronics, with this I can control the 2 servos, 2 esp32 cams,5 lights on the launchpad much easier and from a safer distance. I also did some BOM work and figured what parts I would need, I’m hoping this is an x tier project, the flight computer itself is coming out to $230 with shipping so I’ll have to find ways to save costs. The final steps are to make a BOM and finish up the landing legs."}, {"post_id": 51252, "ts": "2026-08-20T19:47:38Z", "hours": 2.9169, "text": "Today was assembly day, I worked on first bringing all the parts together in onshape and I made sure to keep everything organized so its easier in the future for changes, I first began by making the rocket nose and tubing in onshape. I then got a 3d model of my flight controller pcb and made my own avionics bay for it, I made sure to leave space and areas for wiring. After that I began by making the complete assembly, I added the servos to the tvc mount and had to change some dimenions to make sure it fit properly, Then I made a full rocket model, and made sure to add the servos for the control arms on the launchpad. I ran into some dimensions issues but I went back and changed those pretty easily. I then got the lights and cameras in my cad. I added 2 esp32 camera modules to the launchpad to record everything, I’m not sure if these will be fixed posistions ill probably move them around. I als added some WS2812 Breakout boards around the launchpad, and I also want to recreate the strobing red light effect thats used on the blue origin launchpad before it blew up, I didnt add the rgb strip light to the main strucutre yet and ill have to do that later. But that’s basically it, I’m also planning on adding aluminium protection on the flame trench just 5mm plates, and i’m going to add a small water pump to help out more with cooling. The final steps for this project will be making the BOM, writing the code, and finalizing cad."}, {"post_id": 50587, "ts": "2026-08-19T19:53:16Z", "hours": 1.8358, "text": "Today I mainly focused on the TVC mount, There were many avalible models online and using them as refrence I created this, The mount uses sg90 tower servos, and m3 push rods. For the rocket motor I chose the F15 because it has a bunch of documentation on it and has a very predicatable thrust curve. I first began by modeling the motor mount and added a engine block at the top to prevent the motor from flying into the rocket. I then worked on the x and y axis and made sure that everythign was specced to the right dimensions to decrease slack. Other than that I also did some small work on the open rocket sim but didnt record like usual. The final steps will be to design the landing legs which will proably take the longest and finish up the launch pad, and create a full assembly."}, {"post_id": 49676, "ts": "2026-08-18T15:49:58Z", "hours": 0.8386, "text": "Today I did some basic ground work. I first began by looking at my old flight computer I made this during blueprint but I never got to submitting which I don’t know why I didnt, beside that I added some silkscreen on the front and I’m going to add some on the back. After I began work on my rocket, So the main thing I had to think about was how the first and second motor ignition would work, I saw some examples like how joe barnard did with his scout e rocket but I had a diffrent idea. I split my rocket basically into 2 stages The first stage has the ascent motor and is connected to the actual main rocket via a coupler, There is also a tvc mount for this stage which is connected to the flight computer via jumper wires. After the ascent motor is burned out the rocket reaches apoggee and starts coming back down and after a set time a pyro charge ignites the 2nd motor this will basically hot burn the first ascent stage off the rocket, To protect the first stage I’m going to add a thin aluminium bulkhead with a layer of some sort of heat insulation, and during the seperation The servo wires for the first stage tvc will just pull apart. I’m still thinking about wheter I will just let the first stage just fall or find a way for a parachute to fit safely, If anybody has some way I could bring it safely down I would love to here it, I’m going to start working on the landing legs soon and I need to work on a small emergency parachute for the first stage incase the motor doesnt light or the legs don’t come out as intended."}, {"post_id": 47748, "ts": "2026-08-15T21:35:52Z", "hours": 0.55, "text": "This is my first journal entry in what will probably be a really long project, My current plan for this project is to make a tvc rocket that can take off and land by itself, and make a custom launchpad with it. Today I just looked through my old flight computer model I had made and added some silkscreen I also think I’ll probably add a pyro charge to it? I also made rough cad modelling for my launch pad taking inspiration from bps space’s launch pads. I’m going to work a bit more today on the launch pad model and actually make itnto something like a real launchpad."}]...
|
Title: Polaris - TVC Rocket by @Sreeni | Stardance Title: Polaris - TVC Rocket by @Sreeni | Stardance
Devlogs:
This is my first journal entry in what will probably be a really long project, My current plan for this project is to make a tvc rocket that can take off and land by itself, and make a custom launchpad with it. Today I just looked through my old flight computer model I had made and added some silkscreen I also think I’ll probably add a pyro charge to it? I also made rough cad modelling for my launch pad taking inspiration from bps space’s launch pads. I’m going to work a bit more today on the launch pad model and actually make itnto something like a real launchpad.
Today I did some basic ground work. I first began by looking at my old flight computer I made this during blueprint but I never got to submitting which I don’t know why I didnt, beside that I added some silkscreen on the front and I’m going to add some on the back. After I began work on my rocket, So the main thing I had to think about was how the first and second motor ignition would work, I saw some examples like how joe barnard did with his scout e rocket but I had a diffrent idea. I split my rocket basically into 2 stages The first stage has the ascent motor and is connected to the actual main rocket via a coupler, There is also a tvc mount for this stage which is connected to the flight computer via jumper wires. After the ascent motor is burned out the rocket reaches apoggee and starts coming back down and after a set time a pyro charge ignites the 2nd motor this will basically hot burn the first ascent stage off the rocket, To protect the first stage I’m going to add a thin aluminium bulkhead with a layer of some sort of heat insulation, and during the seperation The servo wires for the first stage tvc will just pull apart. I’m still thinking about wheter I will just let the first stage just fall or find a way for a parachute to fit safely, If anybody has some way I could bring it safely down I would love to here it, I’m going to start working on the landing legs soon and I need to work on a small emergency parachute for the first stage incase the motor doesnt light or the legs don’t come out as intended.
Today I mainly focused on the TVC mount, There were many avalible models online and using them as refrence I created this, The mount uses sg90 tower servos, and m3 push rods. For the rocket motor I chose the F15 because it has a bunch of documentation on it and has a very predicatable thrust curve. I first began by modeling the motor mount and added a engine block at the top to prevent the motor from flying into the rocket. I then worked on the x and y axis and made sure that everythign was specced to the right dimensions to decrease slack. Other than that I also did some small work on the open rocket sim but didnt record like usual. The final steps will be to design the landing legs which will proably take the longest and finish up the launch pad, and create a full assembly.
Today was assembly day, I worked on first bringing all the parts together in onshape and I made sure to keep everything organized so its easier in the future for changes, I first began by making the rocket nose and tubing in onshape. I then got a 3d model of my flight controller pcb and made my own avionics bay for it, I made sure to leave space and areas for wiring. After that I began by making the complete assembly, I added the servos to the tvc mount and had to change some dimenions to make sure it fit properly, Then I made a full rocket model, and made sure to add the servos for the control arms on the launchpad. I ran into some dimensions issues but I went back and changed those pretty easily. I then got the lights and cameras in my cad. I added 2 esp32 camera modules to the launchpad to record everything, I’m not sure if these will be fixed posistions ill probably move them around. I als added some WS2812 Breakout boards around the launchpad, and I also want to recreate the strobing red light effect thats used on the blue origin launchpad before it blew up, I didnt add the rgb strip light to the main strucutre yet and ill have to do that later. But that’s basically it, I’m also planning on adding aluminium protection on the flame trench just 5mm plates, and i’m going to add a small water pump to help out more with cooling. The final steps for this project will be making the BOM, writing the code, and finalizing cad.
I did some small work today, I first began by making my own water deluge system, I first made a container that fits under the rocket launch pad and has a small sumersible water pump that pushes water directly under where the motors engine heat will be concentrated, I did this to mainly to lengthen the lifetime of the launchpad because after a certain number of launches this will probably just be too damaged. I also chose the uno r4 edition as my board that will control all my electronics, with this I can control the 2 servos, 2 esp32 cams,5 lights on the launchpad much easier and from a safer distance. I also did some BOM work and figured what parts I would need, I’m hoping this is an x tier project, the flight computer itself is coming out to $230 with shipping so I’ll have to find ways to save costs. The final steps are to make a BOM and finish up the landing legs.
Today was working mostly on my landing legs, I first got some inspiration from actual rockets like the falcon 9 and began designing. I first began by modeling the mount that will hold the legs and then worked on actual legs and struts, The main issues was making sure it fit proerly and wouldnt rub against the main ariframe, I made some cutouts in the landing mount to fit the servos, The landing legs will have rubber bands that act as spring and they will be held in the up position with a rubber band, Using a nichrome wire the rubber band will be heated and cut when I need it to deploy. Other than that the final steps will be making the wiring diagram for the launchpad updating github with my code and cad models. I also made a render with gemini that came out suprisingly well.
Today I worked on finalizing the bom, and I tidied up my repo, I added the old firmware I had coded with the flight computer but I’ll have to update it, I also came across this really weird issue with the pcb, last time I placed a fake order just to see the final price it came out to $350, but today somehow its 270? and also my shipping and customs alone are close to $100 which is crazy, I’m going to fix this pcb issue and submit but thats all, I also made a wiring diagram for the launchpad stuff Edit: So I sent a question in the help channel and I decided that im going to be assembling the pcb my self, this will be much harder but it’s worth it for the cost savings.
So today my 3d printed parts arrived which was awesome, My Body tube had also arrived a while before that so I got to assembling, I first started with the landing mount and assemebled using m3 screws, I used nylon for most of them and heat set inserts but I might switch to steel screws, I used some rubberbands I had lying around and tested wheter it works and it did kinda? there was a weird issue where the whole rocket tilted a little and put all the weight on 3 legs instead of 4, This was probably because of warp in the 3d print probably, I added some blue painter tape to the edges to help with this Another thing I found was that the landing legs themselves acted as a spring, When you dropped it from a certain height or put enough pressure the leg itself bent. I actually like this accidental design because it helps with softer landings The TVC mount was where I messed up. I realized that I hadn’t left space for the bottom y axis mount to move the way it should and structurally there were some issues also, to solve this I used a soldering iron to melt at the plastic and created a messy area for it the move and that helped pretty well, I have to redesign this in v2. Besides that I also forgot to tell my printer I needed my avionics bay printed and that I needed 2 tvc rockets not one, so i’ve decided that I’m going to focus more on getting one succesful flight up and parachute or do something like bps space did with echo and drop the rocket from a drone at high altitudue and try to land it (this is probably what im going to do). The rest of my parts are going arrive in the coming week but school also started so progress will be slow.
So today I began assembling that actual flight computer, Most of the parts arrived a while ago but I only have time on weekends to work on projects because of school and plus im in my junior year right now. I took a while to plan everything out because I would only have around 2 hours until the solder paste dried so when I put the solder paste on I began speedrunning, Most of the components went smoothly but the really small capacitors were kinda annoying, I still have a bunch of resistors and capacitors I havent placed yet but I placed the majority of the main parts. I haven’t started assembly on the backside of the pcb so that will be next week. I also have some solder bridges on the stm32 chip and I bent one of the pins but I think I can rebend it so it should be fine.Also I realized that I had messed up during ordering one of the parts I had only ordered 5 of the resistors even though I needed 19, I dont know how I missed this but its alright because I had enough money left in my grant to buy the extra so that will also arrive next week and thats basically it. (Also note to reviewer during my lapse for this session I left for around 30 minutes to eat lunch and forgot to pause so you can remove the time accoridngly if thats possible)
So today I worked on integration, I first began by cutting out the holes for the servo motors to fit and then I installed the tvc mount into the main airframe, everything went pretty well although I overestimated how much of teh cardboard I needed to cut out and made a pretty oversized hole but it fine, My current servo push rods dont really work in the current airframe so I need to make new ones, other than that the resistors I ordered last time still haven’t shipped im going to call digikey customer support and figure out whats going on, I also have to finish assembling the rest of the components and then integrate everythign for its first test flight....
|
1793170062.1728954
|
1793774862.1728954
|
|
63981
|
RocketRikshaw by @teerth | Stardance
|
teerth
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T02:39:52Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "If this is my view outside the auto, you best believe I’m becoming the best auto driver that has ever lived. I have worked with layers on html before, but I got a good taste of layering here because it took me so many trials and errors with all the different z-index to pick the right ones also putting the gradient in the background was a bit tough but I accomplished it anyway I aim to update this in future to add more new tab like features on this website", "repo": "https://github.com/spiceTheCode/rocketRikshaw", "demo": "https://spicethecode.github.io/rocketRikshaw/"}]...
|
[{"post_id": 71572, "ts": "202 [{"post_id": 71572, "ts": "2026-09-21T02:24:06Z", "hours": 2.1047, "text": "rocket rikshaw is now in space!!!! We are now done with a good nasa apod show website!!! not the best nasa apod for demo tho :( added a peek out button so that users can have full fiew also!"}, {"post_id": 71099, "ts": "2026-09-20T09:20:55Z", "hours": 1.3125, "text": "so the auto overlay is here, and the api works fine too, all i need it to just fix some sizing and make the api url media as big as the background ON IT!!"}]...
|
Title: RocketRikshaw by @teerth | Stardance
Devlo Title: RocketRikshaw by @teerth | Stardance
Devlogs:
so the auto overlay is here, and the api works fine too, all i need it to just fix some sizing and make the api url media as big as the background ON IT!!
rocket rikshaw is now in space!!!! We are now done with a good nasa apod show website!!! not the best nasa apod for demo tho :( added a peek out button so that users can have full fiew also!
Ships:
If this is my view outside the auto, you best believe I’m becoming the best auto driver that has ever lived. I have worked with layers on html before, but I got a good taste of layering here because it took me so many trials and errors with all the different z-index to pick the right ones also putting the gradient in the background was a bit tough but I accomplished it anyway I aim to update this in future to add more new tab like features on this website...
|
1793213470.8508031
|
1793299870.8508031
|
|
4053
|
Star-Catcher by @OrangeJuice | Stardance
|
OrangeJuice
|
2
|
18.0
|
121
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-23T01:14:02Z", "hours": 7.0, "multiplier": 14.59, "payout": 121, "blessing": "neutral", "text": "Star-Catcher This is a WarioWare styled game that includes: 4 minigames: A platformer A clicker A reaction test And, catching the falling stars from the sky! Sound effects and background music Custom made pixel assets! Information on how to play each minigame is on the Itch.io and github pages. Hope you enjoy!", "repo": "https://github.com/Orangejuiceonntop/StarCatcher", "demo": "https://orangejuiceontop.itch.io/star-catcher"}, {"ship_num": 2, "ts": "2026-07-24T09:20:48Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Star-Catcher “Catch the stars!” - A WarioWare styled game This game includes 3 minigames: A platformer, use arrow keys and space A clicker, use mouse/trackpad A reaction test, use mouse/trackpad I hope you enjoy this game as much as I did making it!!", "repo": "https://github.com/Orangejuiceonntop/StarCatcher", "demo": "https://orangejuiceontop.itch.io/star-catcher"}]...
|
[{"post_id": 71573, "ts": "202 [{"post_id": 71573, "ts": "2026-09-21T02:30:03Z", "hours": 1.0211, "text": "Star-Catcher - Last Devlog “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s been a looong time since the last devlog. Honestly, I’ve been thinking about this project for awhile now, but I’ve decided to ship this project. What’s new Made the meteor icon for 4th minigame Animations!!!! Meteor animation New sprite walking animation! Minor bug fixes Extra info Thanks for everyone who enjoyed my devlogs and this project, It was really nice seeing you guys enjoy it! I wish I could’ve added more to this game, but I’m happy with how it ended up. Maybe one day I’ll return to this game. Thank you for reading. Until next time!"}, {"post_id": 56957, "ts": "2026-08-29T00:18:04Z", "hours": 3.6289, "text": "Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info Sooooo yea it’s been a while lmao. Genuinely I’ve been working on the 4th mini game for the longest cause I could figure out how to connect signals properly😭. But, we’re past that now! (thankfully) What’s new SO most of my effort has been put into making the 4th level so not much has been added Created and finished the 4th minigame Collect 8 stars in under 20 seconds, dodge the meteors (meteor icon hasn’t been drawn yet 💔) Minor bug fixes Appreciation section As I was making this minigame I saw that @lantyrn created a minigame similar to this! Their project really helped me fix my signal connecting issues cause I genuinely had no idea what I was doing. So, thank you latyrn for your amazing project (Starry Scramble) – Go check it out it’s really cool and well made! To-do Draw icons for meteor and new star icons Also finish making sprite animation while I’m at it Figure out how to fade out music using tweens Draw some more backgrounds Make the game more enjoyable to play! If you have any suggestions, let me know. That’s it for now. Until next time!"}, {"post_id": 49320, "ts": "2026-08-18T02:19:34Z", "hours": 2.2697, "text": "Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s back!!! When I saw the continuation to the WarioWare mission, I decided to do it! I haven’t been able to add a lot cause I’ve been busy these days. What’s new Sound effects! I added a lot of sound effects to make the gameplay feel more interactive/immersive Button clicks, star shines, etc. Added music So far only the settings and level scene have music I’ve been trying to find music for the levels and start screen but have been unsuccessful so far😞 I might create some custom music for it Updated settings added volume sliders Created a base for the 4th minigames The idea is that you catch the stars that fall from the sky while avoiding meteors. You lose the minigame if you touch the meteor To-do Finish 4th minigame Update character sprite Add music to minigames That’s it for now. Until next time!"}, {"post_id": 33950, "ts": "2026-07-24T09:13:46Z", "hours": 0.3611, "text": "Star-Catcher — It’s finally here!! “Catch the Stars!” - Game made for the WarioWare Mission Last Devlog Star-Catcher is done! It feels a bit bittersweet, but I’m glad that I’m finished with this project. Thank you for everyone who supported thus far!! What’s new Finally drew the win screen background Updated the readme Set up the itch.io page Extra info Once again, I just want to thank everyone who liked or commented on my posts! If you see this, go ahead and check it out on my ship post. Until next time!"}, {"post_id": 33785, "ts": "2026-07-23T23:54:40Z", "hours": 3.2381, "text": "Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s almost done!!! My motivation has been wavering a bit which prevented me from working on this project for a while, but we pushed through😎. New minigame! The third and last minigame. It was originally going to be a whack-a-mole type game but I realized that was above my skill level and I decided to make a clicking/reaction game instead. You have to click on the star 15 times to progress A black hole will appear. If you click on it, you lose a life Text indicating when to click or stop with custom animation! (Inspired by @Gabl ’s Goose Games - Go check it out!) What else is new Created lose screen with retry button Lives and minigames done resets when button is clicked Created win screen with play again+menu buttons Background hasn’t been drawn yet The sprite now changes directions when you move left/right Bug fixes Extra info I decided to keep the title screen image, but I might change the title design. I did have some ideas because I was way too overambitious, but I’m happy with how the game turned out! I hope you do too. I’ll make one last devlog before shipping after I write my Readme and draw the winner’s screen Thank you for all the support so far. Until next time!"}, {"post_id": 28591, "ts": "2026-07-14T22:42:01Z", "hours": 1.7711, "text": "Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info I haven’t been working on this game as much as I should lately, but I swear imma lock in 😭. I made some drawings for the background and made a new banner! I was going to use the banner image for the title screen of the game, but the dimensions didn’t match up so when I resized it, the image looked off. What’s New Mainly focused on visual aspects of the game Added floating animations to the stars Changed the background of the level/time scene and settings page Replaced the old font with a new pixel font To do Draw title screen background Create win/lose screens Add character walking animations Make 3rd minigame Until next time!"}, {"post_id": 23219, "ts": "2026-07-06T01:21:50Z", "hours": 3.2775, "text": "Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background info I said I’d finish making the first minigame yesterday, but I severely underestimated how hard it would be. Building the game was easy but coding it was horrible. The timer wouldn’t work and would automatically close the player. I ended up moving on to the second minigame (image on the right). Making it went smoothly which gave me enough motivation to finish making the first minigame. I still don’t know what was wrong with my code, I just ended up deleting the whole script and rewriting it. What’s New 2 mini games created!! A platformer where you collect 3 stars in under 10 seconds A clicked where you click on 5 stars in under 7 seconds To do Next time I work on this, I want to focus on how the game looks visually cause doing the coding this session was exhausting. Make/draw new background Make a custom title on the home page Change how the platforms look on the platformer minigame Add character walking animation That’s all for now. Until next time!!"}, {"post_id": 22399, "ts": "2026-07-04T21:22:44Z", "hours": 1.0506, "text": "Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background Info This session, I mostly worked on the coding. When I saw the code I needed to write I lowkey got scared but it all worked out in the end 😎 What’s new Nothing has been added visually besides the “lives left” image being replaced. It’s a net now! (To catch the stars ofc) Timer on level scene now works Added level count Created in game timer To do Create first level (platformer minigame) Create settings page Draw a background and banner Extra I drew the character sprite! She’s a little girl who carries an oversized net and LOVES stars. I drew a front-facing version that I’m probably not going to use but I wanted to show it off still. It’s not perfect cause I still don’t know how to make pixel art, but I hope yall like it!! The next devlog will be later today after I make the first minigame. Until then!"}, {"post_id": 19638, "ts": "2026-07-01T00:46:16Z", "hours": 1.1044, "text": "Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background info New project!!!! When I saw this mission I was so excited because I finally have a reason to learn how to make a game. I wanted this to be a space-themed game with a pixel art style. The idea is you play as a little girl with a net who runs around catching stars. What I have so far So far, I only have the menu screen and the “loading” screen. It’s very much a work in progress, and I plan to change the background and the “lives” later on. Whats next I plan to make an the first actual level scene next (I can finally use my star drawings I made the other day :D). This is my first time using Godot/making a game in general, so I hope I can make a good game! To do Make first level scene Change background Make/draw character sprite Make “lives” drawing (I’ll probably make it a net)"}]...
|
Title: Star-Catcher by @OrangeJuice | Stardance
D Title: Star-Catcher by @OrangeJuice | Stardance
Devlogs:
Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background info New project!!!! When I saw this mission I was so excited because I finally have a reason to learn how to make a game. I wanted this to be a space-themed game with a pixel art style. The idea is you play as a little girl with a net who runs around catching stars. What I have so far So far, I only have the menu screen and the “loading” screen. It’s very much a work in progress, and I plan to change the background and the “lives” later on. Whats next I plan to make an the first actual level scene next (I can finally use my star drawings I made the other day :D). This is my first time using Godot/making a game in general, so I hope I can make a good game! To do Make first level scene Change background Make/draw character sprite Make “lives” drawing (I’ll probably make it a net)
Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background Info This session, I mostly worked on the coding. When I saw the code I needed to write I lowkey got scared but it all worked out in the end 😎 What’s new Nothing has been added visually besides the “lives left” image being replaced. It’s a net now! (To catch the stars ofc) Timer on level scene now works Added level count Created in game timer To do Create first level (platformer minigame) Create settings page Draw a background and banner Extra I drew the character sprite! She’s a little girl who carries an oversized net and LOVES stars. I drew a front-facing version that I’m probably not going to use but I wanted to show it off still. It’s not perfect cause I still don’t know how to make pixel art, but I hope yall like it!! The next devlog will be later today after I make the first minigame. Until then!
Star-Catcher “Collect the Stars!” - Game made for the WarioWare Mission Background info I said I’d finish making the first minigame yesterday, but I severely underestimated how hard it would be. Building the game was easy but coding it was horrible. The timer wouldn’t work and would automatically close the player. I ended up moving on to the second minigame (image on the right). Making it went smoothly which gave me enough motivation to finish making the first minigame. I still don’t know what was wrong with my code, I just ended up deleting the whole script and rewriting it. What’s New 2 mini games created!! A platformer where you collect 3 stars in under 10 seconds A clicked where you click on 5 stars in under 7 seconds To do Next time I work on this, I want to focus on how the game looks visually cause doing the coding this session was exhausting. Make/draw new background Make a custom title on the home page Change how the platforms look on the platformer minigame Add character walking animation That’s all for now. Until next time!!
Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info I haven’t been working on this game as much as I should lately, but I swear imma lock in 😭. I made some drawings for the background and made a new banner! I was going to use the banner image for the title screen of the game, but the dimensions didn’t match up so when I resized it, the image looked off. What’s New Mainly focused on visual aspects of the game Added floating animations to the stars Changed the background of the level/time scene and settings page Replaced the old font with a new pixel font To do Draw title screen background Create win/lose screens Add character walking animations Make 3rd minigame Until next time!
Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s almost done!!! My motivation has been wavering a bit which prevented me from working on this project for a while, but we pushed through😎. New minigame! The third and last minigame. It was originally going to be a whack-a-mole type game but I realized that was above my skill level and I decided to make a clicking/reaction game instead. You have to click on the star 15 times to progress A black hole will appear. If you click on it, you lose a life Text indicating when to click or stop with custom animation! (Inspired by @Gabl ’s Goose Games - Go check it out!) What else is new Created lose screen with retry button Lives and minigames done resets when button is clicked Created win screen with play again+menu buttons Background hasn’t been drawn yet The sprite now changes directions when you move left/right Bug fixes Extra info I decided to keep the title screen image, but I might change the title design. I did have some ideas because I was way too overambitious, but I’m happy with how the game turned out! I hope you do too. I’ll make one last devlog before shipping after I write my Readme and draw the winner’s screen Thank you for all the support so far. Until next time!
Star-Catcher — It’s finally here!! “Catch the Stars!” - Game made for the WarioWare Mission Last Devlog Star-Catcher is done! It feels a bit bittersweet, but I’m glad that I’m finished with this project. Thank you for everyone who supported thus far!! What’s new Finally drew the win screen background Updated the readme Set up the itch.io page Extra info Once again, I just want to thank everyone who liked or commented on my posts! If you see this, go ahead and check it out on my ship post. Until next time!
Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s back!!! When I saw the continuation to the WarioWare mission, I decided to do it! I haven’t been able to add a lot cause I’ve been busy these days. What’s new Sound effects! I added a lot of sound effects to make the gameplay feel more interactive/immersive Button clicks, star shines, etc. Added music So far only the settings and level scene have music I’ve been trying to find music for the levels and start screen but have been unsuccessful so far😞 I might create some custom music for it Updated settings added volume sliders Created a base for the 4th minigames The idea is that you catch the stars that fall from the sky while avoiding meteors. You lose the minigame if you touch the meteor To-do Finish 4th minigame Update character sprite Add music to minigames That’s it for now. Until next time!
Star-Catcher “Catch the Stars!” - Game made for the WarioWare Mission Background info Sooooo yea it’s been a while lmao. Genuinely I’ve been working on the 4th mini game for the longest cause I could figure out how to connect signals properly😭. But, we’re past that now! (thankfully) What’s new SO most of my effort has been put into making the 4th level so not much has been added Created and finished the 4th minigame Collect 8 stars in under 20 seconds, dodge the meteors (meteor icon hasn’t been drawn yet 💔) Minor bug fixes Appreciation section As I was making this minigame I saw that @lantyrn created a minigame similar to this! Their project really helped me fix my signal connecting issues cause I genuinely had no idea what I was doing. So, thank you latyrn for your amazing project (Starry Scramble) – Go check it out it’s really cool and well made! To-do Draw icons for meteor and new star icons Also finish making sprite animation while I’m at it Figure out how to fade out music using tweens Draw some more backgrounds Make the game more enjoyable to play! If you have any suggestions, let me know. That’s it for now. Until next time!
Star-Catcher - Last Devlog “Catch the Stars!” - Game made for the WarioWare Mission Background info It’s been a looong time since the last devlog. Honestly, I’ve been thinking about this project for awhile now, but I’ve decided to ship this project. What’s new Made the meteor icon for 4th minigame Animations!!!! Meteor animation New sprite walking animation! Minor bug fixes Extra info Thanks for everyone who enjoyed my devlogs and this project, It was really nice seeing you guys enjoy it! I wish I could’ve added more to this game, but I’m happy with how it ended up. Maybe one day I’ll return to this game. Thank you for reading. Until next time!
Ships:
Star-Catcher “Catch the stars!” - A WarioWare styled game This game includes 3 minigames: A platformer, use arrow keys and space A clicker, use mouse/trackpad A reaction test, use mouse/trackpad I hope you enjoy this game as much as I did making it!!
Star-Catcher This is a WarioWare styled game that includes: 4 minigames: A platformer A clicker A reaction test And, catching the falling stars from the sky! Sound effects and background music Custom made pixel assets! Information on how to play each minigame is on the Itch.io and github pages. Hope you enjoy!...
|
1793321785.6940055
|
1793408185.6940055
|
|
17600
|
Frictionless by @Abhi_Yadav13 | Stardance
|
Abhi_Yadav13
|
0
|
1.33
|
0
|
[]
|
[{"post_id": 71579, "ts": "202 [{"post_id": 71579, "ts": "2026-09-21T02:50:39Z", "hours": 0.7031, "text": "AI Homework Organizer - haven’t touched this in a bit cuz of school but fun getting back on this, currently testing and trying to remember where I left off lol"}, {"post_id": 20427, "ts": "2026-07-02T00:52:16Z", "hours": 0.6236, "text": "AI Homework Organizer - worked on the index n style n script, used slight AI when it came to debugging and things"}]...
|
Title: Frictionless by @Abhi_Yadav13 | Stardance
Title: Frictionless by @Abhi_Yadav13 | Stardance
Devlogs:
AI Homework Organizer - worked on the index n style n script, used slight AI when it came to debugging and things
AI Homework Organizer - haven’t touched this in a bit cuz of school but fun getting back on this, currently testing and trying to remember where I left off lol...
|
1792723863.3495665
|
1793328663.3495665
|
|
63917
|
AgroSentinel by @DavidSalas | Stardance
|
DavidSalas
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T13:16:09Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "AgroSentinel an autonomous AI agent for agricultural water-stress monitoring, built for Costa Rica’s San Carlos farming region. It follows a perceive-decide-act loop: field data (NDVI, soil moisture, crop type, growth stage) and real NASA climate data feed into deterministic FAO-56 agronomic calculations (reference evapotranspiration, soil water balance, real crop coefficients cited from a Costa Rican engineering thesis), and only then does Claude reason over that already-validated science to decide a dosed irrigation valve’s exact opening percentage, with factor-by-factor reasoning and a stated confidence level. The full system includes a Supabase-backed multi-user database with row-level security, a Telegram bot for natural-language reporting and proactive alerts, and a multi-agent negotiation system where neighboring farms in the same watershed autonomously negotiate shared water through an AI mediator Keeping the AI honest was harder than making it work. Early on, Claude was inventing plausible-sounding numbers (liters saved, days until crisis) with no formula behind them, we had to redesign the pipeline so all agronomic math is computed deterministically in code before Claude ever sees it, and Claude’s job became reasoning over validated data rather than generating numbers itself. That every scientific claim in the project is traceable to a real source Sign up with email or Google. Field data can be entered manually via sliders, so no sensors or drone are required to try a full analysis, pick a crop and soil type, adjust NDVI/humidity/temperature, and hit “Analyze” to see Claude’s real decision.", "repo": "https://github.com/whoisdavid22/whoisdavid22.github.io", "demo": "https://whoisdavid22.github.io/agrosentinel/#"}]...
|
[{"post_id": 71582, "ts": "202 [{"post_id": 71582, "ts": "2026-09-21T02:57:58Z", "hours": 3.4033, "text": "in progress"}, {"post_id": 71186, "ts": "2026-09-20T12:41:43Z", "hours": 7.6581, "text": "AgroSentinel is an autonomous AI agricultural monitoring agent that detects and manages crop water stress in real time. Built for the Intel InNow Technology Fest 2026 in Costa Rica, it follows a perceive-decide-act cycle: it gathers field data (NDVI, soil moisture, temperature, rainfall, crop type, growth stage, drone imagery analyzed with Claude Vision) and enriches it with real climate data from NASA POWER. Before invoking AI, the system runs deterministic agronomic calculations based on the FAO-56 methodology (Hargreaves-Samani reference evapotranspiration, soil water balance, and real crop coefficients cited from a Costa Rican engineering thesis), so Claude reasons over validated science rather than inventing numbers. Claude then decides the exact opening percentage for a dosed irrigation valve, explains its reasoning factor by factor, and states its confidence level."}]...
|
Title: AgroSentinel by @DavidSalas | Stardance
De Title: AgroSentinel by @DavidSalas | Stardance
Devlogs:
AgroSentinel is an autonomous AI agricultural monitoring agent that detects and manages crop water stress in real time. Built for the Intel InNow Technology Fest 2026 in Costa Rica, it follows a perceive-decide-act cycle: it gathers field data (NDVI, soil moisture, temperature, rainfall, crop type, growth stage, drone imagery analyzed with Claude Vision) and enriches it with real climate data from NASA POWER. Before invoking AI, the system runs deterministic agronomic calculations based on the FAO-56 methodology (Hargreaves-Samani reference evapotranspiration, soil water balance, and real crop coefficients cited from a Costa Rican engineering thesis), so Claude reasons over validated science rather than inventing numbers. Claude then decides the exact opening percentage for a dosed irrigation valve, explains its reasoning factor by factor, and states its confidence level.
in progress
Ships:
AgroSentinel an autonomous AI agent for agricultural water-stress monitoring, built for Costa Rica’s San Carlos farming region. It follows a perceive-decide-act loop: field data (NDVI, soil moisture, crop type, growth stage) and real NASA climate data feed into deterministic FAO-56 agronomic calculations (reference evapotranspiration, soil water balance, real crop coefficients cited from a Costa Rican engineering thesis), and only then does Claude reason over that already-validated science to decide a dosed irrigation valve’s exact opening percentage, with factor-by-factor reasoning and a stated confidence level. The full system includes a Supabase-backed multi-user database with row-level security, a Telegram bot for natural-language reporting and proactive alerts, and a multi-agent negotiation system where neighboring farms in the same watershed autonomously negotiate shared water through an AI mediator Keeping the AI honest was harder than making it work. Early on, Claude was inventing plausible-sounding numbers (liters saved, days until crisis) with no formula behind them, we had to redesign the pipeline so all agronomic math is computed deterministically in code before Claude ever sees it, and Claude’s job became reasoning over validated data rather than generating numbers itself. That every scientific claim in the project is traceable to a real source Sign up with email or Google. Field data can be entered manually via sliders, so no sensors or drone are required to try a full analysis, pick a crop and soil type, adjust NDVI/humidity/temperature, and hit “Analyze” to see Claude’s real decision....
|
1793213446.5376072
|
1793299846.5376072
|
|
63797
|
ryOS by @immaturegoat | Stardance
|
immaturegoat
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T03:00:02Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "ryOS “Since time immemorial, outstanding individuals have emerged from the oceans of mediocrity that make up the vast majority of humanity. Great thinkers destined to change their respective eras, launching the world into a new epoch. Ryo Yamada is the undeniable peak of what an outstanding individual is- she is the peak of what humanity can ever possibly achieve, the apex of human evolution and society.” -unknown This is ryOS, an webOS with a little bit of Ryo Yamada. It has 4 apps built into it. Features Ryo Yamada Draggable windows - As well as being able to drag them, you can also click on one to bring it to the front, close them, etc. Working time and date A notes app - this was done using a textarea that just saves the text contents inside to localstorage. It was pretty simple and easy to make A pong app - this is a simple game of pong, and you control the left side using your mouse. The AI is pretty hard, and I haven’t gotten a point yet. A music app - this just opens up a window with the option to play one song, and that’s Seishun Complex by Kessoku Band. A photos app - clicking on the left or right buttons of the window allows you to switch between different photos.", "repo": "https://github.com/immaturegoat/ryOS", "demo": "https://immaturegoat.github.io/ryOS/"}]...
|
[{"post_id": 71583, "ts": "202 [{"post_id": 71583, "ts": "2026-09-21T02:59:27Z", "hours": 0.5789, "text": "Devlog 3 lowk this is such a troll project I added 3 more apps, so now there are 4 in total. They are a ryong app, a ryosic app, and a ryotos app (pong, music, and photos). On the pong app, you use your mouse to control the left side. The AI is pretty good though. I haven’t been able to beat it yet. On the music app, you can only play Seishun Complex by Kessoku Band. Anyway, I just put a music player in a window, and it works pretty well. Finally, on the photos app, its just several photos of Ryo that you can switch between. I’m pretty proud of this ngl."}, {"post_id": 70854, "ts": "2026-09-19T21:31:58Z", "hours": 0.4828, "text": "Devlog 2 I built a simple notes app that just stores what you type in a text app into local storage. I’m going to finish the project with a few other apps first."}, {"post_id": 70836, "ts": "2026-09-19T20:57:50Z", "hours": 1.4139, "text": "Devlog 1 I lowkey just needed 50 more stardust, so I’m doing this project. Anyway, I’m just following the guide and customizing it to my liking. I’ve added a welcome screen, but I’ll add more later. I’ve also styled the close buttons and the dragging mechanic."}]...
|
Title: ryOS by @immaturegoat | Stardance
Devlogs: Title: ryOS by @immaturegoat | Stardance
Devlogs:
Devlog 1 I lowkey just needed 50 more stardust, so I’m doing this project. Anyway, I’m just following the guide and customizing it to my liking. I’ve added a welcome screen, but I’ll add more later. I’ve also styled the close buttons and the dragging mechanic.
Devlog 2 I built a simple notes app that just stores what you type in a text app into local storage. I’m going to finish the project with a few other apps first.
Devlog 3 lowk this is such a troll project I added 3 more apps, so now there are 4 in total. They are a ryong app, a ryosic app, and a ryotos app (pong, music, and photos). On the pong app, you use your mouse to control the left side. The AI is pretty good though. I haven’t been able to beat it yet. On the music app, you can only play Seishun Complex by Kessoku Band. Anyway, I just put a music player in a window, and it works pretty well. Finally, on the photos app, its just several photos of Ryo that you can switch between. I’m pretty proud of this ngl.
Ships:
ryOS “Since time immemorial, outstanding individuals have emerged from the oceans of mediocrity that make up the vast majority of humanity. Great thinkers destined to change their respective eras, launching the world into a new epoch. Ryo Yamada is the undeniable peak of what an outstanding individual is- she is the peak of what humanity can ever possibly achieve, the apex of human evolution and society.” -unknown This is ryOS, an webOS with a little bit of Ryo Yamada. It has 4 apps built into it. Features Ryo Yamada Draggable windows - As well as being able to drag them, you can also click on one to bring it to the front, close them, etc. Working time and date A notes app - this was done using a textarea that just saves the text contents inside to localstorage. It was pretty simple and easy to make A pong app - this is a simple game of pong, and you control the left side using your mouse. The AI is pretty hard, and I haven’t gotten a point yet. A music app - this just opens up a window with the option to play one song, and that’s Seishun Complex by Kessoku Band. A photos app - clicking on the left or right buttons of the window allows you to switch between different photos....
|
1793213406.4465399
|
1793299806.4465399
|
|
58284
|
shortfin/mako by @kelp | Stardance
|
kelp
|
0
|
5.56
|
0
|
[]
|
[{"post_id": 71587, "ts": "202 [{"post_id": 71587, "ts": "2026-09-21T03:25:02Z", "hours": 2.6142, "text": "base features mostly complete! after 2 and a half hours of mostly solving errors the base features are mostly complete strange though, i wouldve figured this would take much much longer. there must be more i can do (this is to say, i will add more features and such) so far the features i intend to add are: better ui converter between shortfin and other build systems splitting exec into Uexec and certain compiler-specific commands (Uexec standing for “Unsafe exec” unsafe meaning it can be any command)"}, {"post_id": 68430, "ts": "2026-09-15T03:25:34Z", "hours": 2.9439, "text": "first devlog and stuff its going pretty well thus far, ive got the basics mostly set up? kindof?, im writing it in go and also technically anko (as the scripting library) really having issues figuring out the best way to allow you to invoke the compiler through it though (running an arbitrary command could be very bad. but maybe i just dont let it have compiled libraries ? or have the compiled libraries be precompiled from some random source, idk il figure it out) anyway yeah pretty much ive gotten the idea as to how it will work down and such also ignore the weird looking text i was coding on my pi which is connected to a tv thats somewhat distant so i need a larger font to read"}]...
|
Title: shortfin/mako by @kelp | Stardance
Devlogs Title: shortfin/mako by @kelp | Stardance
Devlogs:
first devlog and stuff its going pretty well thus far, ive got the basics mostly set up? kindof?, im writing it in go and also technically anko (as the scripting library) really having issues figuring out the best way to allow you to invoke the compiler through it though (running an arbitrary command could be very bad. but maybe i just dont let it have compiled libraries ? or have the compiled libraries be precompiled from some random source, idk il figure it out) anyway yeah pretty much ive gotten the idea as to how it will work down and such also ignore the weird looking text i was coding on my pi which is connected to a tv thats somewhat distant so i need a larger font to read
base features mostly complete! after 2 and a half hours of mostly solving errors the base features are mostly complete strange though, i wouldve figured this would take much much longer. there must be more i can do (this is to say, i will add more features and such) so far the features i intend to add are: better ui converter between shortfin and other build systems splitting exec into Uexec and certain compiler-specific commands (Uexec standing for “Unsafe exec” unsafe meaning it can be any command)...
|
1792745341.1630814
|
1793350141.1630814
|
|
58257
|
Jaeger-LeCoultre Watch by @nejenabinupa | Stardanc Jaeger-LeCoultre Watch by @nejenabinupa | Stardance...
|
nejenabinupa
|
0
|
35.61
|
0
|
[]
|
[{"post_id": 71598, "ts": "202 [{"post_id": 71598, "ts": "2026-09-21T03:54:25Z", "hours": 20.4914, "text": "i finshed up the parts and texture it and animated it"}, {"post_id": 63640, "ts": "2026-09-07T15:47:20Z", "hours": 5.6881, "text": "I added all the gears and lots of parts in the watch"}, {"post_id": 62843, "ts": "2026-09-06T11:33:10Z", "hours": 2.5656, "text": "i makw the parts i lay out and woking on the body now"}, {"post_id": 62414, "ts": "2026-09-05T19:13:05Z", "hours": 4.2539, "text": "I started to modle the inside stuff and looking good so far"}, {"post_id": 61629, "ts": "2026-09-04T16:55:12Z", "hours": 2.6078, "text": "I stranded to make the baes mesh looking good so far"}]...
|
Title: Jaeger-LeCoultre Watch by @nejenabinupa | S Title: Jaeger-LeCoultre Watch by @nejenabinupa | Stardance
Devlogs:
I stranded to make the baes mesh looking good so far
I started to modle the inside stuff and looking good so far
i makw the parts i lay out and woking on the body now
I added all the gears and lots of parts in the watch
i finshed up the parts and texture it and animated it...
|
1792745302.7237003
|
1793350102.7237003
|
|
44293
|
Frictionless by @vanshikagera | Stardance
|
vanshikagera
|
1
|
3.5
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-18T15:35:28Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did I make? I made Deadline Decider , aka AM I COOKED? XD — a little web app for those moments when you look at your workload and have absolutely no idea if you’re actually going to finish it 😭. You put in how much work you have, how much you’ve already done, how much time you have left, how many hours you can work, and your usual speed. It then does the math for you and tells you how much you need to do per day/hour, how long you’d need at your current pace, and whether you’re fine, getting tight, in crunch time, or… yeah… cooked 💀. I also made it work with different units like pages, problems, chapters, words, etc. :) What was challenging? Honestly, getting the actual calculator logic right was probably the hardest part because there are SO many little things that can go wrong 😭. I had to think about things like what happens if someone enters zero, finishes more work than they started with, has basically no time left, or puts in unrealistic numbers. Then there was the whole process of making the UI actually feel good instead of looking like a random calculator from 2008 XD. Getting everything to build, deploy, and actually work on Vercel also gave me a few ✨character development✨ moments. What am I proud of? I’m probably most proud that I actually took a random “wait… what if I made a thing for this?” idea and turned it into a real, usable project :D. It’s not just a calculator that spits out numbers — it turns a vague “omg I have SO MUCH TO DO” into something you can actually understand and act on. I’m also really happy with how the UI turned out because I wanted it to feel fun and slightly unserious while still being something you’d genuinely use. Anddd seeing it actually live on the internet after all the debugging was definitely a moment 😭 :) What should people know so they can test my project? Please actually try to break it XD . Enter some normal numbers first, like 100 total, 20 completed, 5 days left, 4 hours/day, and a speed of 5 per hour, then hit Calculate my fate . Try different units, change the numbers around, and definitely try weird/invalid inputs too because I built validation for those. You can also hit Reset to start over. Basically, give it your most chaotic deadline situation and see whether you’re fine, getting tight, in crunch time, or completely cooked 💀.", "repo": "https://github.com/Vanshika-Gera/deadline-decider", "demo": "https://deadline-decider.vercel.app/?utm_source=chatgpt.com"}]...
|
[{"post_id": 71607, "ts": "202 [{"post_id": 71607, "ts": "2026-09-21T04:51:01Z", "hours": 0.5036, "text": "3 QOL IMPROVEMENTS Daily workload calculationIt takes the amount of work left and deadline and tells the student how much they need to complete per day.Hourly workload calculationIt converts that workload into how much they need to complete per hour, based on the hours they can work each day.Pace/feasibility verdictIt compares the student’s required pace with their estimated normal pace and tells them whether they’re fine, getting tight, in crunch time, or cooked."}, {"post_id": 70133, "ts": "2026-09-18T15:12:09Z", "hours": 1.0067, "text": "Built and polished Deadline Decider, a small web app that turns deadline panic into actual numbers.The idea came from a simple problem: when students have a lot of work left and not much time, “I have so much to do” isn’t very useful. I wanted a tool that could take the workload, time available, and working speed and immediately tell you what pace you’d actually need.HOPE YOU GUYS LIKE IT :0"}, {"post_id": 69190, "ts": "2026-09-16T15:49:27Z", "hours": 0.3575, "text": "added four possible responses you can get! (though there might be more if you try to find then ;)) trying to make the site more elaborate!"}, {"post_id": 68997, "ts": "2026-09-16T05:52:01Z", "hours": 0.5164, "text": "here’s the initial interface :) you can put your work and pace and find out how you can improve your pace accordingly! :)"}, {"post_id": 68562, "ts": "2026-09-15T10:12:22Z", "hours": 0.8522, "text": "AM I COOKED? 🍳Started building a little tool that takes your workload + deadline and tells you whether you’re actually going to finish or you’re cooked"}]...
|
Title: Frictionless by @vanshikagera | Stardance
Title: Frictionless by @vanshikagera | Stardance
Devlogs:
AM I COOKED? 🍳Started building a little tool that takes your workload + deadline and tells you whether you’re actually going to finish or you’re cooked
here’s the initial interface :) you can put your work and pace and find out how you can improve your pace accordingly! :)
added four possible responses you can get! (though there might be more if you try to find then ;)) trying to make the site more elaborate!
Built and polished Deadline Decider, a small web app that turns deadline panic into actual numbers.The idea came from a simple problem: when students have a lot of work left and not much time, “I have so much to do” isn’t very useful. I wanted a tool that could take the workload, time available, and working speed and immediately tell you what pace you’d actually need.HOPE YOU GUYS LIKE IT :0
3 QOL IMPROVEMENTS Daily workload calculationIt takes the amount of work left and deadline and tells the student how much they need to complete per day.Hourly workload calculationIt converts that workload into how much they need to complete per hour, based on the hours they can work each day.Pace/feasibility verdictIt compares the student’s required pace with their estimated normal pace and tells them whether they’re fine, getting tight, in crunch time, or cooked.
Ships:
What did I make? I made Deadline Decider , aka AM I COOKED? XD — a little web app for those moments when you look at your workload and have absolutely no idea if you’re actually going to finish it 😭. You put in how much work you have, how much you’ve already done, how much time you have left, how many hours you can work, and your usual speed. It then does the math for you and tells you how much you need to do per day/hour, how long you’d need at your current pace, and whether you’re fine, getting tight, in crunch time, or… yeah… cooked 💀. I also made it work with different units like pages, problems, chapters, words, etc. :) What was challenging? Honestly, getting the actual calculator logic right was probably the hardest part because there are SO many little things that can go wrong 😭. I had to think about things like what happens if someone enters zero, finishes more work than they started with, has basically no time left, or puts in unrealistic numbers. Then there was the whole process of making the UI actually feel good instead of looking like a random calculator from 2008 XD. Getting everything to build, deploy, and actually work on Vercel also gave me a few ✨character development✨ moments. What am I proud of? I’m probably most proud that I actually took a random “wait… what if I made a thing for this?” idea and turned it into a real, usable project :D. It’s not just a calculator that spits out numbers — it turns a vague “omg I have SO MUCH TO DO” into something you can actually understand and act on. I’m also really happy with how the UI turned out because I wanted it to feel fun and slightly unserious while still being something you’d genuinely use. Anddd seeing it actually live on the internet after all the debugging was definitely a moment 😭 :) What should people know so they can test my project? Please actually try to break it XD . Enter some normal numbers first, like 100 total, 20 completed, 5 days left, 4 hours/day, and a speed of 5 per hour, then hit Calculate my fate . Try different units, change the numbers around, and definitely try weird/invalid inputs too because I built validation for those. You can also hit Reset to start over. Basically, give it your most chaotic deadline situation and see whether you’re fine, getting tight, in crunch time, or completely cooked 💀....
|
1793339850.8845758
|
1793426250.8845758
|
|
41770
|
MacIdeas by @tonymac129 | Stardance
|
tonymac129
|
1
|
53.0
|
825
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T05:11:51Z", "hours": 53.0, "multiplier": 15.61, "payout": 825, "blessing": "neutral", "text": "MacIdeas is a fullstack online platform for managing, organizing, and keeping track of your work, including tasks, notes, and projects! Now, before you think this is just another generic boring todo list app and give me a 1 star in originality…, well, it kind of is a todo app, but with a ton of many different features, customization, and settings, as well as notes with a complete, functional rich text editor, folders for convenient organization, and projects for organizing your different tasks, notes, folders, and everything else into manageable groups that you can easily browse through. You can edit and assign tasks priorities, due/start dates, tags, subtasks, projects, folders, links, completion, star them, and view all the info from the details panel. There are also features like search, sort, filter, tags, views, star, emojis, and other options that make browsing, navigating, and finding items a lot easier and more efficient. To make the website accessible to everyone, MacIdeas has smooth transitions and animations, fully supports both dark and light modes (and your own background images or colors), as well as responsive design for (nearly) all screen sizes, and complete SEO metadata for each page. All you need to do is to sign in with MacWeb, the central platform for my projects’ auth and account info (since MacIdeas is one of its many apps), and you’ll be redirected back and have access to try out all those features! It has everything you would expect from a real task manager and text editor, so hopefully you’ll like my project :)", "repo": "https://github.com/Mac-Web/macideas-next", "demo": "https://macideas.macweb.app"}]...
|
[{"post_id": 71609, "ts": "202 [{"post_id": 71609, "ts": "2026-09-21T04:58:39Z", "hours": 4.6342, "text": "Last devlog: note features and final touches! MacIdeas is finally finished and ready to ship! In this last massive devlog, I added a few new quality of life features, did a ton of general/styling/auth bug fixes, and polished the entire project ! Added note content persistence, meaning you can actually save each note’s content to your account data, including its text, formatting, and everything. Autosave automatically does this every 30 seconds, but you can also manually save with ctrl+s or by pressing the save button Added a few new editor features from Tiptap for typography and general formatting to make note taking more powerful and complete You can now select custom background colors (along with custom backdrop images) to customize the appearance of each task list and note page ! The nav search had been there doing nothing ever since the first devlog , so I finally added a powerful search bar to the nav bar that uses a new API endpoint to search through all the information in all your task lists, tasks, notes, projects, and folders and displays the results as a list of links for convenient browsing and navigation! Added section descriptions and icons for the major features on the homepage Updated styling, content, code, and layout Updated the README with a demo screenshot and updated info about features Fixed a lot of bugs related to general usage, empty user data, styling issues with modals, auth redirect, and many other things I don’t want to remember to improve the overall user experience I took a one week break in this last stretch, so there was probably other stuff I did that I forgot, so hopefully my storytelling isn’t that bad"}, {"post_id": 66657, "ts": "2026-09-12T14:50:05Z", "hours": 3.7656, "text": "Rich text editing for notes! Added a complete, feature-rich, and easy to use rich text editor for creating and editing your notes! This means you can now actually take notes with features like text formatting, links, headings, lists, inline components, and a lot of other features you would expect from tools like Google Docs There is a top tool bar with a ton of options, buttons, and dropdowns organized into different functional sections (I definitely did not just copy GDocs ) to format/edit/modify your current content selection easily Most of the features support keyboard shortcuts (because of Tiptap), which you can see by hovering over the option and reading its tooltip I tried making my own web based rich text editor from scratch before, and it turned out to be a nightmare of dom manipulation and other headaches, so this time I decided to just use the library Tiptap, which itself is based on the library ProseMirror, to handle this pain in the butt Since Tiptap is completely headless, I still spent a lot of time going through its docs, installing useful extensions, learning their commands, and building, testing, and tweaking all the features to make everything work smoothly I don’t know why I’ve been neglecting actually adding notes for so long (before each note was just a blank page saying “Untitled note” that you couldn’t even edit ), but this actually turned out to be super fun to implement and the result was very rewarding Note saving doesn’t actually work yet (despite the fake “Note saved” autosave message ) since there are still some things about the editor to fix, but hopefully that’ll be implemented soon and MacIdeas will be almost ready to ship! The text editor also works with light mode, and I also updated some styling to improve the UI"}, {"post_id": 65705, "ts": "2026-09-11T01:12:55Z", "hours": 2.3211, "text": "Light mode toggle The mode option in the nav user menu now toggles the site’s entire appearance between dark and light mode to improve its customizability and accessibility Because every component has a default color transition, switching between the 2 modes has a smooth UI transition instead of flashing to the other color instantly I had to set up the theme provider and manually add the light mode Tailwind classes and the dark mode prefix for all the colors in every page and component, as well as accounting for all most of the display color edge cases, so this took quite a long time but the result was worth it, both modes look pretty consistent and visually appealing I am finally back to developing MacIdeas after taking a one month break, so I spent some time familiarizing myself with the codebase again. Hopefully this time I’ll be able to finish and ship it soon! Updated styling and layout Added and updated some dependencies"}, {"post_id": 45249, "ts": "2026-08-11T16:25:12Z", "hours": 5.2492, "text": "Project page and contents Added a dedicated page for each project that is its own file browser where you can open/interact with the contents, view their information and metadata, and search, filter, and sort through them so you can better manage and view your projects Added an option on the project page that opens a modal displaying all your folders, task lists, tasks, and notes grouped into 4 different tabs. Each item is a checkbox so you can select exactly which items to add to or remove from the project You can also search through each tab’s results and see their names and icons to make finding the right item quick and easy This seemed like a simple feature to implement but getting to cooperate was a nightmare since each item has its own data type, so organizing the data structure for both the frontend and backend required a lot of annoying unions and conditionals There is now a top bar in the project browser with the name, type, modified, and created labels which you can click on to sort the contents accordingly Each item also shows its type and modified & created times, as well as an icon where you can change the item’s emoji directly, making browsing and managing your stuff more convenient You can also edit the project’s name and description directly by clicking on the page title and text Updated styling and layout I procrastinated on this devlog for 2 days and got no work done, so I think this might be a sign for me to take a break from Stardance for a few days since I also need to work on hosting 8-Bit Jam (awesome game jam, if you live near nova plz go register ) and other stuff, so there won’t be new devlogs in a while"}, {"post_id": 43395, "ts": "2026-08-08T16:42:33Z", "hours": 1.8381, "text": "Project browser Added a project browser/file explorer to the project dashboard where you can search, view, and open projects and folders to browse their content ! I decided to build this file explorer instead of just a simple dashboard because I got bored and wanted to make something different, and it would make more sense to do this for projects since they are essentially just folders This file explorer is pretty similar to Google Drive and other cloud storage services, you can double click a project or folder to change directory and view its content (tasks, task lists, notes, other folders), and go back/navigate to other levels with navigation breadcrumbs I thought this would be difficult to implement and would need some kind of breadcrumb library and it turned out to be pretty simple Only projects are styled and can be opened right now, but folders and other stuff will be added in the next update! Added a menu option for adding task/note folders to projects. It opens a modal where you can view and select all the projects you’re adding the folder to, and it’ll show up in the project explorer Updated styling and content"}, {"post_id": 43017, "ts": "2026-08-08T01:36:42Z", "hours": 3.7031, "text": "Note and project management Added more note management features for editing, deleting, starring, and moving notes, as well as a dashboard for the notes page (similar to the one for tasks) You can now move notes in/out of different folders by selecting the move option and choosing the folder in the modal popup menu. You can also edit which notes are in a folder by clicking on its edit option, where you can check all the notes you want in a folder Added a top tool bar to each note page (similar to the tool bar for task lists) with the note’s emoji (clicking it opens the emoji menu where you can choose or clear the icon), name (clicking on it renamed the note), description (clicking on it also makes it editable), and current folder information displayed The tool bar also has options to upload a custom background image with an upload modal (similar to task lists), choose a custom theme (not implemented yet), star/unstar, or delete after confirming Added a sidebar for the projects page where you can create, manage, view, add icon, rename, star/unstar, and delete your projects (basically the same as the notes and tasks sidebar) Since many of the features are basically identical or very similar to tasks/task lists, I just used the existing components and copied and modified some stuff, so all these features were pretty easy and quick to implement Added recent, starred, and organized by tag sections to the notes dashboard so you can view and manage your notes more easily. You can also customize the dashboard by selecting the sections in the settings panel Updated schema and types Updated styling and layout Fixed background shadow overlay and a few other display/styling issues"}, {"post_id": 42076, "ts": "2026-08-06T17:10:52Z", "hours": 5.1608, "text": "Notes and custom backgrounds I coded for 5 hours yesterday and made a lot of progress but completely forgot to devlog , so this devlog will be a bit longer (as if my usual devlogs aren’t already long enough) to hopefully keep my storytelling good 🥺 Added the notes tab, which is the second major part of MacIdeas (the other being tasks and projects) that shares a basically identical layout with tasks, so I only had to copy a few components, modify some variables, imports, and database operations, and add new schema models and server actions to make note management work properly, though it still took quite a bit of time Currently only the sidebar is implemented for notes (instead of the actual note taking/editing part), but you can create new notes, rename them, choose their custom emojis, delete them, create and manage folders, and create notes inside folders from there You can also navigate to each note by clicking on it, but the page is blank for now. Notes share folders with tasks, so folders you make in notes also show up in tasks, and vice versa, although the specific tasks/notes in the folder aren’t displayed on the notes/tasks tab to keep organization simple (hopefully I didn’t phrase this too confusingly , maybe I’ll add an option to show both in settings) Also added projects (the third major part of MacIdeas), which are basically labels/folders that you can put tasks, task lists, folders, and notes in to conveniently keep everything related to a big project in one place Right now you can only create projects through the create project button on the sidebar and can’t do anything else with them, since I’ll only start working on projects after I finish notes Added buttons where you can upload a custom background image or select a color theme (not implemented yet) for each individual task list to make customization even better and personalized! When you click on the custom background option, an upload modal appears where you can upload a png/jpg/webp <4MB to be the background! I originally tried using uploadthing since it was the only object storage service I worked with, but I just couldn’t get the event hooks to load or work at all despite copying stuff from my old project and wasting an hour researching , so I decided to settle with Vercel Blobs (because it’s already hosted on Vercel) and it’s actually so much faster and easier to set up/integrate Some of the components are opaque, so they look kind of weird with a custom background, so I’ll be fixing that soon, but for the most part custom backgrounds actually look decent somehow Task lists without a custom background have a black overlay shadow that’s out of place, so that has to fixed too Also added a bunch of random small quality of life features and adjustments that I don’t remember without looking at my commits Updated schema and types Updated styling"}, {"post_id": 41429, "ts": "2026-08-05T17:05:00Z", "hours": 3.1761, "text": "Dashboard customization and My Day Added settings for customizing your personal tasks page dashboard, where you can select which tasks to show and which task filter sections to display on your main tasks page to make it completely customized You can access the settings modal by clicking on the gear icon on the top right of the tasks page, where you can select the checkboxes that you want to show on the page. You can reset the settings defaults as well by clicking on the reset option and confirming Dashboard tasks now also show their priority and tags All your homepage settings and customization are automatically saved to the account backend so the settings are synced across all your devices Added the “My Day” page that shows all your tasks that either start or due today (in your local timezone, refreshes daily automatically), or you can add custom tasks for the day here without putting it in any task list to help plan out your day better My Day is essentially a special task list and you can do all the stuff you can do with normal tasks and task lists (browsing, sorting, managing, etc.), and it shows up as its own tab on the left sidebar. I thought this would be hard to implement architecturally, but I just had to add a few fields and conditionals to make it work properly Added the tags dashboard section where you can view all the tasks with a certain tag Updated the data fetching logic for the dashboard to be more efficient, optimized, and customized according to the settings Updated schema and constants Updated styling Updated README Fixed a few visual bugs"}, {"post_id": 40963, "ts": "2026-08-04T20:46:14Z", "hours": 2.8342, "text": "Dashboard and Subtasks Added a few interactive widgets to the task dashboard showing tasks grouped in different categories so you can browse all your tasks quickly and easily The different task widgets, each with a different icon, are starred, priority, upcoming, starting soon, recent, and tag tasks. The widgets basically act like filters for all your tasks across all task lists so you don’t need to manually dig through them to find what you’re looking for You can now add subtasks to your tasks! Subtasks are basically just very simple tasks without any of the fancy features (since that would be annoying to implement and it’s just pretty impractical) that are just smaller steps broken down from the main task You can add, view, and manage (completing, renaming, or deleting) each task’s subtasks sorted by completion status in the task details panel, and you can see each task’s subtasks directly displayed below the main task You can also mark subtasks as completed by clicking on the circle on the task item, and the text will be striked through and grayed out Added a home/task dashboard link to the left sidebar Updated schema and types Updated styling and layout Updated README with more detailed info and specific features"}, {"post_id": 40514, "ts": "2026-08-04T03:06:03Z", "hours": 3.7111, "text": "Priority and folders! You can now assign an importance priority flag for each task to better keep track of your most important todos and manage/view them more easily with this feature ! You can change the priority of a task by clicking on one of the 4 options in the priority dropdown that appears when you hover over the task. Each priority has a different color (none-transparent, low-green, medium-yellow, high-red) to help distinct them visually. If a task has a priority, the status is permanently stickied on the task so it’s always visible You can sort and filter tasks by priority as well to automatically group and view your most important tasks You can customize the new task’s priority by changing the new task input field’s priority dropdown menu. You can also edit a task’s priority in the task details panel You can now create custom folders to group and organize your task lists by clicking on the create folder option on the task sidebar ! Clicking on the folder toggles the visibility of its task list content, and hovering over it shows an options icon that opens a menu where you can edit, rename, change the folder icon color, or delete the folder The edit option opens a modal where you can search and select the task lists to add or remove from the folder The rename option turns the folder name into an input that saves on blur, the color option shows a color picker for the icon color, and the delete option deletes the folder and its task lists after confirmation You can also directly create new task lists inside a folder by clicking on the add option on the folder. You can move task lists in/out of folders as well by clicking on the move option, which opens a similar modal where you can search and select which folder to move the task to Drag and drop for moving task lists in/out of folders isn’t implemented yet, because it’s actually quite a challenging thing to do (for me) , but hopefully I’ll have time to try to implement it Updated schema and types Updated UI components and styling Fixed display overflow height styling issues"}, {"post_id": 40161, "ts": "2026-08-03T15:52:29Z", "hours": 2.6514, "text": "Due dates and more random features You can now add due dates and start dates to tasks to better keep track of them and remind yourself when to stop procrastinating and actually get to work ! When you click on the calendar icon on a task, a modal shows up with 2 fields where you can pick the precise date and time for when the task starts/dues. I used the kind of outdated library Flatpickr for this since I was too lazy to build my own calendar time picker thing You can also clear/remove the selected time by clicking on the x icon next to the date field. Save the changes by clicking on the save button You can edit/select the times by clicking on the date fields in the task details panel as well. Start and due dates show up as a small text below the main task on the page so you can easily see when each task is due Added options to sort tasks by due and start dates so you can see which tasks are coming up soon! Also added a separate section in the filter dropdown for filtering by your own tags to better organize and view your different tasks The pen edit/rename option on the task list is now finally implemented! Clicking on it turns the task text into an input field that you can edit, and the new name is saved when you click away from it The tag, calendar, and star icons on the task input field now do something for the new task! Similar to task items, the tag and calendar options both open a modal for you to select the options for the new task, and the star icon marks it as starred. This makes it a lot easier to customize the task before actually adding it to the list Updated schema and types Updated styling and UI components Fixed a legacy dependency (Emoji Mart is unmaintained ) compatibility issue that caused a few previous commits to fail in production build Not gonna lie I’m pretty proud of the UI and layout all the different options and components actually sort of make MacIdeas look like a legit app There seems to be an issue with Firefox screenshots that fails to capture the modal’s background blur for the screenshot so it’s kinda weird"}, {"post_id": 39667, "ts": "2026-08-02T19:52:59Z", "hours": 3.9036, "text": "Tags and emojis Added task tags that you can customize and assign to different task items to better categorize and organize them! You’ll be able to group/sort by tags in the future as well, making browsing and managing tasks even more convenient When you click on the tag icon while hovering over a task item, the tag modal appears listing all the tags you created, a search bar for the tasks, as well as options to create new tags and save your selection Each tag on the modal is a checkbox, meaning you can simply check/uncheck the tags to assign them to the task Clicking on the create option displays an input where you can add a new tag that gets added to the revalidated menu Each tag also has an icon that opens a menu of options to rename, select an emoji, pick a color, and delete the tag. The rename option turns the tag into an input that you can edit, the emoji option opens the emoji picker (you can clear an existing emoji as well) so you can choose a custom icon for the tag, the color option opens a color picker where you can edit the tag’s background, and the delete option deletes the tag after confirmation There’s an option on the modal to clear all the currently assigned tags from the task item as well Up to 3 tags are displayed for each task on the task list page, and you can view all the tags a task has in the details panel (where you can open the tag modal and edit the tags too) You can now also choose an emoji for each task list by either clicking on the sidebar icon or the top bar icon! It opens an emoji picker with an option to clear the existing emoji as well Updated schema and types Updated styling and layout Fixed display height issue Fixed legacy dependency deployment issue"}, {"post_id": 38980, "ts": "2026-08-01T16:28:02Z", "hours": 1.9678, "text": "Browse & complete tasks You can now browse and filter through tasks to view and manage them more easily with the new sorting and filtering options! You can also finally mark tasks as completed once you finish them On the task list page tool bar, there’s a search bar that searched through tasks by their name and description, dropdown menus for sorting (by name, created, updated, due date, etc., some aren’t implemented yet), filtering (by starred, completion status, etc.), and ascending/descending display order to help you find and browse tasks more easily ! There’s also a checkbox that toggles the visibility of completed tasks, since they are hidden by default to avoid cluttering the page You can mark a task as completed by either clicking/checking the circle icon on each task item or selecting the completed checkbox on the task details page Incomplete and completed tasks are each grouped together regardless of sorting order to avoid confusion Completed tasks are striked through and grayed out to help with distinction. You can remark them as incomplete again any time by clicking on the icon again Fixed an annoying container height overflow display layout issue (implementing responsive design on this will be a pain in the butt ) Updated styling and layout I accidentally closed the window while recording the video so I had to rewrite this entire devlog again from memory , Stardance team please make a save devlog button like with Flavortown 🥺"}, {"post_id": 38563, "ts": "2026-08-01T01:19:19Z", "hours": 2.6092, "text": "Task creation & management You can now actually add, view, and manage your tasks in MacIdeas! You can add tasks, view details, edit, star, and delete them by clicking on the task item icons When you add a task, a task item gets added to the task list page, which when hovered shows icons/buttons to edit, manage tags, change due date, star, or delete the task. There’s also a circle on the left where you can mark the task as completed (none of these buttons work yet other than star and delete ) Clicking on the task item itself opens an animated panel on the side (similar to a lot of todo apps and the Slack profile panel) with input and textarea fields for editing the task and its description, as well as checkboxes to mark/unmark the task as completed or starred The task item details panel also shows the task’s precise created and updated timestamps, as well as its ID in the backend database (for debugging purposes) You can save the changes in the details panel by clicking on the save button, which updates and revalidates the task automatically. You can also delete the task item by clicking on the delete button and confirming the warning modal You can close the details panel by clicking on the same task item again or by clicking on the close button If a task item is starred, the star icon shows even when you’re not hovering over the task item. You’ll be able to filter and group task items by stars in the future as well Updated the task list page layout to give more space to the main section and make sure everything’s aligned and positioned nicely without any display/styling issues Added new UI components Updated styling Fixed a few styling and UX issues Updated database schema"}, {"post_id": 38314, "ts": "2026-07-31T17:10:40Z", "hours": 2.0458, "text": "Task list management Added more task list management features so you can organize and view your tasks more efficiently! Added a top tool bar on task list pages where you can rename the task list by clicking on the name, add a description, mark/unmark it as starred, and delete it When you click on delete, a confirmation warning modal shows up asking you to confirm You can also star/unstar a task list by clicking on the star icon on the left sidebar or in the options menu Starred task lists show up in a different section at the top of the sidebar to make accessing them easier and quicker Added a dropdown button that shows an additional menu for creating folders and projects (not implemented yet) next to the create task list button Added a pick emoji button for each task list on the sidebar that, of course, still doesn’t work yet Added the new task input field on the task page with a few placeholder buttons and a submit button. This where you’ll be able to add tasks, but nothing works so far Added a message screen that shows up when all the tasks are completed/there are no tasks Added dynamically generated SEO metadata for task list pages to make the site more accessible and responsive Updated schema and types Updated styling and layout"}, {"post_id": 37735, "ts": "2026-07-30T17:25:43Z", "hours": 3.29, "text": "MacIdeas: productivity & work management tool I’m starting a new project in the MacWeb collection of online apps and platforms called MacIdeas, which is basically Notion (task, note, and project management) but significantly more inferior Hopefully this project will turn out to be pretty complex so I can milk invest more hours on making and polishing this app In this pretty big initial update, I set up the Next.js project, installed its required dependencies, added a few basic pages and layouts, added a lot of UI components, and added task list management Spent quite some time configuring auth and the account system backend again since MacIdeas is hosted on a subdomain of the main macweb.app root domain which handles auth and accounts, so it was annoying setting up CORS, subdomain cookies, and user schemas (I’m not even sure if it works in production yet ) Added a nav bar and footer that were just copied from other MacWeb apps so they look consistent and updated a few links Added placeholder homepage layout and sections with images and text that don’t mean anything yet Added the main tasks page layout with a left sidebar listing all your task lists (folders and other organization stuff coming soon) and the main page displaying your actual tasks and information You can create new task lists by clicking on the create task list button on the sidebar, which creates and redirects you to the new task list that’s automatically titled “Untitled List” When you hover over a task list on the sidebar, an options icon appears that shows a menu of list management options, including rename, star (not implemented), and delete When you click on rename, the task list becomes an input where you can input the new name, and clicking out of it saves and revalidates the data When you click on delete, a confirmation warning modal appears, and the app will be redirected and revalidated after you confirm and delete the task list Once you’re signed in, your profile icon will be displayed on the nav bar and clicking on it lets you view your profile on the main domain, toggle light/dark modes (coming soon), and sign out (does this even work ?) Added static SEO for a few pages to improve accessibility and the site’s metadata Added the MacIdeas logo as the favicon and site icon Added Prisma schema and types Configured DNS and deployment stuff Fixed deployment issue"}]...
|
Title: MacIdeas by @tonymac129 | Stardance
Devlog Title: MacIdeas by @tonymac129 | Stardance
Devlogs:
MacIdeas: productivity & work management tool I’m starting a new project in the MacWeb collection of online apps and platforms called MacIdeas, which is basically Notion (task, note, and project management) but significantly more inferior Hopefully this project will turn out to be pretty complex so I can milk invest more hours on making and polishing this app In this pretty big initial update, I set up the Next.js project, installed its required dependencies, added a few basic pages and layouts, added a lot of UI components, and added task list management Spent quite some time configuring auth and the account system backend again since MacIdeas is hosted on a subdomain of the main macweb.app root domain which handles auth and accounts, so it was annoying setting up CORS, subdomain cookies, and user schemas (I’m not even sure if it works in production yet ) Added a nav bar and footer that were just copied from other MacWeb apps so they look consistent and updated a few links Added placeholder homepage layout and sections with images and text that don’t mean anything yet Added the main tasks page layout with a left sidebar listing all your task lists (folders and other organization stuff coming soon) and the main page displaying your actual tasks and information You can create new task lists by clicking on the create task list button on the sidebar, which creates and redirects you to the new task list that’s automatically titled “Untitled List” When you hover over a task list on the sidebar, an options icon appears that shows a menu of list management options, including rename, star (not implemented), and delete When you click on rename, the task list becomes an input where you can input the new name, and clicking out of it saves and revalidates the data When you click on delete, a confirmation warning modal appears, and the app will be redirected and revalidated after you confirm and delete the task list Once you’re signed in, your profile icon will be displayed on the nav bar and clicking on it lets you view your profile on the main domain, toggle light/dark modes (coming soon), and sign out (does this even work ?) Added static SEO for a few pages to improve accessibility and the site’s metadata Added the MacIdeas logo as the favicon and site icon Added Prisma schema and types Configured DNS and deployment stuff Fixed deployment issue
Task list management Added more task list management features so you can organize and view your tasks more efficiently! Added a top tool bar on task list pages where you can rename the task list by clicking on the name, add a description, mark/unmark it as starred, and delete it When you click on delete, a confirmation warning modal shows up asking you to confirm You can also star/unstar a task list by clicking on the star icon on the left sidebar or in the options menu Starred task lists show up in a different section at the top of the sidebar to make accessing them easier and quicker Added a dropdown button that shows an additional menu for creating folders and projects (not implemented yet) next to the create task list button Added a pick emoji button for each task list on the sidebar that, of course, still doesn’t work yet Added the new task input field on the task page with a few placeholder buttons and a submit button. This where you’ll be able to add tasks, but nothing works so far Added a message screen that shows up when all the tasks are completed/there are no tasks Added dynamically generated SEO metadata for task list pages to make the site more accessible and responsive Updated schema and types Updated styling and layout
Task creation & management You can now actually add, view, and manage your tasks in MacIdeas! You can add tasks, view details, edit, star, and delete them by clicking on the task item icons When you add a task, a task item gets added to the task list page, which when hovered shows icons/buttons to edit, manage tags, change due date, star, or delete the task. There’s also a circle on the left where you can mark the task as completed (none of these buttons work yet other than star and delete ) Clicking on the task item itself opens an animated panel on the side (similar to a lot of todo apps and the Slack profile panel) with input and textarea fields for editing the task and its description, as well as checkboxes to mark/unmark the task as completed or starred The task item details panel also shows the task’s precise created and updated timestamps, as well as its ID in the backend database (for debugging purposes) You can save the changes in the details panel by clicking on the save button, which updates and revalidates the task automatically. You can also delete the task item by clicking on the delete button and confirming the warning modal You can close the details panel by clicking on the same task item again or by clicking on the close button If a task item is starred, the star icon shows even when you’re not hovering over the task item. You’ll be able to filter and group task items by stars in the future as well Updated the task list page layout to give more space to the main section and make sure everything’s aligned and positioned nicely without any display/styling issues Added new UI components Updated styling Fixed a few styling and UX issues Updated database schema
Browse & complete tasks You can now browse and filter through tasks to view and manage them more easily with the new sorting and filtering options! You can also finally mark tasks as completed once you finish them On the task list page tool bar, there’s a search bar that searched through tasks by their name and description, dropdown menus for sorting (by name, created, updated, due date, etc., some aren’t implemented yet), filtering (by starred, completion status, etc.), and ascending/descending display order to help you find and browse tasks more easily ! There’s also a checkbox that toggles the visibility of completed tasks, since they are hidden by default to avoid cluttering the page You can mark a task as completed by either clicking/checking the circle icon on each task item or selecting the completed checkbox on the task details page Incomplete and completed tasks are each grouped together regardless of sorting order to avoid confusion Completed tasks are striked through and grayed out to help with distinction. You can remark them as incomplete again any time by clicking on the icon again Fixed an annoying container height overflow display layout issue (implementing responsive design on this will be a pain in the butt ) Updated styling and layout I accidentally closed the window while recording the video so I had to rewrite this entire devlog again from memory , Stardance team please make a save devlog button like with Flavortown 🥺
Tags and emojis Added task tags that you can customize and assign to different task items to better categorize and organize them! You’ll be able to group/sort by tags in the future as well, making browsing and managing tasks even more convenient When you click on the tag icon while hovering over a task item, the tag modal appears listing all the tags you created, a search bar for the tasks, as well as options to create new tags and save your selection Each tag on the modal is a checkbox, meaning you can simply check/uncheck the tags to assign them to the task Clicking on the create option displays an input where you can add a new tag that gets added to the revalidated menu Each tag also has an icon that opens a menu of options to rename, select an emoji, pick a color, and delete the tag. The rename option turns the tag into an input that you can edit, the emoji option opens the emoji picker (you can clear an existing emoji as well) so you can choose a custom icon for the tag, the color option opens a color picker where you can edit the tag’s background, and the delete option deletes the tag after confirmation There’s an option on the modal to clear all the currently assigned tags from the task item as well Up to 3 tags are displayed for each task on the task list page, and you can view all the tags a task has in the details panel (where you can open the tag modal and edit the tags too) You can now also choose an emoji for each task list by either clicking on the sidebar icon or the top bar icon! It opens an emoji picker with an option to clear the existing emoji as well Updated schema and types Updated styling and layout Fixed display height issue Fixed legacy dependency deployment issue
Due dates and more random features You can now add due dates and start dates to tasks to better keep track of them and remind yourself when to stop procrastinating and actually get to work ! When you click on the calendar icon on a task, a modal shows up with 2 fields where you can pick the precise date and time for when the task starts/dues. I used the kind of outdated library Flatpickr for this since I was too lazy to build my own calendar time picker thing You can also clear/remove the selected time by clicking on the x icon next to the date field. Save the changes by clicking on the save button You can edit/select the times by clicking on the date fields in the task details panel as well. Start and due dates show up as a small text below the main task on the page so you can easily see when each task is due Added options to sort tasks by due and start dates so you can see which tasks are coming up soon! Also added a separate section in the filter dropdown for filtering by your own tags to better organize and view your different tasks The pen edit/rename option on the task list is now finally implemented! Clicking on it turns the task text into an input field that you can edit, and the new name is saved when you click away from it The tag, calendar, and star icons on the task input field now do something for the new task! Similar to task items, the tag and calendar options both open a modal for you to select the options for the new task, and the star icon marks it as starred. This makes it a lot easier to customize the task before actually adding it to the list Updated schema and types Updated styling and UI components Fixed a legacy dependency (Emoji Mart is unmaintained ) compatibility issue that caused a few previous commits to fail in production build Not gonna lie I’m pretty proud of the UI and layout all the different options and components actually sort of make MacIdeas look like a legit app There seems to be an issue with Firefox screenshots that fails to capture the modal’s background blur for the screenshot so it’s kinda weird
Priority and folders! You can now assign an importance priority flag for each task to better keep track of your most important todos and manage/view them more easily with this feature ! You can change the priority of a task by clicking on one of the 4 options in the priority dropdown that appears when you hover over the task. Each priority has a different color (none-transparent, low-green, medium-yellow, high-red) to help distinct them visually. If a task has a priority, the status is permanently stickied on the task so it’s always visible You can sort and filter tasks by priority as well to automatically group and view your most important tasks You can customize the new task’s priority by changing the new task input field’s priority dropdown menu. You can also edit a task’s priority in the task details panel You can now create custom folders to group and organize your task lists by clicking on the create folder option on the task sidebar ! Clicking on the folder toggles the visibility of its task list content, and hovering over it shows an options icon that opens a menu where you can edit, rename, change the folder icon color, or delete the folder The edit option opens a modal where you can search and select the task lists to add or remove from the folder The rename option turns the folder name into an input that saves on blur, the color option shows a color picker for the icon color, and the delete option deletes the folder and its task lists after confirmation You can also directly create new task lists inside a folder by clicking on the add option on the folder. You can move task lists in/out of folders as well by clicking on the move option, which opens a similar modal where you can search and select which folder to move the task to Drag and drop for moving task lists in/out of folders isn’t implemented yet, because it’s actually quite a challenging thing to do (for me) , but hopefully I’ll have time to try to implement it Updated schema and types Updated UI components and styling Fixed display overflow height styling issues
Dashboard and Subtasks Added a few interactive widgets to the task dashboard showing tasks grouped in different categories so you can browse all your tasks quickly and easily The different task widgets, each with a different icon, are starred, priority, upcoming, starting soon, recent, and tag tasks. The widgets basically act like filters for all your tasks across all task lists so you don’t need to manually dig through them to find what you’re looking for You can now add subtasks to your tasks! Subtasks are basically just very simple tasks without any of the fancy features (since that would be annoying to implement and it’s just pretty impractical) that are just smaller steps broken down from the main task You can add, view, and manage (completing, renaming, or deleting) each task’s subtasks sorted by completion status in the task details panel, and you can see each task’s subtasks directly displayed below the main task You can also mark subtasks as completed by clicking on the circle on the task item, and the text will be striked through and grayed out Added a home/task dashboard link to the left sidebar Updated schema and types Updated styling and layout Updated README with more detailed info and specific features
Dashboard customization and My Day Added settings for customizing your personal tasks page dashboard, where you can select which tasks to show and which task filter sections to display on your main tasks page to make it completely customized You can access the settings modal by clicking on the gear icon on the top right of the tasks page, where you can select the checkboxes that you want to show on the page. You can reset the settings defaults as well by clicking on the reset option and confirming Dashboard tasks now also show their priority and tags All your homepage settings and customization are automatically saved to the account backend so the settings are synced across all your devices Added the “My Day” page that shows all your tasks that either start or due today (in your local timezone, refreshes daily automatically), or you can add custom tasks for the day here without putting it in any task list to help plan out your day better My Day is essentially a special task list and you can do all the stuff you can do with normal tasks and task lists (browsing, sorting, managing, etc.), and it shows up as its own tab on the left sidebar. I thought this would be hard to implement architecturally, but I just had to add a few fields and conditionals to make it work properly Added the tags dashboard section where you can view all the tasks with a certain tag Updated the data fetching logic for the dashboard to be more efficient, optimized, and customized according to the settings Updated schema and constants Updated styling Updated README Fixed a few visual bugs
Notes and custom backgrounds I coded for 5 hours yesterday and made a lot of progress but completely forgot to devlog , so this devlog will be a bit longer (as if my usual devlogs aren’t already long enough) to hopefully keep my storytelling good 🥺 Added the notes tab, which is the second major part of MacIdeas (the other being tasks and projects) that shares a basically identical layout with tasks, so I only had to copy a few components, modify some variables, imports, and database operations, and add new schema models and server actions to make note management work properly, though it still took quite a bit of time Currently only the sidebar is implemented for notes (instead of the actual note taking/editing part), but you can create new notes, rename them, choose their custom emojis, delete them, create and manage folders, and create notes inside folders from there You can also navigate to each note by clicking on it, but the page is blank for now. Notes share folders with tasks, so folders you make in notes also show up in tasks, and vice versa, although the specific tasks/notes in the folder aren’t displayed on the notes/tasks tab to keep organization simple (hopefully I didn’t phrase this too confusingly , maybe I’ll add an option to show both in settings) Also added projects (the third major part of MacIdeas), which are basically labels/folders that you can put tasks, task lists, folders, and notes in to conveniently keep everything related to a big project in one place Right now you can only create projects through the create project button on the sidebar and can’t do anything else with them, since I’ll only start working on projects after I finish notes Added buttons where you can upload a custom background image or select a color theme (not implemented yet) for each individual task list to make customization even better and personalized! When you click on the custom background option, an upload modal appears where you can upload a png/jpg/webp <4MB to be the background! I originally tried using uploadthing since it was the only object storage service I worked with, but I just couldn’t get the event hooks to load or work at all despite copying stuff from my old project and wasting an hour researching , so I decided to settle with Vercel Blobs (because it’s already hosted on Vercel) and it’s actually so much faster and easier to set up/integrate Some of the components are opaque, so they look kind of weird with a custom background, so I’ll be fixing that soon, but for the most part custom backgrounds actually look decent somehow Task lists without a custom background have a black overlay shadow that’s out of place, so that has to fixed too Also added a bunch of random small quality of life features and adjustments that I don’t remember without looking at my commits Updated schema and types Updated styling
Note and project management Added more note management features for editing, deleting, starring, and moving notes, as well as a dashboard for the notes page (similar to the one for tasks) You can now move notes in/out of different folders by selecting the move option and choosing the folder in the modal popup menu. You can also edit which notes are in a folder by clicking on its edit option, where you can check all the notes you want in a folder Added a top tool bar to each note page (similar to the tool bar for task lists) with the note’s emoji (clicking it opens the emoji menu where you can choose or clear the icon), name (clicking on it renamed the note), description (clicking on it also makes it editable), and current folder information displayed The tool bar also has options to upload a custom background image with an upload modal (similar to task lists), choose a custom theme (not implemented yet), star/unstar, or delete after confirming Added a sidebar for the projects page where you can create, manage, view, add icon, rename, star/unstar, and delete your projects (basically the same as the notes and tasks sidebar) Since many of the features are basically identical or very similar to tasks/task lists, I just used the existing components and copied and modified some stuff, so all these features were pretty easy and quick to implement Added recent, starred, and organized by tag sections to the notes dashboard so you can view and manage your notes more easily. You can also customize the dashboard by selecting the sections in the settings panel Updated schema and types Updated styling and layout Fixed background shadow overlay and a few other display/styling issues
Project browser Added a project browser/file explorer to the project dashboard where you can search, view, and open projects and folders to browse their content ! I decided to build this file explorer instead of just a simple dashboard because I got bored and wanted to make something different, and it would make more sense to do this for projects since they are essentially just folders This file explorer is pretty similar to Google Drive and other cloud storage services, you can double click a project or folder to change directory and view its content (tasks, task lists, notes, other folders), and go back/navigate to other levels with navigation breadcrumbs I thought this would be difficult to implement and would need some kind of breadcrumb library and it turned out to be pretty simple Only projects are styled and can be opened right now, but folders and other stuff will be added in the next update! Added a menu option for adding task/note folders to projects. It opens a modal where you can view and select all the projects you’re adding the folder to, and it’ll show up in the project explorer Updated styling and content
Project page and contents Added a dedicated page for each project that is its own file browser where you can open/interact with the contents, view their information and metadata, and search, filter, and sort through them so you can better manage and view your projects Added an option on the project page that opens a modal displaying all your folders, task lists, tasks, and notes grouped into 4 different tabs. Each item is a checkbox so you can select exactly which items to add to or remove from the project You can also search through each tab’s results and see their names and icons to make finding the right item quick and easy This seemed like a simple feature to implement but getting to cooperate was a nightmare since each item has its own data type, so organizing the data structure for both the frontend and backend required a lot of annoying unions and conditionals There is now a top bar in the project browser with the name, type, modified, and created labels which you can click on to sort the contents accordingly Each item also shows its type and modified & created times, as well as an icon where you can change the item’s emoji directly, making browsing and managing your stuff more convenient You can also edit the project’s name and description directly by clicking on the page title and text Updated styling and layout I procrastinated on this devlog for 2 days and got no work done, so I think this might be a sign for me to take a break from Stardance for a few days since I also need to work on hosting 8-Bit Jam (awesome game jam, if you live near nova plz go register ) and other stuff, so there won’t be new devlogs in a while
Light mode toggle The mode option in the nav user menu now toggles the site’s entire appearance between dark and light mode to improve its customizability and accessibility Because every component has a default color transition, switching between the 2 modes has a smooth UI transition instead of flashing to the other color instantly I had to set up the theme provider and manually add the light mode Tailwind classes and the dark mode prefix for all the colors in every page and component, as well as accounting for all most of the display color edge cases, so this took quite a long time but the result was worth it, both modes look pretty consistent and visually appealing I am finally back to developing MacIdeas after taking a one month break, so I spent some time familiarizing myself with the codebase again. Hopefully this time I’ll be able to finish and ship it soon! Updated styling and layout Added and updated some dependencies
Rich text editing for notes! Added a complete, feature-rich, and easy to use rich text editor for creating and editing your notes! This means you can now actually take notes with features like text formatting, links, headings, lists, inline components, and a lot of other features you would expect from tools like Google Docs There is a top tool bar with a ton of options, buttons, and dropdowns organized into different functional sections (I definitely did not just copy GDocs ) to format/edit/modify your current content selection easily Most of the features support keyboard shortcuts (because of Tiptap), which you can see by hovering over the option and reading its tooltip I tried making my own web based rich text editor from scratch before, and it turned out to be a nightmare of dom manipulation and other headaches, so this time I decided to just use the library Tiptap, which itself is based on the library ProseMirror, to handle this pain in the butt Since Tiptap is completely headless, I still spent a lot of time going through its docs, installing useful extensions, learning their commands, and building, testing, and tweaking all the features to make everything work smoothly I don’t know why I’ve been neglecting actually adding notes for so long (before each note was just a blank page saying “Untitled note” that you couldn’t even edit ), but this actually turned out to be super fun to implement and the result was very rewarding Note saving doesn’t actually work yet (despite the fake “Note saved” autosave message ) since there are still some things about the editor to fix, but hopefully that’ll be implemented soon and MacIdeas will be almost ready to ship! The text editor also works with light mode, and I also updated some styling to improve the UI
Last devlog: note features and final touches! MacIdeas is finally finished and ready to ship! In this last massive devlog, I added a few new quality of life features, did a ton of general/styling/auth bug fixes, and polished the entire project ! Added note content persistence, meaning you can actually save each note’s content to your account data, including its text, formatting, and everything. Autosave automatically does this every 30 seconds, but you can also manually save with ctrl+s or by pressing the save button Added a few new editor features from Tiptap for typography and general formatting to make note taking more powerful and complete You can now select custom background colors (along with custom backdrop images) to customize the appearance of each task list and note page ! The nav search had been there doing nothing ever since the first devlog , so I finally added a powerful search bar to the nav bar that uses a new API endpoint to search through all the information in all your task lists, tasks, notes, projects, and folders and displays the results as a list of links for convenient browsing and navigation! Added section descriptions and icons for the major features on the homepage Updated styling, content, code, and layout Updated the README with a demo screenshot and updated info about features Fixed a lot of bugs related to general usage, empty user data, styling issues with modals, auth redirect, and many other things I don’t want to remember to improve the overall user experience I took a one week break in this last stretch, so there was probably other stuff I did that I forgot, so hopefully my storytelling isn’t that bad
Ships:
MacIdeas is a fullstack online platform for managing, organizing, and keeping track of your work, including tasks, notes, and projects! Now, before you think this is just another generic boring todo list app and give me a 1 star in originality…, well, it kind of is a todo app, but with a ton of many different features, customization, and settings, as well as notes with a complete, functional rich text editor, folders for convenient organization, and projects for organizing your different tasks, notes, folders, and everything else into manageable groups that you can easily browse through. You can edit and assign tasks priorities, due/start dates, tags, subtasks, projects, folders, links, completion, star them, and view all the info from the details panel. There are also features like search, sort, filter, tags, views, star, emojis, and other options that make browsing, navigating, and finding items a lot easier and more efficient. To make the website accessible to everyone, MacIdeas has smooth transitions and animations, fully supports both dark and light modes (and your own background images or colors), as well as responsive design for (nearly) all screen sizes, and complete SEO metadata for each page. All you need to do is to sign in with MacWeb, the central platform for my projects’ auth and account info (since MacIdeas is one of its many apps), and you’ll be redirected back and have access to try out all those features! It has everything you would expect from a real task manager and text editor, so hopefully you’ll like my project :)...
|
1793335754.3358278
|
1793422154.3358278
|
|
28423
|
score creator app by @rsupp | Stardance
|
rsupp
|
0
|
11.05
|
0
|
[]
|
[{"post_id": 71613, "ts": "202 [{"post_id": 71613, "ts": "2026-09-21T05:05:53Z", "hours": 0.6344, "text": "I implemented tone.js. It was much faster than my other things—the only problem was needing a buffer between notes. But now I have to work on UI :( and adding more advanced features. (I also began to work on adding bpm and a import score feature but they are not finished yet)"}, {"post_id": 63717, "ts": "2026-09-07T17:31:03Z", "hours": 1.9719, "text": "I fixed the problem that I had with eighth notes by switching from using /e to /8 in vexflow. I am still having some problems with width, but overall it is much better. That is why I decided to start working on adding sound. My basic implementation of Tone.js is working very well currently. The Press to Play button plays the sound. I need to work on more features to make the website easier to use now."}, {"post_id": 57791, "ts": "2026-08-30T02:45:46Z", "hours": 1.9011, "text": "I still cannot figure out how to fix my problem with eighth notes not working. I have tried editing the width values (which fixed the cut off early issue), removing Math.floors in some parts of my code, and more. I also added a clear local storage button for the score for ease of use. I will continue to test to fix the eighth notes."}, {"post_id": 43742, "ts": "2026-08-09T04:59:25Z", "hours": 3.08, "text": "I was able to get the scores to persist on screen. I also was able to add multiple measures to my list of notes without the program crashing, after a bunch of debugging. Currently, I was testing have different lengths for the measures and am having problems with the notes appearing on screen. I was trying to test changing x and width values but that did not work. The built in formatter in vexflow worked a bit better but my score and notes keep getting squished and cut off randomly."}, {"post_id": 40927, "ts": "2026-08-04T19:21:08Z", "hours": 3.3925, "text": "I added a system so the script I am using can actually take in the values the user has inputted. The script can also use this input to create an output of 1 measure of the user input before the program will crash. Another problem is that the 1 measure only appears on screen for a second before it goes away. I will fix these two issues later."}, {"post_id": 29662, "ts": "2026-07-16T18:47:18Z", "hours": 0.0678, "text": "I have not worked on creating a website in a very long time. That is why I focused on creating some buttons that send data to my program, and I also found two libraries that I will most likely use: vexflow.js and Tone.js"}]...
|
Title: score creator app by @rsupp | Stardance
De Title: score creator app by @rsupp | Stardance
Devlogs:
I have not worked on creating a website in a very long time. That is why I focused on creating some buttons that send data to my program, and I also found two libraries that I will most likely use: vexflow.js and Tone.js
I added a system so the script I am using can actually take in the values the user has inputted. The script can also use this input to create an output of 1 measure of the user input before the program will crash. Another problem is that the 1 measure only appears on screen for a second before it goes away. I will fix these two issues later.
I was able to get the scores to persist on screen. I also was able to add multiple measures to my list of notes without the program crashing, after a bunch of debugging. Currently, I was testing have different lengths for the measures and am having problems with the notes appearing on screen. I was trying to test changing x and width values but that did not work. The built in formatter in vexflow worked a bit better but my score and notes keep getting squished and cut off randomly.
I still cannot figure out how to fix my problem with eighth notes not working. I have tried editing the width values (which fixed the cut off early issue), removing Math.floors in some parts of my code, and more. I also added a clear local storage button for the score for ease of use. I will continue to test to fix the eighth notes.
I fixed the problem that I had with eighth notes by switching from using /e to /8 in vexflow. I am still having some problems with width, but overall it is much better. That is why I decided to start working on adding sound. My basic implementation of Tone.js is working very well currently. The Press to Play button plays the sound. I need to work on more features to make the website easier to use now.
I implemented tone.js. It was much faster than my other things—the only problem was needing a buffer between notes. But now I have to work on UI :( and adding more advanced features. (I also began to work on adding bpm and a import score feature but they are not finished yet)...
|
1793191896.8134224
|
1793796696.8134224
|
|
30784
|
My first slack bot! by @kratak | Stardance
|
kratak
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T06:06:08Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Ship Check out the repo for the full project details! Here’s a quick recap of what kratakbot can do: Available Commands: /kratakbot-ping - Check bot latency /kratakbot-catfact - Get a cat fact /kratakbot-joke - Get a random joke /kratakbot-quote - Get an inspirational quote /kratakbot-help - View all commands The build process was fairly easy overall.", "repo": "https://github.com/Kratak78/slackbot-stardance_challenge", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354?skip_today=1"}]...
|
[{"post_id": 71619, "ts": "202 [{"post_id": 71619, "ts": "2026-09-21T05:33:31Z", "hours": 0.9583, "text": "Version 1.0 I made this slack bot for the challenge like 2 months ago or so but kinda forgot about it till now, so im finally making this devblog and also ship it right after. The bot is on nest so it should run 24/7 and it is on the hack club slack. commands: /kratakbot-ping - shows latency /kratakbot-catfact - returns a random cat fact /kratakbot-joke - returns a random joke /kratakbot-quote - returns a random quote It was my first time using javascript and also my first time making a slack bot, so I have definitely learned something new."}]...
|
Title: My first slack bot! by @kratak | Stardance
Title: My first slack bot! by @kratak | Stardance
Devlogs:
Version 1.0 I made this slack bot for the challenge like 2 months ago or so but kinda forgot about it till now, so im finally making this devblog and also ship it right after. The bot is on nest so it should run 24/7 and it is on the hack club slack. commands: /kratakbot-ping - shows latency /kratakbot-catfact - returns a random cat fact /kratakbot-joke - returns a random joke /kratakbot-quote - returns a random quote It was my first time using javascript and also my first time making a slack bot, so I have definitely learned something new.
Ships:
Ship Check out the repo for the full project details! Here’s a quick recap of what kratakbot can do: Available Commands: /kratakbot-ping - Check bot latency /kratakbot-catfact - Get a cat fact /kratakbot-joke - Get a random joke /kratakbot-quote - Get an inspirational quote /kratakbot-help - View all commands The build process was fairly easy overall....
|
1793346741.4208832
|
1793433141.4208832
|
|
63603
|
Unsubscribely by @pancakse | Stardance
|
pancakse
|
0
|
9.97
|
0
|
[]
|
[{"post_id": 71622, "ts": "202 [{"post_id": 71622, "ts": "2026-09-21T05:54:14Z", "hours": 1.5806, "text": "DEVLOG 6: So i manged to get a hosted version working and i tried making it a electron app but it really didnt work because you cant put sensitive info like client secrets in apps because well someone could decrypt it and stuff so yea"}, {"post_id": 71561, "ts": "2026-09-21T01:59:05Z", "hours": 2.6108, "text": "DEVLOG 5: Ive decided to make a demo and a privacy policy"}, {"post_id": 71085, "ts": "2026-09-20T08:53:31Z", "hours": 1.0306, "text": "DEVLOG 4: so i managed to get outlook to finally work i spent like a hour changing browser settings to be able to get access to the azure portal and also we got icloud/any generic imap provider to work (1st image is outlook. 2nd is icloud)"}, {"post_id": 71008, "ts": "2026-09-20T06:18:26Z", "hours": 2.215, "text": "DEVLOG 3: We made a dashboard currently only support gmail but anyone who uses this wont be able to it unless i do verification (which i think costs money or smtg) or i add you as a tester and couldnt add outlook because Azure was being a pain in the a**"}, {"post_id": 70877, "ts": "2026-09-19T22:22:52Z", "hours": 1.7664, "text": "DEVLOG 2: We decided to switch to Unsubscribely being a website since Wails was being a pain in the a**"}, {"post_id": 70409, "ts": "2026-09-19T04:07:36Z", "hours": 0.77, "text": "DEVLOG 1: So we managed to get a window and you can select from dark mode and light mode ig"}]...
|
Title: Unsubscribely by @pancakse | Stardance
Dev Title: Unsubscribely by @pancakse | Stardance
Devlogs:
DEVLOG 1: So we managed to get a window and you can select from dark mode and light mode ig
DEVLOG 2: We decided to switch to Unsubscribely being a website since Wails was being a pain in the a**
DEVLOG 3: We made a dashboard currently only support gmail but anyone who uses this wont be able to it unless i do verification (which i think costs money or smtg) or i add you as a tester and couldnt add outlook because Azure was being a pain in the a**
DEVLOG 4: so i managed to get outlook to finally work i spent like a hour changing browser settings to be able to get access to the azure portal and also we got icloud/any generic imap provider to work (1st image is outlook. 2nd is icloud)
DEVLOG 5: Ive decided to make a demo and a privacy policy
DEVLOG 6: So i manged to get a hosted version working and i tried making it a electron app but it really didnt work because you cant put sensitive info like client secrets in apps because well someone could decrypt it and stuff so yea...
|
1793051657.1522114
|
1793656457.1522114
|
|
34115
|
Senku's Playground by @Kat | Stardance
|
Kat
|
0
|
3.46
|
0
|
[]
|
[{"post_id": 71627, "ts": "202 [{"post_id": 71627, "ts": "2026-09-21T06:07:15Z", "hours": 2.0539, "text": "Tried making the segmental gear reciprocating mechanism used in the waterwheel to power the furnaces with oxygen, but onshape doesn’t let me do the specific mate features to have the rack and pinions work in two separate directions. I tried making two continuous curves tangent with each other but that also failed… I don’t think I’ll be able to make this one yall 😭"}, {"post_id": 36250, "ts": "2026-07-28T07:06:08Z", "hours": 1.4067, "text": "I made the wobbler engine that is used in Dr. Stone’s steam gorilla :P"}]...
|
Title: Senku's Playground by @Kat | Stardance
Title: Senku's Playground by @Kat | Stardance
Devlogs:
I made the wobbler engine that is used in Dr. Stone’s steam gorilla :P
Tried making the segmental gear reciprocating mechanism used in the waterwheel to power the furnaces with oxygen, but onshape doesn’t let me do the specific mate features to have the rack and pinions work in two separate directions. I tried making two continuous curves tangent with each other but that also failed… I don’t think I’ll be able to make this one yall 😭...
|
1792684338.4650369
|
1793289138.4650369
|
|
64373
|
Computer Science GCSE revision website by @hollyma Computer Science GCSE revision website by @hollymarielise | Stardance...
|
hollymarielise
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T06:16:27Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This was my first website on JavaScript html and css. Its for my HPQ, which I have just started. The project isnt finished yet, but i need to ship smth before this website ends on the 30th. Iit was pretty difficult to work on the buttons and their function and design but i worked it out.", "repo": "https://github.com/hollymarielise-lang/Snake-Game", "demo": "https://compscirevision.netlify.app/choose.html"}]...
|
[{"post_id": 71628, "ts": "202 [{"post_id": 71628, "ts": "2026-09-21T06:09:30Z", "hours": 4.5628, "text": "First time designing buttons and background myself"}]...
|
Title: Computer Science GCSE revision website by @ Title: Computer Science GCSE revision website by @hollymarielise | Stardance
Devlogs:
First time designing buttons and background myself
Ships:
This was my first website on JavaScript html and css. Its for my HPQ, which I have just started. The project isnt finished yet, but i need to ship smth before this website ends on the 30th. Iit was pretty difficult to work on the buttons and their function and design but i worked it out....
|
1793213572.2057807
|
1793299972.2057807
|
|
8891
|
Vexbox Controler by @I-like-BWRs | Stardance
|
I-like-BWRs
|
0
|
1.01
|
0
|
[]
|
[{"post_id": 7163, "ts": "2026 [{"post_id": 7163, "ts": "2026-06-11T23:20:31Z", "hours": 1.0125, "text": "Soldered Pico and wrapped it up."}]...
|
Title: Vexbox Controler by @I-like-BWRs | Stardanc Title: Vexbox Controler by @I-like-BWRs | Stardance
Devlogs:
Soldered Pico and wrapped it up....
|
1793156070.995691
|
1793760870.995691
|
|
64301
|
Planetary Dodge by @ianl | Stardance
|
ianl
|
1
|
3.0
|
5
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T06:31:02Z", "hours": 3.0, "multiplier": 1.95, "payout": 5, "blessing": "neutral", "text": "I made a very simple game that I thought would just take an hour or two. It is a game that uses Emojis to simulate a spaceship traveling through space, and there are objects that the spaceship has to avoid. One thing that was very difficult for me was the small amount of mathematics that were used in the Javascript file. I messed up a lot of times on the JS Math functions, but then again, I am very rusty at JS. This has been a learning experience and I hope you enjoy my site! (yes, it’s basic and the UI isn’t the best.)", "repo": "https://github.com/inaianl/planetary-dodge/", "demo": "https://planetarydodge.ourdevbox.site/"}]...
|
[{"post_id": 71632, "ts": "202 [{"post_id": 71632, "ts": "2026-09-21T06:25:54Z", "hours": 0.2519, "text": "I think my game is completely finished now! I know that I stated it was finished previously, but I have just added the last finishing touches. I am really glad with how it came out because I have not programmed in a long time. I learned from this project that I need to work on improving my UI design skills. I used to be really good at UI! Maybe one day!!"}, {"post_id": 71617, "ts": "2026-09-21T05:18:02Z", "hours": 2.2642, "text": "Just finished my game! It took me about 2 hours. Laying out the basics was pretty easy, but I needed help with a lot of the more complex parts."}]...
|
Title: Planetary Dodge by @ianl | Stardance
Devlo Title: Planetary Dodge by @ianl | Stardance
Devlogs:
Just finished my game! It took me about 2 hours. Laying out the basics was pretty easy, but I needed help with a lot of the more complex parts.
I think my game is completely finished now! I know that I stated it was finished previously, but I have just added the last finishing touches. I am really glad with how it came out because I have not programmed in a long time. I learned from this project that I need to work on improving my UI design skills. I used to be really good at UI! Maybe one day!!
Ships:
I made a very simple game that I thought would just take an hour or two. It is a game that uses Emojis to simulate a spaceship traveling through space, and there are objects that the spaceship has to avoid. One thing that was very difficult for me was the small amount of mathematics that were used in the Javascript file. I messed up a lot of times on the JS Math functions, but then again, I am very rusty at JS. This has been a learning experience and I hope you enjoy my site! (yes, it’s basic and the UI isn’t the best.)...
|
1793213547.7195735
|
1793299947.7195735
|
|
64365
|
Tower to Heaven by @ciklole | Stardance
|
ciklole
|
0
|
8.93
|
0
|
[]
|
[{"post_id": 71637, "ts": "202 [{"post_id": 71637, "ts": "2026-09-21T06:31:17Z", "hours": 8.9333, "text": "Here are all three of the levels i have been working on. Ok, from the start, this is a game where you complete levels of parkours, mazes, and all other stuff. its like an obby in roblox, but in unity. the controls are also different from the roblox. you have a stamina bar, WASD to walk, Q to dash (it will take some of the stamina) right click to zoom, C to crouch, and V to crouch even harder. And most importantly, LEFT SHIFT to run. thats it for the controls. i will be decorating each of the levels soon. Also, there is a video, which shows one movement tech to jump really high. you have to run, then jump as high as you can(hold SPACE longer) and then dahs into the 45 degree angled platform. it will only work on tilted platforms."}]...
|
Title: Tower to Heaven by @ciklole | Stardance
De Title: Tower to Heaven by @ciklole | Stardance
Devlogs:
Here are all three of the levels i have been working on. Ok, from the start, this is a game where you complete levels of parkours, mazes, and all other stuff. its like an obby in roblox, but in unity. the controls are also different from the roblox. you have a stamina bar, WASD to walk, Q to dash (it will take some of the stamina) right click to zoom, C to crouch, and V to crouch even harder. And most importantly, LEFT SHIFT to run. thats it for the controls. i will be decorating each of the levels soon. Also, there is a video, which shows one movement tech to jump really high. you have to run, then jump as high as you can(hold SPACE longer) and then dahs into the 45 degree angled platform. it will only work on tilted platforms....
|
1793062380.3257258
|
1793667180.3257258
|
|
64363
|
Wake up machine by @matthewjhinkleman | Stardance
|
matthewjhinkleman
|
0
|
0.46
|
0
|
[]
|
[{"post_id": 71638, "ts": "202 [{"post_id": 71638, "ts": "2026-09-21T06:31:34Z", "hours": 0.4633, "text": "I made the PCB in KiCAD and customized it a little"}]...
|
Title: Wake up machine by @matthewjhinkleman | Sta Title: Wake up machine by @matthewjhinkleman | Stardance
Devlogs:
I made the PCB in KiCAD and customized it a little...
|
1793062375.251681
|
1793667175.251681
|
|
10396
|
Chess Coach by @blazfoxx | Stardance
|
blazfoxx
|
0
|
7.57
|
0
|
[]
|
[{"post_id": 7164, "ts": "2026 [{"post_id": 7164, "ts": "2026-06-11T23:29:29Z", "hours": 4.1761, "text": "You can now play chess against a bot! Chose between different kinds of difficulties, and ask the coach to review your game! Added a working chess board."}, {"post_id": 5287, "ts": "2026-06-09T00:36:36Z", "hours": 3.3947, "text": "Started building the bot! How does this work? So basically, chess.com has its own bot for game reviews (unlimited for paid users) but it only looks at that one games details and helps you with that. My website basically pulls in the data of your user through the public endpoint from chess.com. We get all game data and feed it to an AI. I am building two different modes for it. 1. thats pretty “brutal” while the other is “nicer-er”. Everything will be free, but slow -> uses glm 5.1 from NIM. (If I do add a paid tier, it will include faster inference and stuff). So currently, I got the the system prompts ready and a base of the website. (Gets game data and gives you a review) I will be adding chess boards soon and a better UI!"}]...
|
Title: Chess Coach by @blazfoxx | Stardance
Devlo Title: Chess Coach by @blazfoxx | Stardance
Devlogs:
Started building the bot! How does this work? So basically, chess.com has its own bot for game reviews (unlimited for paid users) but it only looks at that one games details and helps you with that. My website basically pulls in the data of your user through the public endpoint from chess.com. We get all game data and feed it to an AI. I am building two different modes for it. 1. thats pretty “brutal” while the other is “nicer-er”. Everything will be free, but slow -> uses glm 5.1 from NIM. (If I do add a paid tier, it will include faster inference and stuff). So currently, I got the the system prompts ready and a base of the website. (Gets game data and gives you a review) I will be adding chess boards soon and a better UI!
You can now play chess against a bot! Chose between different kinds of difficulties, and ask the coach to review your game! Added a working chess board....
|
1792691658.2494528
|
1793296458.2494528
|
|
26652
|
Mcrpd by @Ganimard | Stardance
|
Ganimard
|
0
|
34.99
|
0
|
[]
|
[{"post_id": 71642, "ts": "202 [{"post_id": 71642, "ts": "2026-09-21T06:41:00Z", "hours": 0.7911, "text": "Doublechecked the pin mappings in my firmware"}, {"post_id": 71077, "ts": "2026-09-20T08:40:30Z", "hours": 0.9528, "text": "I’M DONE. firmware, case design and pcb design is all wrapped up just had to tidy up my github repo and get it ready for review"}, {"post_id": 70484, "ts": "2026-09-19T08:33:09Z", "hours": 1.7458, "text": "Ok a basic draft of the firmware is finished and I’ve tried to compile it where it said “invalid bootloader specified” or sm shit, but I’ve fixed that just got the errors qmk msys gives me to work out. Involved some major terminal and file explorer fuckery, especially as a beginner"}, {"post_id": 62072, "ts": "2026-09-05T09:46:47Z", "hours": 1.2167, "text": "finished case design. I actually added a little shroud thing for the mcu which will be glued onto the main case assembly after building."}, {"post_id": 62012, "ts": "2026-09-05T06:45:47Z", "hours": 0.8833, "text": "Case redesign(tolerances would not fit). still unfinished"}, {"post_id": 61929, "ts": "2026-09-05T03:08:24Z", "hours": 1.3428, "text": "finishing touches on the top plate"}, {"post_id": 61861, "ts": "2026-09-05T00:03:53Z", "hours": 0.9667, "text": "I finally found a boolean model to use for the usb-c cutout off of printables. The case now has a usb-c cutout."}, {"post_id": 60720, "ts": "2026-09-03T08:49:46Z", "hours": 1.0264, "text": "Fixed the led routing now all thats left is some DRC kinks to work out."}, {"post_id": 52906, "ts": "2026-08-23T09:00:07Z", "hours": 0.95, "text": "edited the pcb as there are a few kinks to work out with the footprints. My LEDs give an error message in DRC as “footprint not found”"}, {"post_id": 42501, "ts": "2026-08-07T08:52:02Z", "hours": 1.5331, "text": "still trying to add a usb c cutout"}, {"post_id": 38077, "ts": "2026-07-31T09:17:01Z", "hours": 1.6, "text": "trying to add a usb c cutout to my case"}, {"post_id": 35672, "ts": "2026-07-27T08:30:57Z", "hours": 0.9167, "text": "further firmware development. I worked mostly on the info.json file and reverse enginerred the orpheuspad’s code. Some AI was used for proofreading"}, {"post_id": 35055, "ts": "2026-07-26T07:15:21Z", "hours": 0.9669, "text": "Finally, after much undocumented reseach, i’ve started writing the firmware. I did vibecode and use help from AI a bit as I havent coded in anything past python."}, {"post_id": 31060, "ts": "2026-07-19T04:48:07Z", "hours": 1.0003, "text": "figuring out how qmk works and how i use it"}, {"post_id": 30556, "ts": "2026-07-18T07:14:13Z", "hours": 1.2336, "text": "Case design is basically done just gotta add a usb c cutout. The top plate is basically nonexistant as i wanted the pcb, components and soldering to show through the case"}, {"post_id": 30031, "ts": "2026-07-17T09:01:37Z", "hours": 2.6922, "text": "(hopefully) Final PCB rerouting and case design"}, {"post_id": 29312, "ts": "2026-07-16T05:05:54Z", "hours": 1.5669, "text": "Placement of things on the top case plate. Gonna add a boolean modifier to make the holes for it on the top plate later"}, {"post_id": 29216, "ts": "2026-07-15T23:31:39Z", "hours": 0.7003, "text": "Unfinished case (top plate and walls still unfinished"}, {"post_id": 28775, "ts": "2026-07-15T08:07:58Z", "hours": 0.8278, "text": "GND net finished and case design started"}, {"post_id": 28571, "ts": "2026-07-14T22:03:51Z", "hours": 1.2939, "text": "Final routing with the correct microcontroller. GND net still unfinished"}, {"post_id": 28153, "ts": "2026-07-14T08:26:51Z", "hours": 1.6469, "text": "Fixed prev ERC errors and begun routing"}, {"post_id": 27546, "ts": "2026-07-13T06:26:12Z", "hours": 2.3003, "text": "The tutorial for the hackpad uses the SAMD21 version of the xiao whereas they ship the xiao rp2040. Had to redesign everything around the rp2040. Schematic ERC still gives some errors and routing is not yet fully completed."}, {"post_id": 27059, "ts": "2026-07-12T08:15:12Z", "hours": 0.8167, "text": "finished case design and started firmware design"}, {"post_id": 25811, "ts": "2026-07-10T08:45:18Z", "hours": 1.4503, "text": "fixed the DRC issues from the LEDs and started case design"}, {"post_id": 24580, "ts": "2026-07-08T08:28:36Z", "hours": 1.3167, "text": "Added 4 LEDs. Kicad DRC gives a lot of errors still so got a few kinks to work out before routing."}, {"post_id": 22701, "ts": "2026-07-05T08:23:29Z", "hours": 0.5333, "text": "added silkscreen art to my pcb"}, {"post_id": 22456, "ts": "2026-07-04T22:32:19Z", "hours": 1.0167, "text": "added an oled screen+rotary encoder. gonna try to add some silkscreen art next time"}, {"post_id": 21350, "ts": "2026-07-03T07:32:42Z", "hours": 1.7047, "text": "I am building a comparatively basic 3 key macropad with a rotary encoder, an oled screen, LEDs and 3 switches. So far only the switches and the (badly incorporated) rotary encoder have been added. In further sessions I intend to fix the rotary encoder and add an oled screen (software parts to come later)."}]...
|
Title: Mcrpd by @Ganimard | Stardance
Devlogs:
I Title: Mcrpd by @Ganimard | Stardance
Devlogs:
I am building a comparatively basic 3 key macropad with a rotary encoder, an oled screen, LEDs and 3 switches. So far only the switches and the (badly incorporated) rotary encoder have been added. In further sessions I intend to fix the rotary encoder and add an oled screen (software parts to come later).
added an oled screen+rotary encoder. gonna try to add some silkscreen art next time
added silkscreen art to my pcb
Added 4 LEDs. Kicad DRC gives a lot of errors still so got a few kinks to work out before routing.
fixed the DRC issues from the LEDs and started case design
finished case design and started firmware design
The tutorial for the hackpad uses the SAMD21 version of the xiao whereas they ship the xiao rp2040. Had to redesign everything around the rp2040. Schematic ERC still gives some errors and routing is not yet fully completed.
Fixed prev ERC errors and begun routing
Final routing with the correct microcontroller. GND net still unfinished
GND net finished and case design started
Unfinished case (top plate and walls still unfinished
Placement of things on the top case plate. Gonna add a boolean modifier to make the holes for it on the top plate later
(hopefully) Final PCB rerouting and case design
Case design is basically done just gotta add a usb c cutout. The top plate is basically nonexistant as i wanted the pcb, components and soldering to show through the case
figuring out how qmk works and how i use it
Finally, after much undocumented reseach, i’ve started writing the firmware. I did vibecode and use help from AI a bit as I havent coded in anything past python.
further firmware development. I worked mostly on the info.json file and reverse enginerred the orpheuspad’s code. Some AI was used for proofreading
trying to add a usb c cutout to my case
still trying to add a usb c cutout
edited the pcb as there are a few kinks to work out with the footprints. My LEDs give an error message in DRC as “footprint not found”
Fixed the led routing now all thats left is some DRC kinks to work out.
I finally found a boolean model to use for the usb-c cutout off of printables. The case now has a usb-c cutout.
finishing touches on the top plate
Case redesign(tolerances would not fit). still unfinished
finished case design. I actually added a little shroud thing for the mcu which will be glued onto the main case assembly after building.
Ok a basic draft of the firmware is finished and I’ve tried to compile it where it said “invalid bootloader specified” or sm shit, but I’ve fixed that just got the errors qmk msys gives me to work out. Involved some major terminal and file explorer fuckery, especially as a beginner
I’M DONE. firmware, case design and pcb design is all wrapped up just had to tidy up my github repo and get it ready for review
Doublechecked the pin mappings in my firmware...
|
1792803157.7517343
|
1793407957.7517343
|
|
55892
|
Surf by @ng_qi_an | Stardance
|
ng_qi_an
|
0
|
8.98
|
0
|
[]
|
[{"post_id": 71662, "ts": "202 [{"post_id": 71662, "ts": "2026-09-21T08:16:33Z", "hours": 4.1472, "text": "It all works! 🤖 Added a working AI to the chat 🔍 Indicator for web results 👀 Brand new chat animation too for some eyecandy Chats save and generate names automatically ♥️ Nice little blue button that shows up when you press control, signals that it’ll go to make a new chat instead of searching Check out demo belowwwwww"}, {"post_id": 59617, "ts": "2026-09-01T15:13:41Z", "hours": 1.3097, "text": "Chat design! 💬 Added some fresher animations, and made a mock chat message UI. 📖 Right now, it’s showing some demo messages. AI-sdk is already implemented, just need to link to a provider (might consider hackclub-ai) 🤖 Also tidied up some code, and made the whole page move with the sidebar as compared to before when it was floating. ✨ Check out the vid! 📹"}, {"post_id": 59332, "ts": "2026-09-01T01:54:46Z", "hours": 1.6858, "text": "Animations & Chat Added the chat creation flow! For this, I used a new library called Dexie, which makes Indexed DB easier. I’ve never tried storing data in Indexed DB before, so this is pretty cool! Chats are also kept locally for security :) Theres a new Sidebar button as well, popping out with a neat animation. Going to work onto making the Chat UI design and the actual ai flow"}, {"post_id": 58038, "ts": "2026-08-30T11:50:40Z", "hours": 1.84, "text": "Introducing: Surf! 🏄 A better way to surf the web ✨ I’ve always wanted to design a custom new tab, and what better way to do so than this mission! Recently, I came across Dia browser, and it’s really solid! For my advanced feature, I wanted to incorporate Dia’s hybrid search box, where the search box switches between Google and AI chat automatically. I’ve laid out the basic layout & design, along with Google autocomplete, Google search, and the chat prompt design. The search box works just like Google’s right now, with arrow keys and autocomplete results directly under it. If the text begins to get too long, or overflow into a new line, the search box automatically converts into an AI prompt input! Will be working on making the chat mechanic actually work next. Check out the video!"}]...
|
Title: Surf by @ng_qi_an | Stardance
Devlogs:
Int Title: Surf by @ng_qi_an | Stardance
Devlogs:
Introducing: Surf! 🏄 A better way to surf the web ✨ I’ve always wanted to design a custom new tab, and what better way to do so than this mission! Recently, I came across Dia browser, and it’s really solid! For my advanced feature, I wanted to incorporate Dia’s hybrid search box, where the search box switches between Google and AI chat automatically. I’ve laid out the basic layout & design, along with Google autocomplete, Google search, and the chat prompt design. The search box works just like Google’s right now, with arrow keys and autocomplete results directly under it. If the text begins to get too long, or overflow into a new line, the search box automatically converts into an AI prompt input! Will be working on making the chat mechanic actually work next. Check out the video!
Animations & Chat Added the chat creation flow! For this, I used a new library called Dexie, which makes Indexed DB easier. I’ve never tried storing data in Indexed DB before, so this is pretty cool! Chats are also kept locally for security :) Theres a new Sidebar button as well, popping out with a neat animation. Going to work onto making the Chat UI design and the actual ai flow
Chat design! 💬 Added some fresher animations, and made a mock chat message UI. 📖 Right now, it’s showing some demo messages. AI-sdk is already implemented, just need to link to a provider (might consider hackclub-ai) 🤖 Also tidied up some code, and made the whole page move with the sidebar as compared to before when it was floating. ✨ Check out the vid! 📹
It all works! 🤖 Added a working AI to the chat 🔍 Indicator for web results 👀 Brand new chat animation too for some eyecandy Chats save and generate names automatically ♥️ Nice little blue button that shows up when you press control, signals that it’ll go to make a new chat instead of searching Check out demo belowwwwww...
|
1793357331.2672327
|
1794221331.2672327
|
|
35806
|
Planet Viewer 3D by @colgation | Stardance
|
colgation
|
3
|
8.0
|
113
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T08:29:14Z", "hours": 3.0, "multiplier": 15.64, "payout": 48, "blessing": "neutral", "text": "I made a 3D Planet Viewer that features 5 whole unqiue planetary systems fully rendered in 3d planet by planet, with a nebula 3d background. Every single planet has a arduously made information panel, and a help section can be found on the bottom right of each page. Additionally, I experimented with CSS animations as well as a randomly generating constellation home screen!", "repo": "https://github.com/194500-cpu/APOD", "demo": "https://194500-cpu.github.io/APOD/"}, {"ship_num": 2, "ts": "2026-09-20T03:11:48Z", "hours": 4.0, "multiplier": 12.46, "payout": 65, "blessing": "neutral", "text": "I made a 3d planet viewer fully equipped with 3 differnet planetary systems that runs on browser! It uses parameters in the the link to pass variables across pages, and has a nebula background that rotates alongside the camera. Planets can be zoomed in on and rotated. Alongside this, each individual planet has a description of itself and some statistics. I hope all of you learn something useful from this project and are amazed by the 3d models! -Colgation", "repo": "https://github.com/194500-cpu/APOD", "demo": "https://194500-cpu.github.io/APOD/"}, {"ship_num": 3, "ts": "2026-09-15T08:55:31Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 3d Planet displaying website, that shows realistic interactive models of the 8 planets using three js. It it fully deployed on github pages, and has clean minimalistic UI and a next button with JS that reacts to the mouse clicking and hovering above it.", "repo": "https://github.com/194500-cpu/APOD", "demo": "https://194500-cpu.github.io/APOD/"}]...
|
[{"post_id": 71664, "ts": "202 [{"post_id": 71664, "ts": "2026-09-21T08:24:01Z", "hours": 0.4797, "text": "Finished the dedicated help panel. What was really hard was getting the parameters with js including all the planet, solar system and etc. I ended up having to bulk up the code on each page in order to do this, but it turned out great."}, {"post_id": 71656, "ts": "2026-09-21T07:53:28Z", "hours": 0.3108, "text": "Added a button to remove info, in order to increase UX for mobile/small screen users. I also added a constellation background. Shipping soon! In JS, the main thing I tried to do was a smooth transition. On top of other complications, hiding and showing the box started to break its location, so I had to learn a bit more about flex boxes."}, {"post_id": 71651, "ts": "2026-09-21T07:35:13Z", "hours": 0.8006, "text": "Huge CSS upgrade for the index.html, I had an original idea of a tree, however it came out like this: (a timeline/distance measuring like line) I accidentally moved the cards above the line, which ended up looking even better, so I kind of improved it unintentionally like the time a person accidentally invented chocolate chip cookies."}, {"post_id": 71640, "ts": "2026-09-21T06:38:15Z", "hours": 0.3572, "text": "Added over 7 new textures, for two whole systems. I will now enter some information for each one. My next move will be further cleaning UI. It was a pain to source rectangle sheets for these planets, as real photographs do not exist yet for many exoplanets. It took me some time to decide on an impression that I found reasonable and enjoyed."}, {"post_id": 71526, "ts": "2026-09-21T00:27:42Z", "hours": 0.2539, "text": "Added two more systems, expect planet textures in the next devlog. Tau Ceti and 55 Cancri were chosen because of either their iconic portrayal in movies or high likelihood of confirmed planets. I enjoyed getting to finally just add more content to the site."}, {"post_id": 71476, "ts": "2026-09-20T21:55:56Z", "hours": 0.3339, "text": "Added a new system and managed to fix the seams in the nebula. I took in the feedback from the previous ship and hope to use it as a springboard into further polishing and developing my project."}, {"post_id": 70955, "ts": "2026-09-20T03:07:47Z", "hours": 0.2744, "text": "Final log before ship: added Desktop and mobile support, alongside final fixes and reviews. I made a good readme, and plan on shipping very soon. Below is a snapshot from accessing the site on desktop"}, {"post_id": 70945, "ts": "2026-09-20T02:46:22Z", "hours": 0.3981, "text": "Added info and 3d rendering of each planet, cleaned up href links with document even listeners. Planning on polishing css and shipping! In terms of the Alpha Centauri System, I have only included Proxima Centauri b as a test, but the other two planets are candidates and not confirmed yet, thus they will nto be added yet to the final project."}, {"post_id": 70929, "ts": "2026-09-20T01:58:10Z", "hours": 0.585, "text": "Got the images for all the Trappist 1 planets. I am planning on adding the Alpha Centauri system soon, once I fix the params system."}, {"post_id": 70251, "ts": "2026-09-18T20:10:35Z", "hours": 0.2847, "text": "Added images in place of generic text, removed background to match the style of catalog. I am planning on using these systems as a starting point and add more later."}, {"post_id": 70244, "ts": "2026-09-18T19:42:57Z", "hours": 0.4958, "text": "With some help, I was able to create the outline for the System selection. It uses basic css and manual placing to create the tree, though I might replace it."}, {"post_id": 69863, "ts": "2026-09-17T23:02:09Z", "hours": 0.3158, "text": "Lots of UI cleanup and now planning to expand into other Planetary Systems. Possibly will add stars/asteroids. A key change for the catalog “menu” was to remove the card like background, making the UI much cleaner."}, {"post_id": 69856, "ts": "2026-09-17T22:39:05Z", "hours": 0.735, "text": "Added a description and information (all hand typed and researched) for Mercury and Venus. Hoping to get the rest done within a hour. (Probably will end up using AI to help me write out the stats, so I can work on bigger features)"}, {"post_id": 69039, "ts": "2026-09-16T08:20:04Z", "hours": 0.55, "text": "Lots of attempts at trying to render the planet in the center of the screen. I first tried making the back button margin top larger, but it didn’t work, as the three.js ignores this. I ended up changing the camera position in order to move the planet up, without breaking the system of being able to rotate the planet with your mouse."}, {"post_id": 68793, "ts": "2026-09-15T19:20:23Z", "hours": 0.665, "text": "Created a catalog viewer that displays all planets nicely. I separated the website into two pages: catalog and 3d Viewer. Alongside that, I am planning to expand beyond our solar system and add more planets!"}, {"post_id": 68536, "ts": "2026-09-15T08:43:41Z", "hours": 0.2664, "text": "All planets have been added! I used a smart system that imports a png rectangle texture and wraps it around a colorless sphere."}, {"post_id": 68524, "ts": "2026-09-15T08:18:10Z", "hours": 0.2564, "text": "Made a next button with slight help of w3schools, which reacts to clicks and mouse hovering."}, {"post_id": 68521, "ts": "2026-09-15T08:01:11Z", "hours": 0.3014, "text": "Here is the beginning of my website, which will have the 8 planets in a 3d rotatable format."}, {"post_id": 68513, "ts": "2026-09-15T07:38:49Z", "hours": 0.2506, "text": "Started up the Github page! API errors, but I will try to fix that…"}]...
|
Title: Planet Viewer 3D by @colgation | Stardance
Title: Planet Viewer 3D by @colgation | Stardance
Devlogs:
Started up the Github page! API errors, but I will try to fix that…
Here is the beginning of my website, which will have the 8 planets in a 3d rotatable format.
Made a next button with slight help of w3schools, which reacts to clicks and mouse hovering.
All planets have been added! I used a smart system that imports a png rectangle texture and wraps it around a colorless sphere.
Created a catalog viewer that displays all planets nicely. I separated the website into two pages: catalog and 3d Viewer. Alongside that, I am planning to expand beyond our solar system and add more planets!
Lots of attempts at trying to render the planet in the center of the screen. I first tried making the back button margin top larger, but it didn’t work, as the three.js ignores this. I ended up changing the camera position in order to move the planet up, without breaking the system of being able to rotate the planet with your mouse.
Added a description and information (all hand typed and researched) for Mercury and Venus. Hoping to get the rest done within a hour. (Probably will end up using AI to help me write out the stats, so I can work on bigger features)
Lots of UI cleanup and now planning to expand into other Planetary Systems. Possibly will add stars/asteroids. A key change for the catalog “menu” was to remove the card like background, making the UI much cleaner.
With some help, I was able to create the outline for the System selection. It uses basic css and manual placing to create the tree, though I might replace it.
Added images in place of generic text, removed background to match the style of catalog. I am planning on using these systems as a starting point and add more later.
Got the images for all the Trappist 1 planets. I am planning on adding the Alpha Centauri system soon, once I fix the params system.
Added info and 3d rendering of each planet, cleaned up href links with document even listeners. Planning on polishing css and shipping! In terms of the Alpha Centauri System, I have only included Proxima Centauri b as a test, but the other two planets are candidates and not confirmed yet, thus they will nto be added yet to the final project.
Final log before ship: added Desktop and mobile support, alongside final fixes and reviews. I made a good readme, and plan on shipping very soon. Below is a snapshot from accessing the site on desktop
Added a new system and managed to fix the seams in the nebula. I took in the feedback from the previous ship and hope to use it as a springboard into further polishing and developing my project.
Added two more systems, expect planet textures in the next devlog. Tau Ceti and 55 Cancri were chosen because of either their iconic portrayal in movies or high likelihood of confirmed planets. I enjoyed getting to finally just add more content to the site.
Added over 7 new textures, for two whole systems. I will now enter some information for each one. My next move will be further cleaning UI. It was a pain to source rectangle sheets for these planets, as real photographs do not exist yet for many exoplanets. It took me some time to decide on an impression that I found reasonable and enjoyed.
Huge CSS upgrade for the index.html, I had an original idea of a tree, however it came out like this: (a timeline/distance measuring like line) I accidentally moved the cards above the line, which ended up looking even better, so I kind of improved it unintentionally like the time a person accidentally invented chocolate chip cookies.
Added a button to remove info, in order to increase UX for mobile/small screen users. I also added a constellation background. Shipping soon! In JS, the main thing I tried to do was a smooth transition. On top of other complications, hiding and showing the box started to break its location, so I had to learn a bit more about flex boxes.
Finished the dedicated help panel. What was really hard was getting the parameters with js including all the planet, solar system and etc. I ended up having to bulk up the code on each page in order to do this, but it turned out great.
Ships:
I made a 3d Planet displaying website, that shows realistic interactive models of the 8 planets using three js. It it fully deployed on github pages, and has clean minimalistic UI and a next button with JS that reacts to the mouse clicking and hovering above it.
I made a 3d planet viewer fully equipped with 3 differnet planetary systems that runs on browser! It uses parameters in the the link to pass variables across pages, and has a nebula background that rotates alongside the camera. Planets can be zoomed in on and rotated. Alongside this, each individual planet has a description of itself and some statistics. I hope all of you learn something useful from this project and are amazed by the 3d models! -Colgation
I made a 3D Planet Viewer that features 5 whole unqiue planetary systems fully rendered in 3d planet by planet, with a nebula 3d background. Every single planet has a arduously made information panel, and a help section can be found on the bottom right of each page. Additionally, I experimented with CSS animations as well as a randomly generating constellation home screen!...
|
1793353711.095401
|
1793440111.095401
|
|
14185
|
My very own WebOS by @matikda | Stardance
|
matikda
|
0
|
5.3
|
0
|
[]
|
[{"post_id": 7168, "ts": "2026 [{"post_id": 7168, "ts": "2026-06-11T23:35:57Z", "hours": 5.3028, "text": "I spent the beginning of this project struggling to draw a room online without an iPad. Canva is NOT FUN to use for line ‘art,’ cannot stress this enough. After that nightmare, I had to figure out how to transfer the image to html. And I thought Canva was bad. Html was so much worse, especially because I wanted to make sure that the image scaled with the browser window. Thank god thats over (I still have to do something about the conspicuous ceiling lamp…). Anyway, next I need to make the chair one unit. I had to break it up to keep it convex. So close yet so far."}]...
|
Title: My very own WebOS by @matikda | Stardance
Title: My very own WebOS by @matikda | Stardance
Devlogs:
I spent the beginning of this project struggling to draw a room online without an iPad. Canva is NOT FUN to use for line ‘art,’ cannot stress this enough. After that nightmare, I had to figure out how to transfer the image to html. And I thought Canva was bad. Html was so much worse, especially because I wanted to make sure that the image scaled with the browser window. Thank god thats over (I still have to do something about the conspicuous ceiling lamp…). Anyway, next I need to make the chair one unit. I had to break it up to keep it convex. So close yet so far....
|
1793379366.585295
|
1793984166.585295
|
|
60538
|
Brokiepad by @Brokie | Stardance
|
Brokie
|
0
|
12.16
|
0
|
[]
|
[{"post_id": 71681, "ts": "202 [{"post_id": 71681, "ts": "2026-09-21T09:30:48Z", "hours": 1.1017, "text": "did some configuration with the macropad case screw holes didnt algin so made them aligin"}, {"post_id": 70456, "ts": "2026-09-19T07:14:02Z", "hours": 2.1061, "text": "created the case for my macropad in fusion"}, {"post_id": 69995, "ts": "2026-09-18T07:05:40Z", "hours": 1.7139, "text": "created the plate for my keyboard in fusion 360 as a complete beginner"}, {"post_id": 69562, "ts": "2026-09-17T10:00:34Z", "hours": 1.9156, "text": "learning to do macropad case desgin in fusion 360"}, {"post_id": 68527, "ts": "2026-09-15T08:25:27Z", "hours": 0.4975, "text": "finally fixed all errors in my macropad pcb"}, {"post_id": 68149, "ts": "2026-09-14T16:28:17Z", "hours": 1.4786, "text": "so i again was working on my pcb and i have learned some new stuff and also its better than last time but it still got issues"}, {"post_id": 67222, "ts": "2026-09-13T08:42:25Z", "hours": 1.0308, "text": "did some more work on the pcb did some adjustments still workin on it"}, {"post_id": 66432, "ts": "2026-09-12T08:14:51Z", "hours": 1.0803, "text": "made a 3*3 matrix added oled screen and led havent figured it out correctly ,working on it"}, {"post_id": 65819, "ts": "2026-09-11T06:51:25Z", "hours": 1.2378, "text": "learning to make a pcb for micropad i have never made pcb or used kicad in my life so for my first time im creating a micropad pcb it has many faults but im trying to fix them"}]...
|
Title: Brokiepad by @Brokie | Stardance
Devlogs:
Title: Brokiepad by @Brokie | Stardance
Devlogs:
learning to make a pcb for micropad i have never made pcb or used kicad in my life so for my first time im creating a micropad pcb it has many faults but im trying to fix them
made a 3*3 matrix added oled screen and led havent figured it out correctly ,working on it
did some more work on the pcb did some adjustments still workin on it
so i again was working on my pcb and i have learned some new stuff and also its better than last time but it still got issues
finally fixed all errors in my macropad pcb
learning to do macropad case desgin in fusion 360
created the plate for my keyboard in fusion 360 as a complete beginner
created the case for my macropad in fusion
did some configuration with the macropad case screw holes didnt algin so made them aligin...
|
1793036856.8104029
|
1793641656.8104029
|