|
26654
|
Gateway Navigator by @shayanyk | Stardance
|
shayanyk
|
0
|
12.74
|
0
|
[]
|
[{"post_id": 64871, "ts": "202 [{"post_id": 64871, "ts": "2026-09-09T15:52:26Z", "hours": 11.5442, "text": "After getting the basic propagator working, I moved on to the next thing I needed for Gateway Navigator: the State Transition Matrix (STM). At first I thought this would be fairly straightforward. The idea seemed simple enough — propagate the spacecraft state and also keep track of how small changes in the initial state affect the state later on. In practice, it was a lot more annoying than I expected. I started by going through the CR3BP equations again and deriving the Jacobian of the dynamics. The main problem was keeping track of all the partial derivatives without making a sign mistake. Since the rotating-frame equations already contain the Coriolis terms, it was surprisingly easy to convince myself that an incorrect expression was correct. I implemented the variational equations and augmented the spacecraft state with the 36 STM elements. The first propagation technically ran, but the STM results were clearly wrong. Some elements were growing far too quickly and the numerical behaviour didn’t make physical sense."}, {"post_id": 17856, "ts": "2026-06-28T19:58:34Z", "hours": 1.1919, "text": "DEVLOG — SESSION 1 Date: June 28, 2026 Session: M1 Propagation Engine — Setup & Validation Set up the full Gateway Navigator project structure from scratch — all 7 module files, core utilities, tests, data and figures directories. Wrote m1_propagator.py containing the CR3BP equations of motion, Jacobi constant function, and a propagate() wrapper around scipy.solve_ivp using the DOP853 integrator. Wrote tests/test_m1_validation.py to verify two gate conditions: position return error under 1 km after one orbital period, and Jacobi drift under 1e-10. WHAT I LEARNED: The CR3BP equations model Gateway’s motion in a rotating frame co-moving with the Earth-Moon system. In this frame both primaries are stationary and the spacecraft experiences Coriolis and centrifugal forces alongside gravity. The Jacobi constant is a conserved quantity along any uncontrolled trajectory — if it drifts, the integrator is losing energy, which means the physics is wrong. DOP853 is an 8th-order Runge-Kutta method that conserves energy far better than lower-order integrators. WHAT BROKE / SURPRISED ME: Initial conditions copied from blueprint literature failed the position return gate badly — 3415 km error on the first attempt, 362 km on the second. The Jacobi drift was perfect both times (below 1e-13), meaning the integrator itself was working correctly. The problem was that NRHO initial conditions are extraordinarily sensitive.FINAL VALIDATED ICs: x0 = 1.0170375034517611 z0 = -0.1784174365278452 yd0 = -0.0921378916511874 T = 1.4451252712711455"}]...
|
Title: Gateway Navigator by @shayanyk | Stardance
Title: Gateway Navigator by @shayanyk | Stardance
Devlogs:
DEVLOG — SESSION 1 Date: June 28, 2026 Session: M1 Propagation Engine — Setup & Validation Set up the full Gateway Navigator project structure from scratch — all 7 module files, core utilities, tests, data and figures directories. Wrote m1_propagator.py containing the CR3BP equations of motion, Jacobi constant function, and a propagate() wrapper around scipy.solve_ivp using the DOP853 integrator. Wrote tests/test_m1_validation.py to verify two gate conditions: position return error under 1 km after one orbital period, and Jacobi drift under 1e-10. WHAT I LEARNED: The CR3BP equations model Gateway’s motion in a rotating frame co-moving with the Earth-Moon system. In this frame both primaries are stationary and the spacecraft experiences Coriolis and centrifugal forces alongside gravity. The Jacobi constant is a conserved quantity along any uncontrolled trajectory — if it drifts, the integrator is losing energy, which means the physics is wrong. DOP853 is an 8th-order Runge-Kutta method that conserves energy far better than lower-order integrators. WHAT BROKE / SURPRISED ME: Initial conditions copied from blueprint literature failed the position return gate badly — 3415 km error on the first attempt, 362 km on the second. The Jacobi drift was perfect both times (below 1e-13), meaning the integrator itself was working correctly. The problem was that NRHO initial conditions are extraordinarily sensitive.FINAL VALIDATED ICs: x0 = 1.0170375034517611 z0 = -0.1784174365278452 yd0 = -0.0921378916511874 T = 1.4451252712711455
After getting the basic propagator working, I moved on to the next thing I needed for Gateway Navigator: the State Transition Matrix (STM). At first I thought this would be fairly straightforward. The idea seemed simple enough — propagate the spacecraft state and also keep track of how small changes in the initial state affect the state later on. In practice, it was a lot more annoying than I expected. I started by going through the CR3BP equations again and deriving the Jacobian of the dynamics. The main problem was keeping track of all the partial derivatives without making a sign mistake. Since the rotating-frame equations already contain the Coriolis terms, it was surprisingly easy to convince myself that an incorrect expression was correct. I implemented the variational equations and augmented the spacecraft state with the 36 STM elements. The first propagation technically ran, but the STM results were clearly wrong. Some elements were growing far too quickly and the numerical behaviour didn’t make physical sense....
|
1793785849.2340894
|
1794390649.2340894
|
|
48438
|
Kile-OS by @koumud | Stardance
|
koumud
|
1
|
3.85
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-08T15:04:20Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "KileOS is a web-based operating system with a modern desktop, apps, window management, settings, themes, and local data storage. It runs directly in the browser and is publicly available for anyone to try.", "repo": "https://github.com/koumud/kile-os", "demo": "https://kile-os.vercel.app/"}]...
|
[{"post_id": 64867, "ts": "202 [{"post_id": 64867, "ts": "2026-09-09T15:40:36Z", "hours": 1.8547, "text": "Stage 5 builds on Stage 4 by adding KileFlow, a workspace control system with saved desktop scenes, Activity Pulse, Desk Map, and the Ctrl + Space Command Rail. The code was newly written on top of KileOS Stage 4, while reference projects were used only for feature inspiration."}, {"post_id": 48133, "ts": "2026-08-16T12:53:57Z", "hours": 0.3081, "text": "the new stage add a polish version of stage 2"}, {"post_id": 48000, "ts": "2026-08-16T08:52:59Z", "hours": 0.3578, "text": "In the 2nd stage i worked on smoothness and added 2 more apps to the os but they need polishing"}, {"post_id": 47945, "ts": "2026-08-16T06:43:28Z", "hours": 1.0083, "text": "I am currently working on an simple os for the project and it is simple"}]...
|
Title: Kile-OS by @koumud | Stardance
Devlogs:
I Title: Kile-OS by @koumud | Stardance
Devlogs:
I am currently working on an simple os for the project and it is simple
In the 2nd stage i worked on smoothness and added 2 more apps to the os but they need polishing
the new stage add a polish version of stage 2
Stage 5 builds on Stage 4 by adding KileFlow, a workspace control system with saved desktop scenes, Activity Pulse, Desk Map, and the Ctrl + Space Command Rail. The code was newly written on top of KileOS Stage 4, while reference projects were used only for feature inspiration.
Ships:
KileOS is a web-based operating system with a modern desktop, apps, window management, settings, themes, and local data storage. It runs directly in the browser and is publicly available for anyone to try....
|
1794016542.2408092
|
1794102942.2408092
|
|
50849
|
floating-computer-portfolio-site by @Broken_Proof floating-computer-portfolio-site by @Broken_Proof | Stardance...
|
Broken_Proof
|
1
|
22.0
|
353
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T15:39:28Z", "hours": 22.0, "multiplier": 15.8, "payout": 353, "blessing": "neutral", "text": "I’ve made a personal portfolio site that involves a computer floating in space. Basically it’s a 3D model within a custom made starfied in a Three js scene. When clicked it zooms in and overlays my own custom OS terminal. The OS has cool things like puzzles I made, resume download features and more. I had challenges setting up the conditional orbit controls and some of the UI features, but I eventually got it to work. So proud of this project and in the future I want to make it an option to navigate via terminal or through a static html page. This is because some people may not want to go through the work of figuring out commands on my terminal.", "repo": "https://github.com/broken-proof/personal-portfolio", "demo": "https://broken-proof.github.io/personal-portfolio/"}]...
|
[{"post_id": 64855, "ts": "202 [{"post_id": 64855, "ts": "2026-09-09T15:30:43Z", "hours": 0.6978, "text": "Devlog #8: Alright, so I’m ready to ship. I just added some more comments, organized my assets, fixed some terminal bugs and then improved my ReadMe. Here’s a demo of the final product:"}, {"post_id": 64616, "ts": "2026-09-09T04:31:33Z", "hours": 4.9083, "text": "Devlog #7: Almost ready to ship! Did the following: Added a settings menu with a mute button, fullscreen button, and a help button which renders and auto types help into the computer component. Fixed resizing issues Added Puzzles to it Added a simple start screen. Hosted site on Github Pages using github actions. I had fun making my icons on piskelapp.com. What’s left is probably to refine the site, add proper comments and I should be good."}, {"post_id": 63343, "ts": "2026-09-07T03:27:53Z", "hours": 1.6022, "text": "Devlog #6: Added Some Audio! Used use useSound React hook to add powerOn, powerOff and a Space void default sound. Also added a mute button which I will definitely improve later in a settings kind of layout. In the future I need a starter screen that is like “click to play” or sm cause browser audio only starts after an interaction. There’s also some UI issues with resizing so I need to fix those aswell."}, {"post_id": 63234, "ts": "2026-09-06T22:37:33Z", "hours": 1.6942, "text": "Devlog #5: I got the OrbitControls working finally. Took me a while because the Camera Rig and Orbit Controls were fighting for control but I got the scene working. Now the transition is pretty seamless except for the fact that the text is different. That’ll be fixed when I make my own custom model. For now I’ll keep this public model because I’m not tryna learn modeling. The next step is probably adding sound and some icons to the top that help the user figure out what’s going on."}, {"post_id": 63026, "ts": "2026-09-06T16:20:26Z", "hours": 3.9125, "text": "Devlog #4: Lots of new progress. I made my own MOTD, added a history navigation (up/down arrow keys), and a new projects catalog. After that, I refactored the star field to be in React Three fiber and experimented with some views for my computer. As of now, I’m using a model I found online, but I plan to make my own later on. I am also using react three drei’s presentation controls but I don’t really like them so maybe Orbit Controls would fit better. Just going to continue experimenting until I get a transition I like."}, {"post_id": 61909, "ts": "2026-09-05T02:37:01Z", "hours": 4.4378, "text": "Devlog #3: Basically, I turned the screen into a proper terminal that runs my personal os. It has some nice commands that allow the user to get a brief bio, download my resume, contact me, customize themes and clear the screen. I was inspired by linux terminal for some of the commands/output formatting and I wish to add further features in the future. I also added features that are usual for a typical terminal including autofocusing and going to the input on clicking any part of the screen. For now, the next step is to add the transition between a computer floating in space to the actual screen."}, {"post_id": 56236, "ts": "2026-08-27T22:15:51Z", "hours": 3.3108, "text": "Devlog #2: Created CSS for the monitor screen. Also had a lot of fun creating the crt terminal like background using a double layered linear gradient with two moving divs on top of it for the scanning effect. The redirects to the different components are functional and the next step is to fill in About.jsx, Projects.jsx … Currently, the crt’s border image is just something I made using pixel art, but I plan to make it look better afterwards. The background effect does not fix with resizing so I have to fix that also. Then, I’ll work on the transition to the monitor screen and the whole experience in general. I’ve gotten good progress so far :)"}, {"post_id": 50086, "ts": "2026-08-19T04:32:58Z", "hours": 1.81, "text": "devlog#1: The idea for the portfolio is that the user will be controlling a retro computer that is floating in space. All my portfolio details will probably go into the monitor ui, but the design will have some more features to play around with. Took me a while to figure out how to use vanilla THREE.js with React useEffect hooks. I later saw there is something called react three fiber but I might implement using that later."}]...
|
Title: floating-computer-portfolio-site by @Broken Title: floating-computer-portfolio-site by @Broken_Proof | Stardance
Devlogs:
devlog#1: The idea for the portfolio is that the user will be controlling a retro computer that is floating in space. All my portfolio details will probably go into the monitor ui, but the design will have some more features to play around with. Took me a while to figure out how to use vanilla THREE.js with React useEffect hooks. I later saw there is something called react three fiber but I might implement using that later.
Devlog #2: Created CSS for the monitor screen. Also had a lot of fun creating the crt terminal like background using a double layered linear gradient with two moving divs on top of it for the scanning effect. The redirects to the different components are functional and the next step is to fill in About.jsx, Projects.jsx … Currently, the crt’s border image is just something I made using pixel art, but I plan to make it look better afterwards. The background effect does not fix with resizing so I have to fix that also. Then, I’ll work on the transition to the monitor screen and the whole experience in general. I’ve gotten good progress so far :)
Devlog #3: Basically, I turned the screen into a proper terminal that runs my personal os. It has some nice commands that allow the user to get a brief bio, download my resume, contact me, customize themes and clear the screen. I was inspired by linux terminal for some of the commands/output formatting and I wish to add further features in the future. I also added features that are usual for a typical terminal including autofocusing and going to the input on clicking any part of the screen. For now, the next step is to add the transition between a computer floating in space to the actual screen.
Devlog #4: Lots of new progress. I made my own MOTD, added a history navigation (up/down arrow keys), and a new projects catalog. After that, I refactored the star field to be in React Three fiber and experimented with some views for my computer. As of now, I’m using a model I found online, but I plan to make my own later on. I am also using react three drei’s presentation controls but I don’t really like them so maybe Orbit Controls would fit better. Just going to continue experimenting until I get a transition I like.
Devlog #5: I got the OrbitControls working finally. Took me a while because the Camera Rig and Orbit Controls were fighting for control but I got the scene working. Now the transition is pretty seamless except for the fact that the text is different. That’ll be fixed when I make my own custom model. For now I’ll keep this public model because I’m not tryna learn modeling. The next step is probably adding sound and some icons to the top that help the user figure out what’s going on.
Devlog #6: Added Some Audio! Used use useSound React hook to add powerOn, powerOff and a Space void default sound. Also added a mute button which I will definitely improve later in a settings kind of layout. In the future I need a starter screen that is like “click to play” or sm cause browser audio only starts after an interaction. There’s also some UI issues with resizing so I need to fix those aswell.
Devlog #7: Almost ready to ship! Did the following: Added a settings menu with a mute button, fullscreen button, and a help button which renders and auto types help into the computer component. Fixed resizing issues Added Puzzles to it Added a simple start screen. Hosted site on Github Pages using github actions. I had fun making my icons on piskelapp.com. What’s left is probably to refine the site, add proper comments and I should be good.
Devlog #8: Alright, so I’m ready to ship. I just added some more comments, organized my assets, fixed some terminal bugs and then improved my ReadMe. Here’s a demo of the final product:
Ships:
I’ve made a personal portfolio site that involves a computer floating in space. Basically it’s a 3D model within a custom made starfied in a Three js scene. When clicked it zooms in and overlays my own custom OS terminal. The OS has cool things like puzzles I made, resume download features and more. I had challenges setting up the conditional orbit controls and some of the UI features, but I eventually got it to work. So proud of this project and in the future I want to make it an option to navigate via terminal or through a static html page. This is because some people may not want to go through the work of figuring out commands on my terminal....
|
1794019996.179562
|
1794106396.179562
|
|
27703
|
Dance App by @Venkatesh | Stardance
|
Venkatesh
|
1
|
28.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-12T15:19:10Z", "hours": 28.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Before you guys review this project poorly for the usage of AI, I would wanna make it clear that i still learnt a really good amount of development. At the end of the day software development is about shaping the user experience and design a product that solved the problem and is worth using. I used AI to aid me with the tedious work that would have otherwise been impossible within my timeframe of less than 2 weeks. ⠀ Cutting to the chase this dance game was made for a local competition in my country. The theme for the competition was about how culture can be preserved using technology. The full project also includes a physical arcade style device with a dancing servo robot with 6 joints (excluding knees). ⠀ The goal of the project is to act as an entry point for students in Singapore to learn more about cultural dances in Singapore. I chose to approach the preservation of culture via learning cultural dances as it bypasses any linguistic barriers to make it more widely accessible to better serve as an entry point for younger kids to have at least a faint idea on how other cultures are like. ⠀ With about 28 hours spent on coding this and countless more on the hardware, ideation, documentation, admin and much more, I managed to clench first place in the competition. I also feel that the current state of the app is satisfactory as a prototype. ⠀ Even though quite buggy and somewhat unstable, I would potentially update the project near the end of the year, until then i would be moving onto other projects! I hope yall find this attempt at preserving culture with technology meaningful, fun or at least interesting, thanks for reading!", "repo": "https://github.com/vensah-dev/wro-project", "demo": "https://vensah.dev/wro-project"}]...
|
[{"post_id": 64843, "ts": "202 [{"post_id": 64843, "ts": "2026-09-09T15:14:56Z", "hours": 5.7175, "text": "Added: Made all the songs more stable and lenient in detection for compete mode (took up a lot of time) added fun facts for each mode Made the select mode have a bg The grading system us revised to work on score rather than accuracy percentage Leaderboard badges"}, {"post_id": 64145, "ts": "2026-09-08T10:50:22Z", "hours": 12.1842, "text": "Features added: Working main menu page hosted on github itself to try ability to send serial input to an ESP controlled robot doll Additional Screen Effects added Leaderboards system to help compete mode"}, {"post_id": 48892, "ts": "2026-08-17T13:39:07Z", "hours": 7.9083, "text": "I am working on a dance app for a local competition where the theme is robots meet culture, so the idea is to make a software based dance game that will help users traditional dances and compete with their friends through dancing. Thus far, i have added in the ability to dance to a song and a learn mode which lets you move ur body to the different dance moves at ur own pace. Selection menu to choose song and select whether they wanna learn or dance (compete mode) to that song Soon i will be making compete mode a local 1v1 and add in a main menu like in minecraft for settings, quitting and entering the actual game."}, {"post_id": 28689, "ts": "2026-07-15T02:57:24Z", "hours": 1.7333, "text": "An app where an AI model will be able to detect the movement of body joints to verify if the player is dancing a certain dance. planned features: users can compete with someone else in real life by taking turns doing a certain dance. The ‘accuracy’ of the dance will affect the scoring users can learn how to dance by dancing certain moves until they get it correct current state: currently I have setup the Google MediaPipe Pose Landmarks model to detect realtime body movement, tuned to be able to track well in differig lighting conditions"}]...
|
Title: Dance App by @Venkatesh | Stardance
Devlog Title: Dance App by @Venkatesh | Stardance
Devlogs:
An app where an AI model will be able to detect the movement of body joints to verify if the player is dancing a certain dance. planned features: users can compete with someone else in real life by taking turns doing a certain dance. The ‘accuracy’ of the dance will affect the scoring users can learn how to dance by dancing certain moves until they get it correct current state: currently I have setup the Google MediaPipe Pose Landmarks model to detect realtime body movement, tuned to be able to track well in differig lighting conditions
I am working on a dance app for a local competition where the theme is robots meet culture, so the idea is to make a software based dance game that will help users traditional dances and compete with their friends through dancing. Thus far, i have added in the ability to dance to a song and a learn mode which lets you move ur body to the different dance moves at ur own pace. Selection menu to choose song and select whether they wanna learn or dance (compete mode) to that song Soon i will be making compete mode a local 1v1 and add in a main menu like in minecraft for settings, quitting and entering the actual game.
Features added: Working main menu page hosted on github itself to try ability to send serial input to an ESP controlled robot doll Additional Screen Effects added Leaderboards system to help compete mode
Added: Made all the songs more stable and lenient in detection for compete mode (took up a lot of time) added fun facts for each mode Made the select mode have a bg The grading system us revised to work on score rather than accuracy percentage Leaderboard badges
Ships:
Before you guys review this project poorly for the usage of AI, I would wanna make it clear that i still learnt a really good amount of development. At the end of the day software development is about shaping the user experience and design a product that solved the problem and is worth using. I used AI to aid me with the tedious work that would have otherwise been impossible within my timeframe of less than 2 weeks. ⠀ Cutting to the chase this dance game was made for a local competition in my country. The theme for the competition was about how culture can be preserved using technology. The full project also includes a physical arcade style device with a dancing servo robot with 6 joints (excluding knees). ⠀ The goal of the project is to act as an entry point for students in Singapore to learn more about cultural dances in Singapore. I chose to approach the preservation of culture via learning cultural dances as it bypasses any linguistic barriers to make it more widely accessible to better serve as an entry point for younger kids to have at least a faint idea on how other cultures are like. ⠀ With about 28 hours spent on coding this and countless more on the hardware, ideation, documentation, admin and much more, I managed to clench first place in the competition. I also feel that the current state of the app is satisfactory as a prototype. ⠀ Even though quite buggy and somewhat unstable, I would potentially update the project near the end of the year, until then i would be moving onto other projects! I hope yall find this attempt at preserving culture with technology meaningful, fun or at least interesting, thanks for reading!...
|
1794019865.3030999
|
1794106265.3030999
|
|
57870
|
traewelling-tagtistic by @pauljako | Stardance
|
pauljako
|
1
|
9.0
|
38
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T15:08:41Z", "hours": 9.0, "multiplier": 4.31, "payout": 38, "blessing": "neutral", "text": "I made traewelling-tagtistic. It is a simple tool to view statistics based on your Träwelling tags. It was not that hard overall but it was still something, I really missed before. It was fun to play around with the CSS which I do really like the outcome of :)", "repo": "https://codeberg.org/pauljako/traewelling-tagtistic", "demo": "https://tagtistic.pfuschen.jetzt"}]...
|
[{"post_id": 64836, "ts": "202 [{"post_id": 64836, "ts": "2026-09-09T15:03:16Z", "hours": 1.7108, "text": "I added a README, and deployed traewelling-tagtistic onto our Kubernetes Cluster. It is now live at tagtistic.pfuschen.jetzt and ready to ship!"}, {"post_id": 63746, "ts": "2026-09-07T18:21:30Z", "hours": 1.9197, "text": "I now added a UI for the new API. It still needs more refinement but I like the Initial Design. Clicking on a Bar shows you, which Check-Ins have said tag set. The rightmost bar also shows Check-Ins with no Tag Value assigned."}, {"post_id": 62451, "ts": "2026-09-05T20:01:00Z", "hours": 1.0053, "text": "I updated the API to show more Information. More specifically, it now shows Journeys, that did not have a specific tag set at all and it shows which Journeys had a Tag Value. Now I just have to implement this in the UI…"}, {"post_id": 61706, "ts": "2026-09-04T19:03:03Z", "hours": 0.9392, "text": "Oh well… As I am writing this, Träwelling is having scheduled maintenance. I can’t really test, what I’ve done but I tried to improve the CSS a bit…"}, {"post_id": 61136, "ts": "2026-09-03T21:55:44Z", "hours": 0.7369, "text": "I am trying to orient the UI a bit after https://fabian-c.github.io/Traewelling-Maps . And while that appears to be Vibe Coded, I don’t think mine counts as vibe coded if I just steal some CSS Variables from it, right? right?"}, {"post_id": 61114, "ts": "2026-09-03T20:56:21Z", "hours": 0.6661, "text": "I started working on the Frontend. My final plan is to make this look at least a bit decent but I am not good at design… (Please dont look at the Icon of Mover, pleasseeee) Anyways, I find it interesting to visualize my Check-Ins for the first Time. I am very amazed that I spent 35 Hours over the last 356 Days in Stadler Flirts alone…"}, {"post_id": 61067, "ts": "2026-09-03T19:40:33Z", "hours": 1.0606, "text": "Uhhmmm yeah here is a random Graph I guess… This is just the default template of Chart.js, the Library I am going to use for the Frontend. But actually displaying this took longer than I wanted. It took me quite a long time for the HTML File to be included in my Python Wheel. Because of that, Flask was not able to find the File to render it… Apparently, MANIFEST.in is more or less obsolete and I had to specify these files in the pyproject.toml . Also, the Frontend now lives in a subdirectory of the Python Code, not at the root of the project…"}, {"post_id": 60966, "ts": "2026-09-03T17:25:03Z", "hours": 0.4389, "text": "It is starting to work! The API can now return the number of Check-Ins for a specific Tag Value! However, there are no filters or any other advanced features…"}, {"post_id": 60928, "ts": "2026-09-03T16:28:29Z", "hours": 0.3819, "text": "I am trying to build traewelling-tagtistic. Träwelling is a Social-Platform, where you “Check-In” to public transit services. You can also set Tags to, for example, show what Train Model you are currently riding. traewelling-tagtistic is going to be a Website, where you can see various Statistics about these Tags. For now however, I get a 400 Bad Request from the Träwelling API if I use Python requests . However, it works from Firefox… 🤔"}]...
|
Title: traewelling-tagtistic by @pauljako | Starda Title: traewelling-tagtistic by @pauljako | Stardance
Devlogs:
I am trying to build traewelling-tagtistic. Träwelling is a Social-Platform, where you “Check-In” to public transit services. You can also set Tags to, for example, show what Train Model you are currently riding. traewelling-tagtistic is going to be a Website, where you can see various Statistics about these Tags. For now however, I get a 400 Bad Request from the Träwelling API if I use Python requests . However, it works from Firefox… 🤔
It is starting to work! The API can now return the number of Check-Ins for a specific Tag Value! However, there are no filters or any other advanced features…
Uhhmmm yeah here is a random Graph I guess… This is just the default template of Chart.js, the Library I am going to use for the Frontend. But actually displaying this took longer than I wanted. It took me quite a long time for the HTML File to be included in my Python Wheel. Because of that, Flask was not able to find the File to render it… Apparently, MANIFEST.in is more or less obsolete and I had to specify these files in the pyproject.toml . Also, the Frontend now lives in a subdirectory of the Python Code, not at the root of the project…
I started working on the Frontend. My final plan is to make this look at least a bit decent but I am not good at design… (Please dont look at the Icon of Mover, pleasseeee) Anyways, I find it interesting to visualize my Check-Ins for the first Time. I am very amazed that I spent 35 Hours over the last 356 Days in Stadler Flirts alone…
I am trying to orient the UI a bit after https://fabian-c.github.io/Traewelling-Maps . And while that appears to be Vibe Coded, I don’t think mine counts as vibe coded if I just steal some CSS Variables from it, right? right?
Oh well… As I am writing this, Träwelling is having scheduled maintenance. I can’t really test, what I’ve done but I tried to improve the CSS a bit…
I updated the API to show more Information. More specifically, it now shows Journeys, that did not have a specific tag set at all and it shows which Journeys had a Tag Value. Now I just have to implement this in the UI…
I now added a UI for the new API. It still needs more refinement but I like the Initial Design. Clicking on a Bar shows you, which Check-Ins have said tag set. The rightmost bar also shows Check-Ins with no Tag Value assigned.
I added a README, and deployed traewelling-tagtistic onto our Kubernetes Cluster. It is now live at tagtistic.pfuschen.jetzt and ready to ship!
Ships:
I made traewelling-tagtistic. It is a simple tool to view statistics based on your Träwelling tags. It was not that hard overall but it was still something, I really missed before. It was fun to play around with the CSS which I do really like the outcome of :)...
|
1793955389.791081
|
1794041789.791081
|
|
60183
|
My Study Planner by @CEO | Stardance
|
CEO
|
0
|
0.27
|
0
|
[]
|
[{"post_id": 64819, "ts": "202 [{"post_id": 64819, "ts": "2026-09-09T14:28:25Z", "hours": 0.2667, "text": "this study planner is goated"}]...
|
Title: My Study Planner by @CEO | Stardance
Devlo Title: My Study Planner by @CEO | Stardance
Devlogs:
this study planner is goated...
|
1793641741.3130543
|
1794246541.3130543
|
|
23022
|
TennisIQ by @shivrajtennis | Stardance
|
shivrajtennis
|
0
|
5.77
|
0
|
[]
|
[{"post_id": 64818, "ts": "202 [{"post_id": 64818, "ts": "2026-09-09T14:28:01Z", "hours": 2.9547, "text": "Finished TennisIQ prototype 2, with better web designing, and more efficient AI coach."}, {"post_id": 13061, "ts": "2026-06-21T11:21:31Z", "hours": 1.4394, "text": "TennisIQ Devlog 2 🎾Big day.TennisIQ is starting to feel like a real product instead of a side project. Shipped today✅ Restored premium v5 UI✅ Preserved Quick Mode + Deep Mode✅ Match Logging + Compare mode✅ Delete Match feature✅ Tournament Planner✅ Budget Dashboard✅ UTR Target Calculator✅ AI Coach v2✅ Video Recommendations based on real match weaknessesImportant ruleNo fake data.No demo players. No hardcoded tournaments.No made-up match stats.Everything is generated from actual user input and logged matches.AI Coach v2The coach now analyzes:First Serve InFirst Serve WonSecond Serve WonReturn WonUnforced ErrorsWinnersDouble FaultsNet PointsThen it gives:Biggest weaknesses. Why they matterDrillsTraining focusEstimated UTR impactRelevant training videosCurrent TennisIQ stack🎾 Match Analytics🧠 AI Coaching🎯 UTR Target Planning💰 Tournament Budgeting📊 Benchmark Comparisons🎥 Video RecommendationsEverything runs locally with Next.js and TypeScript.Still a lot to build, but this is the first version that feels like something I’d actually use as a competitive junior player."}, {"post_id": 12968, "ts": "2026-06-21T06:58:27Z", "hours": 1.3728, "text": "TennisIQ v5 is alive and running.🎾 Today was chaos. I migrated TennisIQ from my old v4 interface to a cleaner v5 design and spent most of the day fixing Next.js, TypeScript and Copilot-generated bugs. Added / Working Integrated TennisIQ v5 UI Tournament Planner UTR Target Calculator groundwork AI Coach framework Video recommendation system groundwork Hackatime integration Match deletion feature (in progress) Biggest challenges Unicode escape errors Merge conflicts inside VS Code Runtime crashes from undefined objects Restoring functionality after migrating from v4 Next goals Restore Quick Mode and Deep Analysis Finish Delete Match AI Coach with training videos Smarter UTR improvement plans Better dark mode and UI polish TennisIQ is an AI-powered competitive tennis analytics platform that helps players track matches, analyze weaknesses, plan tournaments, and improve toward their UTR goals. Still lots to build, but today was the first day the new version actually ran end-to-end 🚀"}]...
|
Title: TennisIQ by @shivrajtennis | Stardance
Dev Title: TennisIQ by @shivrajtennis | Stardance
Devlogs:
TennisIQ v5 is alive and running.🎾 Today was chaos. I migrated TennisIQ from my old v4 interface to a cleaner v5 design and spent most of the day fixing Next.js, TypeScript and Copilot-generated bugs. Added / Working Integrated TennisIQ v5 UI Tournament Planner UTR Target Calculator groundwork AI Coach framework Video recommendation system groundwork Hackatime integration Match deletion feature (in progress) Biggest challenges Unicode escape errors Merge conflicts inside VS Code Runtime crashes from undefined objects Restoring functionality after migrating from v4 Next goals Restore Quick Mode and Deep Analysis Finish Delete Match AI Coach with training videos Smarter UTR improvement plans Better dark mode and UI polish TennisIQ is an AI-powered competitive tennis analytics platform that helps players track matches, analyze weaknesses, plan tournaments, and improve toward their UTR goals. Still lots to build, but today was the first day the new version actually ran end-to-end 🚀
TennisIQ Devlog 2 🎾Big day.TennisIQ is starting to feel like a real product instead of a side project. Shipped today✅ Restored premium v5 UI✅ Preserved Quick Mode + Deep Mode✅ Match Logging + Compare mode✅ Delete Match feature✅ Tournament Planner✅ Budget Dashboard✅ UTR Target Calculator✅ AI Coach v2✅ Video Recommendations based on real match weaknessesImportant ruleNo fake data.No demo players. No hardcoded tournaments.No made-up match stats.Everything is generated from actual user input and logged matches.AI Coach v2The coach now analyzes:First Serve InFirst Serve WonSecond Serve WonReturn WonUnforced ErrorsWinnersDouble FaultsNet PointsThen it gives:Biggest weaknesses. Why they matterDrillsTraining focusEstimated UTR impactRelevant training videosCurrent TennisIQ stack🎾 Match Analytics🧠 AI Coaching🎯 UTR Target Planning💰 Tournament Budgeting📊 Benchmark Comparisons🎥 Video RecommendationsEverything runs locally with Next.js and TypeScript.Still a lot to build, but this is the first version that feels like something I’d actually use as a competitive junior player.
Finished TennisIQ prototype 2, with better web designing, and more efficient AI coach....
|
1793552135.1338456
|
1794156935.1338456
|
|
47599
|
AirSpace 1 by @Aaryan805 | Stardance
|
Aaryan805
|
1
|
34.09
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-16T18:35:03Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Bachal’s OS, a personal web-based desktop operating system featuring draggable windows, a live clock, a portfolio of me, my travel bucket list, my badminton matches, and a a wallpaper app. Debugging the javascript for apps and window layering was my biggest challenge. I’m proud of building the wallpapers app (with AI assistance for the JS logic) which lets visits pick HD wallpapers or paste their own image link and saves it in their browser’s Local storage. How to test: Click any desktop icon to open an app, drag windows around by their headers, look at the country images and if you want to watch my play badminton lmao watch my videos. Finally, open Bachal’s Wallpapers to test changing or pasting your own desktop background (make sure you “copied image link” and not just “link”.", "repo": "https://github.com/aaryanbachal85-alt/Bachal-OS-", "demo": "https://aaryanbachal85-alt.github.io/Bachal-OS-/"}]...
|
[{"post_id": 64815, "ts": "202 [{"post_id": 64815, "ts": "2026-09-09T14:22:14Z", "hours": 13.0753, "text": "Just Finished all my apps for this WebOS, I will release it soon as I have a lot of bugs and problems in the logic I need to fix"}, {"post_id": 52751, "ts": "2026-08-23T02:51:06Z", "hours": 9.015, "text": "Re-designing my WebOS callin it airspace 1 now"}, {"post_id": 48353, "ts": "2026-08-16T17:43:58Z", "hours": 1.0014, "text": "Just finished my wallpaper app. I have 4 categories of wallapers 8 examples ones. You can also bring your own wallaper just making your you clicked “Copy Image Link”"}, {"post_id": 48269, "ts": "2026-08-16T15:58:22Z", "hours": 0.6594, "text": "Working on the 4th app. Rough Draft: You can change the background of the webOS yourself to anything you like. Hope you enjoy"}, {"post_id": 48218, "ts": "2026-08-16T14:58:27Z", "hours": 10.6606, "text": "I’ve already finished making 3 apps and wrapping up my project with a 4th I’m also considering to change the apperance of my welcome screen as well"}]...
|
Title: AirSpace 1 by @Aaryan805 | Stardance
Devlo Title: AirSpace 1 by @Aaryan805 | Stardance
Devlogs:
I’ve already finished making 3 apps and wrapping up my project with a 4th I’m also considering to change the apperance of my welcome screen as well
Working on the 4th app. Rough Draft: You can change the background of the webOS yourself to anything you like. Hope you enjoy
Just finished my wallpaper app. I have 4 categories of wallapers 8 examples ones. You can also bring your own wallaper just making your you clicked “Copy Image Link”
Re-designing my WebOS callin it airspace 1 now
Just Finished all my apps for this WebOS, I will release it soon as I have a lot of bugs and problems in the logic I need to fix
Ships:
I built Bachal’s OS, a personal web-based desktop operating system featuring draggable windows, a live clock, a portfolio of me, my travel bucket list, my badminton matches, and a a wallpaper app. Debugging the javascript for apps and window layering was my biggest challenge. I’m proud of building the wallpapers app (with AI assistance for the JS logic) which lets visits pick HD wallpapers or paste their own image link and saves it in their browser’s Local storage. How to test: Click any desktop icon to open an app, drag windows around by their headers, look at the country images and if you want to watch my play badminton lmao watch my videos. Finally, open Bachal’s Wallpapers to test changing or pasting your own desktop background (make sure you “copied image link” and not just “link”....
|
1793911819.4613404
|
1793998219.4613404
|
|
60026
|
Stamped by @prada | Stardance
|
prada
|
0
|
2.8
|
0
|
[]
|
[{"post_id": 64803, "ts": "202 [{"post_id": 64803, "ts": "2026-09-09T13:47:22Z", "hours": 2.7981, "text": "Stamped - Devlog Finished my site for the Personal Site mission. What it is: opens with a short confession instead of a bio, then an optional 7-panel story about getting stuck while learning to code. Includes losing 60+ hours of work on a Minecraft admin dashboard I built (login pages, live server stats, full permissions system) with no backup. Screenshots are all that’s left of it, so that’s how it’s shown. Stack: plain HTML/CSS/JS, no framework. halftone black and white style. Live: https://stamped-zeta.vercel.app/"}]...
|
Title: Stamped by @prada | Stardance
Devlogs:
Sta Title: Stamped by @prada | Stardance
Devlogs:
Stamped - Devlog Finished my site for the Personal Site mission. What it is: opens with a short confession instead of a bio, then an optional 7-panel story about getting stuck while learning to code. Includes losing 60+ hours of work on a Minecraft admin dashboard I built (login pages, live server stats, full permissions system) with no backup. Screenshots are all that’s left of it, so that’s how it’s shown. Stack: plain HTML/CSS/JS, no framework. halftone black and white style. Live: https://stamped-zeta.vercel.app/...
|
1793638529.2521076
|
1794243329.2521076
|
|
52956
|
My own site! by @manvi_agrawal1703 | Stardance
|
manvi_agrawal1703
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T18:12:16Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hi people this is my personal website! I’s so proud of how this turned out considering this was my first time coding. I planned on making a site with a journal like vibe. There were some issues with hackatime so I couldn’t post more devlogs but atleast I tried. I used AI to guide me and teach me the core concepts.", "repo": "https://github.com/manviagrawal1703-rgb/My-personal-site", "demo": "https://manvislittleworld.netlify.app"}]...
|
[{"post_id": 64799, "ts": "202 [{"post_id": 64799, "ts": "2026-09-09T13:43:55Z", "hours": 0.3722, "text": "Working on my first project for this amazing program!!! This is what it looks like right now. I’m planning to add some scrap elements to make it look like a scrap journal."}]...
|
Title: My own site! by @manvi_agrawal1703 | Starda Title: My own site! by @manvi_agrawal1703 | Stardance
Devlogs:
Working on my first project for this amazing program!!! This is what it looks like right now. I’m planning to add some scrap elements to make it look like a scrap journal.
Ships:
Hi people this is my personal website! I’s so proud of how this turned out considering this was my first time coding. I planned on making a site with a journal like vibe. There were some issues with hackatime so I couldn’t post more devlogs but atleast I tried. I used AI to guide me and teach me the core concepts....
|
1793983640.1305144
|
1794070040.1305144
|
|
14006
|
404OS by @Indian5000 | Stardance
|
Indian5000
|
1
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-10T22:29:43Z", "hours": 8.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This was a WebOS (404 OS) built by me. First time writing code completely independently felt very challenging but the really entertaining guide helped me a lot! Overall, i learnt a lot through this project(including but not limited to writing Javascript, Using Various CSS styles, Readme composition, etc)", "repo": "https://github.com/Indian5000/404OS", "demo": "https://indian5000.github.io/404OS/Frontend/index.html"}]...
|
[{"post_id": 6479, "ts": "2026 [{"post_id": 6479, "ts": "2026-06-10T21:54:03Z", "hours": 0.5025, "text": "Added “Web Browser” using iframe. Generated a about.html using claude as landing page. Part 5 done."}, {"post_id": 6433, "ts": "2026-06-10T20:21:08Z", "hours": 1.6544, "text": "Finished Adding Notes App (Took me way to long to figure out the Logic and Javascript in secondary experimental project- Reason for such a huge work hour count in previous devblogs.) Completed Part 4."}, {"post_id": 5866, "ts": "2026-06-09T20:19:10Z", "hours": 4.0414, "text": "Decided to Change things up a bit…definetly…Finished Part 3."}, {"post_id": 5521, "ts": "2026-06-09T10:23:02Z", "hours": 0.4183, "text": "Made the welcome page suck less"}, {"post_id": 5501, "ts": "2026-06-09T09:41:06Z", "hours": 1.1036, "text": "Added a Welcome Screen (Very Crappy one at that)"}]...
|
Title: 404OS by @Indian5000 | Stardance
Devlogs:
Title: 404OS by @Indian5000 | Stardance
Devlogs:
Added a Welcome Screen (Very Crappy one at that)
Made the welcome page suck less
Decided to Change things up a bit…definetly…Finished Part 3.
Finished Adding Notes App (Took me way to long to figure out the Logic and Javascript in secondary experimental project- Reason for such a huge work hour count in previous devblogs.) Completed Part 4.
Added “Web Browser” using iframe. Generated a about.html using claude as landing page. Part 5 done.
Ships:
This was a WebOS (404 OS) built by me. First time writing code completely independently felt very challenging but the really entertaining guide helped me a lot! Overall, i learnt a lot through this project(including but not limited to writing Javascript, Using Various CSS styles, Readme composition, etc)...
|
1793998540.066411
|
1794084940.066411
|
|
59879
|
first web by @krisz | Stardance
|
krisz
|
0
|
0.52
|
0
|
[]
|
[{"post_id": 64789, "ts": "202 [{"post_id": 64789, "ts": "2026-09-09T13:31:23Z", "hours": 0.5167, "text": "Made this little web, i still need to add some stuff but yeah, this is a little progress report"}]...
|
Title: first web by @krisz | Stardance
Devlogs:
M Title: first web by @krisz | Stardance
Devlogs:
Made this little web, i still need to add some stuff but yeah, this is a little progress report...
|
1793638413.1154897
|
1794243213.1154897
|
|
53531
|
MarsBound by @Momina | Stardance
|
Momina
|
0
|
21.73
|
0
|
[]
|
[{"post_id": 64783, "ts": "202 [{"post_id": 64783, "ts": "2026-09-09T13:13:28Z", "hours": 0.8433, "text": "Um added a cute little alien and played with animation"}, {"post_id": 63688, "ts": "2026-09-07T16:54:07Z", "hours": 5.5631, "text": "AHH!! just look at it I do not even have to explain. And plz be patient with the reading or u will not be able to understand the storyline and rules AHAHAHA"}, {"post_id": 60257, "ts": "2026-09-02T14:52:35Z", "hours": 3.3197, "text": "=========================== | Ship Interior | I changed the lighting to match the vibes and added a cute little door(just look at it ) | Sky | OKAY SO! I first used the standarised sky in godot but it was mid af. So I added a panorama image using the Panorama Sky Material BUT IT LOOKED SOO FREAKING BLURRY than I tried adding another and another but it still looked so annoying So I tried the HDRI method but I was looking for free ones and there was nothing that suited my projects. So I tried the forbidden technique and added a mesh and reshaped it to a sphere and then resized the sphere such that it contains all of my main scene and colored it vwry darkk blue | Stars | I am making my game a mixture of low-poly and semi-realistic. As tthe sky of mars at night is filled with stars so I also wanted a HUGE amount of stars for that I added a GPU particle and increased the amount to 50 thousand and than changed the color to white with a little hint of yellow and it looks soo pretty now!! | Rocks | I do not remember if I have posted about the rocks or not but I just added a spherical mesh changed its texture by importing a Mars surface to mak it kinda realistic and then changed and then altered the radial segment and rings to make it like the shape of a badly peeled potato. Anyways that is it"}, {"post_id": 58320, "ts": "2026-08-30T18:15:20Z", "hours": 3.3131, "text": "Screen(yep again) Made a cute little screen that will display messages when the player goes near it (the msgs from his family which will eventually help him in finding clues to escape back home) Mars Surface First, I wanted to import the whole planet but the aliens there did not allow me to (it took quite some of my sweet time to prsude them but nahh it did not work….there i no capatalism there yet) after which I got dishearted so I went to talk to Aladin so that he might give me his carpet for my project which also failed (i swear it was soo funny in my head) so I just made a floating orangish-red carpet using plane mesh. Sky just made it using World Environment(i do not like it but I have a maths quiz tmrw : 103: : ( so I will change it later"}, {"post_id": 56595, "ts": "2026-08-28T12:37:00Z", "hours": 4.8628, "text": "Ship Interior So GANG, I wanted to make the ship interior by hand, but Lord knows how hard it was!! TT Anyways worked smarter and imported an already build ship interior 3D model(it was built y human so it does not count as AI)credits to the goated Ryley Burnett u can find him on sketchfab. OKAY! Back to the topic I added the walls and painted them, and um added an interactive button E so the player can interact with the spaceship and so that the ship does not look like a decorated room but a gameee yeah. Astronaut I did not add any functionality to the astronaut bcuz I was wayyy too focused on the ship interior, but the player can move right, left, forward, and backward. I also added a camera to it. It may seem like in the screenshot that the camera is separate from the astronaut, but I moved it so u can see the player(yeah I am soo kind I know)anyways this is it for today"}, {"post_id": 54749, "ts": "2026-08-25T20:48:41Z", "hours": 0.9869, "text": "I did not do much today bcuz I kept running into errors. I have tried diff things and even asked AI, but the error is not being solved!! TT TT"}, {"post_id": 53941, "ts": "2026-08-24T17:22:59Z", "hours": 1.4197, "text": "So I made the ship and payer today. Spaceship Tried to make a rusty and destroyed look of the ship(bcuz the ship just crashed) and I added a screen within the ship, the screen displays msgs of the player’s family but they randomly drop hints! and made the screen to not show msgs when the player is not near by using Area2D.And I also added some lights within the ship Player just added a player and it’s head nothing much."}, {"post_id": 53402, "ts": "2026-08-23T22:55:12Z", "hours": 1.4183, "text": "Um…so made a room and added a functional call screen BUT I FORGOT TO SAVE IT!! AND ALL OF MY WORK GOT FREAKING DESTROYED!! Anyhow, the mistake was mine, so I started again and made a simple 4 walled room. (it’s a room plz trust)"}]...
|
Title: MarsBound by @Momina | Stardance
Devlogs:
Title: MarsBound by @Momina | Stardance
Devlogs:
Um…so made a room and added a functional call screen BUT I FORGOT TO SAVE IT!! AND ALL OF MY WORK GOT FREAKING DESTROYED!! Anyhow, the mistake was mine, so I started again and made a simple 4 walled room. (it’s a room plz trust)
So I made the ship and payer today. Spaceship Tried to make a rusty and destroyed look of the ship(bcuz the ship just crashed) and I added a screen within the ship, the screen displays msgs of the player’s family but they randomly drop hints! and made the screen to not show msgs when the player is not near by using Area2D.And I also added some lights within the ship Player just added a player and it’s head nothing much.
I did not do much today bcuz I kept running into errors. I have tried diff things and even asked AI, but the error is not being solved!! TT TT
Ship Interior So GANG, I wanted to make the ship interior by hand, but Lord knows how hard it was!! TT Anyways worked smarter and imported an already build ship interior 3D model(it was built y human so it does not count as AI)credits to the goated Ryley Burnett u can find him on sketchfab. OKAY! Back to the topic I added the walls and painted them, and um added an interactive button E so the player can interact with the spaceship and so that the ship does not look like a decorated room but a gameee yeah. Astronaut I did not add any functionality to the astronaut bcuz I was wayyy too focused on the ship interior, but the player can move right, left, forward, and backward. I also added a camera to it. It may seem like in the screenshot that the camera is separate from the astronaut, but I moved it so u can see the player(yeah I am soo kind I know)anyways this is it for today
Screen(yep again) Made a cute little screen that will display messages when the player goes near it (the msgs from his family which will eventually help him in finding clues to escape back home) Mars Surface First, I wanted to import the whole planet but the aliens there did not allow me to (it took quite some of my sweet time to prsude them but nahh it did not work….there i no capatalism there yet) after which I got dishearted so I went to talk to Aladin so that he might give me his carpet for my project which also failed (i swear it was soo funny in my head) so I just made a floating orangish-red carpet using plane mesh. Sky just made it using World Environment(i do not like it but I have a maths quiz tmrw : 103: : ( so I will change it later
=========================== | Ship Interior | I changed the lighting to match the vibes and added a cute little door(just look at it ) | Sky | OKAY SO! I first used the standarised sky in godot but it was mid af. So I added a panorama image using the Panorama Sky Material BUT IT LOOKED SOO FREAKING BLURRY than I tried adding another and another but it still looked so annoying So I tried the HDRI method but I was looking for free ones and there was nothing that suited my projects. So I tried the forbidden technique and added a mesh and reshaped it to a sphere and then resized the sphere such that it contains all of my main scene and colored it vwry darkk blue | Stars | I am making my game a mixture of low-poly and semi-realistic. As tthe sky of mars at night is filled with stars so I also wanted a HUGE amount of stars for that I added a GPU particle and increased the amount to 50 thousand and than changed the color to white with a little hint of yellow and it looks soo pretty now!! | Rocks | I do not remember if I have posted about the rocks or not but I just added a spherical mesh changed its texture by importing a Mars surface to mak it kinda realistic and then changed and then altered the radial segment and rings to make it like the shape of a badly peeled potato. Anyways that is it
AHH!! just look at it I do not even have to explain. And plz be patient with the reading or u will not be able to understand the storyline and rules AHAHAHA
Um added a cute little alien and played with animation...
|
1793490924.1388736
|
1794095724.1388736
|
|
59923
|
My Creative Space by @Onel | Stardance
|
Onel
|
0
|
0.3
|
0
|
[]
|
[{"post_id": 64765, "ts": "202 [{"post_id": 64765, "ts": "2026-09-09T12:43:02Z", "hours": 0.2972, "text": "Today I started my first website. I learned the basic HTML structure and added an About Me and Projects section. I also started using CSS to style the page."}]...
|
Title: My Creative Space by @Onel | Stardance
Dev Title: My Creative Space by @Onel | Stardance
Devlogs:
Today I started my first website. I learned the basic HTML structure and added an About Me and Projects section. I also started using CSS to style the page....
|
1793638443.9853566
|
1794243243.9853566
|
|
47164
|
apple hunter by @omartsubki | Stardance
|
omartsubki
|
1
|
4.63
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-13T12:49:43Z", "hours": 4.0, "multiplier": 1.08, "payout": 4, "blessing": "neutral", "text": "2d platformer game my challenge to making collision accurate", "repo": "https://github.com/TimRumble/hunt-apple", "demo": "https://mhmd242.itch.io/apple-hunter?secret=vLGBhvq9tIf4TDywsjdgUEaAlBQ"}]...
|
[{"post_id": 64764, "ts": "202 [{"post_id": 64764, "ts": "2026-09-09T12:40:50Z", "hours": 0.3003, "text": "apple hunter day 3 - make the snail jump"}, {"post_id": 64499, "ts": "2026-09-08T22:56:38Z", "hours": 0.3333, "text": "apple hunter day2 - making double jump"}, {"post_id": 46289, "ts": "2026-08-13T12:39:47Z", "hours": 3.5203, "text": "a platformer game that made with godot and depend on collecting apples"}]...
|
Title: apple hunter by @omartsubki | Stardance
De Title: apple hunter by @omartsubki | Stardance
Devlogs:
a platformer game that made with godot and depend on collecting apples
apple hunter day2 - making double jump
apple hunter day 3 - make the snail jump
Ships:
2d platformer game my challenge to making collision accurate...
|
1794070099.5154855
|
1794156499.5154855
|
|
57841
|
Erupsoftware Laptop ThunderLight by @Advay-CMD | S Erupsoftware Laptop ThunderLight by @Advay-CMD | Stardance...
|
Advay-CMD
|
0
|
9.25
|
0
|
[]
|
[{"post_id": 64761, "ts": "202 [{"post_id": 64761, "ts": "2026-09-09T12:29:23Z", "hours": 9.2486, "text": "Devlog 1 -Erupsoftware Laptop ThunderLight “Success is not final, failure is not fatal: It is the courage to continue that counts.” – Winston Churchill Hi! I am Advay-CMD. And, this is my vision, a laptop, but its not just a laptop: A laptop that opensource, free to use, and lighting fast at such minimalistic components. Built from scratch, entirely. Project to show companies that laptop is not a brick of flat metal, it is passion, creativity, and repairbility. This is the Laptop, I can proudly call made by me in India. This is a laptop, to leave the cost cutting laptops make. This is to revolutionize laptops. This is made to make laptop not a thing, but a gateway that feels cosy and like at home! It is a step to change people’s mind that making a laptop is impossible. And customizing is as easy as it gets. Every component is replaceable, reproduceable, and diagnosable. Say no to repairing the components, or doing SMD board nightmares, or having to replace the whole motherboard, because of a shorted IC. All the parts can easily be disconnected and reconnected. All modules can be reproduced to fix a certain issue, not spend your whole 3 cards on split to buy a motherboard. Idea may be good enough, but who will make this? Me. My idea I agree, but no company I guess will buy this idea. The implementation requires a lot of cost and design. Therefore, I took this over my head, and here you have it. It’s time to prove the companies are wrongly soldering RAM on board, CMOS battery unreplaceable, and unchargeable. Let shoot the cost cutting, let’s make the laptop, durable and premium in looks, strong in design. Let’s make it unique. Lets make it something, no-body has attempted to. Ok, I know I know. You have been reading these things and wondering when will I get to what he did. Ok, here is what I have done: It took me 3h of research, without following the footprints of a similar project - Anyo_e. I intend to not follow that and create my own project with my own thoughts. And I found out a lot of things I didn’t know existed. EDP, SoC, RK3588, and more. Then make the research time ++3h, due to other factors, docs, and more . Anyway, I have created the PCB. You can see the components and see what has been done. Basically I am plugging SoC in the SODIMM 256. And using the power buck converters for the power rails…. You can check my github for more INFO, it has everything, docs, layout, PCB etc. In next devlog I will create BOM.csv. I think that should be good enough. Then I will send it to ship, to test the eDP… Cause, why not? And I didn’t create this devlog out of AI for sure."}]...
|
Title: Erupsoftware Laptop ThunderLight by @Advay- Title: Erupsoftware Laptop ThunderLight by @Advay-CMD | Stardance
Devlogs:
Devlog 1 -Erupsoftware Laptop ThunderLight “Success is not final, failure is not fatal: It is the courage to continue that counts.” – Winston Churchill Hi! I am Advay-CMD. And, this is my vision, a laptop, but its not just a laptop: A laptop that opensource, free to use, and lighting fast at such minimalistic components. Built from scratch, entirely. Project to show companies that laptop is not a brick of flat metal, it is passion, creativity, and repairbility. This is the Laptop, I can proudly call made by me in India. This is a laptop, to leave the cost cutting laptops make. This is to revolutionize laptops. This is made to make laptop not a thing, but a gateway that feels cosy and like at home! It is a step to change people’s mind that making a laptop is impossible. And customizing is as easy as it gets. Every component is replaceable, reproduceable, and diagnosable. Say no to repairing the components, or doing SMD board nightmares, or having to replace the whole motherboard, because of a shorted IC. All the parts can easily be disconnected and reconnected. All modules can be reproduced to fix a certain issue, not spend your whole 3 cards on split to buy a motherboard. Idea may be good enough, but who will make this? Me. My idea I agree, but no company I guess will buy this idea. The implementation requires a lot of cost and design. Therefore, I took this over my head, and here you have it. It’s time to prove the companies are wrongly soldering RAM on board, CMOS battery unreplaceable, and unchargeable. Let shoot the cost cutting, let’s make the laptop, durable and premium in looks, strong in design. Let’s make it unique. Lets make it something, no-body has attempted to. Ok, I know I know. You have been reading these things and wondering when will I get to what he did. Ok, here is what I have done: It took me 3h of research, without following the footprints of a similar project - Anyo_e. I intend to not follow that and create my own project with my own thoughts. And I found out a lot of things I didn’t know existed. EDP, SoC, RK3588, and more. Then make the research time ++3h, due to other factors, docs, and more . Anyway, I have created the PCB. You can see the components and see what has been done. Basically I am plugging SoC in the SODIMM 256. And using the power buck converters for the power rails…. You can check my github for more INFO, it has everything, docs, layout, PCB etc. In next devlog I will create BOM.csv. I think that should be good enough. Then I will send it to ship, to test the eDP… Cause, why not? And I didn’t create this devlog out of AI for sure....
|
1793458314.3010054
|
1794063114.3010054
|
|
58997
|
TeleSpace100 by @emin | Stardance
|
emin
|
1
|
2.25
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-06T19:29:54Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made telespace100, a retro 80s teletext space portal. It fetches live space weather data from NOAA, displays NASA’s Picture of the Day, and features a Spaceflight News feed with clickable links to full articles. The hardest part was getting the CRT visual effect right using CSS and setting up keyboard navigation without breaking the classic teletext layout. I’m really proud of how authentic the UI feels and how all the dynamic space APIs blend together. To test it, just use your keyboard numbers like typing 100, 200, 300 or 400 to jump between pages and explore the news, space weather, and images.", "repo": "https://github.com/muhammet842/TeleSpace100", "demo": "https://telespace100.vercel.app/"}]...
|
[{"post_id": 64749, "ts": "202 [{"post_id": 64749, "ts": "2026-09-09T11:59:56Z", "hours": 0.2506, "text": "I’m so proud of that my project has been approvedd yesterday! Now, it’s time to build a new one."}, {"post_id": 63050, "ts": "2026-09-06T16:59:48Z", "hours": 0.8914, "text": "I roughly finished my project. At least I completed it as it’s purposes. In the page 200, you can see the current magnetic activity level of the Earth, status inducatur and measurement date. In the page 300, you can see the daily news about space and the picture of day from NASA. In the Page 400, you can see the current developments about space. If you want, you can try it from the link: https://telespace100.vercel.app/"}, {"post_id": 62964, "ts": "2026-09-06T15:11:54Z", "hours": 0.7075, "text": "I approximately 1 hour ago started my new project that I named TeleSpace100. What this project can do: Transform the browser’s New Tab page into a retro 1980s TV Teletext interface. Fetch and display live space data from NASA and NOAA APIs in real time. Enable authentic retro navigation using only page number keypresses instead of a mouse like 100, 200 and 300."}]...
|
Title: TeleSpace100 by @emin | Stardance
Devlogs: Title: TeleSpace100 by @emin | Stardance
Devlogs:
I approximately 1 hour ago started my new project that I named TeleSpace100. What this project can do: Transform the browser’s New Tab page into a retro 1980s TV Teletext interface. Fetch and display live space data from NASA and NOAA APIs in real time. Enable authentic retro navigation using only page number keypresses instead of a mouse like 100, 200 and 300.
I roughly finished my project. At least I completed it as it’s purposes. In the page 200, you can see the current magnetic activity level of the Earth, status inducatur and measurement date. In the page 300, you can see the daily news about space and the picture of day from NASA. In the Page 400, you can see the current developments about space. If you want, you can try it from the link: https://telespace100.vercel.app/
I’m so proud of that my project has been approvedd yesterday! Now, it’s time to build a new one.
Ships:
I made telespace100, a retro 80s teletext space portal. It fetches live space weather data from NOAA, displays NASA’s Picture of the Day, and features a Spaceflight News feed with clickable links to full articles. The hardest part was getting the CRT visual effect right using CSS and setting up keyboard navigation without breaking the classic teletext layout. I’m really proud of how authentic the UI feels and how all the dynamic space APIs blend together. To test it, just use your keyboard numbers like typing 100, 200, 300 or 400 to jump between pages and explore the news, space weather, and images....
|
1793922740.1751378
|
1794009140.1751378
|
|
59835
|
Text Sanitizer by @emin | Stardance
|
emin
|
1
|
3.0
|
5
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T11:45:07Z", "hours": 3.0, "multiplier": 2.86, "payout": 5, "blessing": "neutral", "text": "I built Text Sanitizer, a small web app that cleans up messy text before it gets copied, pasted, or shared. It removes extra whitespace, strips unwanted html content, normalizes formatting, and makes text safer and easier to reuse without making it feel over-processed. The biggest challenge was balancing simplicity with safety. I wanted the sanitizer to be fast and easy to use, while still handling edge cases like repeated spaces, malformed markup, and messy pasted content without breaking the original meaning. I’m proud of the overall user experience: the app is easy to test in real time. I also added a few quality-of-life improvements, including instant preview, simple copy workflow, and clearer output for users who want a cleaner result quickly. To test it, paste text with repeated spaces, HTML-like fragments, or noisy formatting into the input box and compare the cleaned output. The tool is meant to help people sanitize text in seconds while keeping the result readable and consistent.", "repo": "https://github.com/muhammet842/Text-Sanitizer", "demo": "https://text-sanitizer-gules.vercel.app/"}]...
|
[{"post_id": 64740, "ts": "202 [{"post_id": 64740, "ts": "2026-09-09T11:38:15Z", "hours": 0.6578, "text": "Finally, I finished the project. That’s how it looks right now. Link: https://text-sanitizer-gules.vercel.app/"}, {"post_id": 64718, "ts": "2026-09-09T10:45:38Z", "hours": 1.9881, "text": "That’s the current version of my project. I’m still developing it. I hope it will be usefull for people with their tasks and works. It’s on live, you can try it from the link: https://text-sanitizer-gules.vercel.app/"}, {"post_id": 64270, "ts": "2026-09-08T15:25:15Z", "hours": 0.3372, "text": "I am building a frictionless tool to clean up messy text, extract key metrics, and remove clutter instantly.Tested it on a real-world messy research snippet containing scattered email addresses, raw URLs, extra white spaces, and rogue HTML tags. With a single click, it extracted all 3 contact emails ( [email protected] , [email protected] , [email protected] ) and parsed out clean URLs effortlessly!"}]...
|
Title: Text Sanitizer by @emin | Stardance
Devlog Title: Text Sanitizer by @emin | Stardance
Devlogs:
I am building a frictionless tool to clean up messy text, extract key metrics, and remove clutter instantly.Tested it on a real-world messy research snippet containing scattered email addresses, raw URLs, extra white spaces, and rogue HTML tags. With a single click, it extracted all 3 contact emails ( [email protected] , [email protected] , [email protected] ) and parsed out clean URLs effortlessly!
That’s the current version of my project. I’m still developing it. I hope it will be usefull for people with their tasks and works. It’s on live, you can try it from the link: https://text-sanitizer-gules.vercel.app/
Finally, I finished the project. That’s how it looks right now. Link: https://text-sanitizer-gules.vercel.app/
Ships:
I built Text Sanitizer, a small web app that cleans up messy text before it gets copied, pasted, or shared. It removes extra whitespace, strips unwanted html content, normalizes formatting, and makes text safer and easier to reuse without making it feel over-processed. The biggest challenge was balancing simplicity with safety. I wanted the sanitizer to be fast and easy to use, while still handling edge cases like repeated spaces, malformed markup, and messy pasted content without breaking the original meaning. I’m proud of the overall user experience: the app is easy to test in real time. I also added a few quality-of-life improvements, including instant preview, simple copy workflow, and clearer output for users who want a cleaner result quickly. To test it, paste text with repeated spaces, HTML-like fragments, or noisy formatting into the input box and compare the cleaned output. The tool is meant to help people sanitize text in seconds while keeping the result readable and consistent....
|
1794045152.7328637
|
1794131552.7328637
|
|
4108
|
Macropad by @Dishman | Stardance
|
Dishman
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-12T02:09:30Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I have made a Macropad! I know its one of the basic projects but I’m glad I took the time to do it (even if there might be some issues) because I got a good understanding of KICAD and Fustion360 in which I had no prior knowledge. I had the most amount of trouble in actually building my case and checking if it could line up with my PCB. I’m glad I did this project because it gave me a lot of confidence to build more projects. I know I haven’t done much of the devlogs (which was fully my fault because i wasn’t fully aware on how everything works) but I understand what I have to do now! I have another project in mind which I really wanted to do for awhile which I will definitely have devlogs.", "repo": "https://github.com/dish-glitch/Macropad", "demo": ""}]...
|
[{"post_id": 6474, "ts": "2026 [{"post_id": 6474, "ts": "2026-06-10T21:48:47Z", "hours": 0.3172, "text": "I have currently just made the PCB and the case for my Macropad. This is my first time using KICAD and 360, this project was just so i can get used to KICAD and 360 :)"}]...
|
Title: Macropad by @Dishman | Stardance
Devlogs:
Title: Macropad by @Dishman | Stardance
Devlogs:
I have currently just made the PCB and the case for my Macropad. This is my first time using KICAD and 360, this project was just so i can get used to KICAD and 360 :)
Ships:
I have made a Macropad! I know its one of the basic projects but I’m glad I took the time to do it (even if there might be some issues) because I got a good understanding of KICAD and Fustion360 in which I had no prior knowledge. I had the most amount of trouble in actually building my case and checking if it could line up with my PCB. I’m glad I did this project because it gave me a lot of confidence to build more projects. I know I haven’t done much of the devlogs (which was fully my fault because i wasn’t fully aware on how everything works) but I understand what I have to do now! I have another project in mind which I really wanted to do for awhile which I will definitely have devlogs....
|
1793940810.068563
|
1794027210.068563
|
|
54650
|
Pomodoro Pulse by @CEO | Stardance
|
CEO
|
0
|
1.12
|
0
|
[]
|
[{"post_id": 64739, "ts": "202 [{"post_id": 64739, "ts": "2026-09-09T11:37:06Z", "hours": 1.12, "text": "I am building an app which will help me focus when I am learning."}]...
|
Title: Pomodoro Pulse by @CEO | Stardance
Devlogs Title: Pomodoro Pulse by @CEO | Stardance
Devlogs:
I am building an app which will help me focus when I am learning....
|
1793559324.4309087
|
1794164124.4309087
|
|
54557
|
bananaOS by @pascalls | Stardance
|
pascalls
|
1
|
10.92
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-02T06:49:20Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Finally shipping it! This is my final version of bananaOS for WebOS1. It has currently has two apps and a welcome screen. I am really happy with how this turned out, I think it looks pretty good! I did find some parts challenging, especially the JavaScript (im getting there). I plan on adding more apps and making it better in WebOS2.", "repo": "https://github.com/Pascalls95/bananaOS", "demo": "https://pascalls95.github.io/bananaOS/"}]...
|
[{"post_id": 64737, "ts": "202 [{"post_id": 64737, "ts": "2026-09-09T11:31:38Z", "hours": 1.025, "text": "Havent really done much in the past few days, I began the basic app and window structure for a music player, but i havent found a suitable tutorial yet. for now, i will first make a calculator app. i have already created the main layout and will begin coding the actual calculator tomorrow."}, {"post_id": 62889, "ts": "2026-09-06T12:44:57Z", "hours": 0.5872, "text": "I have began working on a new app… a browser! i havent done much, just worked on the main structure and began the css. im gonna use javascript to make it actually work, at this stage it will probably just redirect users to what they search in gooogle, but i might change that later."}, {"post_id": 61463, "ts": "2026-09-04T12:09:32Z", "hours": 1.6025, "text": "I finished the calendar app! It shows the current date (highlighted with a red circle). you can also see other months by clicking the arrows. im really happy with how it turned out, i might change a bit of the styling, maybe the colours? (not too sure). i plan to add another app, idk what yet but yea, thats for tomorrow!"}, {"post_id": 60694, "ts": "2026-09-03T07:37:11Z", "hours": 0.7011, "text": "I didnt add too much today, just the foundations for a calendar app. i added a new window/icon with dragging and closing functions. to make the calendar, i will follow a tutorial (because i have no idea how!)"}, {"post_id": 59945, "ts": "2026-09-02T00:29:23Z", "hours": 1.0439, "text": "I added a new app! There is now a settings app for bananaOS. It currently doesnt have much, only the ability to change between the two wallpapers (like i mentioned previously). I plan to keep adding more settings features as I continue to build my webOs."}, {"post_id": 59326, "ts": "2026-09-01T01:36:44Z", "hours": 0.7614, "text": "I finished the notepad app (yay!). It follows the same sort of design as the welcome, i might change it later, but most likely once I move onto WebOS2. The editable text works, it does save but not when you reload the page, so I might fix that up later. My next step is to add one more app (probably a settings app) and then submit!"}, {"post_id": 58545, "ts": "2026-08-30T23:56:47Z", "hours": 0.8336, "text": "Today i made the icon clickable. (so it opens the notes window). i didnt really like how in the guide you have to double click to open apps. I feel like i prefer just having a single click. I commented out the other code just in case i change my mind later. im gonna work on making the notepad functional."}, {"post_id": 57830, "ts": "2026-08-30T04:11:58Z", "hours": 1.0564, "text": "Today i began adding a new app (notepad). I created the icon and styled/formatted it, so when hovered over it glows yellow (for banana). Talking about bananas i changed the wallpaper to be a banana. I plan to later add a settings to toggle between the two wallpapers and css styles. but thats for later! Ill now finish the notepad app and work on some others."}, {"post_id": 57139, "ts": "2026-08-29T07:36:46Z", "hours": 1.3222, "text": "I didnt change much, added a close button and styled it. I have no idea why it took me so long but i was able to fix all problems. i now want to add more ‘apps’ maybe a notepad or calculator."}, {"post_id": 57098, "ts": "2026-08-29T06:04:03Z", "hours": 1.36, "text": "Did quite a bit today. I fixed the top bar so its perfectly aligned at the top. I added the javascript for dragging windows and assigned classes and ids for elements. I did the styling for the windows. If you havent guessed by the name, im trying to go for a macos sort of look. Im really happy with how its looking. im going to next add close buttons and start adding more apps."}, {"post_id": 56480, "ts": "2026-08-28T08:06:15Z", "hours": 0.7325, "text": "Just started coding, doesnt look too pretty yet but will keep working to make it better! Currently working throught a github commit problem."}]...
|
Title: bananaOS by @pascalls | Stardance
Devlogs: Title: bananaOS by @pascalls | Stardance
Devlogs:
Just started coding, doesnt look too pretty yet but will keep working to make it better! Currently working throught a github commit problem.
Did quite a bit today. I fixed the top bar so its perfectly aligned at the top. I added the javascript for dragging windows and assigned classes and ids for elements. I did the styling for the windows. If you havent guessed by the name, im trying to go for a macos sort of look. Im really happy with how its looking. im going to next add close buttons and start adding more apps.
I didnt change much, added a close button and styled it. I have no idea why it took me so long but i was able to fix all problems. i now want to add more ‘apps’ maybe a notepad or calculator.
Today i began adding a new app (notepad). I created the icon and styled/formatted it, so when hovered over it glows yellow (for banana). Talking about bananas i changed the wallpaper to be a banana. I plan to later add a settings to toggle between the two wallpapers and css styles. but thats for later! Ill now finish the notepad app and work on some others.
Today i made the icon clickable. (so it opens the notes window). i didnt really like how in the guide you have to double click to open apps. I feel like i prefer just having a single click. I commented out the other code just in case i change my mind later. im gonna work on making the notepad functional.
I finished the notepad app (yay!). It follows the same sort of design as the welcome, i might change it later, but most likely once I move onto WebOS2. The editable text works, it does save but not when you reload the page, so I might fix that up later. My next step is to add one more app (probably a settings app) and then submit!
I added a new app! There is now a settings app for bananaOS. It currently doesnt have much, only the ability to change between the two wallpapers (like i mentioned previously). I plan to keep adding more settings features as I continue to build my webOs.
I didnt add too much today, just the foundations for a calendar app. i added a new window/icon with dragging and closing functions. to make the calendar, i will follow a tutorial (because i have no idea how!)
I finished the calendar app! It shows the current date (highlighted with a red circle). you can also see other months by clicking the arrows. im really happy with how it turned out, i might change a bit of the styling, maybe the colours? (not too sure). i plan to add another app, idk what yet but yea, thats for tomorrow!
I have began working on a new app… a browser! i havent done much, just worked on the main structure and began the css. im gonna use javascript to make it actually work, at this stage it will probably just redirect users to what they search in gooogle, but i might change that later.
Havent really done much in the past few days, I began the basic app and window structure for a music player, but i havent found a suitable tutorial yet. for now, i will first make a calculator app. i have already created the main layout and will begin coding the actual calculator tomorrow.
Ships:
Finally shipping it! This is my final version of bananaOS for WebOS1. It has currently has two apps and a welcome screen. I am really happy with how this turned out, I think it looks pretty good! I did find some parts challenging, especially the JavaScript (im getting there). I plan on adding more apps and making it better in WebOS2....
|
1794081339.9139905
|
1794167739.9139905
|
|
41309
|
Hikari by @PAPER_01 | Stardance
|
PAPER_01
|
1
|
50.81
|
278
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-04T07:16:29Z", "hours": 26.0, "multiplier": 9.08, "payout": 278, "blessing": "neutral", "text": "Hikari is a recommendation site that currently uses a total of five APIs — four APIs for manga and four APIs for anime. Though some of the APIs are used in both of them. To be more precise its, AniList, Jikan, and Kitsu as they have information about both manga and anime, so they are used for both. I’m trying to make a recommendation site that recommends anime and manga for now, but I will be adding movies, games, and cartoons in the future. The main thing I’m trying to do is combine all the available APIs and give you the best experience by solving the issue of free APIs exhausting soon quickly Since I’m combining all these APIs and making them work as a fallback system , if one API fails or gets exhausted, the other can hold you back. For a more detailed explanation, please check out the README on GitHub. Thank you so much! I hope you like this =)", "repo": "https://github.com/shrestha-01/Hikari", "demo": "https://shrestha-project-09.66ghz.com/"}]...
|
[{"post_id": 64717, "ts": "202 [{"post_id": 64717, "ts": "2026-09-09T10:34:39Z", "hours": 4.0367, "text": "Hikari Devlog #19 Hello everyone, welcome to Devlog #19 of Hikari! (ノ◕ヮ◕)ノ*:・゚ Streaming Links Talking about the updates for this devlog, I have added the streaming links where you can watch the animes. Currently, I have added: Crunchyroll Netflix AnimeSuge (ㅅ´ ˘ `) How Does the Search Work? So, talking about how it searches the anime… First of all, this applies to Crunchyroll and Netflix only , because AnimeSuge isss… umm… (ó﹏ò。) not legit. But hey, it’s just for learning purposes, okay! So, for Crunchyroll and Netflix , the search works by checking the AniList API to see if a streaming link for that particular anime is available or not. If a Direct Link Is Not Available If the direct streaming link is not available in the API, then it will redirect you to that particular streaming platform by searching for the anime. This also applies to AnimeSuge , and actually it always apply to AnimeSuge as the API is never gonna have streaming link of the site for sure(ᵕ—ᴗ—) So, instead of sending you to a random page, it will search for the exact name of the anime on that platform and show you the result. For example, let’s say there is an anime called Anime A . If the streaming link for Anime A is not available in the API, then when you click on the streaming link, Hikari will search for Anime A on the streaming platform and redirect you to the search result page. Scrollbar Design I have also added a slight design to the scrollbar . I didn’t want to remove the scrollbar completely, because I thought people might actually want to scroll through and read the information. So instead of removing it, I just gave it a little design to make it look a bit better than the plain default scrollbar. It’s a small change, but I wanted to mention it since I made some changes here as well. ( ̄▽ ̄)ゞ That’s It! And yeah, that’s it for this devlog! If you have any questions, please do tell me and let me know in the comments. As always, thank you so much for reading, and have a very nice day! ✨ (ノ´ヮ`)ノ*:・゚✧"}, {"post_id": 64098, "ts": "2026-09-08T09:05:43Z", "hours": 2.0447, "text": "Hikari Devlog #18 Hello everyone, welcome to Devlog #18 of Hikari! (ノ◕ヮ◕)ノ*:・゚ Movie Trailer I just wanted to give a quick update on the Movie section . So, I finally added a trailer feature to the Movie section as well! The trailer comes from the TMDB API only , as I could not find any trailer data on OMDB API. I mean, I tried searching, but I didn’t find any trailer data on OMDB , so for now, I’m using the trailer data provided by TMDB. I’ll add a screen recording of the movie trailer in action below. [Sorry , for the lag, my laptop is kinda weak and lags even more with screen recording on] That’s It! Yeah, that’s it for this devlog! Thank you so much! (≧▽≦) And if there is any question, then please do tell me in the comments. I’ll try my best to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚"}, {"post_id": 64042, "ts": "2026-09-08T05:21:34Z", "hours": 2.2836, "text": "Hikari Devlog #17 Hello everyone, welcome to Devlog #17 of Hikari! (ノ◕ヮ◕)ノ*:・゚ OMDB as TMDB Fallback The first update I would say is that I have added the OMDB API as the fallback for the TMDB API . And yeah, obviously, I use the free version , and when I was getting the API key, it told me that it can handle around 1,000 requests per day . And…, I think that should be enough for a personal project like this. And on top of that, it’s only being used as a fallback . First, the requests will be handled by TMDB , and if that fails, then only it will come to OMDb . So, 1,000 requests per day is already more than enough for a personal project like this(i guess). ( ̄▽ ̄)ゞ Movie Genre Filters Talking about the next update, I have also added the genre filters for movies . I will add a screenrecording showing it in action, I’ll attach it below. Trailer Feature for Manga And I have also added a trailer feature for manga ! Yeah, even manga have trailer features available through the AniList API , so I added it there as well. (≧▽≦) That’s It! And yeah, that’s it for this devlog! If you have any questions or want me to explain anything again, then please feel free to leave a comment. I will try my best to explain it there as well. And as always, thank you so much for reading, and have a very nice day! ✨ (ノ´ヮ`)ノ*:・゚"}, {"post_id": 62994, "ts": "2026-09-06T15:44:20Z", "hours": 5.1447, "text": "Hikari Devlog #16 Hello everyone, welcome to Devlog #16 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ TMDB Fetching Improvements So, this time I worked on improving the fetching method of the TMDB API . Previously the fetch returned empty or missed the fetch alot of time, but now its quite better. I will attach a video below showing how it works. (。•̀ᴗ-)✧ And also, I have added the OMDb API as the backup for this one. So now, if TMDB fails, OMDb can act as a fallback. Hopefully, this will make the movie recommendation system a bit more reliable. (ง •̀_•́)ง Watch Trailer Btn Design In the video, you can also see a simple design of the Watch Trailer button. I mean, it’s not exactly simple, but I thought that it looks pretty good, at least to me. But still… I spent a lot of time checking different button designs and stuff for that. I literally spent so much time on that single button . (╥﹏╥), hope ya all like that too Genre Filtering Currently, I am working on filtering the genres of the movies . This should make it easier to get recommendations based on the genres you want. (。•̀ᴗ-)✧ A Little Bug… Also, in the video, you might see that the Watch Trailer button also appeared in the Movie section . But that’s actually a bug that I need to fix. ( ̄▽ ̄;) Basically, when the anime has the Watch Trailer option, and then I switch to the movie section, the button keeps appearing there as well. I still need to figure out how to solve this one. (•́ ᴖ •̀) To show this properly, I force restarted the site in the video as well, to show that the movie doesn’t have the Watch Trailer option in that session right now. So yeah… another little bug to deal with. (╥﹏╥) That’s It! So yeah, that’s it for this devlog! If there is anything you think I didn’t explain properly, or you want me to explain something, then please do tell me in the comments. I’ll try my best to explain it there as well. ( ̄▽ ̄)ゞ As always, thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚✧"}, {"post_id": 62629, "ts": "2026-09-06T03:00:11Z", "hours": 2.6964, "text": "Hikari Devlog #15 Hello everyone, welcome to Devlog #15 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Watch Trailer Feature So, talking about the updates… I have finally added the Watch Trailer feature! (≧▽≦) Currently, it’s only on the Anime section . Okay, so how it works is, if there is a trailer link available in the API , then it will play it on YouTube . The YouTube video will be embedded within the site, which means you don’t need to go to another tab , and you will NOT be redirected to a new tab. (。•̀ᴗ-)✧ The trailer will simply be displayed within the website itself(in the poster area) , as it is embedded. [anime trailers might be limited to certain country and because of it , some of the trailers can be unavailable, depending upon where you live] I’ll put a clip below showing working. Watch Trailer Button Currently, the Watch Trailer button has no design yet. I’m planning to work on that later. ( ̄▽ ̄)ゞ To close the trailer, you just need to click the same button again. The Watch Trailer button will change its text to Close Trailer , and you can click it to stop the trailer. (っ˘ω˘ς ) Pretty simple! TMDB Movie API Also, currently I’m working on improving the fetching method of the TMDB Movie API . Right now, it picks a random ID between 1 and 500,000 , but yeah… it misses a lot of times. I mean, it was quite visible in the previous devlog video I uploaded. (╥﹏╥) Also talking about the good luck, I just found that TMDB has a proper Discovery endpoint , which returns real and valid movies, and it has a much higher hit rate. I mean, that’s what I found. (•̀ᴗ•́)و But I’m still working on it, and I have not tested it yet . If I get any updates, I’ll update you guys in the next devlog! (。•̀ᴗ-)✧ That’s It! Thank you so much for reading! (づ。◕‿‿◕。)づ And as always, if there is any question, or you think that I didn’t explain something properly, then please do tell me in the comments. I’ll try my best to explain that as well. ( ̄▽ ̄)ゞ As always, thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚✧"}, {"post_id": 62202, "ts": "2026-09-05T13:51:04Z", "hours": 2.2114, "text": "Hikari Devlog #14 ✨ Hello everyone, welcome to Devlog #14 of Hikari! Visual Updates For the updates, I have made the poster card change its size according to the poster size . So, the card will adjust itself depending on the poster instead of having the same fixed size for every poster. I also added a chibi on the bottom-left of the poster . I mean, why not? =) Just as a little signature. Just like I added in AniSuffle , though its a different chibi Streaming Links & Backend Currently, I am working on adding the streaming links , like adding the Watch Trailer option and stuff. I am also working on fixing the images not being loaded for the Movie section , especially. And after an API fails, there is no fallback right now as well, so I’m will be working on that as well. That’s It! Thank you so much for reading! And if you didn’t understand something, or you think I didn’t explain something properly, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 62011, "ts": "2026-09-05T06:45:28Z", "hours": 2.5503, "text": "Hikari Devlog #13 Hello everyone, welcome to Devlog #13 of Hikari! Movie API Talking about the update, I used an API called TMDB on this site. Currently, I don’t have any fallback option for movies right now. Visual Updates I was also working on the card, giving it a default rectangular look . Yeah, I’m trying to match AniSuffle, my old site, and bring some of that old style into Hikari(without looking the old code obviously). What’s Next? Before including more backup APIs for movies, I think I will be working on more visual changes , the auto resize is not added on the card yet, will add that first. I’m also thinking of including streaming links , like I did before in AniSuffle. And yeah, I guess that’s it for this devlog! If you think anything was not explained properly, or if you want me to explain anything again, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 61589, "ts": "2026-09-04T16:01:44Z", "hours": 2.7811, "text": "Incase you are having issue playing the video, click on the video and press SPACE BAR Hikari Devlog #12 Hello everyone, welcome to Devlog #12 of Hikari! Updates So, talking about updates again, the updates are that I have added a card-like effect on the poster image . Also , I increased the size of the Hikari logo . I also added an animation of a sort of glow on the star beside the word Hikari . ⭐ I’ll add a video of it here below to show the current state of the site. What’s Next? Currently, next I’m going to work on the Movie section . Yeah, I will mention about the API which I’ll be using for movies, in the next devlog probably, if everything goes well. That’s It! And if you have any questions, then please do tell me in the comments. I will try to explain there as well. And yeah, thank you so much for reading! As always, have a very nice day . (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 61388, "ts": "2026-09-04T08:43:19Z", "hours": 1.0575, "text": "Hikari Devlog #11 ✨ Hello everyone, welcome to Devlog #11 of Hikari! Visual Updates Talking about updates, the update is more on the visual side this time. I have added the poster as the background — the same poster which is viewed on the card, with some blur effect. I thought it was kind of cool and matches the old style of my site. (≧▽≦) 3D Card Effect Currently, I am working on making the card have a 3D-like effect . I found the source code for it on FreeFrontend.com . I will provide the link on the GitHub README, in the Credits section. That’s It! Yeah, that’s all for this devlog. I mean, I’m enjoying writing these devlogs. I wrote a couple of devlogs today and I’m still enjoying it, so I’m uploading this one as well. I thought it was good. It’s good to track the progress as well. So,That’s it for this devlog! If you want me to explain something, or if you think I did not explain something properly, then please do tell me in the comments. I’ll try my best to explain it again in the comments as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 61343, "ts": "2026-09-04T06:48:14Z", "hours": 0.6414, "text": "Finally Shipping Hikari Devlog #10 Hello everyone, welcome to Devlog #10 of Hikari! (。•̀ᴗ-)✧ And so, this might be the final devlog before the first ship ! Final Touches I have worked on the responsiveness and cleaned the code. I also worked on making sure(cleaning) the experimental console.log things will not be displayed in the console tab of the site. And finally, I have hosted the site ! Screenshot I’ll add a simple screenshot of the site below: If I make any changes later on, while my project is still waiting to be reviewed, I might add another screenshot to this devlog and update what was changed. Site live at : https://shrestha-project-09.66ghz.com/ And if you have any questions, please do tell me in the comments. I’ll try my best to explain it there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧ Update(after the ship for reviewers) Poster as Background That’s It! Thank you so much for reading! And if you have any questions, please do tell me in the comments. I’ll try my best to explain it there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 61323, "ts": "2026-09-04T05:39:32Z", "hours": 1.415, "text": "Hikari Devlog #9 Hello everyone, welcome to Devlog #9 of Hikari! (。•̀ᴗ-)✧ Genre Options So, I added some glassmorphic , or honestly more blur-like effect , on the genre options. I will add a screenshot below What’s Next? Yeah, I guess I will work on the responsiveness of the site next. And I will remove the Cartoons, Movies, and Games options for now because I will be shipping it, and I will work on those topics later on. That’s It! Yeah, I guess that’s it. And as always, if you have any questions, please do tell me in the comments, and I’ll try my best to explain it there. Thank you so much for reading! Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 61260, "ts": "2026-09-04T03:18:22Z", "hours": 3.6186, "text": "Hikari Devlog #8 Hello everyone, welcome to Devlog #8 of Hikari! (。•̀ᴗ-)✧ Genre Filter Talking about the updates I worked on the genre filter and applied the filter to all four APIs . And yeah, actually, that’s all for this update. What’s Next? 👀 Next, I’m looking towards updating, or like, making some visual changes Also , if everything goes right I might ship it today . As shipping after making a big project might make people not want to read all those devlogs , so um yeah That’s It! Yeah, that’s it for this devlog. And if you think that I didn’t explain something properly, or you want me to explain something more, then please do tell me in the comments. I’ll try again there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 60815, "ts": "2026-09-03T13:06:51Z", "hours": 3.4425, "text": "Hikari Devlog #7 Hello everyone, welcome to Devlog #7 of Hikari! (。•̀ᴗ-)✧ Manga API Fallback Okay, so talking about the updates for this devlog, I have now finally added the API fallback chain for mangas as well . I used: AniList → MangaDex → Jikan → Kitsu AniList is the primary API, then MangaDex, then Jikan, and finally Kitsu. And it seems like both MangaDex and Jikan are down . When I used them a few months before, they were active, but I don’t wonder why they all are, like, getting down and not accepting the requests. (but still i kept them on the fallback just in case if any of them come to life =) ) What’s Next? In the upcoming future, I am going to work on the genre filter for mangas in the same way i worked for the anime . I was also thinking of shipping this project after completing the Anime and Manga sections. I know it looks a bit plain right now, but I wanted to see what you all think about it. I might get some good recommendations from you guys, which I might implement. That’s It! Yeah, so I guess that’s it for this devlog. If you want me to explain anything, or if you think that I did not explain something properly, then please tell me in the comments. I’ll try to explain it again. and as always, thank you so much for reading! and Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 60593, "ts": "2026-09-03T01:41:26Z", "hours": 3.12, "text": "Hikari Devlog #6 Hello everyone, welcome to Devlog #6 of Hikari! (。•̀ᴗ-)✧ Manga Recommendation For this devlog, the main update I would say is the starting of the Manga Recommendation section . I have started working on the manga system now, and so far I have only implemented the AniList API for API calls for manga. In the future, I am planning to add more APIs for manga as well: MangaDex Jikan Kitsu This should give me more options for fallback APIs and hopefully make the manga recommendation system more reliable. That’s It! And yeah, I guess that’s it for this devlog. This one is kinda short, ik (ᵕ—ᴗ—), but that’s the only update I have right now. So yeah, that’s all for this devlog! And as always, if anything was unclear, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading! Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧"}, {"post_id": 59540, "ts": "2026-09-01T12:50:52Z", "hours": 2.7569, "text": "Hikari Devlog #5 Hello everyone, welcome to Devlog #5 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Okay, now talking about the updates, I have added the similar randomization to AniList and Kitsu API as well. Yeah, I mean, they work differently, but overall it is to achieve the same random result as it was applied in Jikan. You can read Devlog #4 for more info. Changes to Select Genre Another change I made was on the Select Genre is how the results are displayed . So basically, before, how it used to work was: If you selected one genre , then it would give you the correct result. But if you selected multiple genres , then it might: Give you the same anime again and again Give you some random unrelated anime Or sometimes even throw an error But yeah, there are some changes I made to this. Now, instead of showing some random unrelated anime or throwing an error, it would display something which comes within the range of your selected genres . For example, if you selected: Action Comedy Drama And if no such anime is found on the API which contains all three genres , then it would give you an anime containing Action or Comedy or Drama, or any combination of the selected genres . So yeah, it will not totally disappoint you. I mean, I felt it would be better to give you something related to what you selected. ( ̄▽ ̄)ゞ rather than something totally unrelated. Current Implementation Currently, I have applied this system only to AniList . I’ll apply it to Jikan and Kitsu soon However, I am not applying it to SukiMori , as it is not giving quite the response required to display anything. I did not comment out the whole code of SukiMori, but yeah, I am not applying the filters and stuff to SukiMori as it is throwing an error again and again, and it’s not letting me fetch any data. I tried searching for it, but I could not really fix it. So I asked AI, and it told me that it was refusing to connect and nothing can be done and something like that. So yeah, I am not writing filters for that for now. That’s It! And yeah, that’s it for this devlog, I guess. (。•̀ᴗ-)✧ If you have any questions, or if you think I did not explain anything properly, then please do tell me in the comments. I’ll try to explain it there . As always, thank you so much for reading! and Have a very nice day! (≧▽≦)"}, {"post_id": 59392, "ts": "2026-09-01T05:44:17Z", "hours": 2.5783, "text": "Hikari Devlog #4 Hello everyone, welcome to Devlog #4 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Okay, so talking about the updates, this time I have integrated the Choose Genre filters, and other few update , i will explain it below. Choose Genre Now, while generating any random anime, you can choose or select genres on which you want the anime to be recommended. And ngl but it works best when you choose one genre (ó﹏ò。). It might take some time, or sometimes give you some random anime, or maybe also sometimes throw an error when you choose a tones of anime For example, if you select all the genres , then obviously it would not find any anime with all the genres, so it might either give you a random anime or worst case scenireo , might throw an erroe. It works best when you select around one or two genres . Fourth Fallback Option Another update is that I have also implemented the fourth fallback option , which is Shikimori . Though I ummm didn’t really find it much reliable(returns anime very little time(╥﹏╥)), I still kept it as a fallback option in case it might come to use. Randomizing Jikan Pages And the last update for this devlog is how the anime is fetched from Jikan . So, let me tell you how it worked before. Previously, when pulling any random anime from Jikan, it used to ask for one page . The pages were based on the descending order of popular anime , so it would give me the 1st page containing popular anime. Each page contains around 25 anime , and it would pull one anime randomly from that page. and yeah , since it pulled from only that page , it would genreally revolve around those 25 popular anime. But this time, I have randomized ** the page**. So now, it isn’t limited to just the popular anime of 1st page. It could be: Page 1 — containing the most popular anime Page 10 Page 23 Page 140 Or basically any random page within the database So, instead of only getting anime from the popular pages, you can now get something from pretty much anywhere within the available database. Visual Changes And yeah, there aren’t many visual changes this time as well. The main visible change is that when you click the Select Genre option, it will display some checkboxes for the different genres . That’s pretty much it for this devlog! and yeah, If you think I did not explain anything properly, or you want some detailed explanation, then please do comment. I’ll try to explain it again there. As always, thank you so much for reading! Have a nice day! (≧▽≦)"}, {"post_id": 58080, "ts": "2026-08-30T13:03:58Z", "hours": 2.9622, "text": "Hikari Devlog #3 Hello everyone, welcome to Devlog #3 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Yeah, there are some major changes in this one. More Anime Information So, on the main page, I have added: Ratings Release Date Status Synopsis The status tells you whether the anime is finished, currently ongoing or is upcoming I have also added the synopsis , or you could say the description of the anime . API Fallback System And apart from that, I have also added Kitsu as a backup , after Jikan. Okay, so let me make it clear. I have made AniList the primary source for fetching anime. After that, if something doesn’t work, it goes to Jikan , and after Jikan, it goes to Kitsu . So right now, I have three APIs in total , and they all act as a backup for each other. I am also planning to add one more API later. (which is Shikimori) Better Image Quality And yeah, I also found out that there is an even better quality of image available.[So, the image displyed on this site will be even better then on AniSuffle =) ] From now on, I’m going to use that. Back & Forward And finally, I have also made the Back and Forward buttons functional . Now you should be able to go back and forward through the anime recommendations you have received. So you can go back to the previous anime, and then come forward again to the anime you were recommended before. That’s it for this small addition! (。•̀ᴗ-)✧ Also , if you go to the previous anime and fetch a new one then the one which was at forward will be lost. JavaScript Changes I did not make many changes to the front end this time . And by front end, I mean the layouts and stuff that are actually visible . Most of the work this time was more on the JavaScript side , which isn’t really visible from the outside. So, there might not be a huge visual difference, but quite a few things have changed behind the scenes. That’s It! So, to summarize: Three APIs , all acting as backups for each other, better image quality , more anime information, and some changes on the JavaScript side. Yeah, that’s it for this devlog! (。•̀ᴗ-)✧ If you didn’t understand anything or felt i wasnt clear enough , then please do tell me in the comments, and I’ll try to explain it again. Thank you so much for reading! Have a nice day! (≧▽≦)"}, {"post_id": 57323, "ts": "2026-08-29T13:16:29Z", "hours": 2.405, "text": "Hikari Devlog #2 Hello everyone, welcome to Devlog #2 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ So this time I did only a few changes, which are regarding the designs (especially). Capsule-like Design [for genres] I added the capsule-like design as I did previously(in AniSuffle), to the genres of the anime. Category Button I also added a Category button . When clicking on it, it will reveal the options (with a little slide left animation)for the different categories that I’ll be working on: Anime Manga Cartoons Movies Games I’ll be making a recommendation system for all of these categories later on. JavaScript Changes I didn’t do much with the JavaScript this time. The main JavaScript change was using JavaScript to turn the class on and off to show and hide the categories and yeah,thats all for this time. Layout & Poster Changes I also made some changes to the layout and the size of the poster . I used clamp() for the sizing so that the poster can adjust better i mean like depending on the screen size. And yeah, that’s pretty much it for this time! ( ̄▽ ̄)ゞ That’s It! I guess that’s it for this devlog! If anything was unclear, then please do tell me. I’ll try to make you understand it again =) Thank you so much for reading! Have a nice day! (≧▽≦)"}, {"post_id": 55433, "ts": "2026-08-27T08:07:23Z", "hours": 2.6061, "text": "Hikari Devlog #1 Hello everyone, welcome to the very first devlog of Hikari! Hikari - A recommendation site So, this project is going to be a bit bigger, yes, even bigger than AniSuffle. You can basically think of Hikari as a remake(from the scratch) + upgraded version of AniSuffle , while I will try to match the vibe of AniSuffle again here as well. For those who don’t know, AniSuffle was my previous project anime and manga recommendation website that I worked on. Unfortunately, it’s deleted now, and I can’t reuse the old code, so I’m going to build it again completely from scratch . It will probably look somewhat similar to the AniSuffle, but this time, I’m planning to widen the range of uses , not limiting only to Anime and Manga this time. Current Progress Coming to the actual update, right now, even the basic layout isn’t ready yet tbh . So far, I’ve mainly been experimenting with the design. I’ve added: [By the way the theme is going to be Glassmorphism(design credited on the GitHub Readme)] Some buttons (with design) A basic card A poster inside the card A title beside the poster That’s pretty much it for now. =D API Testing For the API, I initially tried using Jikan , but it seems to be down right now. So, I switched to AniList . I’ll also add a video showing what the site currently looks like and how it works. Multiple API Fallbacks Later on, I’m planning to use multiple APIs as fallback options . The main reason for this is that free APIs usually have limited requests , so instead of relying on a single API, I want to combine multiple available APIs and give ya all best experience as possible. For anime API, I’m currently thinking of using: Jikan AniList Kitsu Shikimori I will be adding shikimori for the first time, while i used remaining before as well. Lets see how it goes…. I’ll try to do something similar for the other types of content(manga, movie, video games, cartoons) as well. It’s Not Just Anime & Manga And this time, I’m not planning to stop at anime and manga . Hikari is going to be something much bigger. I’m planning to include: Anime Manga Movies Games Cartoons And I’ll try to add fallback APIs for all of them whenever possible. I’ve already done some research on the free APIs that are available, and I’ll talk more about them when I actually implement them into the site. So yeah, that’s pretty much it for the first Hikari devlog ! Currently, I’m using AniList , since Jikan doesn’t seem to be working right now. I’ll add a video showing the current state of the site as well. If you think anything was unclear, or I didn’t explain something properly, please do tell me in the comments. I’ll try to explain it there again. Thank you so much for reading, and have a nice day! =)"}]...
|
Title: Hikari by @PAPER_01 | Stardance
Devlogs:
H Title: Hikari by @PAPER_01 | Stardance
Devlogs:
Hikari Devlog #1 Hello everyone, welcome to the very first devlog of Hikari! Hikari - A recommendation site So, this project is going to be a bit bigger, yes, even bigger than AniSuffle. You can basically think of Hikari as a remake(from the scratch) + upgraded version of AniSuffle , while I will try to match the vibe of AniSuffle again here as well. For those who don’t know, AniSuffle was my previous project anime and manga recommendation website that I worked on. Unfortunately, it’s deleted now, and I can’t reuse the old code, so I’m going to build it again completely from scratch . It will probably look somewhat similar to the AniSuffle, but this time, I’m planning to widen the range of uses , not limiting only to Anime and Manga this time. Current Progress Coming to the actual update, right now, even the basic layout isn’t ready yet tbh . So far, I’ve mainly been experimenting with the design. I’ve added: [By the way the theme is going to be Glassmorphism(design credited on the GitHub Readme)] Some buttons (with design) A basic card A poster inside the card A title beside the poster That’s pretty much it for now. =D API Testing For the API, I initially tried using Jikan , but it seems to be down right now. So, I switched to AniList . I’ll also add a video showing what the site currently looks like and how it works. Multiple API Fallbacks Later on, I’m planning to use multiple APIs as fallback options . The main reason for this is that free APIs usually have limited requests , so instead of relying on a single API, I want to combine multiple available APIs and give ya all best experience as possible. For anime API, I’m currently thinking of using: Jikan AniList Kitsu Shikimori I will be adding shikimori for the first time, while i used remaining before as well. Lets see how it goes…. I’ll try to do something similar for the other types of content(manga, movie, video games, cartoons) as well. It’s Not Just Anime & Manga And this time, I’m not planning to stop at anime and manga . Hikari is going to be something much bigger. I’m planning to include: Anime Manga Movies Games Cartoons And I’ll try to add fallback APIs for all of them whenever possible. I’ve already done some research on the free APIs that are available, and I’ll talk more about them when I actually implement them into the site. So yeah, that’s pretty much it for the first Hikari devlog ! Currently, I’m using AniList , since Jikan doesn’t seem to be working right now. I’ll add a video showing the current state of the site as well. If you think anything was unclear, or I didn’t explain something properly, please do tell me in the comments. I’ll try to explain it there again. Thank you so much for reading, and have a nice day! =)
Hikari Devlog #2 Hello everyone, welcome to Devlog #2 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ So this time I did only a few changes, which are regarding the designs (especially). Capsule-like Design [for genres] I added the capsule-like design as I did previously(in AniSuffle), to the genres of the anime. Category Button I also added a Category button . When clicking on it, it will reveal the options (with a little slide left animation)for the different categories that I’ll be working on: Anime Manga Cartoons Movies Games I’ll be making a recommendation system for all of these categories later on. JavaScript Changes I didn’t do much with the JavaScript this time. The main JavaScript change was using JavaScript to turn the class on and off to show and hide the categories and yeah,thats all for this time. Layout & Poster Changes I also made some changes to the layout and the size of the poster . I used clamp() for the sizing so that the poster can adjust better i mean like depending on the screen size. And yeah, that’s pretty much it for this time! ( ̄▽ ̄)ゞ That’s It! I guess that’s it for this devlog! If anything was unclear, then please do tell me. I’ll try to make you understand it again =) Thank you so much for reading! Have a nice day! (≧▽≦)
Hikari Devlog #3 Hello everyone, welcome to Devlog #3 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Yeah, there are some major changes in this one. More Anime Information So, on the main page, I have added: Ratings Release Date Status Synopsis The status tells you whether the anime is finished, currently ongoing or is upcoming I have also added the synopsis , or you could say the description of the anime . API Fallback System And apart from that, I have also added Kitsu as a backup , after Jikan. Okay, so let me make it clear. I have made AniList the primary source for fetching anime. After that, if something doesn’t work, it goes to Jikan , and after Jikan, it goes to Kitsu . So right now, I have three APIs in total , and they all act as a backup for each other. I am also planning to add one more API later. (which is Shikimori) Better Image Quality And yeah, I also found out that there is an even better quality of image available.[So, the image displyed on this site will be even better then on AniSuffle =) ] From now on, I’m going to use that. Back & Forward And finally, I have also made the Back and Forward buttons functional . Now you should be able to go back and forward through the anime recommendations you have received. So you can go back to the previous anime, and then come forward again to the anime you were recommended before. That’s it for this small addition! (。•̀ᴗ-)✧ Also , if you go to the previous anime and fetch a new one then the one which was at forward will be lost. JavaScript Changes I did not make many changes to the front end this time . And by front end, I mean the layouts and stuff that are actually visible . Most of the work this time was more on the JavaScript side , which isn’t really visible from the outside. So, there might not be a huge visual difference, but quite a few things have changed behind the scenes. That’s It! So, to summarize: Three APIs , all acting as backups for each other, better image quality , more anime information, and some changes on the JavaScript side. Yeah, that’s it for this devlog! (。•̀ᴗ-)✧ If you didn’t understand anything or felt i wasnt clear enough , then please do tell me in the comments, and I’ll try to explain it again. Thank you so much for reading! Have a nice day! (≧▽≦)
Hikari Devlog #4 Hello everyone, welcome to Devlog #4 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Okay, so talking about the updates, this time I have integrated the Choose Genre filters, and other few update , i will explain it below. Choose Genre Now, while generating any random anime, you can choose or select genres on which you want the anime to be recommended. And ngl but it works best when you choose one genre (ó﹏ò。). It might take some time, or sometimes give you some random anime, or maybe also sometimes throw an error when you choose a tones of anime For example, if you select all the genres , then obviously it would not find any anime with all the genres, so it might either give you a random anime or worst case scenireo , might throw an erroe. It works best when you select around one or two genres . Fourth Fallback Option Another update is that I have also implemented the fourth fallback option , which is Shikimori . Though I ummm didn’t really find it much reliable(returns anime very little time(╥﹏╥)), I still kept it as a fallback option in case it might come to use. Randomizing Jikan Pages And the last update for this devlog is how the anime is fetched from Jikan . So, let me tell you how it worked before. Previously, when pulling any random anime from Jikan, it used to ask for one page . The pages were based on the descending order of popular anime , so it would give me the 1st page containing popular anime. Each page contains around 25 anime , and it would pull one anime randomly from that page. and yeah , since it pulled from only that page , it would genreally revolve around those 25 popular anime. But this time, I have randomized ** the page**. So now, it isn’t limited to just the popular anime of 1st page. It could be: Page 1 — containing the most popular anime Page 10 Page 23 Page 140 Or basically any random page within the database So, instead of only getting anime from the popular pages, you can now get something from pretty much anywhere within the available database. Visual Changes And yeah, there aren’t many visual changes this time as well. The main visible change is that when you click the Select Genre option, it will display some checkboxes for the different genres . That’s pretty much it for this devlog! and yeah, If you think I did not explain anything properly, or you want some detailed explanation, then please do comment. I’ll try to explain it again there. As always, thank you so much for reading! Have a nice day! (≧▽≦)
Hikari Devlog #5 Hello everyone, welcome to Devlog #5 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Okay, now talking about the updates, I have added the similar randomization to AniList and Kitsu API as well. Yeah, I mean, they work differently, but overall it is to achieve the same random result as it was applied in Jikan. You can read Devlog #4 for more info. Changes to Select Genre Another change I made was on the Select Genre is how the results are displayed . So basically, before, how it used to work was: If you selected one genre , then it would give you the correct result. But if you selected multiple genres , then it might: Give you the same anime again and again Give you some random unrelated anime Or sometimes even throw an error But yeah, there are some changes I made to this. Now, instead of showing some random unrelated anime or throwing an error, it would display something which comes within the range of your selected genres . For example, if you selected: Action Comedy Drama And if no such anime is found on the API which contains all three genres , then it would give you an anime containing Action or Comedy or Drama, or any combination of the selected genres . So yeah, it will not totally disappoint you. I mean, I felt it would be better to give you something related to what you selected. ( ̄▽ ̄)ゞ rather than something totally unrelated. Current Implementation Currently, I have applied this system only to AniList . I’ll apply it to Jikan and Kitsu soon However, I am not applying it to SukiMori , as it is not giving quite the response required to display anything. I did not comment out the whole code of SukiMori, but yeah, I am not applying the filters and stuff to SukiMori as it is throwing an error again and again, and it’s not letting me fetch any data. I tried searching for it, but I could not really fix it. So I asked AI, and it told me that it was refusing to connect and nothing can be done and something like that. So yeah, I am not writing filters for that for now. That’s It! And yeah, that’s it for this devlog, I guess. (。•̀ᴗ-)✧ If you have any questions, or if you think I did not explain anything properly, then please do tell me in the comments. I’ll try to explain it there . As always, thank you so much for reading! and Have a very nice day! (≧▽≦)
Hikari Devlog #6 Hello everyone, welcome to Devlog #6 of Hikari! (。•̀ᴗ-)✧ Manga Recommendation For this devlog, the main update I would say is the starting of the Manga Recommendation section . I have started working on the manga system now, and so far I have only implemented the AniList API for API calls for manga. In the future, I am planning to add more APIs for manga as well: MangaDex Jikan Kitsu This should give me more options for fallback APIs and hopefully make the manga recommendation system more reliable. That’s It! And yeah, I guess that’s it for this devlog. This one is kinda short, ik (ᵕ—ᴗ—), but that’s the only update I have right now. So yeah, that’s all for this devlog! And as always, if anything was unclear, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading! Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #7 Hello everyone, welcome to Devlog #7 of Hikari! (。•̀ᴗ-)✧ Manga API Fallback Okay, so talking about the updates for this devlog, I have now finally added the API fallback chain for mangas as well . I used: AniList → MangaDex → Jikan → Kitsu AniList is the primary API, then MangaDex, then Jikan, and finally Kitsu. And it seems like both MangaDex and Jikan are down . When I used them a few months before, they were active, but I don’t wonder why they all are, like, getting down and not accepting the requests. (but still i kept them on the fallback just in case if any of them come to life =) ) What’s Next? In the upcoming future, I am going to work on the genre filter for mangas in the same way i worked for the anime . I was also thinking of shipping this project after completing the Anime and Manga sections. I know it looks a bit plain right now, but I wanted to see what you all think about it. I might get some good recommendations from you guys, which I might implement. That’s It! Yeah, so I guess that’s it for this devlog. If you want me to explain anything, or if you think that I did not explain something properly, then please tell me in the comments. I’ll try to explain it again. and as always, thank you so much for reading! and Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #8 Hello everyone, welcome to Devlog #8 of Hikari! (。•̀ᴗ-)✧ Genre Filter Talking about the updates I worked on the genre filter and applied the filter to all four APIs . And yeah, actually, that’s all for this update. What’s Next? 👀 Next, I’m looking towards updating, or like, making some visual changes Also , if everything goes right I might ship it today . As shipping after making a big project might make people not want to read all those devlogs , so um yeah That’s It! Yeah, that’s it for this devlog. And if you think that I didn’t explain something properly, or you want me to explain something more, then please do tell me in the comments. I’ll try again there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #9 Hello everyone, welcome to Devlog #9 of Hikari! (。•̀ᴗ-)✧ Genre Options So, I added some glassmorphic , or honestly more blur-like effect , on the genre options. I will add a screenshot below What’s Next? Yeah, I guess I will work on the responsiveness of the site next. And I will remove the Cartoons, Movies, and Games options for now because I will be shipping it, and I will work on those topics later on. That’s It! Yeah, I guess that’s it. And as always, if you have any questions, please do tell me in the comments, and I’ll try my best to explain it there. Thank you so much for reading! Have a nice day! (ノ◕ヮ◕)ノ*:・゚✧
Finally Shipping Hikari Devlog #10 Hello everyone, welcome to Devlog #10 of Hikari! (。•̀ᴗ-)✧ And so, this might be the final devlog before the first ship ! Final Touches I have worked on the responsiveness and cleaned the code. I also worked on making sure(cleaning) the experimental console.log things will not be displayed in the console tab of the site. And finally, I have hosted the site ! Screenshot I’ll add a simple screenshot of the site below: If I make any changes later on, while my project is still waiting to be reviewed, I might add another screenshot to this devlog and update what was changed. Site live at : https://shrestha-project-09.66ghz.com/ And if you have any questions, please do tell me in the comments. I’ll try my best to explain it there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧ Update(after the ship for reviewers) Poster as Background That’s It! Thank you so much for reading! And if you have any questions, please do tell me in the comments. I’ll try my best to explain it there. Thank you so much for reading, and have a nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #11 ✨ Hello everyone, welcome to Devlog #11 of Hikari! Visual Updates Talking about updates, the update is more on the visual side this time. I have added the poster as the background — the same poster which is viewed on the card, with some blur effect. I thought it was kind of cool and matches the old style of my site. (≧▽≦) 3D Card Effect Currently, I am working on making the card have a 3D-like effect . I found the source code for it on FreeFrontend.com . I will provide the link on the GitHub README, in the Credits section. That’s It! Yeah, that’s all for this devlog. I mean, I’m enjoying writing these devlogs. I wrote a couple of devlogs today and I’m still enjoying it, so I’m uploading this one as well. I thought it was good. It’s good to track the progress as well. So,That’s it for this devlog! If you want me to explain something, or if you think I did not explain something properly, then please do tell me in the comments. I’ll try my best to explain it again in the comments as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧
Incase you are having issue playing the video, click on the video and press SPACE BAR Hikari Devlog #12 Hello everyone, welcome to Devlog #12 of Hikari! Updates So, talking about updates again, the updates are that I have added a card-like effect on the poster image . Also , I increased the size of the Hikari logo . I also added an animation of a sort of glow on the star beside the word Hikari . ⭐ I’ll add a video of it here below to show the current state of the site. What’s Next? Currently, next I’m going to work on the Movie section . Yeah, I will mention about the API which I’ll be using for movies, in the next devlog probably, if everything goes well. That’s It! And if you have any questions, then please do tell me in the comments. I will try to explain there as well. And yeah, thank you so much for reading! As always, have a very nice day . (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #13 Hello everyone, welcome to Devlog #13 of Hikari! Movie API Talking about the update, I used an API called TMDB on this site. Currently, I don’t have any fallback option for movies right now. Visual Updates I was also working on the card, giving it a default rectangular look . Yeah, I’m trying to match AniSuffle, my old site, and bring some of that old style into Hikari(without looking the old code obviously). What’s Next? Before including more backup APIs for movies, I think I will be working on more visual changes , the auto resize is not added on the card yet, will add that first. I’m also thinking of including streaming links , like I did before in AniSuffle. And yeah, I guess that’s it for this devlog! If you think anything was not explained properly, or if you want me to explain anything again, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #14 ✨ Hello everyone, welcome to Devlog #14 of Hikari! Visual Updates For the updates, I have made the poster card change its size according to the poster size . So, the card will adjust itself depending on the poster instead of having the same fixed size for every poster. I also added a chibi on the bottom-left of the poster . I mean, why not? =) Just as a little signature. Just like I added in AniSuffle , though its a different chibi Streaming Links & Backend Currently, I am working on adding the streaming links , like adding the Watch Trailer option and stuff. I am also working on fixing the images not being loaded for the Movie section , especially. And after an API fails, there is no fallback right now as well, so I’m will be working on that as well. That’s It! Thank you so much for reading! And if you didn’t understand something, or you think I didn’t explain something properly, then please do tell me in the comments. I’ll try to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ◕ヮ◕)ノ*:・゚✧
Hikari Devlog #15 Hello everyone, welcome to Devlog #15 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ Watch Trailer Feature So, talking about the updates… I have finally added the Watch Trailer feature! (≧▽≦) Currently, it’s only on the Anime section . Okay, so how it works is, if there is a trailer link available in the API , then it will play it on YouTube . The YouTube video will be embedded within the site, which means you don’t need to go to another tab , and you will NOT be redirected to a new tab. (。•̀ᴗ-)✧ The trailer will simply be displayed within the website itself(in the poster area) , as it is embedded. [anime trailers might be limited to certain country and because of it , some of the trailers can be unavailable, depending upon where you live] I’ll put a clip below showing working. Watch Trailer Button Currently, the Watch Trailer button has no design yet. I’m planning to work on that later. ( ̄▽ ̄)ゞ To close the trailer, you just need to click the same button again. The Watch Trailer button will change its text to Close Trailer , and you can click it to stop the trailer. (っ˘ω˘ς ) Pretty simple! TMDB Movie API Also, currently I’m working on improving the fetching method of the TMDB Movie API . Right now, it picks a random ID between 1 and 500,000 , but yeah… it misses a lot of times. I mean, it was quite visible in the previous devlog video I uploaded. (╥﹏╥) Also talking about the good luck, I just found that TMDB has a proper Discovery endpoint , which returns real and valid movies, and it has a much higher hit rate. I mean, that’s what I found. (•̀ᴗ•́)و But I’m still working on it, and I have not tested it yet . If I get any updates, I’ll update you guys in the next devlog! (。•̀ᴗ-)✧ That’s It! Thank you so much for reading! (づ。◕‿‿◕。)づ And as always, if there is any question, or you think that I didn’t explain something properly, then please do tell me in the comments. I’ll try my best to explain that as well. ( ̄▽ ̄)ゞ As always, thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚✧
Hikari Devlog #16 Hello everyone, welcome to Devlog #16 of Hikari! (ノ◕ヮ◕)ノ*:・゚✧ TMDB Fetching Improvements So, this time I worked on improving the fetching method of the TMDB API . Previously the fetch returned empty or missed the fetch alot of time, but now its quite better. I will attach a video below showing how it works. (。•̀ᴗ-)✧ And also, I have added the OMDb API as the backup for this one. So now, if TMDB fails, OMDb can act as a fallback. Hopefully, this will make the movie recommendation system a bit more reliable. (ง •̀_•́)ง Watch Trailer Btn Design In the video, you can also see a simple design of the Watch Trailer button. I mean, it’s not exactly simple, but I thought that it looks pretty good, at least to me. But still… I spent a lot of time checking different button designs and stuff for that. I literally spent so much time on that single button . (╥﹏╥), hope ya all like that too Genre Filtering Currently, I am working on filtering the genres of the movies . This should make it easier to get recommendations based on the genres you want. (。•̀ᴗ-)✧ A Little Bug… Also, in the video, you might see that the Watch Trailer button also appeared in the Movie section . But that’s actually a bug that I need to fix. ( ̄▽ ̄;) Basically, when the anime has the Watch Trailer option, and then I switch to the movie section, the button keeps appearing there as well. I still need to figure out how to solve this one. (•́ ᴖ •̀) To show this properly, I force restarted the site in the video as well, to show that the movie doesn’t have the Watch Trailer option in that session right now. So yeah… another little bug to deal with. (╥﹏╥) That’s It! So yeah, that’s it for this devlog! If there is anything you think I didn’t explain properly, or you want me to explain something, then please do tell me in the comments. I’ll try my best to explain it there as well. ( ̄▽ ̄)ゞ As always, thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚✧
Hikari Devlog #17 Hello everyone, welcome to Devlog #17 of Hikari! (ノ◕ヮ◕)ノ*:・゚ OMDB as TMDB Fallback The first update I would say is that I have added the OMDB API as the fallback for the TMDB API . And yeah, obviously, I use the free version , and when I was getting the API key, it told me that it can handle around 1,000 requests per day . And…, I think that should be enough for a personal project like this. And on top of that, it’s only being used as a fallback . First, the requests will be handled by TMDB , and if that fails, then only it will come to OMDb . So, 1,000 requests per day is already more than enough for a personal project like this(i guess). ( ̄▽ ̄)ゞ Movie Genre Filters Talking about the next update, I have also added the genre filters for movies . I will add a screenrecording showing it in action, I’ll attach it below. Trailer Feature for Manga And I have also added a trailer feature for manga ! Yeah, even manga have trailer features available through the AniList API , so I added it there as well. (≧▽≦) That’s It! And yeah, that’s it for this devlog! If you have any questions or want me to explain anything again, then please feel free to leave a comment. I will try my best to explain it there as well. And as always, thank you so much for reading, and have a very nice day! ✨ (ノ´ヮ`)ノ*:・゚
Hikari Devlog #18 Hello everyone, welcome to Devlog #18 of Hikari! (ノ◕ヮ◕)ノ*:・゚ Movie Trailer I just wanted to give a quick update on the Movie section . So, I finally added a trailer feature to the Movie section as well! The trailer comes from the TMDB API only , as I could not find any trailer data on OMDB API. I mean, I tried searching, but I didn’t find any trailer data on OMDB , so for now, I’m using the trailer data provided by TMDB. I’ll add a screen recording of the movie trailer in action below. [Sorry , for the lag, my laptop is kinda weak and lags even more with screen recording on] That’s It! Yeah, that’s it for this devlog! Thank you so much! (≧▽≦) And if there is any question, then please do tell me in the comments. I’ll try my best to explain it there as well. Thank you so much for reading, and have a very nice day! (ノ´ヮ`)ノ*:・゚
Hikari Devlog #19 Hello everyone, welcome to Devlog #19 of Hikari! (ノ◕ヮ◕)ノ*:・゚ Streaming Links Talking about the updates for this devlog, I have added the streaming links where you can watch the animes. Currently, I have added: Crunchyroll Netflix AnimeSuge (ㅅ´ ˘ `) How Does the Search Work? So, talking about how it searches the anime… First of all, this applies to Crunchyroll and Netflix only , because AnimeSuge isss… umm… (ó﹏ò。) not legit. But hey, it’s just for learning purposes, okay! So, for Crunchyroll and Netflix , the search works by checking the AniList API to see if a streaming link for that particular anime is available or not. If a Direct Link Is Not Available If the direct streaming link is not available in the API, then it will redirect you to that particular streaming platform by searching for the anime. This also applies to AnimeSuge , and actually it always apply to AnimeSuge as the API is never gonna have streaming link of the site for sure(ᵕ—ᴗ—) So, instead of sending you to a random page, it will search for the exact name of the anime on that platform and show you the result. For example, let’s say there is an anime called Anime A . If the streaming link for Anime A is not available in the API, then when you click on the streaming link, Hikari will search for Anime A on the streaming platform and redirect you to the search result page. Scrollbar Design I have also added a slight design to the scrollbar . I didn’t want to remove the scrollbar completely, because I thought people might actually want to scroll through and read the information. So instead of removing it, I just gave it a little design to make it look a bit better than the plain default scrollbar. It’s a small change, but I wanted to mention it since I made some changes here as well. ( ̄▽ ̄)ゞ That’s It! And yeah, that’s it for this devlog! If you have any questions, please do tell me and let me know in the comments. As always, thank you so much for reading, and have a very nice day! ✨ (ノ´ヮ`)ノ*:・゚✧
Ships:
Hikari is a recommendation site that currently uses a total of five APIs — four APIs for manga and four APIs for anime. Though some of the APIs are used in both of them. To be more precise its, AniList, Jikan, and Kitsu as they have information about both manga and anime, so they are used for both. I’m trying to make a recommendation site that recommends anime and manga for now, but I will be adding movies, games, and cartoons in the future. The main thing I’m trying to do is combine all the available APIs and give you the best experience by solving the issue of free APIs exhausting soon quickly Since I’m combining all these APIs and making them work as a fallback system , if one API fails or gets exhausted, the other can hold you back. For a more detailed explanation, please check out the README on GitHub. Thank you so much! I hope you like this =)...
|
1793771315.819194
|
1794635315.819194
|
|
40446
|
My beautiful web! by @AyushKushwaha | Stardance
|
AyushKushwaha
|
2
|
13.0
|
101
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T10:32:37Z", "hours": 11.0, "multiplier": 8.87, "payout": 101, "blessing": "neutral", "text": "I have created my new portfolio using react , I have added some component form reactbits.dev to make it outstanding . the challenging part was to add components and use it correctly but with the help of ai and http://reactbits.dev/get-started/installation it become easy . i am proud because i have created one of the best portfolio from my pov. this all about my portfolio hope you gyus will enjoy it while using . take care , thanks", "repo": "https://github.com/ayush-bug/my-website", "demo": "https://ayush-bug.github.io/my-website/"}, {"ship_num": 2, "ts": "2026-07-27T17:54:31Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created a beginner-level personal portfolio website using HTML and CSS. The website introduces me, my interests, skills, and social links. I chose a retro-inspired design because I enjoy the look of old computer interfaces, so I wanted my portfolio to have a unique style instead of a modern template. The main goal of this project was to practice the fundamentals of web development while building something that represents me. The most challenging part was creating the layout and making all the sections look consistent. Understanding how Flexbox works and arranging elements properly took time, and I had to experiment with different CSS properties before I was satisfied with the final design. I am proud that I built the website myself using the HTML and CSS knowledge I have learned. Whenever I got stuck on a concept, I used AI only as a learning tool to understand it better, but I wrote and designed the project on my own. Completing and publishing my first portfolio has given me confidence to continue learning web development.", "repo": "https://github.com/ayush-bug/my-website", "demo": "https://ayush-bug.github.io/my-website/"}]...
|
[{"post_id": 64710, "ts": "202 [{"post_id": 64710, "ts": "2026-09-09T10:23:51Z", "hours": 0.7317, "text": "devlog-11 finally deployed it on gh-pages live preview visit and check it out . till then byy . take care :D"}, {"post_id": 64686, "ts": "2026-09-09T08:49:21Z", "hours": 0.7436, "text": "devlog - 10 created a responsive design for small screen with that my new react portfolio is ready to ship i am thinking to use my domin grant , and deploy it on my domin name ."}, {"post_id": 64347, "ts": "2026-09-08T17:26:36Z", "hours": 1.0117, "text": "devlog-9 complete the footer section with this my new react portfolio is almost completed one thing left is to make is responsive for small screen , i know it is bit complicated work , but will work on it and ship is soon. till then stay safe , keep smiling bye : )"}, {"post_id": 64136, "ts": "2026-09-08T10:29:46Z", "hours": 1.1789, "text": "devlog-8 add the contact me section and also fixed some grid issue . the portfolio is almost completed only footer part and resposive across small screen is left ."}, {"post_id": 64036, "ts": "2026-09-08T05:08:37Z", "hours": 1.83, "text": "devlog-7 completed the project section with a good ui . i always get stuck in grids , and flex it was always challanging for me but any way did , but thinking to revise the css grid and flex one more time ."}, {"post_id": 63743, "ts": "2026-09-07T18:10:06Z", "hours": 0.9836, "text": "devlog-6 added loop logo in the skill section , now moving towards project section ."}, {"post_id": 63445, "ts": "2026-09-07T09:27:04Z", "hours": 2.6931, "text": "devlog-5 add new section About me and skills , also add a new component in about me section to make it interactive ."}, {"post_id": 63053, "ts": "2026-09-06T17:06:59Z", "hours": 1.4806, "text": "dev-log 4 added some react components form reactbits.dev to make it look outstanding and futurastic design . it was quiet hard but did it . i am using react for the first time after learing so it is bit hard but any way i enjoy it ."}, {"post_id": 62810, "ts": "2026-09-06T10:25:43Z", "hours": 0.7442, "text": "devlog-3 creating new portfolio , i will use react and some library to make it more interactive , till then take care bye"}, {"post_id": 35705, "ts": "2026-07-27T09:46:36Z", "hours": 1.3036, "text": "finally completed my retro style website , i did not used any javascript , just pure html and css art ."}, {"post_id": 35649, "ts": "2026-07-27T07:05:17Z", "hours": 0.8064, "text": "currently , completed with nav bar and header section , working to make it good looking website . I was stuck in the nav bar part so I use chat gpt for help ."}]...
|
Title: My beautiful web! by @AyushKushwaha | Stard Title: My beautiful web! by @AyushKushwaha | Stardance
Devlogs:
currently , completed with nav bar and header section , working to make it good looking website . I was stuck in the nav bar part so I use chat gpt for help .
finally completed my retro style website , i did not used any javascript , just pure html and css art .
devlog-3 creating new portfolio , i will use react and some library to make it more interactive , till then take care bye
dev-log 4 added some react components form reactbits.dev to make it look outstanding and futurastic design . it was quiet hard but did it . i am using react for the first time after learing so it is bit hard but any way i enjoy it .
devlog-5 add new section About me and skills , also add a new component in about me section to make it interactive .
devlog-6 added loop logo in the skill section , now moving towards project section .
devlog-7 completed the project section with a good ui . i always get stuck in grids , and flex it was always challanging for me but any way did , but thinking to revise the css grid and flex one more time .
devlog-8 add the contact me section and also fixed some grid issue . the portfolio is almost completed only footer part and resposive across small screen is left .
devlog-9 complete the footer section with this my new react portfolio is almost completed one thing left is to make is responsive for small screen , i know it is bit complicated work , but will work on it and ship is soon. till then stay safe , keep smiling bye : )
devlog - 10 created a responsive design for small screen with that my new react portfolio is ready to ship i am thinking to use my domin grant , and deploy it on my domin name .
devlog-11 finally deployed it on gh-pages live preview visit and check it out . till then byy . take care :D
Ships:
I created a beginner-level personal portfolio website using HTML and CSS. The website introduces me, my interests, skills, and social links. I chose a retro-inspired design because I enjoy the look of old computer interfaces, so I wanted my portfolio to have a unique style instead of a modern template. The main goal of this project was to practice the fundamentals of web development while building something that represents me. The most challenging part was creating the layout and making all the sections look consistent. Understanding how Flexbox works and arranging elements properly took time, and I had to experiment with different CSS properties before I was satisfied with the final design. I am proud that I built the website myself using the HTML and CSS knowledge I have learned. Whenever I got stuck on a concept, I used AI only as a learning tool to understand it better, but I wrote and designed the project on my own. Completing and publishing my first portfolio has given me confidence to continue learning web development.
I have created my new portfolio using react , I have added some component form reactbits.dev to make it outstanding . the challenging part was to add components and use it correctly but with the help of ai and http://reactbits.dev/get-started/installation it become easy . i am proud because i have created one of the best portfolio from my pov. this all about my portfolio hope you gyus will enjoy it while using . take care , thanks...
|
1794066664.8840554
|
1794153064.8840554
|
|
60015
|
Mars Rover Compound by @ncHammer | Stardance
|
ncHammer
|
0
|
1.84
|
0
|
[]
|
[{"post_id": 64700, "ts": "202 [{"post_id": 64700, "ts": "2026-09-09T10:00:23Z", "hours": 0.5761, "text": "I restructured the interior wheel dynamic motion to create a better flow system instead of such thin or breakable terrain shocks, I thickened them to give the wheels each better grasp on the task they have. I also engaged more of a fluid core, where before my axels were the first thing I modeled, I’m making the choice to start with the axel caps instead and work my way out. Thanks for reading, feel free to shoot me any ideas if you have them!"}, {"post_id": 64553, "ts": "2026-09-09T01:50:41Z", "hours": 0.7297, "text": "I was looking at the Mars Discovery rover, and chose to move away from rigid tires in favor of a compliant, open-framed suspension mechanism. The CAD design features a rugged outer tread ring embedded with deep, aggressive grousers to grab loose sand and climb over jagged terrain without slipping. Inside the rim, a wavy inner spring strip acts as a local shock-absorption layer to distribute the rover’s weight evenly. Rather than relying on a solid hub spoke pattern, I modeled an elegant crossed-wire system under tension to act as the primary suspension. This thin wire matrix suspends the central axle hub while giving the wheel just enough mechanical play to flex under load, dampening harsh vibrations before they ever reach the delicate scientific payloads on the main chassis. Balancing the structural flexibility of the inner components with the raw grit of the external grousers was a challenge, but I got it in the end!"}, {"post_id": 64536, "ts": "2026-09-09T00:58:05Z", "hours": 0.5381, "text": "I’m working on modeling an all original Mars Rover Compound that incorporates different aspects from my previous Engineering projects. I want to add multiple different spaces for storage as well as design a functioning arm. I don’t have the time or resources to build it in real life sadly, but I think I can get the fully working model before Stardance ends :)"}]...
|
Title: Mars Rover Compound by @ncHammer | Stardanc Title: Mars Rover Compound by @ncHammer | Stardance
Devlogs:
I’m working on modeling an all original Mars Rover Compound that incorporates different aspects from my previous Engineering projects. I want to add multiple different spaces for storage as well as design a functioning arm. I don’t have the time or resources to build it in real life sadly, but I think I can get the fully working model before Stardance ends :)
I was looking at the Mars Discovery rover, and chose to move away from rigid tires in favor of a compliant, open-framed suspension mechanism. The CAD design features a rugged outer tread ring embedded with deep, aggressive grousers to grab loose sand and climb over jagged terrain without slipping. Inside the rim, a wavy inner spring strip acts as a local shock-absorption layer to distribute the rover’s weight evenly. Rather than relying on a solid hub spoke pattern, I modeled an elegant crossed-wire system under tension to act as the primary suspension. This thin wire matrix suspends the central axle hub while giving the wheel just enough mechanical play to flex under load, dampening harsh vibrations before they ever reach the delicate scientific payloads on the main chassis. Balancing the structural flexibility of the inner components with the raw grit of the external grousers was a challenge, but I got it in the end!
I restructured the interior wheel dynamic motion to create a better flow system instead of such thin or breakable terrain shocks, I thickened them to give the wheels each better grasp on the task they have. I also engaged more of a fluid core, where before my axels were the first thing I modeled, I’m making the choice to start with the axel caps instead and work my way out. Thanks for reading, feel free to shoot me any ideas if you have them!...
|
1793638521.9106724
|
1794243321.9106724
|
|
56875
|
Miku-OS by @Freaked | Stardance
|
Freaked
|
0
|
39.82
|
0
|
[]
|
[{"post_id": 64698, "ts": "202 [{"post_id": 64698, "ts": "2026-09-09T09:50:34Z", "hours": 8.8217, "text": "Devlog 14 : i have added a working terminal and also a working MIKU-FOLDERRR i mean it did take my 8hr and it need more time because its not yet completed i need to fix some bugs and i am using localstorage for folder so it will store all your files in it and even if you remove the tab your added file wont go anywhere and i used pre defined text for help and all in terminal but its connected with javascript file also so it can access localstorage so its pretty awesome but also super hard i am already tired to doing it but all over its almost completed 🔥🔥"}, {"post_id": 64092, "ts": "2026-09-08T08:30:50Z", "hours": 5.6561, "text": "Devlog 13 : i have added floating feature and and added custom icons with features and also i am thinking of adding fuctionality in my cute miku-folder where we can keep files and all its just a icon and empty window havent added fuctionality because in the process of adding coustom icons and the bar many thing broke and fixing them was so time consuming"}, {"post_id": 63718, "ts": "2026-09-07T17:33:10Z", "hours": 5.3942, "text": "Devlog 12 : i have added weather and calender and i thought of putting them side but that would be totally bad desicion because it will cover up the desktop and i really dont want miku to get hidden inside them so i made hover one so when we hover on weather or in calender it pops up calender or weather and that how it looks so awesome ✨✨"}, {"post_id": 63244, "ts": "2026-09-06T23:17:57Z", "hours": 4.9464, "text": "Devlog 11 : i have finally added search engines and OS without them will be incomplete so i thought why not add them now it was mess tbh i thought lets make a simple js script to redirect user to their browser search bar but it wont be a good experience then thats why i made a dedicated window where people can search inside of os ✨✨"}, {"post_id": 62159, "ts": "2026-09-05T12:42:18Z", "hours": 4.9128, "text": "Devlog 10 : i have added 2 apps rn one is calculator and one is notes app i am going to add more apps but its really hard when you have deal with bugs and all and also it was really hard to make this simple notes app because it structure were going out of the box and wasnt staying at one place and also this taked me 5 HOURS !! i mean seriously 5 hr but at last i have to add more apps only 2 apps are rn added so lets add more 🔥🔥"}, {"post_id": 61326, "ts": "2026-09-04T05:41:20Z", "hours": 2.1269, "text": "Devlog 9 : i have fixed all the bugs it was really tough fr but at last i have fixed it and i havent seen any new bugs or any new problem so i think its fine now it was really tiring but tbh experience was awesome and i am thinking of adding apps and features to it and will make it more good and i a thinking of adding better UX because i think it need more improvement in that and all over i need to work more 🔥🔥"}, {"post_id": 60949, "ts": "2026-09-03T17:08:48Z", "hours": 0.8392, "text": "Devlog 8: i have added terminal have to work more on it i havent added commands and all so still working on it but still for now everything is working no bug showed up till yet lets see this project is going to be awesome i want to add many more features these are just starting i will add more in it"}, {"post_id": 60901, "ts": "2026-09-03T15:32:43Z", "hours": 0.8675, "text": "Devlog 7 : i have fixed most of its bug and finally its working really good even i am amazed how well it is working and always remember “if your code works let it work because even if you touch it then it wont work” but i am glad its working lets add more features to it"}, {"post_id": 60824, "ts": "2026-09-03T13:32:14Z", "hours": 2.0494, "text": "Devlog 6 : i have added this booting screen it took me 2 hr to do it pretty tiring i made it real so that it will first load every assets before opening the OS for better UX and i will slowly add many things more to this so everything first load up before opening i am happy its working (●’◡’●)✨✨"}, {"post_id": 60724, "ts": "2026-09-03T09:02:46Z", "hours": 0.7792, "text": "Devlog 5 : finally added miku themes walpaper and also we can change it i used pinterest to get images of wallpaper and it was really tough because it need to be aligned with the screen so it wont overflow or break in smaller devices and have to do many more thing at last finally its now looking like an OS so now i am thinking of fixing the bug and make it load faster"}, {"post_id": 60560, "ts": "2026-09-02T23:49:23Z", "hours": 1.0561, "text": "Devlog 4 : i thought of having a mac book like animation but its less of a macbook more of buggy book i am tired of fixing it 😒😒"}, {"post_id": 60518, "ts": "2026-09-02T22:12:10Z", "hours": 1.1683, "text": "Devlog 2 :Upgraded my OS with wallpapers now we can change the wallpaper and i gave it a sleek and awesome look by adding little bit of some good fonts now its looking ✨✨"}, {"post_id": 60163, "ts": "2026-09-02T11:12:45Z", "hours": 1.1994, "text": "Devlog 1 : lets make a COOL OS NAMED “Miku-OS” as the name tells this os is going to be totally dedicated to “Hatsune Miku” just have created its starting going to add more things i need it to look like real OS and totally working have a lot of work lets do it !!!!🔥🔥"}]...
|
Title: Miku-OS by @Freaked | Stardance
Devlogs:
D Title: Miku-OS by @Freaked | Stardance
Devlogs:
Devlog 1 : lets make a COOL OS NAMED “Miku-OS” as the name tells this os is going to be totally dedicated to “Hatsune Miku” just have created its starting going to add more things i need it to look like real OS and totally working have a lot of work lets do it !!!!🔥🔥
Devlog 2 :Upgraded my OS with wallpapers now we can change the wallpaper and i gave it a sleek and awesome look by adding little bit of some good fonts now its looking ✨✨
Devlog 4 : i thought of having a mac book like animation but its less of a macbook more of buggy book i am tired of fixing it 😒😒
Devlog 5 : finally added miku themes walpaper and also we can change it i used pinterest to get images of wallpaper and it was really tough because it need to be aligned with the screen so it wont overflow or break in smaller devices and have to do many more thing at last finally its now looking like an OS so now i am thinking of fixing the bug and make it load faster
Devlog 6 : i have added this booting screen it took me 2 hr to do it pretty tiring i made it real so that it will first load every assets before opening the OS for better UX and i will slowly add many things more to this so everything first load up before opening i am happy its working (●’◡’●)✨✨
Devlog 7 : i have fixed most of its bug and finally its working really good even i am amazed how well it is working and always remember “if your code works let it work because even if you touch it then it wont work” but i am glad its working lets add more features to it
Devlog 8: i have added terminal have to work more on it i havent added commands and all so still working on it but still for now everything is working no bug showed up till yet lets see this project is going to be awesome i want to add many more features these are just starting i will add more in it
Devlog 9 : i have fixed all the bugs it was really tough fr but at last i have fixed it and i havent seen any new bugs or any new problem so i think its fine now it was really tiring but tbh experience was awesome and i am thinking of adding apps and features to it and will make it more good and i a thinking of adding better UX because i think it need more improvement in that and all over i need to work more 🔥🔥
Devlog 10 : i have added 2 apps rn one is calculator and one is notes app i am going to add more apps but its really hard when you have deal with bugs and all and also it was really hard to make this simple notes app because it structure were going out of the box and wasnt staying at one place and also this taked me 5 HOURS !! i mean seriously 5 hr but at last i have to add more apps only 2 apps are rn added so lets add more 🔥🔥
Devlog 11 : i have finally added search engines and OS without them will be incomplete so i thought why not add them now it was mess tbh i thought lets make a simple js script to redirect user to their browser search bar but it wont be a good experience then thats why i made a dedicated window where people can search inside of os ✨✨
Devlog 12 : i have added weather and calender and i thought of putting them side but that would be totally bad desicion because it will cover up the desktop and i really dont want miku to get hidden inside them so i made hover one so when we hover on weather or in calender it pops up calender or weather and that how it looks so awesome ✨✨
Devlog 13 : i have added floating feature and and added custom icons with features and also i am thinking of adding fuctionality in my cute miku-folder where we can keep files and all its just a icon and empty window havent added fuctionality because in the process of adding coustom icons and the bar many thing broke and fixing them was so time consuming
Devlog 14 : i have added a working terminal and also a working MIKU-FOLDERRR i mean it did take my 8hr and it need more time because its not yet completed i need to fix some bugs and i am using localstorage for folder so it will store all your files in it and even if you remove the tab your added file wont go anywhere and i used pre defined text for help and all in terminal but its connected with javascript file also so it can access localstorage so its pretty awesome but also super hard i am already tired to doing it but all over its almost completed 🔥🔥...
|
1793882988.4791348
|
1794746988.4791348
|
|
59777
|
BLARERIGHT by @Nyzv | Stardance
|
Nyzv
|
0
|
3.87
|
0
|
[]
|
[{"post_id": 64696, "ts": "202 [{"post_id": 64696, "ts": "2026-09-09T09:39:16Z", "hours": 3.8664, "text": "I am making the blare alarm clock today"}]...
|
Title: BLARERIGHT by @Nyzv | Stardance
Devlogs:
I Title: BLARERIGHT by @Nyzv | Stardance
Devlogs:
I am making the blare alarm clock today...
|
1793638338.2648053
|
1794243138.2648053
|
|
60085
|
Roblox Sword Game by @OrionB | Stardance
|
OrionB
|
0
|
179.43
|
0
|
[]
|
[{"post_id": 64671, "ts": "202 [{"post_id": 64671, "ts": "2026-09-09T08:12:36Z", "hours": 179.43, "text": "Working on UI and Hidden Boss Fight, also will post more screenshots of the game once its finished I don’t want to leak the concept #girlboss #gatekeep #imaguy. However a lot of time has been put into the systems of this and creating the UI and animations and sounds and makng the game fun and there are also a lot of easter eggs which I’ll actually post some of the easter eggs here."}]...
|
Title: Roblox Sword Game by @OrionB | Stardance
D Title: Roblox Sword Game by @OrionB | Stardance
Devlogs:
Working on UI and Hidden Boss Fight, also will post more screenshots of the game once its finished I don’t want to leak the concept #girlboss #gatekeep #imaguy. However a lot of time has been put into the systems of this and creating the UI and animations and sounds and makng the game fun and there are also a lot of easter eggs which I’ll actually post some of the easter eggs here....
|
1793638575.6400595
|
1794243375.6400595
|
|
15700
|
AMAZENG by @nael_sify | Stardance
|
nael_sify
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-10T23:27:54Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i’ve made a maze generator but the twist is that i added alghorithms for maze solving that was the most challenging part of the project", "repo": "https://github.com/godofcode1/codingmazes", "demo": "https://godofcode1.itch.io/alghomazics"}]...
|
[{"post_id": 6467, "ts": "2026 [{"post_id": 6467, "ts": "2026-06-10T21:35:37Z", "hours": 0.9903, "text": "Devlog-01 soo i was working on maze generation and solving alghorithms,for them like BFS or DFS and two others they’re the most efficient out of all of them soo that’s what i did for the past here’s some of my results"}]...
|
Title: AMAZENG by @nael_sify | Stardance
Devlogs: Title: AMAZENG by @nael_sify | Stardance
Devlogs:
Devlog-01 soo i was working on maze generation and solving alghorithms,for them like BFS or DFS and two others they’re the most efficient out of all of them soo that’s what i did for the past here’s some of my results
Ships:
i’ve made a maze generator but the twist is that i added alghorithms for maze solving that was the most challenging part of the project...
|
1794012471.533083
|
1794098871.533083
|
|
59020
|
Anti-Yell by @marcel_pb | Stardance
|
marcel_pb
|
0
|
1.46
|
0
|
[]
|
[{"post_id": 64654, "ts": "202 [{"post_id": 64654, "ts": "2026-09-09T06:56:10Z", "hours": 1.4608, "text": "STOP YELLING AT ME. Hello, hello! I have officially started project Anti-yelling!!! First, a few questions: What is this? you may ask… Well, you’re in luck, I’ve got answers. I’m designing a system, similar to an Intercom, built to prevent the misfortune of being yelled at by my parents whenever they need something. What do I mean “Anti-Yelling”? Well, simply put, I’ve faced an issue. Whenever my parents want me to do something, whether it is online or a chore, they just yell across the house: MARCELLLLL!!!!!!!!!!! My parents seemingly don’t know what a text message is, what a call is, or what going to my room and asking me is. It always resorts to belting out until they’ve caught my attention… They are loud. And I’ve had enough! So I am embarking on a project, planning on making an intercom for my house. Whenever they need me, they click a button and I immediately hear it! Now, what have I worked on so far? Good question! So, for the first hour and a half of this project I have done: Coding and testing: I am working with the classic ESP32, using the ESP32S3 more specifically. I am planning on transmitting the voice through WiFi . Thus, since it is my first time working with WiFi and coding I checked out a tutorial . I am using the microcontroller in Station Mode , so it can communicate with other ESP32s through the router. I tested a few things: First, their ability to connect to the wifi (I used the WiFi.mode and WiFi.begin functions). Once connected, I tested for their IP address. Using the IPs, I sent messages between each-other to see if I could receive and print messages in both directions when sent through the router. I’ve set up a set of if and else functions to tell me if the messages failed or successfully sent, so I can tell at which end an issue is occurring on. Soldering parts and selecting parts: So, this wasn’t actually recorded but I wanted to make a quick note of it. I have two Amps (the MAX98357A). Sadly, they came unsoldered, so I soldered together all the pieces (somehow without burning myself or destroying the parts!!). I also chose a speaker, some resistors, LEDs, a microphone, etc. I faced a few Challenges along the way too: First, one of the most time consuming (I swear I’m not this dumb usually) problems I faced was that at some point I mixed up the two IP addresses of the ESP32s, and ended up sending messages to themselves instead of each other. I tinkered the code for so long before realizing that since they both were successfully sending the message, it wasn’t an issue of sending but receiving… oops! I plan on making this project quite elaborate and creative. I will design it to my interests. I hope you all like it!!! ( ALSO regarding the image of the intercom, this is what I mean by a stationary intercom for my room. However, it won’t be plain NOR will I allow the thought of having a “listen” button cross the mind of my parents. They MUST listen to me 24/7!!)"}]...
|
Title: Anti-Yell by @marcel_pb | Stardance
Devlog Title: Anti-Yell by @marcel_pb | Stardance
Devlogs:
STOP YELLING AT ME. Hello, hello! I have officially started project Anti-yelling!!! First, a few questions: What is this? you may ask… Well, you’re in luck, I’ve got answers. I’m designing a system, similar to an Intercom, built to prevent the misfortune of being yelled at by my parents whenever they need something. What do I mean “Anti-Yelling”? Well, simply put, I’ve faced an issue. Whenever my parents want me to do something, whether it is online or a chore, they just yell across the house: MARCELLLLL!!!!!!!!!!! My parents seemingly don’t know what a text message is, what a call is, or what going to my room and asking me is. It always resorts to belting out until they’ve caught my attention… They are loud. And I’ve had enough! So I am embarking on a project, planning on making an intercom for my house. Whenever they need me, they click a button and I immediately hear it! Now, what have I worked on so far? Good question! So, for the first hour and a half of this project I have done: Coding and testing: I am working with the classic ESP32, using the ESP32S3 more specifically. I am planning on transmitting the voice through WiFi . Thus, since it is my first time working with WiFi and coding I checked out a tutorial . I am using the microcontroller in Station Mode , so it can communicate with other ESP32s through the router. I tested a few things: First, their ability to connect to the wifi (I used the WiFi.mode and WiFi.begin functions). Once connected, I tested for their IP address. Using the IPs, I sent messages between each-other to see if I could receive and print messages in both directions when sent through the router. I’ve set up a set of if and else functions to tell me if the messages failed or successfully sent, so I can tell at which end an issue is occurring on. Soldering parts and selecting parts: So, this wasn’t actually recorded but I wanted to make a quick note of it. I have two Amps (the MAX98357A). Sadly, they came unsoldered, so I soldered together all the pieces (somehow without burning myself or destroying the parts!!). I also chose a speaker, some resistors, LEDs, a microphone, etc. I faced a few Challenges along the way too: First, one of the most time consuming (I swear I’m not this dumb usually) problems I faced was that at some point I mixed up the two IP addresses of the ESP32s, and ended up sending messages to themselves instead of each other. I tinkered the code for so long before realizing that since they both were successfully sending the message, it wasn’t an issue of sending but receiving… oops! I plan on making this project quite elaborate and creative. I will design it to my interests. I hope you all like it!!! ( ALSO regarding the image of the intercom, this is what I mean by a stationary intercom for my room. However, it won’t be plain NOR will I allow the thought of having a “listen” button cross the mind of my parents. They MUST listen to me 24/7!!)...
|
1793526689.9277816
|
1794131489.9277816
|
|
54909
|
My Slack Bot by @hyphen-26 | Stardance
|
hyphen-26
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T06:46:18Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a SLACK BOT It can Tell jokes and give the wordle answer if you need it. To TEST/USE: Go to: https://hackclub.enterprise.slack.com/archives/C0P5NE354 AKA #bot-spam and enter the commands listed in the devlog/README Have fun!", "repo": "https://github.com/26097ek/Slack-Bot/", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 64646, "ts": "202 [{"post_id": 64646, "ts": "2026-09-09T06:42:19Z", "hours": 1.9086, "text": "Devlog 1: didnt slack off I have learnt a lot on this mission, including about bolt, more node js, and about ssh as well. What I have done So far for this mission, I have done four commands: 1. /m26-ping . It gets the latency of the bot. For this one I copy pasted it from the guide but I understand how it works. First it records the current time. Then, it acknowledges the command and when that’s done, it subtracts the current time from the previous time, giving it the latency. 2. /m26-joke . It grabs a joke from the api: https://official-joke-api.appspot.com/random_joke . I also copy pasted this one. It uses axios to fetch a joke. Here’s a joke from the bot: Have you heard of the band 1023MB? They haven't got a gig yet. 3. /m26-wordle . It gets the wordle answer of the day. I used the api: https://www.nytimes.com/svc/wordle/v2/YYYY-MM-DD.json . I made this one by myself. I have to fill in the dates, so I use this bit of code to get the date: const today = new Date (); const yyyy = today . getFullYear (); const mm = String ( today . getMonth () + 1 ). padStart ( 2 , ' 0 ' ); const dd = String ( today . getDate ()). padStart ( 2 , ' 0 ' ); Then I just fill in the blanks: await axios . get ( `https://www.nytimes.com/svc/wordle/v2/ ${ yyyy } - ${ mm } - ${ dd } .json` ) 4. /m26-help This is the last and simplest one. It returns a fixed answer: await respond ({ text : `Available Commands: /m26-ping - Check bot latency /m26-joke - Get a joke /m26-wordle - Cheat at wordle` }); I think this might be the first and last devlog of this mission. Time to ship."}]...
|
Title: My Slack Bot by @hyphen-26 | Stardance
Dev Title: My Slack Bot by @hyphen-26 | Stardance
Devlogs:
Devlog 1: didnt slack off I have learnt a lot on this mission, including about bolt, more node js, and about ssh as well. What I have done So far for this mission, I have done four commands: 1. /m26-ping . It gets the latency of the bot. For this one I copy pasted it from the guide but I understand how it works. First it records the current time. Then, it acknowledges the command and when that’s done, it subtracts the current time from the previous time, giving it the latency. 2. /m26-joke . It grabs a joke from the api: https://official-joke-api.appspot.com/random_joke . I also copy pasted this one. It uses axios to fetch a joke. Here’s a joke from the bot: Have you heard of the band 1023MB? They haven't got a gig yet. 3. /m26-wordle . It gets the wordle answer of the day. I used the api: https://www.nytimes.com/svc/wordle/v2/YYYY-MM-DD.json . I made this one by myself. I have to fill in the dates, so I use this bit of code to get the date: const today = new Date (); const yyyy = today . getFullYear (); const mm = String ( today . getMonth () + 1 ). padStart ( 2 , ' 0 ' ); const dd = String ( today . getDate ()). padStart ( 2 , ' 0 ' ); Then I just fill in the blanks: await axios . get ( `https://www.nytimes.com/svc/wordle/v2/ ${ yyyy } - ${ mm } - ${ dd } .json` ) 4. /m26-help This is the last and simplest one. It returns a fixed answer: await respond ({ text : `Available Commands: /m26-ping - Check bot latency /m26-joke - Get a joke /m26-wordle - Cheat at wordle` }); I think this might be the first and last devlog of this mission. Time to ship.
Ships:
I made a SLACK BOT It can Tell jokes and give the wordle answer if you need it. To TEST/USE: Go to: https://hackclub.enterprise.slack.com/archives/C0P5NE354 AKA #bot-spam and enter the commands listed in the devlog/README Have fun!...
|
1794012756.051411
|
1794099156.051411
|
|
55797
|
TanOS by @TanmayPathe | Stardance
|
TanmayPathe
|
2
|
8.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T07:23:14Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created the Web OS which runs entirely in the browser and has a look and feel of a traditional computer desktop with applications, windows, taskbar, and terminal. I’ve created this project to further my knowledge in JavaScript and web development and to explore the possibility of implementing a traditional-looking OS in a browser as well as experiment with various features and create my own desktop experience. The project is still a work in progress, and I intend to continue developing and adding new features in the future.", "repo": "https://github.com/Tan5dev/Advance-WebOS", "demo": "https://webos20.vercel.app/"}, {"ship_num": 2, "ts": "2026-09-01T15:31:21Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a custom browser-based Web OS designed to feel like a small desktop environment. It comes with draggable and resizable windows, a dynamic taskbar, an interactive terminal, Paint, customizable wallpapers, a lock screen, system information, and a few fun interactive effects. The goal of this project was mainly to experiment with JavaScript and see how much of an operating system-like experience I could build directly in the browser!", "repo": "https://github.com/Tan5dev/Advance-WebOS", "demo": "https://webos20.vercel.app/"}]...
|
[{"post_id": 64643, "ts": "202 [{"post_id": 64643, "ts": "2026-09-09T06:33:38Z", "hours": 2.345, "text": "Today I took TanOS another step forward by moving beyond the basic desktop UI and starting to build functional applications. The biggest addition in this update is a working Text Editor. The implementation adds a dedicated editor interface and connects it with the virtual file system."}, {"post_id": 59613, "ts": "2026-09-01T15:06:41Z", "hours": 0.515, "text": "After Completing the Terminal Features I further continued with the Dynamic Taskbar. Firstly I Built a dynamic taskbar that automatically adds app tab and closes automatically when app is closed. Connected the taskbar with the windows control so that when app minimized or restored, it can be directly managed through the taskbar."}, {"post_id": 59413, "ts": "2026-09-01T07:14:48Z", "hours": 1.1811, "text": "Today I started building a fully interactive terminal with a bash style command interface that works in both full screen and windowed mode using Pure JavaScript. Added a custom command engine with utility commands like help, clear, date, echo, and exit, along with developer easter eggs such as sudo. Created a Canvas-based Matrix digital rain animation that can be launched using the matrix command, with automatic timing and a single click dismiss option. Added system diagnostics through sysinfo , showing information such as system uptime, browser details and screen resolution. I also added scrolling controls to make the terminal easier to use"}, {"post_id": 59382, "ts": "2026-09-01T04:55:23Z", "hours": 4.0864, "text": "Yestarday I Started with my OS and finished builing the main HTML structure for the os including the desktop, floating taskbar nad inital app icons. Also added window managment using vanilla JavaScript, allowing windows to open and close, minimize and maximize. Also added Drag and Drop feature to move them freely"}]...
|
Title: TanOS by @TanmayPathe | Stardance
Devlogs: Title: TanOS by @TanmayPathe | Stardance
Devlogs:
Yestarday I Started with my OS and finished builing the main HTML structure for the os including the desktop, floating taskbar nad inital app icons. Also added window managment using vanilla JavaScript, allowing windows to open and close, minimize and maximize. Also added Drag and Drop feature to move them freely
Today I started building a fully interactive terminal with a bash style command interface that works in both full screen and windowed mode using Pure JavaScript. Added a custom command engine with utility commands like help, clear, date, echo, and exit, along with developer easter eggs such as sudo. Created a Canvas-based Matrix digital rain animation that can be launched using the matrix command, with automatic timing and a single click dismiss option. Added system diagnostics through sysinfo , showing information such as system uptime, browser details and screen resolution. I also added scrolling controls to make the terminal easier to use
After Completing the Terminal Features I further continued with the Dynamic Taskbar. Firstly I Built a dynamic taskbar that automatically adds app tab and closes automatically when app is closed. Connected the taskbar with the windows control so that when app minimized or restored, it can be directly managed through the taskbar.
Today I took TanOS another step forward by moving beyond the basic desktop UI and starting to build functional applications. The biggest addition in this update is a working Text Editor. The implementation adds a dedicated editor interface and connects it with the virtual file system.
Ships:
I made a custom browser-based Web OS designed to feel like a small desktop environment. It comes with draggable and resizable windows, a dynamic taskbar, an interactive terminal, Paint, customizable wallpapers, a lock screen, system information, and a few fun interactive effects. The goal of this project was mainly to experiment with JavaScript and see how much of an operating system-like experience I could build directly in the browser!
I created the Web OS which runs entirely in the browser and has a look and feel of a traditional computer desktop with applications, windows, taskbar, and terminal. I’ve created this project to further my knowledge in JavaScript and web development and to explore the possibility of implementing a traditional-looking OS in a browser as well as experiment with various features and create my own desktop experience. The project is still a work in progress, and I intend to continue developing and adding new features in the future....
|
1793771310.532372
|
1794635310.532372
|
|
44094
|
Quantum Mechanical Model of An Atom in Python by @ Quantum Mechanical Model of An Atom in Python by @dionysus | Stardance...
|
dionysus
|
1
|
4.0
|
34
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T07:28:26Z", "hours": 4.0, "multiplier": 8.57, "payout": 34, "blessing": "neutral", "text": "Li²⁺ Quantum Mechanical Simulator I made an interactive quantum mechanical simulator using pure Python, using Numpy, SciPy, Matplotlib, and Numba! It replicates the electron wavefunctions of hydrogen and presents the probability distributions, wavefunctions, quantum nodes, and energy levels. The toughest aspect of the project was getting to grips with the mathematics underlying the wavefunctions and quantum states, as well as visualizing the model effectively onto a 3D plane. The part of the project that makes me the most proud this time was that I converted scientific theories and equation that normally exist on the paper of quantum mechanics into an object that you can actually see and engage with. All the components, such as wave functions, probabilities have been calculated using Python programming language. P.S. this REALLLYYY helped me in chemistry in school as I mostly used the information I knew beforehand in class. (yes they teach us this in chem here, yes im in highschool)", "repo": "https://github.com/dionysus887/Quantum-Model-Of-An-Atom", "demo": "https://github.com/dionysus887/Quantum-Model-Of-An-Atom/releases/tag/v.0.1"}]...
|
[{"post_id": 64642, "ts": "202 [{"post_id": 64642, "ts": "2026-09-09T06:26:15Z", "hours": 1.0597, "text": "QUANTUM MODEL OF AN ATOM #Devlog-3 No words people its finally done"}, {"post_id": 50273, "ts": "2026-08-19T13:02:25Z", "hours": 1.9153, "text": "QUANTUM MODEL OF AN ATOM #Devlog-2 Howdy everyone! sorry for the long break, i was busy and all because school 😭 and they give so much work omg! SOOO yeahh im back because the alpha never dies So this time i added more things and removed some things for the simulation. Tasks done today in the code: ** added multiple orbitals ** added density threshold ** numba optimization ** keyboard controls ** monte carlo probability sampling ** removed the basic single orbital only limitation MAY OUR PROJECT GO WELL COMRADE! ARRIVEDERCI! also the tony montana pfp is so sick lolz"}, {"post_id": 41753, "ts": "2026-08-06T04:37:39Z", "hours": 0.9589, "text": "QUANTUM MODEL OF AN ATOM #Devlog-1 Howdy everyone! im back with another simulation (calm down my fans.. wait i dont have fans no one knows me…nvm) SORRY FOR THE INTERNAL MONOLOGUE IM JS A DRAMATIC TEENAGER IRWEYUVREWNYUEWR… wait thats wayyy too energetic.. AHEM AHEM! this is better! So first things first this model is going to be of a Li²⁺ ion since its a hydrogen atom like species and would be easier to simulate and yep! Tasks done today in the code: ** made a cartesian grid ** used the cartesian coordinates as spherical coordinates (r, θ, φ) ** normalized the wave function ** computed the probability density ** displayed a 3d scatter plot of the 1s orbital P.S. THE CODE ONLY SHOWS THE 1s ORBITAL AS OF NOW! yes the code is OUR code comrade"}]...
|
Title: Quantum Mechanical Model of An Atom in Pyth Title: Quantum Mechanical Model of An Atom in Python by @dionysus | Stardance
Devlogs:
QUANTUM MODEL OF AN ATOM #Devlog-1 Howdy everyone! im back with another simulation (calm down my fans.. wait i dont have fans no one knows me…nvm) SORRY FOR THE INTERNAL MONOLOGUE IM JS A DRAMATIC TEENAGER IRWEYUVREWNYUEWR… wait thats wayyy too energetic.. AHEM AHEM! this is better! So first things first this model is going to be of a Li²⁺ ion since its a hydrogen atom like species and would be easier to simulate and yep! Tasks done today in the code: ** made a cartesian grid ** used the cartesian coordinates as spherical coordinates (r, θ, φ) ** normalized the wave function ** computed the probability density ** displayed a 3d scatter plot of the 1s orbital P.S. THE CODE ONLY SHOWS THE 1s ORBITAL AS OF NOW! yes the code is OUR code comrade
QUANTUM MODEL OF AN ATOM #Devlog-2 Howdy everyone! sorry for the long break, i was busy and all because school 😭 and they give so much work omg! SOOO yeahh im back because the alpha never dies So this time i added more things and removed some things for the simulation. Tasks done today in the code: ** added multiple orbitals ** added density threshold ** numba optimization ** keyboard controls ** monte carlo probability sampling ** removed the basic single orbital only limitation MAY OUR PROJECT GO WELL COMRADE! ARRIVEDERCI! also the tony montana pfp is so sick lolz
QUANTUM MODEL OF AN ATOM #Devlog-3 No words people its finally done
Ships:
Li²⁺ Quantum Mechanical Simulator I made an interactive quantum mechanical simulator using pure Python, using Numpy, SciPy, Matplotlib, and Numba! It replicates the electron wavefunctions of hydrogen and presents the probability distributions, wavefunctions, quantum nodes, and energy levels. The toughest aspect of the project was getting to grips with the mathematics underlying the wavefunctions and quantum states, as well as visualizing the model effectively onto a 3D plane. The part of the project that makes me the most proud this time was that I converted scientific theories and equation that normally exist on the paper of quantum mechanics into an object that you can actually see and engage with. All the components, such as wave functions, probabilities have been calculated using Python programming language. P.S. this REALLLYYY helped me in chemistry in school as I mostly used the information I knew beforehand in class. (yes they teach us this in chem here, yes im in highschool)...
|
1794019731.9981205
|
1794106131.9981205
|
|
35895
|
My own site! by @r1eu | Stardance
|
r1eu
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T06:07:15Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple site. What was challenging was that i’m under a time crunch since I dont really have much freetime. I am actually proud that I finished this project pretty quickly. Please know that this project is kinda rushed, though I added some creative elements I guess.", "repo": "https://github.com/jimuv/personal-site", "demo": "https://jimuv.github.io/personal-site/"}]...
|
[{"post_id": 64638, "ts": "202 [{"post_id": 64638, "ts": "2026-09-09T05:59:12Z", "hours": 0.5061, "text": "Making simple site, its kinda rushed though"}]...
|
Title: My own site! by @r1eu | Stardance
Devlogs: Title: My own site! by @r1eu | Stardance
Devlogs:
Making simple site, its kinda rushed though
Ships:
I made a simple site. What was challenging was that i’m under a time crunch since I dont really have much freetime. I am actually proud that I finished this project pretty quickly. Please know that this project is kinda rushed, though I added some creative elements I guess....
|
1794016547.1630852
|
1794102947.1630852
|
|
59257
|
LarpOS by @bhavyavashisth | Stardance
|
bhavyavashisth
|
0
|
13.4
|
0
|
[]
|
[{"post_id": 64636, "ts": "202 [{"post_id": 64636, "ts": "2026-09-09T05:55:56Z", "hours": 0.6253, "text": "Dev Log #3 Finally the wait is over here we are everything is done. I’ve added a readme which contains some ester eggs solutions so if you want to find yourself skip readme like a men and go directly for the website. Resolved some minor bug which fixed earlier somewhat but now they done completely fixed(hope so). This was such a great journey and thanks chatgpt for making me understand bugs and giving hints on how to fix them this is the sole reason why fixing bugs taking sooo long. Fixing bug was one hell of the work. also i’ll be happy if someone sponsor my coffee @ CCD or nevermind i should get some sleep that will be better. In Web OS 2 i’ll be polishing and adding more things which were in my minds and some ideas which i yoinked from some of your OS like adding an app store like thingy ig.LarpOS will be polished in fully in webos 2 mission. Also in the website ANAS which we read backwards becomes NASA there is nothing like i made fun of NASA its just a cheap copy of it and infact whatever names i gave to website are just cheap parody i have mean to make fun of these organization so just take it as a light joke."}, {"post_id": 64127, "ts": "2026-09-08T10:17:44Z", "hours": 2.9511, "text": "Dev log #2 New things added 1.Working Shutdown button 2.New ester egg (try to search youtube) 3.New music (I would suggest you to lower down the volume before playing music). 4.A new dock ,i canceled the plan of app drawer that will be too much. 5.A working calculator. Fixed some bugs which were making it annoying to use the OS. I took major of the time in just debugging and for some i had to use AI in order to understand what the bug is and how to fix it. The is now in fully working condition so you guys can try and i would love to see peps larping (kidding) i love to know about your experience using the os. Now i need to test this and add a readme for github then we are good to go to ship this project."}, {"post_id": 63742, "ts": "2026-09-07T18:09:09Z", "hours": 9.8269, "text": "Dev Log #1 Was working since morning 5’o clock just to increase the time of upcoming stream . This is an os made for all the ones who wants to larp. Its a larpmaxxing os still some things ain’t done yet didn’t added music and youtube. The OS is just a meme OS with some cool ester eggs how about your try sudo rm -rf / in terminal and see what you get . The OS starts with a bios animation which i don’t i felt like adding and while using the OS you will know whats ASAN (read it reverse). In terminal i have added some commands you can check them out by using “ help “ command. Settings application still needs to be polish although there are some things which should be needed to polish still yeah they are usable and in working condition. Notes app is like a simple note app you can write what you want to but remember the os is totally offline so after reload of the website may cause you the data to reset. Browser is a simple with some websites pre built by me they nothing just some parody of peps who don’t know how to analyze network packets but calls themselves Mr.Robot. Music application is gonna be one hell of an app where i’m thinking to add a pretty good music which genzs will love to listen (secret). The launch pad is not working i need to debug it so don’t play with it . Calculator is not in the dock , its in the launchpad as i’ll add more apps (probably in web os 2 a polished build of the web os for my fellow larpers ) . The left clicks options are still not working as major of my time i spend debugging the code (js files). I’ve made the code pretty easy to understand so if someone want to make something like this , you are welcome to copy / take some parts from the code for your work i would love to see it btw :]. Need add readme,assets files(although left some placeholder) and polish the work by making details working."}]...
|
Title: LarpOS by @bhavyavashisth | Stardance
Devl Title: LarpOS by @bhavyavashisth | Stardance
Devlogs:
Dev Log #1 Was working since morning 5’o clock just to increase the time of upcoming stream . This is an os made for all the ones who wants to larp. Its a larpmaxxing os still some things ain’t done yet didn’t added music and youtube. The OS is just a meme OS with some cool ester eggs how about your try sudo rm -rf / in terminal and see what you get . The OS starts with a bios animation which i don’t i felt like adding and while using the OS you will know whats ASAN (read it reverse). In terminal i have added some commands you can check them out by using “ help “ command. Settings application still needs to be polish although there are some things which should be needed to polish still yeah they are usable and in working condition. Notes app is like a simple note app you can write what you want to but remember the os is totally offline so after reload of the website may cause you the data to reset. Browser is a simple with some websites pre built by me they nothing just some parody of peps who don’t know how to analyze network packets but calls themselves Mr.Robot. Music application is gonna be one hell of an app where i’m thinking to add a pretty good music which genzs will love to listen (secret). The launch pad is not working i need to debug it so don’t play with it . Calculator is not in the dock , its in the launchpad as i’ll add more apps (probably in web os 2 a polished build of the web os for my fellow larpers ) . The left clicks options are still not working as major of my time i spend debugging the code (js files). I’ve made the code pretty easy to understand so if someone want to make something like this , you are welcome to copy / take some parts from the code for your work i would love to see it btw :]. Need add readme,assets files(although left some placeholder) and polish the work by making details working.
Dev log #2 New things added 1.Working Shutdown button 2.New ester egg (try to search youtube) 3.New music (I would suggest you to lower down the volume before playing music). 4.A new dock ,i canceled the plan of app drawer that will be too much. 5.A working calculator. Fixed some bugs which were making it annoying to use the OS. I took major of the time in just debugging and for some i had to use AI in order to understand what the bug is and how to fix it. The is now in fully working condition so you guys can try and i would love to see peps larping (kidding) i love to know about your experience using the os. Now i need to test this and add a readme for github then we are good to go to ship this project.
Dev Log #3 Finally the wait is over here we are everything is done. I’ve added a readme which contains some ester eggs solutions so if you want to find yourself skip readme like a men and go directly for the website. Resolved some minor bug which fixed earlier somewhat but now they done completely fixed(hope so). This was such a great journey and thanks chatgpt for making me understand bugs and giving hints on how to fix them this is the sole reason why fixing bugs taking sooo long. Fixing bug was one hell of the work. also i’ll be happy if someone sponsor my coffee @ CCD or nevermind i should get some sleep that will be better. In Web OS 2 i’ll be polishing and adding more things which were in my minds and some ideas which i yoinked from some of your OS like adding an app store like thingy ig.LarpOS will be polished in fully in webos 2 mission. Also in the website ANAS which we read backwards becomes NASA there is nothing like i made fun of NASA its just a cheap copy of it and infact whatever names i gave to website are just cheap parody i have mean to make fun of these organization so just take it as a light joke....
|
1793919234.7574902
|
1794783234.7574902
|
|
59238
|
Panex by @nithish1201 | Stardance
|
nithish1201
|
2
|
5.0
|
8
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T05:38:55Z", "hours": 3.0, "multiplier": 2.88, "payout": 8, "blessing": "neutral", "text": "Ready to ship!!! Soo i added a wallpaper carousel with a custom wallpaper, added icon drag, select functionality, basic shutdown fucntionality was also added int he start menu. More features to come!!", "repo": "https://github.com/Nithish1201-code/Panex", "demo": "https://nithish1201-code.github.io/Panex/"}, {"ship_num": 2, "ts": "2026-09-07T07:15:37Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Panex is a web0S that i made as part of my Stardance project. I wanted to make something that actually feels like a desktop instead of just making a page that looks like one, so it has draggable windows, a taskbar, a start menu, desktop icons and a few small apps. right now it has notepad, weather and my computer, along with some other little things like minimizing windows, taskbar buttons and a recycle bin.", "repo": "https://github.com/Nithish1201-code/Panex", "demo": "https://nithish1201-code.github.io/Panex/"}]...
|
[{"post_id": 64634, "ts": "202 [{"post_id": 64634, "ts": "2026-09-09T05:37:02Z", "hours": 1.3122, "text": "So i added a basic shutdown functionality, added a wallpaper carousel (currently not editable, but surely in a future update, and i added icon drag/selection functionality)"}, {"post_id": 64335, "ts": "2026-09-08T17:11:08Z", "hours": 1.6028, "text": "Im working on changing the color palette, and brainstorming improvement/features to add."}, {"post_id": 63402, "ts": "2026-09-07T06:50:41Z", "hours": 0.8894, "text": "set up github pages, integrated a custom font for the bg and hooked up icons. currently the recycle bin just cycles icons as u click cuz i genuinely couldnt figure out what to do with it lmao, other ones work normally, with notepd even storing ur test via localstorage, i think im ready!"}, {"post_id": 63378, "ts": "2026-09-07T05:16:28Z", "hours": 0.4936, "text": "Yoooooo, so i managed to make the start functionality work, and added a my computer tab cuz why not :D"}, {"post_id": 63356, "ts": "2026-09-07T04:21:54Z", "hours": 0.4233, "text": "I made windows! theyre draggable, not resizable yet, so i gotta fix those, and i gotta either make icons or put them in the start button. cuz rn it only accessible thru commands on the console."}, {"post_id": 63349, "ts": "2026-09-07T03:52:45Z", "hours": 0.3175, "text": "DEVLOOG 1: so i began by setting up some basic styles and wrote the basic html and js for the clock and the start button, i went for a retro look cuz why not? it looks cool. and win95 is peak"}]...
|
Title: Panex by @nithish1201 | Stardance
Devlogs: Title: Panex by @nithish1201 | Stardance
Devlogs:
DEVLOOG 1: so i began by setting up some basic styles and wrote the basic html and js for the clock and the start button, i went for a retro look cuz why not? it looks cool. and win95 is peak
I made windows! theyre draggable, not resizable yet, so i gotta fix those, and i gotta either make icons or put them in the start button. cuz rn it only accessible thru commands on the console.
Yoooooo, so i managed to make the start functionality work, and added a my computer tab cuz why not :D
set up github pages, integrated a custom font for the bg and hooked up icons. currently the recycle bin just cycles icons as u click cuz i genuinely couldnt figure out what to do with it lmao, other ones work normally, with notepd even storing ur test via localstorage, i think im ready!
Im working on changing the color palette, and brainstorming improvement/features to add.
So i added a basic shutdown functionality, added a wallpaper carousel (currently not editable, but surely in a future update, and i added icon drag/selection functionality)
Ships:
Panex is a web0S that i made as part of my Stardance project. I wanted to make something that actually feels like a desktop instead of just making a page that looks like one, so it has draggable windows, a taskbar, a start menu, desktop icons and a few small apps. right now it has notepad, weather and my computer, along with some other little things like minimizing windows, taskbar buttons and a recycle bin.
Ready to ship!!! Soo i added a wallpaper carousel with a custom wallpaper, added icon drag, select functionality, basic shutdown fucntionality was also added int he start menu. More features to come!!...
|
1793721032.4500344
|
1794585032.4500344
|
|
53125
|
Frictionless by @JOHAIR | Stardance
|
JOHAIR
|
0
|
0.31
|
0
|
[]
|
[{"post_id": 64630, "ts": "202 [{"post_id": 64630, "ts": "2026-09-09T05:20:05Z", "hours": 0.3106, "text": "Nothing"}]...
|
Title: Frictionless by @JOHAIR | Stardance
Devlog Title: Frictionless by @JOHAIR | Stardance
Devlogs:
Nothing...
|
1793472780.0440736
|
1794077580.0440736
|
|
19147
|
Nebula OS by @shubworks | Stardance
|
shubworks
|
1
|
47.39
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-06T13:52:06Z", "hours": 19.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Nebula OS started as a simple space-themed web desktop with space-themed apps, including a calculator inspired by planets spinning in orbit. But somewhere along the way, I realized it didn’t actually feel like an operating system. So I redesigned the entire UI with a neo-brutalist style, rebuilt the window system, reworked the apps, added persistent widgets, cleaned up the codebase, and even hid a few surprises like a wormhole that can swallow the desktop. The hardest part was rebuilding everything without breaking something else. Every time I fixed one thing, another bug decided it wanted attention too. I spent a lot of time tracking down weird issues, refactoring code, and making sure all the apps worked together instead of fighting each other. The wormhole effect was probably the most frustrating feature to get working the way I wanted. The thing I’m most proud of is that Nebula OS finally feels like one complete experience instead of a bunch of separate mini projects. If you’re trying it out, don’t just open one app and leave. Open multiple windows, drag them around, try the Terminal (help is a good start), load your own music, draw something in Paint, play Snake, and maybe explore the dock carefully… there might be something hidden waiting there. 👀 This is easily the biggest project I’ve built so far, and I’m really happy with how it turned out.", "repo": "https://github.com/NikhilKshub/Nebula-OS", "demo": "https://nikhilkshub.github.io/Nebula-OS/"}]...
|
[{"post_id": 64621, "ts": "202 [{"post_id": 64621, "ts": "2026-09-09T04:58:13Z", "hours": 1.5403, "text": "In the hydration tracker widget the previous error was showing a line of code inside the hydration tracker widget so I thought it was a html code error so I tried writing it properly and now instead of the tracker getting an error my dock system went to the tracker to ask him how he is (╥ ᴗ ╥) , guess what the problem was i actually didnt close the ‘<‘div id=“widgets”> using </div’>’ (about the apostrophe on div that you are thinking is also a problem , its not becuase in devlog it wont allow me to write the function properly thats why i wrote it in apostrophe ) Because HTML is hierarchical, the browser interprets that as: #widgets ├── todo widget ├── notes widget ├── hydration widget └── #dock ← OOPS, dock is now inside widgets Another problem is that the hydration widget is still not working the buttons are not working and it was because function saveHydrationState(State){ lsSet(‘nebula_hydration’,JSON.stringify(state));}The savehydrationstate has S as capital instead of small and because of that it wasnt working and and about the feature you can even drink more than 8 cups and another feature is that the widget resets for every day"}, {"post_id": 63625, "ts": "2026-09-07T15:31:37Z", "hours": 0.3686, "text": "lmao , tried adding another widget which was hydration tracker widget and tried implementing it and i got a crazy error haha my hydration tracker is showing code instead of tracker and also all the widgets size changed bymistake"}, {"post_id": 63602, "ts": "2026-09-07T15:06:04Z", "hours": 1.5978, "text": "added a Todo task widget , main problem came in when writing code inside the DOMContentLoaded listener it was not taking code because of errors like not proper closing of the code and also while writing code in CSS like messing up with the alignment(format) and other and one time the todo task didnt even take any input ,it was because of a syntax error but it was solved"}, {"post_id": 62028, "ts": "2026-09-05T07:40:17Z", "hours": 2.1067, "text": "I changed the original boot screen into a proper login screen because I wanted Nebula OS to feel more like an actual desktop environment when someone first opens it. The new screen has the date, a sign-in button, a quote, and a small build label before entering the desktop. I changed the topbar from a solid background to a translucent glass-style design. This makes it blend more naturally with the wallpaper instead of looking like a separate bar placed on top of the desktop. I also changed the dock to match the translucent style of the topbar. The desktop previously used a plain color as its background, so I added a default wallpaper image instead. This gives new users something more visually interesting when they first open Nebula OS, while still letting them replace the wallpaper with their own image."}, {"post_id": 61713, "ts": "2026-09-04T19:08:33Z", "hours": 1.075, "text": "fixed few errors like the animation of the wormhole was working the first time but if user tries to use it again it was not working as expected so fixed it and also fixed few typo errors"}, {"post_id": 60374, "ts": "2026-09-02T17:47:30Z", "hours": 4.2303, "text": "There were so many errors like the animation was getting stuck , the reboot feature not working inside the terminal it just stays stuck , booting animation was getting stuck because of some mismatch between the codes in the files , the layout of the custom timer in pomodoro app was not right i corrected it and then there was problem in the paint app it was not allowing any other color to be used then there was problem with the confirm window buttons for singularity effect it was not working/clickable. somehow i managed to solve them and make them work and finally my project is done after so many typo fixes , debugs and code lines missing."}, {"post_id": 57488, "ts": "2026-08-29T17:26:05Z", "hours": 10.7014, "text": "things i fixed Boot screen was not showing boot status like those ‘Establishing reality anchors…’, ‘Calibrating wormhole trajectory…’, ‘Loading Explorer profile…’, ‘Reality Integrity: 100%’, Because i forgot to write boot status css code though i managed to write it and now its working Windows functions buttons are not working like close , maximize , minimize buttons it was because i wrote a code of line as “.window-activer{z-index:600; box-shadow:8px 8px 0 var(–black);}”Instead of “.window.active{z-index:600; box-shadow:8px 8px 0 var(–black);}”Still the button maximize one is still not working and there are more errors like Paint app not showing any page to draw , focus timer not having any windows function buttons and the game app is working abnormal like if i click on the maximize button the screen of the game keeps getting smaller and smaller Now about the fixing of the window button i couldnt solve the problem because i was trying to solve it but it was again and again getting wrong so i asked chatgpt for help and it pointed out the problem and i got the solution and then i understand it and it also suggested me something like my code allows a app to get into maximum size also hiding the dock of the desktop so it told me to solve that also so the desktop will look better. I somehow fixed it using chatgpt help the problem and its solution was creating more problems so somehow i was able to solve it now i also noticed that the app labels are not proper and again it was because i didnt write those css codes for it. And you can also see that the the paint app icon is coming half and paint app is not showing the visible drawing white page and though i fixed the icon problem with help of chatgpt but about the drawing page not showing up guess what was the error !! , it was just a spelling mistake i wrote defualt instead of default in html code and because of that it was not taking the height of the page and i was here messing with the css and Js codes thinking i missed lines or something and i mostly rewrote the whole css code trying to get everything done in minimal amount of code and somehow i made it possible and also took help from ai for solving various problems"}, {"post_id": 25864, "ts": "2026-07-10T10:51:10Z", "hours": 1.0806, "text": "Did few fixes the wormhole feature was completely reloading the browser making all thr progress go away so i asked ai for help and it suggested me to use a fake reboot system for wormhole and it will also keep the progress of the webos saved so now the wormhole uses fake reboot system to perform its task or like what its meant to do , another fix i also did was that the after removing the background i set the background as black so i changed it into something beige color type which kinda looks good compared to black background , users can also changed the background/wallpaper and put their desired ones and also removed dead codes and things from the code"}, {"post_id": 25432, "ts": "2026-07-09T18:16:50Z", "hours": 0.6064, "text": "Fixed the CSS issue from earlier. Splitting the main CSS file into smaller chunks and linking those to the HTML was causing errors, likely from a code mistake somewhere in the process. Instead of chasing that down, I merged everything back into one CSS file, which connected cleanly and got the webOS working again. Also changed a few colors — like the boot screen and a couple other elements — into violet."}, {"post_id": 25382, "ts": "2026-07-09T17:17:24Z", "hours": 4.0139, "text": "Added a Pomodoro Timer that uses a default 25-minute focus timer with breaks, and also added a custom timer option for focus and break sessions. Removed the previous desktop background, which had rings, ripples, animations, and other effects, and replaced it with a simple wallpaper. Also added a wallpaper-replace feature so users can set their own wallpaper on the OS. Removed the two widgets — Nebula Broadcast and Reality Monitor. They were good at first but didn’t give that “proper feeling” of actually using them, and got boring over time, so I replaced both with a simple Quick Notes widget. Tried reworking the CSS files to reduce the number of lines and make things more minimal. My idea was to split all the sections of the webOS from one big CSS file into smaller files, but along the way I missed some code or had syntax errors. After fixing those, I got the CSS split into small chunks, but connecting them properly to the HTML became a problem — in the end, when I ran the webOS, no UI or CSS was applying at all, which left the whole thing broken."}, {"post_id": 24668, "ts": "2026-07-08T12:27:25Z", "hours": 1.0722, "text": "The Stardance reviewers shared feedback on the project and highlighted a few areas that could be improved. So i think i am going to try to rework on my project and fix those areas they highlighted and maybe try to improve my project also"}, {"post_id": 23425, "ts": "2026-07-06T11:36:06Z", "hours": 11.0856, "text": "This was probably the biggest update I’ve made to the project so far.I ended up rebuilding almost the entire operating system. The older version worked, but after using it for a while it felt more like a collection of space-themed apps than a real desktop. The glassmorphism style looked nice, but it didn’t have much personality or consistency.So I decided to redesign everything from scratch around a neo-brutalist style and renamed the project Nebula.The biggest goal wasn’t just changing colors or making a prettier UI. I wanted the whole OS to feel like it belonged to one universe.I also built an Explorer system that rewards curiosity while using Nebula. Hidden discoveries, explorer ranks, and little easter eggs are now spread throughout the OS. Instead of throwing achievements at the user, the desktop quietly encourages exploration, which makes finding them much more satisfying.The desktop itself changed a lot too. I replaced the empty static background with subtle ambient effects and layered elements that make the workspace feel more alive without distracting from the apps. Small interactions like notifications, broadcasts, and system telemetry now react to what you’re actually doing instead of showing random placeholder information.A huge amount of time also went into polishing everything behind the scenes. I fixed duplicated event listeners, notification spam, calculator edge cases, wormhole state issues, persistence bugs, and cleaned up dead code that had built up while experimenting with different ideas.One feature I was excited about was the wormhole sequence. It started as a fun visual effect, but I kept expanding it until it became part of Nebula’s identity and tied into the system’s discoveries and world building.Looking back at the first version of MyOS compared to Nebula now, it almost feels like two completely different projects. The old one was mainly focused on the space aesthetic, while this version is focused on creating a complete operating system with its own personality, interactions, and world.At this point I’m mostly polishing the experience instead of adding new features. Nebula finally feels like a complete product rather than just another web desktop. Also i added few new apps like Paint , Snake Game , Notes. and redesigned the old apps like the Terminal , Music player , Calculator. I also added a Wormhole feature that pulls the entire desktop into a black hole before restarting the system. It started as a fun visual effect but ended up becoming one of Nebula’s signature interactions."}, {"post_id": 11876, "ts": "2026-06-19T10:48:11Z", "hours": 2.7317, "text": "Started with an ambitious orbital ring calculator idea where numbers spin around a glowing sun in the center. Looked cool in theory, but in practice it was a mess — the spinning made me dizzy, numbers were scattered everywhere instead of in order, and clicking buttons felt like a game of whack-a-mole. Tried fixing it a few times but it just wasn’t working. So I scrapped the whole ring concept and went back to a normal calculator layout, but kept the space vibe with glowing planet buttons and a holographic display. Way more usable. The equals and clear buttons weren’t responding at first because the code wasn’t picking them up properly. Once that was sorted, everything clicked into place. Now it actually works like a real calculator — shows the full equation, smooth animations, and doesn’t spin around like a broken merry-go-round."}, {"post_id": 11415, "ts": "2026-06-18T17:56:15Z", "hours": 1.8242, "text": "finally solved all the errors and replaced the generic falling starfield with a premium interactive solar system centerpiece. The canvas now renders a living solar system with 8 planets in their approximate real colors — Mercury through Neptune — each with subtle float animations and glow effects. Hovering any planet reveals its name. The starfield was redesigned to work around the solar system rather than compete with it. Took help from AI in imagining and designing the visual layout, planet styling, and interaction patterns. The solar system now serves as the desktop’s identity piece instead of random background noise."}, {"post_id": 11211, "ts": "2026-06-18T11:00:17Z", "hours": 0.6206, "text": "messed up , i was thinking of adding cursor animations and a background but i did something in code that messed the situation 😭"}, {"post_id": 11184, "ts": "2026-06-18T09:12:59Z", "hours": 2.99, "text": "I got to know about Hack Club through a friend, and when I found out you can build projects and actually get cool rewards for it, I thought why not give it a shot! So here’s my first project on Stardance. I picked the WebOS mission - basically building my own little web-based operating system from scratch. The idea is to make something that looks and feels like a real desktop OS but runs in the browser, with my own twist on the design. I started by building the desktop itself with a custom dark blue-purple theme, a top bar, and a live clock powered by JavaScript. Later I expanded it into a multi-window system where apps can be opened, closed, and moved around the screen just like a real operating system. So far, MyOS includes draggable windows, desktop icons, a functional dock, an About app, a Terminal app, and a Clock app that displays a large live clock and date. I also implemented window focus management so active windows move to the front, making the desktop feel much more realistic. One of the biggest additions was a custom right-click context menu. Users can right-click anywhere on the desktop to quickly open apps or refresh the desktop, similar to traditional operating systems. I also updated the top bar to display both the current date and time in real time. A surprising amount of development time went into debugging small JavaScript mistakes. Things like misspelled variable names, incorrect event listeners, and reserved keywords caused features to silently fail, forcing me to carefully trace through the code and learn how browser debugging works. Those issues ended up teaching me as much as the actual feature development."}]...
|
Title: Nebula OS by @shubworks | Stardance
Devlog Title: Nebula OS by @shubworks | Stardance
Devlogs:
I got to know about Hack Club through a friend, and when I found out you can build projects and actually get cool rewards for it, I thought why not give it a shot! So here’s my first project on Stardance. I picked the WebOS mission - basically building my own little web-based operating system from scratch. The idea is to make something that looks and feels like a real desktop OS but runs in the browser, with my own twist on the design. I started by building the desktop itself with a custom dark blue-purple theme, a top bar, and a live clock powered by JavaScript. Later I expanded it into a multi-window system where apps can be opened, closed, and moved around the screen just like a real operating system. So far, MyOS includes draggable windows, desktop icons, a functional dock, an About app, a Terminal app, and a Clock app that displays a large live clock and date. I also implemented window focus management so active windows move to the front, making the desktop feel much more realistic. One of the biggest additions was a custom right-click context menu. Users can right-click anywhere on the desktop to quickly open apps or refresh the desktop, similar to traditional operating systems. I also updated the top bar to display both the current date and time in real time. A surprising amount of development time went into debugging small JavaScript mistakes. Things like misspelled variable names, incorrect event listeners, and reserved keywords caused features to silently fail, forcing me to carefully trace through the code and learn how browser debugging works. Those issues ended up teaching me as much as the actual feature development.
messed up , i was thinking of adding cursor animations and a background but i did something in code that messed the situation 😭
finally solved all the errors and replaced the generic falling starfield with a premium interactive solar system centerpiece. The canvas now renders a living solar system with 8 planets in their approximate real colors — Mercury through Neptune — each with subtle float animations and glow effects. Hovering any planet reveals its name. The starfield was redesigned to work around the solar system rather than compete with it. Took help from AI in imagining and designing the visual layout, planet styling, and interaction patterns. The solar system now serves as the desktop’s identity piece instead of random background noise.
Started with an ambitious orbital ring calculator idea where numbers spin around a glowing sun in the center. Looked cool in theory, but in practice it was a mess — the spinning made me dizzy, numbers were scattered everywhere instead of in order, and clicking buttons felt like a game of whack-a-mole. Tried fixing it a few times but it just wasn’t working. So I scrapped the whole ring concept and went back to a normal calculator layout, but kept the space vibe with glowing planet buttons and a holographic display. Way more usable. The equals and clear buttons weren’t responding at first because the code wasn’t picking them up properly. Once that was sorted, everything clicked into place. Now it actually works like a real calculator — shows the full equation, smooth animations, and doesn’t spin around like a broken merry-go-round.
This was probably the biggest update I’ve made to the project so far.I ended up rebuilding almost the entire operating system. The older version worked, but after using it for a while it felt more like a collection of space-themed apps than a real desktop. The glassmorphism style looked nice, but it didn’t have much personality or consistency.So I decided to redesign everything from scratch around a neo-brutalist style and renamed the project Nebula.The biggest goal wasn’t just changing colors or making a prettier UI. I wanted the whole OS to feel like it belonged to one universe.I also built an Explorer system that rewards curiosity while using Nebula. Hidden discoveries, explorer ranks, and little easter eggs are now spread throughout the OS. Instead of throwing achievements at the user, the desktop quietly encourages exploration, which makes finding them much more satisfying.The desktop itself changed a lot too. I replaced the empty static background with subtle ambient effects and layered elements that make the workspace feel more alive without distracting from the apps. Small interactions like notifications, broadcasts, and system telemetry now react to what you’re actually doing instead of showing random placeholder information.A huge amount of time also went into polishing everything behind the scenes. I fixed duplicated event listeners, notification spam, calculator edge cases, wormhole state issues, persistence bugs, and cleaned up dead code that had built up while experimenting with different ideas.One feature I was excited about was the wormhole sequence. It started as a fun visual effect, but I kept expanding it until it became part of Nebula’s identity and tied into the system’s discoveries and world building.Looking back at the first version of MyOS compared to Nebula now, it almost feels like two completely different projects. The old one was mainly focused on the space aesthetic, while this version is focused on creating a complete operating system with its own personality, interactions, and world.At this point I’m mostly polishing the experience instead of adding new features. Nebula finally feels like a complete product rather than just another web desktop. Also i added few new apps like Paint , Snake Game , Notes. and redesigned the old apps like the Terminal , Music player , Calculator. I also added a Wormhole feature that pulls the entire desktop into a black hole before restarting the system. It started as a fun visual effect but ended up becoming one of Nebula’s signature interactions.
The Stardance reviewers shared feedback on the project and highlighted a few areas that could be improved. So i think i am going to try to rework on my project and fix those areas they highlighted and maybe try to improve my project also
Added a Pomodoro Timer that uses a default 25-minute focus timer with breaks, and also added a custom timer option for focus and break sessions. Removed the previous desktop background, which had rings, ripples, animations, and other effects, and replaced it with a simple wallpaper. Also added a wallpaper-replace feature so users can set their own wallpaper on the OS. Removed the two widgets — Nebula Broadcast and Reality Monitor. They were good at first but didn’t give that “proper feeling” of actually using them, and got boring over time, so I replaced both with a simple Quick Notes widget. Tried reworking the CSS files to reduce the number of lines and make things more minimal. My idea was to split all the sections of the webOS from one big CSS file into smaller files, but along the way I missed some code or had syntax errors. After fixing those, I got the CSS split into small chunks, but connecting them properly to the HTML became a problem — in the end, when I ran the webOS, no UI or CSS was applying at all, which left the whole thing broken.
Fixed the CSS issue from earlier. Splitting the main CSS file into smaller chunks and linking those to the HTML was causing errors, likely from a code mistake somewhere in the process. Instead of chasing that down, I merged everything back into one CSS file, which connected cleanly and got the webOS working again. Also changed a few colors — like the boot screen and a couple other elements — into violet.
Did few fixes the wormhole feature was completely reloading the browser making all thr progress go away so i asked ai for help and it suggested me to use a fake reboot system for wormhole and it will also keep the progress of the webos saved so now the wormhole uses fake reboot system to perform its task or like what its meant to do , another fix i also did was that the after removing the background i set the background as black so i changed it into something beige color type which kinda looks good compared to black background , users can also changed the background/wallpaper and put their desired ones and also removed dead codes and things from the code
things i fixed Boot screen was not showing boot status like those ‘Establishing reality anchors…’, ‘Calibrating wormhole trajectory…’, ‘Loading Explorer profile…’, ‘Reality Integrity: 100%’, Because i forgot to write boot status css code though i managed to write it and now its working Windows functions buttons are not working like close , maximize , minimize buttons it was because i wrote a code of line as “.window-activer{z-index:600; box-shadow:8px 8px 0 var(–black);}”Instead of “.window.active{z-index:600; box-shadow:8px 8px 0 var(–black);}”Still the button maximize one is still not working and there are more errors like Paint app not showing any page to draw , focus timer not having any windows function buttons and the game app is working abnormal like if i click on the maximize button the screen of the game keeps getting smaller and smaller Now about the fixing of the window button i couldnt solve the problem because i was trying to solve it but it was again and again getting wrong so i asked chatgpt for help and it pointed out the problem and i got the solution and then i understand it and it also suggested me something like my code allows a app to get into maximum size also hiding the dock of the desktop so it told me to solve that also so the desktop will look better. I somehow fixed it using chatgpt help the problem and its solution was creating more problems so somehow i was able to solve it now i also noticed that the app labels are not proper and again it was because i didnt write those css codes for it. And you can also see that the the paint app icon is coming half and paint app is not showing the visible drawing white page and though i fixed the icon problem with help of chatgpt but about the drawing page not showing up guess what was the error !! , it was just a spelling mistake i wrote defualt instead of default in html code and because of that it was not taking the height of the page and i was here messing with the css and Js codes thinking i missed lines or something and i mostly rewrote the whole css code trying to get everything done in minimal amount of code and somehow i made it possible and also took help from ai for solving various problems
There were so many errors like the animation was getting stuck , the reboot feature not working inside the terminal it just stays stuck , booting animation was getting stuck because of some mismatch between the codes in the files , the layout of the custom timer in pomodoro app was not right i corrected it and then there was problem in the paint app it was not allowing any other color to be used then there was problem with the confirm window buttons for singularity effect it was not working/clickable. somehow i managed to solve them and make them work and finally my project is done after so many typo fixes , debugs and code lines missing.
fixed few errors like the animation of the wormhole was working the first time but if user tries to use it again it was not working as expected so fixed it and also fixed few typo errors
I changed the original boot screen into a proper login screen because I wanted Nebula OS to feel more like an actual desktop environment when someone first opens it. The new screen has the date, a sign-in button, a quote, and a small build label before entering the desktop. I changed the topbar from a solid background to a translucent glass-style design. This makes it blend more naturally with the wallpaper instead of looking like a separate bar placed on top of the desktop. I also changed the dock to match the translucent style of the topbar. The desktop previously used a plain color as its background, so I added a default wallpaper image instead. This gives new users something more visually interesting when they first open Nebula OS, while still letting them replace the wallpaper with their own image.
added a Todo task widget , main problem came in when writing code inside the DOMContentLoaded listener it was not taking code because of errors like not proper closing of the code and also while writing code in CSS like messing up with the alignment(format) and other and one time the todo task didnt even take any input ,it was because of a syntax error but it was solved
lmao , tried adding another widget which was hydration tracker widget and tried implementing it and i got a crazy error haha my hydration tracker is showing code instead of tracker and also all the widgets size changed bymistake
In the hydration tracker widget the previous error was showing a line of code inside the hydration tracker widget so I thought it was a html code error so I tried writing it properly and now instead of the tracker getting an error my dock system went to the tracker to ask him how he is (╥ ᴗ ╥) , guess what the problem was i actually didnt close the ‘<‘div id=“widgets”> using </div’>’ (about the apostrophe on div that you are thinking is also a problem , its not becuase in devlog it wont allow me to write the function properly thats why i wrote it in apostrophe ) Because HTML is hierarchical, the browser interprets that as: #widgets ├── todo widget ├── notes widget ├── hydration widget └── #dock ← OOPS, dock is now inside widgets Another problem is that the hydration widget is still not working the buttons are not working and it was because function saveHydrationState(State){ lsSet(‘nebula_hydration’,JSON.stringify(state));}The savehydrationstate has S as capital instead of small and because of that it wasnt working and and about the feature you can even drink more than 8 cups and another feature is that the widget resets for every day
Ships:
Nebula OS started as a simple space-themed web desktop with space-themed apps, including a calculator inspired by planets spinning in orbit. But somewhere along the way, I realized it didn’t actually feel like an operating system. So I redesigned the entire UI with a neo-brutalist style, rebuilt the window system, reworked the apps, added persistent widgets, cleaned up the codebase, and even hid a few surprises like a wormhole that can swallow the desktop. The hardest part was rebuilding everything without breaking something else. Every time I fixed one thing, another bug decided it wanted attention too. I spent a lot of time tracking down weird issues, refactoring code, and making sure all the apps worked together instead of fighting each other. The wormhole effect was probably the most frustrating feature to get working the way I wanted. The thing I’m most proud of is that Nebula OS finally feels like one complete experience instead of a bunch of separate mini projects. If you’re trying it out, don’t just open one app and leave. Open multiple windows, drag them around, try the Terminal (help is a good start), load your own music, draw something in Paint, play Snake, and maybe explore the dock carefully… there might be something hidden waiting there. 👀 This is easily the biggest project I’ve built so far, and I’m really happy with how it turned out....
|
1793774997.6528623
|
1794638997.6528623
|
|
60043
|
Unios by @daviipkp | Stardance
|
daviipkp
|
0
|
0.32
|
0
|
[]
|
[{"post_id": 64615, "ts": "202 [{"post_id": 64615, "ts": "2026-09-09T04:23:34Z", "hours": 0.32, "text": "setting up things (my first rust project!)"}]...
|
Title: Unios by @daviipkp | Stardance
Devlogs:
se Title: Unios by @daviipkp | Stardance
Devlogs:
setting up things (my first rust project!)...
|
1793638539.9239686
|
1794243339.9239686
|
|
54523
|
KINGPEN by @jainil15 | Stardance
|
jainil15
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T07:10:07Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "All the features of this bot are listed below its my first bot and first time coding in vs code so pretty hard and took a lot of time but i guess if figuered it out /kingpen-ping Checks bots latency /kingpen-catfact Gives a random catfact /kingpen-joke Get a random joke /kingpen-roll Roll a dice /kingpen-8ball Ask the magic 8 ball question /kingpen-quote Get a random inspirational quote /kingpen-advice Get random advice", "repo": "https://github.com/Jainil57/KINGPEN", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354"}]...
|
[{"post_id": 64613, "ts": "202 [{"post_id": 64613, "ts": "2026-09-09T04:17:36Z", "hours": 7.1617, "text": "KINGPEN IS ONLINE- kingpen can now do multipile commands including jokes, 8ball, roll, ping, etc."}]...
|
Title: KINGPEN by @jainil15 | Stardance
Devlogs:
Title: KINGPEN by @jainil15 | Stardance
Devlogs:
KINGPEN IS ONLINE- kingpen can now do multipile commands including jokes, 8ball, roll, ping, etc.
Ships:
All the features of this bot are listed below its my first bot and first time coding in vs code so pretty hard and took a lot of time but i guess if figuered it out /kingpen-ping Checks bots latency /kingpen-catfact Gives a random catfact /kingpen-joke Get a random joke /kingpen-roll Roll a dice /kingpen-8ball Ask the magic 8 ball question /kingpen-quote Get a random inspirational quote /kingpen-advice Get random advice...
|
1793955356.98122
|
1794041756.98122
|
|
29004
|
My first slack bot! by @prathamrawat | Stardance
|
prathamrawat
|
1
|
2.5
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-02T20:16:37Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my first ever slack bot called Jokify it has basic functions like 1.jokify-catfact 2.jokify-ping jokify-fact jokify-fact jokify-weather tells the weather of my City AND the slack bot is hosted on Nest server so it runs 24/7 HAVE FUN!!!😀😍", "repo": "https://github.com/Pratham14767/Slack-Bot-Jokify", "demo": "https://hackclub.enterprise.slack.com/archives/C0C01DE8Q1J"}]...
|
[{"post_id": 64609, "ts": "202 [{"post_id": 64609, "ts": "2026-09-09T03:57:13Z", "hours": 0.5011, "text": "I updated My readme in Github"}, {"post_id": 21017, "ts": "2026-07-02T19:37:05Z", "hours": 0.2894, "text": "I deployed my Slack bot on the nest container and now its working even if i turn my system off!"}, {"post_id": 19706, "ts": "2026-07-01T03:14:02Z", "hours": 1.205, "text": "I was Working on making different kind of commands and coding it i also made custom commands like dog facts and weather commands. The coding for the weather command was difficult because i wasnt able to get what if was asking for after looking at several documentation it came to realization that i needed to add an API key which was paid so I found another Api and got it to work."}, {"post_id": 19578, "ts": "2026-06-30T22:24:26Z", "hours": 0.3833, "text": "I am working on my first ever coding project on Hack Club! This is also my first ever slack bot.I started making my slack bot by giving it the name Jokify. I wanted to make a joke bot so i add different types of commands for different types of jokes. And now i am writing the index.js of the slack bot"}]...
|
Title: My first slack bot! by @prathamrawat | Star Title: My first slack bot! by @prathamrawat | Stardance
Devlogs:
I am working on my first ever coding project on Hack Club! This is also my first ever slack bot.I started making my slack bot by giving it the name Jokify. I wanted to make a joke bot so i add different types of commands for different types of jokes. And now i am writing the index.js of the slack bot
I was Working on making different kind of commands and coding it i also made custom commands like dog facts and weather commands. The coding for the weather command was difficult because i wasnt able to get what if was asking for after looking at several documentation it came to realization that i needed to add an API key which was paid so I found another Api and got it to work.
I deployed my Slack bot on the nest container and now its working even if i turn my system off!
I updated My readme in Github
Ships:
I made my first ever slack bot called Jokify it has basic functions like 1.jokify-catfact 2.jokify-ping jokify-fact jokify-fact jokify-weather tells the weather of my City AND the slack bot is hosted on Nest server so it runs 24/7 HAVE FUN!!!😀😍...
|
1794045113.6359873
|
1794131513.6359873
|
|
30836
|
calc82: Web Scientific Calculator by @rigel | Star calc82: Web Scientific Calculator by @rigel | Stardance...
|
rigel
|
1
|
120.0
|
2248
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T04:20:09Z", "hours": 120.0, "multiplier": 19.41, "payout": 2248, "blessing": "neutral", "text": "What did you make? calc82: A calculator web-app inspired by the Casio fx-82 series of scientific calculators. These calculators are common in high schools in my country. My project simulates the behaviour of the Casio calculator, while maintaining a good user experience on both desktop and mobile. What was challenging? Creating reliable algebraic (non-linear) input parsing was the most difficult part of the project. This was because it required some difficult array traversal to avoid invalid states - even one mistake would break the whole input. It took a lot of iterations to get to a working input system that passed all my tests. Close contenders for most challenging were the sheer volume of functions I needed to implement, as well as all possible states the calculator can be in. However, the challenge for this was finding time to get around to everything, rather than technical challenge. What are you proud of? I’m most proud of my implementation of the input-to-result pipeline. I was able to incorporate new-to-me concepts such as tokenisers and abstract syntax trees, yet the resulting code is arguably the cleanest part of the program. I’m also proud of the responsive layout, which supports desktop and mobile well, and that the user experience is similar enough to the Casio that my muscle memory carries over. Finally, I’m proud that I managed to finish the project, as it’s the largest software project I’ve ever managed to complete. Demo: https://rigelseven.github.io/calc82/ Source: https://github.com/rigelseven/calc82/", "repo": "https://github.com/rigelseven/calc82", "demo": "https://rigelseven.github.io/calc82/"}]...
|
[{"post_id": 64600, "ts": "202 [{"post_id": 64600, "ts": "2026-09-09T03:36:33Z", "hours": 1.0264, "text": "calc82: Devlog #14 9/09/2026 calc82: because calculators are for everyone Final devlog. It’s done!! This last stretch was writing the readme and publishing everything to Github pages. You can now access it at https://rigelseven.github.io/calc82/ Now for a short reflection calc82 is the largest personal software project I have ever completed. This project taught me a lot about input parsing - specifically, tokenisers and syntax trees - and the importance of keeping a large codebase tidy . Overall, the structure of the project is well laid out. However, there are architectural decisions I made early on that I came to regret later (such as the fact that input is represented as a string, whereas it should probably be a tree). Developing calc82 also showed me that I am capable of putting together such an app from scratch. I’m pleased to have participated in Stardance and be given this opportunity."}, {"post_id": 64551, "ts": "2026-09-09T01:44:48Z", "hours": 8.6039, "text": "calc82: Devlog #13 9/09/2026 calc82: because calculators are for everyone This devlog follows the addition of help and about menus to my calculator, as well as bundling into one js file. 🌟 New functionality summary Help menu Lookup function by calculator button (reuses key bind selector logic) Q&A About page About the calculator Contribute Legal License All JS files are bundled into one file Service worker makes app available offline 📦 Bundling and service worker I chose to use esbuild for bundling. This allows the many JS files to be condensed down into one file, reducing the number of requests that need to be made. This build system is much simpler than other options such as node.js. I also added a simple service worker that caches all requests locally. This makes the calculator available offline. ⚖️ Licensing & Legal I chose GPLv3 for this project as it is an end-user product. Essentially, this means others are free to modify and distribute the project as long as they make the source available. I also added legal disclaimers to the about page of the calculator. 📈 Next steps Write the readme, publicise the repo, and host! Thanks for reading :)"}, {"post_id": 63421, "ts": "2026-09-07T07:56:19Z", "hours": 9.6403, "text": "calc82: Devlog #12 7/09/2026 calc82: because calculators are for everyone This devlog follows the addition of customisable and accessible keyboard bindings to my calculator. 🌟 New functionality summary Settings menu Switches between sidebar and popup dependent on screen width Key rebinding Flow of choosing button, then pressing key to rebind Stores in local storage Help hotkey Shows all currently bound keys. Key hint consideration The default keyboard map has been implemented as a const dictionary for a while now, allowing lookup of buttons from keyboard keys. This was extended with a user dictionary that can be dynamically updated. However, generating the help hotkey hints needed to go in the opposite direction of the dictionary. The naive approach of iterating through values to find a key for each would perform poorly with O(n^2). Instead, we precalculate a reversed dictionary to lookup keyboard keys from each button. This precalculation is O(n), and setting the keys is also O(n), resulting in O(n) time overall. 📈 Next steps Development Brief manual for each calculator function (considering reusing the on click functionality from key mapper) ) Info menubar button with author & project information, and disclaimers Fullscreen button for mobile devices Preparation for shipping Webpack, choose a license, write readme, publicise repo, host. Thanks for reading :)"}, {"post_id": 62611, "ts": "2026-09-06T02:35:54Z", "hours": 8.5919, "text": "calc82: Devlog #11 6/09/2026 calc82: because calculators are for everyone This devlog follows the addition of a few final features to my calculator, and then my worst nightmare, frontend UI 😧 🌟 New functionality summary Prime factorisation using Pollard’s rho algorithm Engineering notation button Degree/minute/second output button CSS styling!! + menu bar buttons Fixed some input quirks Dark and light mode (based on system default) with manual toggle 🐚 Pollards rho algorithm for prime factorisation Prime factorisation or integer factorisation is the decomposition of a positive integer into a product of integers. The simplest way to implement this is trial division , which is straightforward but has O(√n) time complexity. I thought this would be too slow, so I decided to implement Pollard’s rho algorithm. This has a nicer complexity of O(√p) where p is the smallest prime factor of the number. However, further observation showed that that the Casio calculator probably doesn’t do this - for numbers without easy factors, it just doesn’t bother. Despite this, I’ve already implemented the algorithm, so I’m not going to remove functionality for the sake of exactly replicating the calculator’s behaviour. 🎨 CSS and styling My goal with the styling was to make the calculator as similar across browsers as possible. I bundled the Inter font (best font) into the program and removed browser-specific button styling. Implementing the CSS styling was mostly painless. I opted for a simple design with a menubar that adapts to horizontal or vertical depending on the window’s aspect ratio for the web app functionality. Additionally the css uses the system theme to automatically choose light or dark mode. 📈 Next steps This project is nearly finished - should only be one or two devlogs left until I ship. Here’s what I have left to do: Development Keybind show and edit Brief manual for each calculator function Info menubar button with author & project information, and disclaimers: that I am not affiliated with casio that the calculator is in a beta state and not guaranteed to be correct for all inputs Fullscreen button for mobile devices Preparation for shipping Webpack or similar Choose a license and publicise repo Write a readme Host on github pages (?) Hope that I did enough to not receive legal action from casio 🙃 Thanks for reading :)"}, {"post_id": 60028, "ts": "2026-09-02T04:16:18Z", "hours": 9.8953, "text": "calc82: Devlog #10 2/09/2026 calc82: because calculators are for everyone This devlog follows the addition of a lot of small features to my calculator that were last on my to-do list, as well as a slight shift in scope. 🌟 New functionality summary Colon operator for multiple operations Saving variables and settings to LocalStorage Clearing this memory Polar and rectangular coordinates (finally!) Forward delete key (keyboard only) Scrolling screen with a nicer cursor! Colon operator This is an operator I’ve never used on my calculator, but its quite powerful. you can type Ans+1:Ans*2:Ans^2 and it will calculate the first expression, then the second, and so on until it loops back to the start. ➡️ Forward delete Although this functionality is not part of the original calculator, it makes it much more pleasant to use on a computer keyboard. This was implemented as a hidden button. Scrolling Scrolling was surprisingly easy to implement! The browser handles all of the hard work, and all I had to do was set the right CSS tags. Granted, with my CSS experience, this was still difficult, but I made it work in the end. 📈 Next steps I have decided to shift the current scope of the project (before shipping) to just be implementing the main compute mode . This means I will not need to do STAT, VERIFY or LINEIO mode. This is for three reasons: With my semester starting, I will not have as much time to work on this project before the deadline I have very little experience with using these other modes I want to focus my time on the user experience. With this shift in scope, the calculator part of the project is all but done - I only have three buttons remaining. (I had to push this devlog out before 10 hours, which is why they’re not done). Then, I can focus on adding the surrounding UI and UX, which should make it actually possible for other people to use my project. Thanks for reading :)"}, {"post_id": 58608, "ts": "2026-08-31T02:44:52Z", "hours": 8.6944, "text": "calc82: Devlog #9 31/08/2026 calc82: because calculators are for everyone This devlog follows the addition of menus and the status bar to my calculator. 🌟 New functionality summary Extensible menu system that allows for easy creation of paginated and nested menus Status bar with indicators that change based on the current calculator state M+ and M- special variables Mixed fraction display 📋 Menu system The menu system uses a dictionary to encode the menu pages and their entries, making it easy to add new menus. However, I couldn’t find a way to easily encode functions and arguments in this structure, so the actual actions are handled by a big switch statement. When the menu is active, most buttons have no action and the input/output display is hidden. 🧀 Status bar The status bar consists of a row of elements with adjustable opacity (to represent their active state). It is handled by a class which allows items to be toggled with a single method call, meaning it can retroactively be integrated into other components. The original calculator has some menu elements that can never be activated - for example, there is a complex mode indicator, but the calculator cannot show complex numbers. I omitted these on calc82, as they took up unnecessary space. 📈 Next steps The project is almost nearing completion :) I made complete list of every feature missing from the calculator (too long to post here). It should should get shorter every devlog from now! Hopefully I can finally ship this project in the next couple of weeks. Thanks for reading :)"}, {"post_id": 45453, "ts": "2026-08-11T22:22:45Z", "hours": 10.3792, "text": "calc82: Devlog #8 12/08/2026 calc82: because calculators are for everyone Sorry its been a while since the last devlog, I’ve had this one sitting for a while and not had the chance to finish and post it. This devlog follows the improvement of the user interface to my calculator, as well as the addition of variables . 🌟 New functionality summary Add keyboard mappings for buttons Variables - assign and recall Navigate through history Recall history and edit it. 🦋 Modifier keys It was difficult porting the modifier (shift/alpha) keys to keyboard because Shift is used to type symbols such as + and *, and there is also a Shift key on the calculator… My solution was making tapping shift without any other input to toggle the calculator shift modifier, and combining it with another key to not toggle it. 🗒️ Notes Use of the calculator I’ve actually started using the calculator in class, and it’s been faithful to the original so far (for implemented functionality). I still don’t really trust it though and want to run it through some formalised tests before shipping. Keyboard mappings So far, I have been hardcoding keyboard mappings based on what feels natural to me. However, it would probably be better to have user-editable mappings for other people to customise. 📈 Next steps Immediate: M+ and M- special variable Variable and history persistence in the browser Implement polar/rectangualr conversion Medium: Add menu system and settings Add other modes (STAT, VERIFY) Create a test suite to ensure there is no unwanted behaviour Long-term: Tidy up visuals Ship :)"}, {"post_id": 32188, "ts": "2026-07-21T05:53:53Z", "hours": 9.9386, "text": "calc82: Devlog #7 21/07/2026 calc82: because calculators are for everyone This devlog follows the introduction of an actual user interface to my calculator. 🌟 New functionality summary Grid of calculator buttons Different button output when modifiers pressed Navigation buttons work Calculator resembles a real calculator 👇 Button handling The calculator needed buttons resembling that of the Casio to fulfil my purpose. Buttons are dynamically built from an array, which defines their labels and actions. This allows easy changes. For most buttons, the area surrounding the button also acts as a clickable area for better touch input. However, I didn’t find an easy way to do this for the navigation buttons (which are positioned off the grid). 🎨 CSS CSS Grid allows a 2D layout system based on rows and columns. It has been supported by all major browsers since October 2017. CSS Grid was used, as it allows consistent positioning across browsers. In addition, relative units were used to prevent resizing the calculator from affecting it. This should make it easier to make dynamic sizing in the future. 🗒️ Notes Accessibility <button> s are preferred over clickable <div> s because they work with screen readers and legacy browsers . However, I also made the surrounding elements clickable for a better touch experience. Also, keyboard input will make use significantly easier for computer users. Aesthetics The CSS applied so far is purely functional. In the future, I will improve the aesthetics of the calculator through CSS - but for now, this barebones look makes development easier and more focused. 📈 Next steps The todo list was getting too empty, so it has been updated with new tasks Immediate: Add remaining functions Add keyboard shortcuts Medium: Add menu system and settings Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion Add other modes (STAT, VERIFY) Add Long-term: Create a test suite to ensure there is no unwanted behaviour Ship :)"}, {"post_id": 30511, "ts": "2026-07-18T04:36:43Z", "hours": 9.605, "text": "calc82: Devlog #6 18/07/2026 calc82: because calculators are for everyone This devlog follows the further development of algebraic I/O to my calculator, including turning this into an actual result. 🌟 New functionality summary Input and output formatting through KaTeX Square root, arbitrary root, mixed fraction, and absolute values Tokeniser now directly reads input tokens Errors now move the cursor to the position where it occurred 🌊 New program flow inputHandler -> [input tokens] -> tokeniser -> [calculator tokens] -> parser -> AST -> evaluator -> result This: improves speed (compared to parsing text) allows cursor to be moved to error location since we never flatten to text You might notice I have two sets of tokens. They are similar, but input tokens deal with digits and combined symbols ( sin( ), and calculator tokens are whole numbers and separated symbols. 🗒️ Notes Avoiding the lazy route My first approach was turning the input tokens into a string, which my tokeniser already knew how to deal with. However, this added much processing overhead and made it harder to find out the position at which errors occurred. Spending the time to implement the token conversion made this step much easier Misplaced math errors When implementing error handling, I passed down the original position of each token in the input token array down to each step of the calculation process. However, because my evaluator is recursive, it would constantly update the error position to the latest token, meaning the errors were always placed at the end. This was an easy fix in the end - but hard to spot! 📈 Next steps Immediate: Buttons input Add remaining functions (once buttons are added can be done) Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)"}, {"post_id": 29405, "ts": "2026-07-16T10:32:06Z", "hours": 9.6708, "text": "calc82: Devlog #5 16/07/2026 calc82: because calculators are for everyone This devlog mainly follows the addition of algebraic I/O to my calculator. This is just a check-in since I was getting close to 10 hours since the last devlog - I still have some work to do on this aspect before I move on. 🌟 New functionality summary Input and output formatting through KaTeX Fractions and powers formatted correctly in the input Ability to intuitively traverse the input with arrow keys ⚖️ Algebraic IO with KaTeX I decided on KaTeX because it is both fast (no reflow!) and does not rely on dependencies . KaTeX is a math formatting library that uses LaTeX commands to create beautiful equations from code. For example, \\frac{2^{\\frac{3}{4}}}{4\\sin(30)}\\times 2\\pi turns into the attached image. Input is currently captured directly from the keyboard to build a 1D array of tokens. The tokens are then converted into KaTeX formatting for algebraic display. In the future, there will also be buttons onscreen as an alternative. Fractions and powers Fractions and powers cannot be represented as a single token. Rather, fractions have a beginning, middle and end, and powers have a beginning and end. The program traverses the array to decide where to put them (and take them out for deletion). 🗒️ Notes The cursor It is surprisingly difficult to make a vertical bar to act as a cursor in KaTeX, without affecting the spacing of the rest of the expression. For now, I am using a \\clap{\\rule{0.1em}{0.5em}} for the cursor, but I am looking to replace this with custom CSS in the future. Replicating exact behaviour? The fx-82 has some interesting behaviour wherein an empty power is not allowed to exist directly after another power. I am unsure whether I should replicate this - but for now, I am leaving it out. Dealing with broken LaTeX I have been able to get the display pretty bulletproof when it comes to not producing broken LaTeX. However, I’m sure there’s something I haven’t run into in debugging! I want to have this be dealt with gracefully rather than blowing up in the user’s face. 📈 Next steps Immediate: Implement mixed fractions, roots, and Abs to algebraic display Make the input token array able to be parsed into the AST to be calculated Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)"}, {"post_id": 27701, "ts": "2026-07-13T14:20:52Z", "hours": 7.1211, "text": "calc82: Devlog #4 14/07/2026 calc82: because calculators are for everyone This devlog mainly follows the addition of fractional I/O to my calculator. 🌟 New functionality summary Fractional input, including fractions Computation of fractions - add/sub,div/mult,power,root other operations convert the fraction to a decimal Fractional output (temporary UI) LCM/GCD separate execute and fraction/decimal converting buttons 🔢 fractional io :) I defined a separate fraction data type: it’s like a decimal, but with a numerator and denominator, and optionally a whole component: for example, 1 and 1/3, or 4/3. Using fractions means that numbers can be represented more naturally and precisely. I.e. 1/7 instead of 0.142857143 🧮 Fractional calculation Additionally calculations can be made more precise. For example (1/7) * (2/3) can be directly computed by multiplying the numerators and denominators. My implementation attempts to convert user input and the products of divisions into fractions wherever possible in order to chase this precision. 🗒️ Notes Web design is not my thing I realised the importance of UI and UX (user experience) by looking at other projects on Stardance. As of the current iteration, this project lacks this a bit.. But I will give it a shot My next developments will begin to focus more on this - starting with the algebraic input, and eventually moving onto the CSS and design aspects. I am also considering whether I should use a Javascript framework. 📈 Next steps Immediate: Create algebraic display functionality Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)"}, {"post_id": 25807, "ts": "2026-07-10T08:35:45Z", "hours": 6.5419, "text": "calc82: Devlog #3 10/07/2026 calc82: because calculators are for everyone Oh dear, looks like I lost 4 hours of counted time in the last devlog… let’s try to make this one a bit shorter! This devlog follows the implementation of the other inline functions of the calculator: 🌟 New functionality summary inverse and hyperbolic trig arbitrary roots absolute value percent random numbers: Ran and RanInt scientific notation: *10^x / E combinatorics: nPr and nCr variables (not yet adjustable) 📋 Implementation details Implementing most of this functionality followed the same general steps: identify implement test. As I undertook this process. other dependent requirements popped up - such as the implementation of multivariable functions , which in turn required the expansion of the tokeniser and parser. Also, I implemented degrees, radians, and gradians modes into the calculator, and the associated functions (as postfix expressions - e.g. sin(30d) for degrees) . 🗄️ decimal.js changes Finally, I applied some further changes to decimal.js.: Rounding now depends on the closeness of the output to a known value, rather than the input, reducing unnecessary rounding Near-decimal values close to 0, 0.25, 0.5, 0.75 and 1 are now caught. 🗒️ Notes: Remembering that Javascript is weird NaN === NaN is FALSE! Spent a good 10 minutes figuring this one out. The solution was to use isNaN() . Fixing negative-base powers: (-8)^(1/3) should equal 2 but returns NaN Fixed by taking the denominator from the output of a decimal.js toFraction() function, which attempts to create a rational fraction. This overcomes the tiny precision loss and evaluates the function correctly 📈 Next steps Immediate: Add fractional I/O Implement polar/rectangualr conversion Medium: Create algebraic display functionality Multi-line calculation (Ans) and setting variables Long-term: Build UI Ship :) This has been a bit of a shorter devlog. But I’m still proud of what I achieved! Thanks so much for reading. If you have any suggestions, please leave me a comment. Take care"}, {"post_id": 25217, "ts": "2026-07-09T10:31:56Z", "hours": 14.0967, "text": "calc82: Devlog #2 08/07/2026 calc82: because calculators are for everyone This devlog follows the handling of nasty floating point errors in my web calculator - inspired by and designed to work with Casio’s fx-82au. I realised that relying purely on the Javascript math system was unsuitable for a scientific calculator that works with decimal numbers. This is due to binary floating point not translating well to decimal. 0.1+0.2=0.30000000000000004 >:( I researched and considered a few approaches. 🥧 Symbolic simplifier? The idea behind this is to perform algebra and avoid evaluating constants and functions to values until strictly necessary. However, the scope of this seemed massive, and I did not observe this behaviour in the Casio. 🔟 Decimal arithmetic Instead, I stumbled upon the fact that decimal arithmetic can be implemented in a computer. While IEEE floats use binary representation, there is no reason we cannot use decimals internally, avoiding errors that arise from conversion. Decimal floats can be stored by: Sign: +/- Mantissa: the number itself, in my case an array of digits Exponent: what power of 10 the number should be multiplied by. I started implementation, made decent progress, but found out that I was re-doing work that was already done by other people. 🗄️ Decimal.js I found the decimal.js library after researching how to handle decimal addition. Implementing this quickly fixed my floating point errors, but did not fix trig approximation. 👀 Observing the calculator I observed some of the behaviour of the real calculator to work out how it functions. Handles small-angle approximation based on a threshold Drops precision as the trig function argument value increases Appears to use a 15-digit mantissa Refuses to evaluate trig functions with argument above a certain limit I tried my best to implement the behaviour I observed, some of which required editing the code of the decimal.js library. 📝 Editing decimal.js The decimal.js library uses more than the set precision for some internal calculations. However, arithmetic with pi is otherwise only the set precision, causing drift. My fix for this was to adjust the internal pi value to match the mantissa size of the real calculator. Troubles with the library When given a less accurate value for pi (in line with that of the real calculator) sine quadrant is incorrectly calculated. I found that the isOdd function is flawed! function isOdd(n) { return n.d[n.d.length - 1] & 1; } I replaced it with one that works for my use case (if less efficient): function isOdd(n) { return n.mod(2).eq(1); } I need to see if this is just due to my low precision pi, or an actual problem in the library, in the future. But for now my issue is fixed. I also found an error in the cosine function: if (x.isZero()) return x needed to be changed to if (x.isZero()) return new Ctor(1) . Again, I’m going to have to look into this more before submitting a pr or anything, since decimal.js is not made for such an imprecise pi. 🗒️ Notes Deviations There are still small deviations between my calculator and the real one at really, really large trig angles. One idea to reduce error could be optimising the order of operations in the AST to prevent dropping precision unnecessarily. I might explore this later However, I want to press on with other features, instead of tiny inaccuracies that would never show up in real-world use. I have slightly rearranged the to-do list below. 📈 Next steps Immediate: Implement the other calculator buttons and functions Add fractional I/O Medium: Create algebraic display functionality Multi-line calculation (Ans) and variables Long-term: Build UI Ship :) Thanks so much for reading! If you have any suggestions, please leave me a comment. Until next time"}, {"post_id": 23363, "ts": "2026-07-06T09:05:57Z", "hours": 6.4844, "text": "calc82: Project Introduction and Devlog #1 calc82: because calculators are for everyone The aim of this project is to create a free, software-based browser calculator which mimics the behaviour of the Casio fx-82au. This is the most common calculator in high schools in my country. 🔥 Motivation My motivation for this project is the following: calculators are cool i dont always have my calculator on me (most notably) not everyone has access to a scientific calculator 🎯 Approach I will take a black-box reverse engineering approach . This means analysing the inputs and outputs of the calculator and attempting to replicate the behaviour without looking at the underlying code. This along with avoiding patents and copyright should keep the project okay legally. 📈 Goals and scope The final goal for the project is to create a fully functional calculator (obviously) which works on most types of devices. This means both touch and keyboard input, resolution scaling, wide browser support… I have moderate experience with creating web apps. and a lot of experience using this calculator. so this project should be pretty fun :) Devlog #1 06/07/2026 This devlog covers the initial development of the parts of the calculator that do math. Essentially turning an input expression into an output. I chose a high-level structure similar to that used by programming language syntax analysers. That is: Input -> Tokeniser -> Parser -> Evaluator -> Output 🪙 Tokeniser yes, with an s >:( The tokeniser converts the input into a list of tokens (think individual pieces of the expression). It does this by scanning the input string and identifying what each character corresponds to. The tokeniser only knows what each symbol is , not what it does . Then it passes the token array to the… 🌲 Parser The parser converts the token array into an Abstract Syntax Tree (AST). Essentially this is a tree which shows how the expressions should be evaluated in order to produce the desired output. This properly lets me implement order of operations. The exact type of parser I am using is a recursive descent parser . It attempts to match the tokens with known symbols recursively, meaning i can rely on the call stack :) The order of operations can be defined by the order of function calls within the parser. 🧮 Evaluator The evaluator’s job is easy: it just traverses the tree made by the parser and runs the necessary operations. Because all of the hard work regarding order of operations has been done by the other components, implementing the evaluator was really easy. Its also recursive. your call stack is gonna love me for this 🗒️ Notes Why not eval? It’s true that JavaScript has a perfectly good expression parser, which I could have used. However, its behaviour is more suited to a programming language than a calculator. For example, 4(2+3) should implicitly multiply , but will instead complain TypeError: 4 is not a function . Writing my own system gives me more flexibility to make the calculator how I want. Floating point precision Because it uses Javascript’s internal math engine, i have floating-point problems. This results in expressions like sin(2pi) = -2.44929360e-16 I will likely fix this by using a math library, or a novel approach. Last-minute catch I was just writing an example for this devlog when I found that .3ln(4)*5^2 raised an error. In fact, ANYTHING * or / followed by x^n would error - but other operators wouldn’t. This was a quick fix, but I’m glad I caught it! 📈 Next steps Immediate: Fix math imprecision Add fractional I/O Medium: Create algebraic display functionality Multi-line calculation (Ans) and variables Long-term: Make the calculator functionally equivalent to the fx-82 Build UI Ship :) Thanks so much for reading! If you have any suggestions, please leave me a comment"}]...
|
Title: calc82: Web Scientific Calculator by @rigel Title: calc82: Web Scientific Calculator by @rigel | Stardance
Devlogs:
calc82: Project Introduction and Devlog #1 calc82: because calculators are for everyone The aim of this project is to create a free, software-based browser calculator which mimics the behaviour of the Casio fx-82au. This is the most common calculator in high schools in my country. 🔥 Motivation My motivation for this project is the following: calculators are cool i dont always have my calculator on me (most notably) not everyone has access to a scientific calculator 🎯 Approach I will take a black-box reverse engineering approach . This means analysing the inputs and outputs of the calculator and attempting to replicate the behaviour without looking at the underlying code. This along with avoiding patents and copyright should keep the project okay legally. 📈 Goals and scope The final goal for the project is to create a fully functional calculator (obviously) which works on most types of devices. This means both touch and keyboard input, resolution scaling, wide browser support… I have moderate experience with creating web apps. and a lot of experience using this calculator. so this project should be pretty fun :) Devlog #1 06/07/2026 This devlog covers the initial development of the parts of the calculator that do math. Essentially turning an input expression into an output. I chose a high-level structure similar to that used by programming language syntax analysers. That is: Input -> Tokeniser -> Parser -> Evaluator -> Output 🪙 Tokeniser yes, with an s >:( The tokeniser converts the input into a list of tokens (think individual pieces of the expression). It does this by scanning the input string and identifying what each character corresponds to. The tokeniser only knows what each symbol is , not what it does . Then it passes the token array to the… 🌲 Parser The parser converts the token array into an Abstract Syntax Tree (AST). Essentially this is a tree which shows how the expressions should be evaluated in order to produce the desired output. This properly lets me implement order of operations. The exact type of parser I am using is a recursive descent parser . It attempts to match the tokens with known symbols recursively, meaning i can rely on the call stack :) The order of operations can be defined by the order of function calls within the parser. 🧮 Evaluator The evaluator’s job is easy: it just traverses the tree made by the parser and runs the necessary operations. Because all of the hard work regarding order of operations has been done by the other components, implementing the evaluator was really easy. Its also recursive. your call stack is gonna love me for this 🗒️ Notes Why not eval? It’s true that JavaScript has a perfectly good expression parser, which I could have used. However, its behaviour is more suited to a programming language than a calculator. For example, 4(2+3) should implicitly multiply , but will instead complain TypeError: 4 is not a function . Writing my own system gives me more flexibility to make the calculator how I want. Floating point precision Because it uses Javascript’s internal math engine, i have floating-point problems. This results in expressions like sin(2pi) = -2.44929360e-16 I will likely fix this by using a math library, or a novel approach. Last-minute catch I was just writing an example for this devlog when I found that .3ln(4)*5^2 raised an error. In fact, ANYTHING * or / followed by x^n would error - but other operators wouldn’t. This was a quick fix, but I’m glad I caught it! 📈 Next steps Immediate: Fix math imprecision Add fractional I/O Medium: Create algebraic display functionality Multi-line calculation (Ans) and variables Long-term: Make the calculator functionally equivalent to the fx-82 Build UI Ship :) Thanks so much for reading! If you have any suggestions, please leave me a comment
calc82: Devlog #2 08/07/2026 calc82: because calculators are for everyone This devlog follows the handling of nasty floating point errors in my web calculator - inspired by and designed to work with Casio’s fx-82au. I realised that relying purely on the Javascript math system was unsuitable for a scientific calculator that works with decimal numbers. This is due to binary floating point not translating well to decimal. 0.1+0.2=0.30000000000000004 >:( I researched and considered a few approaches. 🥧 Symbolic simplifier? The idea behind this is to perform algebra and avoid evaluating constants and functions to values until strictly necessary. However, the scope of this seemed massive, and I did not observe this behaviour in the Casio. 🔟 Decimal arithmetic Instead, I stumbled upon the fact that decimal arithmetic can be implemented in a computer. While IEEE floats use binary representation, there is no reason we cannot use decimals internally, avoiding errors that arise from conversion. Decimal floats can be stored by: Sign: +/- Mantissa: the number itself, in my case an array of digits Exponent: what power of 10 the number should be multiplied by. I started implementation, made decent progress, but found out that I was re-doing work that was already done by other people. 🗄️ Decimal.js I found the decimal.js library after researching how to handle decimal addition. Implementing this quickly fixed my floating point errors, but did not fix trig approximation. 👀 Observing the calculator I observed some of the behaviour of the real calculator to work out how it functions. Handles small-angle approximation based on a threshold Drops precision as the trig function argument value increases Appears to use a 15-digit mantissa Refuses to evaluate trig functions with argument above a certain limit I tried my best to implement the behaviour I observed, some of which required editing the code of the decimal.js library. 📝 Editing decimal.js The decimal.js library uses more than the set precision for some internal calculations. However, arithmetic with pi is otherwise only the set precision, causing drift. My fix for this was to adjust the internal pi value to match the mantissa size of the real calculator. Troubles with the library When given a less accurate value for pi (in line with that of the real calculator) sine quadrant is incorrectly calculated. I found that the isOdd function is flawed! function isOdd(n) { return n.d[n.d.length - 1] & 1; } I replaced it with one that works for my use case (if less efficient): function isOdd(n) { return n.mod(2).eq(1); } I need to see if this is just due to my low precision pi, or an actual problem in the library, in the future. But for now my issue is fixed. I also found an error in the cosine function: if (x.isZero()) return x needed to be changed to if (x.isZero()) return new Ctor(1) . Again, I’m going to have to look into this more before submitting a pr or anything, since decimal.js is not made for such an imprecise pi. 🗒️ Notes Deviations There are still small deviations between my calculator and the real one at really, really large trig angles. One idea to reduce error could be optimising the order of operations in the AST to prevent dropping precision unnecessarily. I might explore this later However, I want to press on with other features, instead of tiny inaccuracies that would never show up in real-world use. I have slightly rearranged the to-do list below. 📈 Next steps Immediate: Implement the other calculator buttons and functions Add fractional I/O Medium: Create algebraic display functionality Multi-line calculation (Ans) and variables Long-term: Build UI Ship :) Thanks so much for reading! If you have any suggestions, please leave me a comment. Until next time
calc82: Devlog #3 10/07/2026 calc82: because calculators are for everyone Oh dear, looks like I lost 4 hours of counted time in the last devlog… let’s try to make this one a bit shorter! This devlog follows the implementation of the other inline functions of the calculator: 🌟 New functionality summary inverse and hyperbolic trig arbitrary roots absolute value percent random numbers: Ran and RanInt scientific notation: *10^x / E combinatorics: nPr and nCr variables (not yet adjustable) 📋 Implementation details Implementing most of this functionality followed the same general steps: identify implement test. As I undertook this process. other dependent requirements popped up - such as the implementation of multivariable functions , which in turn required the expansion of the tokeniser and parser. Also, I implemented degrees, radians, and gradians modes into the calculator, and the associated functions (as postfix expressions - e.g. sin(30d) for degrees) . 🗄️ decimal.js changes Finally, I applied some further changes to decimal.js.: Rounding now depends on the closeness of the output to a known value, rather than the input, reducing unnecessary rounding Near-decimal values close to 0, 0.25, 0.5, 0.75 and 1 are now caught. 🗒️ Notes: Remembering that Javascript is weird NaN === NaN is FALSE! Spent a good 10 minutes figuring this one out. The solution was to use isNaN() . Fixing negative-base powers: (-8)^(1/3) should equal 2 but returns NaN Fixed by taking the denominator from the output of a decimal.js toFraction() function, which attempts to create a rational fraction. This overcomes the tiny precision loss and evaluates the function correctly 📈 Next steps Immediate: Add fractional I/O Implement polar/rectangualr conversion Medium: Create algebraic display functionality Multi-line calculation (Ans) and setting variables Long-term: Build UI Ship :) This has been a bit of a shorter devlog. But I’m still proud of what I achieved! Thanks so much for reading. If you have any suggestions, please leave me a comment. Take care
calc82: Devlog #4 14/07/2026 calc82: because calculators are for everyone This devlog mainly follows the addition of fractional I/O to my calculator. 🌟 New functionality summary Fractional input, including fractions Computation of fractions - add/sub,div/mult,power,root other operations convert the fraction to a decimal Fractional output (temporary UI) LCM/GCD separate execute and fraction/decimal converting buttons 🔢 fractional io :) I defined a separate fraction data type: it’s like a decimal, but with a numerator and denominator, and optionally a whole component: for example, 1 and 1/3, or 4/3. Using fractions means that numbers can be represented more naturally and precisely. I.e. 1/7 instead of 0.142857143 🧮 Fractional calculation Additionally calculations can be made more precise. For example (1/7) * (2/3) can be directly computed by multiplying the numerators and denominators. My implementation attempts to convert user input and the products of divisions into fractions wherever possible in order to chase this precision. 🗒️ Notes Web design is not my thing I realised the importance of UI and UX (user experience) by looking at other projects on Stardance. As of the current iteration, this project lacks this a bit.. But I will give it a shot My next developments will begin to focus more on this - starting with the algebraic input, and eventually moving onto the CSS and design aspects. I am also considering whether I should use a Javascript framework. 📈 Next steps Immediate: Create algebraic display functionality Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)
calc82: Devlog #5 16/07/2026 calc82: because calculators are for everyone This devlog mainly follows the addition of algebraic I/O to my calculator. This is just a check-in since I was getting close to 10 hours since the last devlog - I still have some work to do on this aspect before I move on. 🌟 New functionality summary Input and output formatting through KaTeX Fractions and powers formatted correctly in the input Ability to intuitively traverse the input with arrow keys ⚖️ Algebraic IO with KaTeX I decided on KaTeX because it is both fast (no reflow!) and does not rely on dependencies . KaTeX is a math formatting library that uses LaTeX commands to create beautiful equations from code. For example, \frac{2^{\frac{3}{4}}}{4\sin(30)}\times 2\pi turns into the attached image. Input is currently captured directly from the keyboard to build a 1D array of tokens. The tokens are then converted into KaTeX formatting for algebraic display. In the future, there will also be buttons onscreen as an alternative. Fractions and powers Fractions and powers cannot be represented as a single token. Rather, fractions have a beginning, middle and end, and powers have a beginning and end. The program traverses the array to decide where to put them (and take them out for deletion). 🗒️ Notes The cursor It is surprisingly difficult to make a vertical bar to act as a cursor in KaTeX, without affecting the spacing of the rest of the expression. For now, I am using a \clap{\rule{0.1em}{0.5em}} for the cursor, but I am looking to replace this with custom CSS in the future. Replicating exact behaviour? The fx-82 has some interesting behaviour wherein an empty power is not allowed to exist directly after another power. I am unsure whether I should replicate this - but for now, I am leaving it out. Dealing with broken LaTeX I have been able to get the display pretty bulletproof when it comes to not producing broken LaTeX. However, I’m sure there’s something I haven’t run into in debugging! I want to have this be dealt with gracefully rather than blowing up in the user’s face. 📈 Next steps Immediate: Implement mixed fractions, roots, and Abs to algebraic display Make the input token array able to be parsed into the AST to be calculated Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)
calc82: Devlog #6 18/07/2026 calc82: because calculators are for everyone This devlog follows the further development of algebraic I/O to my calculator, including turning this into an actual result. 🌟 New functionality summary Input and output formatting through KaTeX Square root, arbitrary root, mixed fraction, and absolute values Tokeniser now directly reads input tokens Errors now move the cursor to the position where it occurred 🌊 New program flow inputHandler -> [input tokens] -> tokeniser -> [calculator tokens] -> parser -> AST -> evaluator -> result This: improves speed (compared to parsing text) allows cursor to be moved to error location since we never flatten to text You might notice I have two sets of tokens. They are similar, but input tokens deal with digits and combined symbols ( sin( ), and calculator tokens are whole numbers and separated symbols. 🗒️ Notes Avoiding the lazy route My first approach was turning the input tokens into a string, which my tokeniser already knew how to deal with. However, this added much processing overhead and made it harder to find out the position at which errors occurred. Spending the time to implement the token conversion made this step much easier Misplaced math errors When implementing error handling, I passed down the original position of each token in the input token array down to each step of the calculation process. However, because my evaluator is recursive, it would constantly update the error position to the latest token, meaning the errors were always placed at the end. This was an easy fix in the end - but hard to spot! 📈 Next steps Immediate: Buttons input Add remaining functions (once buttons are added can be done) Medium: Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion (delayed until UI is more fleshed out) Build UI Long-term (but getting closer!): Create a usable UX Ship :)
calc82: Devlog #7 21/07/2026 calc82: because calculators are for everyone This devlog follows the introduction of an actual user interface to my calculator. 🌟 New functionality summary Grid of calculator buttons Different button output when modifiers pressed Navigation buttons work Calculator resembles a real calculator 👇 Button handling The calculator needed buttons resembling that of the Casio to fulfil my purpose. Buttons are dynamically built from an array, which defines their labels and actions. This allows easy changes. For most buttons, the area surrounding the button also acts as a clickable area for better touch input. However, I didn’t find an easy way to do this for the navigation buttons (which are positioned off the grid). 🎨 CSS CSS Grid allows a 2D layout system based on rows and columns. It has been supported by all major browsers since October 2017. CSS Grid was used, as it allows consistent positioning across browsers. In addition, relative units were used to prevent resizing the calculator from affecting it. This should make it easier to make dynamic sizing in the future. 🗒️ Notes Accessibility <button> s are preferred over clickable <div> s because they work with screen readers and legacy browsers . However, I also made the surrounding elements clickable for a better touch experience. Also, keyboard input will make use significantly easier for computer users. Aesthetics The CSS applied so far is purely functional. In the future, I will improve the aesthetics of the calculator through CSS - but for now, this barebones look makes development easier and more focused. 📈 Next steps The todo list was getting too empty, so it has been updated with new tasks Immediate: Add remaining functions Add keyboard shortcuts Medium: Add menu system and settings Multi-line calculation (Ans) and setting variables Implement polar/rectangualr conversion Add other modes (STAT, VERIFY) Add Long-term: Create a test suite to ensure there is no unwanted behaviour Ship :)
calc82: Devlog #8 12/08/2026 calc82: because calculators are for everyone Sorry its been a while since the last devlog, I’ve had this one sitting for a while and not had the chance to finish and post it. This devlog follows the improvement of the user interface to my calculator, as well as the addition of variables . 🌟 New functionality summary Add keyboard mappings for buttons Variables - assign and recall Navigate through history Recall history and edit it. 🦋 Modifier keys It was difficult porting the modifier (shift/alpha) keys to keyboard because Shift is used to type symbols such as + and *, and there is also a Shift key on the calculator… My solution was making tapping shift without any other input to toggle the calculator shift modifier, and combining it with another key to not toggle it. 🗒️ Notes Use of the calculator I’ve actually started using the calculator in class, and it’s been faithful to the original so far (for implemented functionality). I still don’t really trust it though and want to run it through some formalised tests before shipping. Keyboard mappings So far, I have been hardcoding keyboard mappings based on what feels natural to me. However, it would probably be better to have user-editable mappings for other people to customise. 📈 Next steps Immediate: M+ and M- special variable Variable and history persistence in the browser Implement polar/rectangualr conversion Medium: Add menu system and settings Add other modes (STAT, VERIFY) Create a test suite to ensure there is no unwanted behaviour Long-term: Tidy up visuals Ship :)
calc82: Devlog #9 31/08/2026 calc82: because calculators are for everyone This devlog follows the addition of menus and the status bar to my calculator. 🌟 New functionality summary Extensible menu system that allows for easy creation of paginated and nested menus Status bar with indicators that change based on the current calculator state M+ and M- special variables Mixed fraction display 📋 Menu system The menu system uses a dictionary to encode the menu pages and their entries, making it easy to add new menus. However, I couldn’t find a way to easily encode functions and arguments in this structure, so the actual actions are handled by a big switch statement. When the menu is active, most buttons have no action and the input/output display is hidden. 🧀 Status bar The status bar consists of a row of elements with adjustable opacity (to represent their active state). It is handled by a class which allows items to be toggled with a single method call, meaning it can retroactively be integrated into other components. The original calculator has some menu elements that can never be activated - for example, there is a complex mode indicator, but the calculator cannot show complex numbers. I omitted these on calc82, as they took up unnecessary space. 📈 Next steps The project is almost nearing completion :) I made complete list of every feature missing from the calculator (too long to post here). It should should get shorter every devlog from now! Hopefully I can finally ship this project in the next couple of weeks. Thanks for reading :)
calc82: Devlog #10 2/09/2026 calc82: because calculators are for everyone This devlog follows the addition of a lot of small features to my calculator that were last on my to-do list, as well as a slight shift in scope. 🌟 New functionality summary Colon operator for multiple operations Saving variables and settings to LocalStorage Clearing this memory Polar and rectangular coordinates (finally!) Forward delete key (keyboard only) Scrolling screen with a nicer cursor! Colon operator This is an operator I’ve never used on my calculator, but its quite powerful. you can type Ans+1:Ans*2:Ans^2 and it will calculate the first expression, then the second, and so on until it loops back to the start. ➡️ Forward delete Although this functionality is not part of the original calculator, it makes it much more pleasant to use on a computer keyboard. This was implemented as a hidden button. Scrolling Scrolling was surprisingly easy to implement! The browser handles all of the hard work, and all I had to do was set the right CSS tags. Granted, with my CSS experience, this was still difficult, but I made it work in the end. 📈 Next steps I have decided to shift the current scope of the project (before shipping) to just be implementing the main compute mode . This means I will not need to do STAT, VERIFY or LINEIO mode. This is for three reasons: With my semester starting, I will not have as much time to work on this project before the deadline I have very little experience with using these other modes I want to focus my time on the user experience. With this shift in scope, the calculator part of the project is all but done - I only have three buttons remaining. (I had to push this devlog out before 10 hours, which is why they’re not done). Then, I can focus on adding the surrounding UI and UX, which should make it actually possible for other people to use my project. Thanks for reading :)
calc82: Devlog #11 6/09/2026 calc82: because calculators are for everyone This devlog follows the addition of a few final features to my calculator, and then my worst nightmare, frontend UI 😧 🌟 New functionality summary Prime factorisation using Pollard’s rho algorithm Engineering notation button Degree/minute/second output button CSS styling!! + menu bar buttons Fixed some input quirks Dark and light mode (based on system default) with manual toggle 🐚 Pollards rho algorithm for prime factorisation Prime factorisation or integer factorisation is the decomposition of a positive integer into a product of integers. The simplest way to implement this is trial division , which is straightforward but has O(√n) time complexity. I thought this would be too slow, so I decided to implement Pollard’s rho algorithm. This has a nicer complexity of O(√p) where p is the smallest prime factor of the number. However, further observation showed that that the Casio calculator probably doesn’t do this - for numbers without easy factors, it just doesn’t bother. Despite this, I’ve already implemented the algorithm, so I’m not going to remove functionality for the sake of exactly replicating the calculator’s behaviour. 🎨 CSS and styling My goal with the styling was to make the calculator as similar across browsers as possible. I bundled the Inter font (best font) into the program and removed browser-specific button styling. Implementing the CSS styling was mostly painless. I opted for a simple design with a menubar that adapts to horizontal or vertical depending on the window’s aspect ratio for the web app functionality. Additionally the css uses the system theme to automatically choose light or dark mode. 📈 Next steps This project is nearly finished - should only be one or two devlogs left until I ship. Here’s what I have left to do: Development Keybind show and edit Brief manual for each calculator function Info menubar button with author & project information, and disclaimers: that I am not affiliated with casio that the calculator is in a beta state and not guaranteed to be correct for all inputs Fullscreen button for mobile devices Preparation for shipping Webpack or similar Choose a license and publicise repo Write a readme Host on github pages (?) Hope that I did enough to not receive legal action from casio 🙃 Thanks for reading :)
calc82: Devlog #12 7/09/2026 calc82: because calculators are for everyone This devlog follows the addition of customisable and accessible keyboard bindings to my calculator. 🌟 New functionality summary Settings menu Switches between sidebar and popup dependent on screen width Key rebinding Flow of choosing button, then pressing key to rebind Stores in local storage Help hotkey Shows all currently bound keys. Key hint consideration The default keyboard map has been implemented as a const dictionary for a while now, allowing lookup of buttons from keyboard keys. This was extended with a user dictionary that can be dynamically updated. However, generating the help hotkey hints needed to go in the opposite direction of the dictionary. The naive approach of iterating through values to find a key for each would perform poorly with O(n^2). Instead, we precalculate a reversed dictionary to lookup keyboard keys from each button. This precalculation is O(n), and setting the keys is also O(n), resulting in O(n) time overall. 📈 Next steps Development Brief manual for each calculator function (considering reusing the on click functionality from key mapper) ) Info menubar button with author & project information, and disclaimers Fullscreen button for mobile devices Preparation for shipping Webpack, choose a license, write readme, publicise repo, host. Thanks for reading :)
calc82: Devlog #13 9/09/2026 calc82: because calculators are for everyone This devlog follows the addition of help and about menus to my calculator, as well as bundling into one js file. 🌟 New functionality summary Help menu Lookup function by calculator button (reuses key bind selector logic) Q&A About page About the calculator Contribute Legal License All JS files are bundled into one file Service worker makes app available offline 📦 Bundling and service worker I chose to use esbuild for bundling. This allows the many JS files to be condensed down into one file, reducing the number of requests that need to be made. This build system is much simpler than other options such as node.js. I also added a simple service worker that caches all requests locally. This makes the calculator available offline. ⚖️ Licensing & Legal I chose GPLv3 for this project as it is an end-user product. Essentially, this means others are free to modify and distribute the project as long as they make the source available. I also added legal disclaimers to the about page of the calculator. 📈 Next steps Write the readme, publicise the repo, and host! Thanks for reading :)
calc82: Devlog #14 9/09/2026 calc82: because calculators are for everyone Final devlog. It’s done!! This last stretch was writing the readme and publishing everything to Github pages. You can now access it at https://rigelseven.github.io/calc82/ Now for a short reflection calc82 is the largest personal software project I have ever completed. This project taught me a lot about input parsing - specifically, tokenisers and syntax trees - and the importance of keeping a large codebase tidy . Overall, the structure of the project is well laid out. However, there are architectural decisions I made early on that I came to regret later (such as the fact that input is represented as a string, whereas it should probably be a tree). Developing calc82 also showed me that I am capable of putting together such an app from scratch. I’m pleased to have participated in Stardance and be given this opportunity.
Ships:
What did you make? calc82: A calculator web-app inspired by the Casio fx-82 series of scientific calculators. These calculators are common in high schools in my country. My project simulates the behaviour of the Casio calculator, while maintaining a good user experience on both desktop and mobile. What was challenging? Creating reliable algebraic (non-linear) input parsing was the most difficult part of the project. This was because it required some difficult array traversal to avoid invalid states - even one mistake would break the whole input. It took a lot of iterations to get to a working input system that passed all my tests. Close contenders for most challenging were the sheer volume of functions I needed to implement, as well as all possible states the calculator can be in. However, the challenge for this was finding time to get around to everything, rather than technical challenge. What are you proud of? I’m most proud of my implementation of the input-to-result pipeline. I was able to incorporate new-to-me concepts such as tokenisers and abstract syntax trees, yet the resulting code is arguably the cleanest part of the program. I’m also proud of the responsive layout, which supports desktop and mobile well, and that the user experience is similar enough to the Casio that my muscle memory carries over. Finally, I’m proud that I managed to finish the project, as it’s the largest software project I’ve ever managed to complete. Demo: https://rigelseven.github.io/calc82/ Source: https://github.com/rigelseven/calc82/...
|
1794019871.7679617
|
1794106271.7679617
|
|
15875
|
fun discord bot by @utkarsh1 | Stardance
|
utkarsh1
|
0
|
1.01
|
0
|
[]
|
[{"post_id": 6460, "ts": "2026 [{"post_id": 6460, "ts": "2026-06-10T21:25:13Z", "hours": 1.0081, "text": "did basic bot setup and made commands like guess the number, hint, etc."}]...
|
Title: fun discord bot by @utkarsh1 | Stardance
D Title: fun discord bot by @utkarsh1 | Stardance
Devlogs:
did basic bot setup and made commands like guess the number, hint, etc....
|
1794041382.2424579
|
1794646182.2424579
|
|
59271
|
Noisy alarm for lazy people by @juanfierro4892 | S Noisy alarm for lazy people by @juanfierro4892 | Stardance...
|
juanfierro4892
|
0
|
1.66
|
0
|
[]
|
[{"post_id": 64591, "ts": "202 [{"post_id": 64591, "ts": "2026-09-09T03:08:13Z", "hours": 1.1006, "text": "I created the PCB while I was adding the 3D models of the components, and styling it and adding my own personal touch"}, {"post_id": 64006, "ts": "2026-09-08T03:36:14Z", "hours": 0.5586, "text": "I began the project and I create the schematic of the Alarm following the tutorial while I tried to understand it."}]...
|
Title: Noisy alarm for lazy people by @juanfierro4 Title: Noisy alarm for lazy people by @juanfierro4892 | Stardance
Devlogs:
I began the project and I create the schematic of the Alarm following the tutorial while I tried to understand it.
I created the PCB while I was adding the 3D models of the components, and styling it and adding my own personal touch...
|
1793544470.579786
|
1794149270.579786
|
|
50062
|
focusBot by @angelmh2012 | Stardance
|
angelmh2012
|
0
|
6.72
|
0
|
[]
|
[{"post_id": 64581, "ts": "202 [{"post_id": 64581, "ts": "2026-09-09T02:50:28Z", "hours": 1.6567, "text": "Eyes for the style! Well, this isn’t going to be the most important thing, but I want to connect the ESP32 with a UI in the web, obviously, i want a pop-up that simulates the robot’s eyes in the screen, also (in the timelapse, there’s nothing about this) I were working on send and clients in the web socket so anything you put in the list on the web you can receive it on the screen of the robot"}, {"post_id": 49120, "ts": "2026-08-17T19:05:10Z", "hours": 2.3669, "text": "Now I built with Onshape the version one of my focusBot, so i give it a square-round shape with a chamfer ant 45 degrees so when i look at them while im working i can see the OLED display crearly also I add the push button in front so i can control it easily, this is version one becuase i was thinking about adding an amplifier for speakers, and a microphone module, so buttons wouldn’t be necesary"}, {"post_id": 48632, "ts": "2026-08-17T03:18:13Z", "hours": 2.7, "text": "I was researching about integrating microsoft ToDo with Esp32 with MS Graph and a github repo also I was doing sketches of the structure of my bot, and did a schematic of my circuit so i replicated it on real life, with an ESP32, an 0.96 i2c OLED screen with eyes and a list of tasks"}]...
|
Title: focusBot by @angelmh2012 | Stardance
Devlo Title: focusBot by @angelmh2012 | Stardance
Devlogs:
I was researching about integrating microsoft ToDo with Esp32 with MS Graph and a github repo also I was doing sketches of the structure of my bot, and did a schematic of my circuit so i replicated it on real life, with an ESP32, an 0.96 i2c OLED screen with eyes and a list of tasks
Now I built with Onshape the version one of my focusBot, so i give it a square-round shape with a chamfer ant 45 degrees so when i look at them while im working i can see the OLED display crearly also I add the push button in front so i can control it easily, this is version one becuase i was thinking about adding an amplifier for speakers, and a microphone module, so buttons wouldn’t be necesary
Eyes for the style! Well, this isn’t going to be the most important thing, but I want to connect the ESP32 with a UI in the web, obviously, i want a pop-up that simulates the robot’s eyes in the screen, also (in the timelapse, there’s nothing about this) I were working on send and clients in the web socket so anything you put in the list on the web you can receive it on the screen of the robot...
|
1794059555.7522776
|
1794664355.7522776
|
|
29764
|
Cybro by @RajanKC | Stardance
|
RajanKC
|
3
|
9.0
|
24
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T02:39:53Z", "hours": 4.0, "multiplier": 4.36, "payout": 17, "blessing": "neutral", "text": "Completed the project Please rate this project good", "repo": "https://github.com/RajanKCKC/Cybro", "demo": "https://hackclub.enterprise.slack.com/archives/C0BFJLJ6KUG"}, {"ship_num": 2, "ts": "2026-07-25T15:15:21Z", "hours": 1.0, "multiplier": 6.3, "payout": 7, "blessing": "neutral", "text": "Shiped", "repo": "https://github.com/RajanKCKC/Cybro", "demo": "https://hackclub.enterprise.slack.com/archives/C0BFJLJ6KUG"}, {"ship_num": 3, "ts": "2026-07-07T02:40:49Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "🚀 What I Made: I built Cybro , an AI-powered utility and productivity Slack bot packed with features to automate and entertain: /cybro-ask : Contextual, instant answers powered by Gemini 3.5 Flash via the Hack Club AI API. /cybro-calc & /cybro-translate : Laser-focused AI modes restricted specifically to parsing complex math expressions or delivering precise language translations. /cybro-timer : A visual productivity countdown that updates in real time using custom Slack message progress bars [🟩🟩⬜⬜] . /cybro-date : A live global time tool that fetches structural data for any country or timezone using TimeAPI. /cybro-coinflip , /cybro-joke , /cybro-catfact , /cybro-dogfact , /cybro-ping , and /cybro-info to keep the workspace lively and fast. 🧠 What Was Challenging: Slack’s 3-Second Rule: Managing async execution lines to ensure Slack’s strict 3-second acknowledgement window ( ack() ) didn’t timeout while waiting on upstream responses from the Gemini API. Isolated Prompting: Fine-tuning separate system instruction blocks for /cybro-calc and /cybro-translate so the AI wouldn’t break character or answer general knowledge questions when it was only supposed to crunch numbers or translate text. Stateful Intervals: Structuring Javascript’s native setInterval safely inside Slack’s respond() payload structures to cleanly re-render and update the live timer blocks without breaking the message context. ✨ What I’m Proud Of: I went way past the baseline and built a fully modular 12-command suite! I’m especially proud of the UI/UX polish—using custom Slack layouts, block dividers, interactive context elements, and dynamic emojis to make the bot look incredibly professional inside the chat window. 👉 How to Test: Invite Cybro to your channel and run /cybro-help to view the master command menu, or test out its brains directly with /cybro-ask Where is Mount Everest? or /cybro-timer 5 !", "repo": "https://github.com/RajanKCKC/Cybro", "demo": "https://hackclub.enterprise.slack.com/archives/C0BFJLJ6KUG"}]...
|
[{"post_id": 64576, "ts": "202 [{"post_id": 64576, "ts": "2026-09-09T02:38:28Z", "hours": 0.3975, "text": "feat: add /cybro-dice command to roll a die and display the result"}, {"post_id": 64331, "ts": "2026-09-08T17:02:19Z", "hours": 0.3628, "text": "feat: add /cybro-news command to fetch and display top tech news headlines from Hacker News"}, {"post_id": 63609, "ts": "2026-09-07T15:13:51Z", "hours": 0.3769, "text": "feat: add /cybro-crypto command to fetch and display cryptocurrency price information"}, {"post_id": 62923, "ts": "2026-09-06T13:47:14Z", "hours": 0.8358, "text": "feat: add /cybro-weather command to fetch and display current weather information for a specified location"}, {"post_id": 62343, "ts": "2026-09-05T17:45:01Z", "hours": 0.3828, "text": "feat: add /cybro-github command to fetch and display GitHub profile information"}, {"post_id": 61563, "ts": "2026-09-04T15:21:28Z", "hours": 1.0089, "text": "feat: enhance /cybro-poll command with improved voting mechanism and progress display"}, {"post_id": 60969, "ts": "2026-09-03T17:31:13Z", "hours": 0.4411, "text": "feat: add /cybro-poll command for creating polls with user-defined questions and options"}, {"post_id": 27802, "ts": "2026-07-13T17:54:53Z", "hours": 0.6822, "text": "Rewrote the whole Readme again"}, {"post_id": 27494, "ts": "2026-07-13T03:28:03Z", "hours": 0.4169, "text": "Rewrote Readme"}, {"post_id": 23456, "ts": "2026-07-06T13:27:10Z", "hours": 0.8128, "text": "Added Readme"}, {"post_id": 22656, "ts": "2026-07-05T06:35:52Z", "hours": 0.6333, "text": "Added /cybro-calc, /cybro-translate and /cybro-date command"}, {"post_id": 22049, "ts": "2026-07-04T09:28:33Z", "hours": 0.5336, "text": "Added Ask Command"}, {"post_id": 22024, "ts": "2026-07-04T08:30:31Z", "hours": 0.3392, "text": "Added Coinflip Command"}, {"post_id": 22011, "ts": "2026-07-04T07:44:00Z", "hours": 0.3, "text": "Enhanced timer command"}, {"post_id": 21541, "ts": "2026-07-03T15:45:23Z", "hours": 0.9736, "text": "Added Dog fact, info and Timer command"}, {"post_id": 20687, "ts": "2026-07-02T10:49:56Z", "hours": 0.3167, "text": "Added help and joke command"}, {"post_id": 20671, "ts": "2026-07-02T10:12:50Z", "hours": 0.3169, "text": "Setup Bot and added ping command"}]...
|
Title: Cybro by @RajanKC | Stardance
Devlogs:
Set Title: Cybro by @RajanKC | Stardance
Devlogs:
Setup Bot and added ping command
Added help and joke command
Added Dog fact, info and Timer command
Enhanced timer command
Added Coinflip Command
Added Ask Command
Added /cybro-calc, /cybro-translate and /cybro-date command
Added Readme
Rewrote Readme
Rewrote the whole Readme again
feat: add /cybro-poll command for creating polls with user-defined questions and options
feat: enhance /cybro-poll command with improved voting mechanism and progress display
feat: add /cybro-github command to fetch and display GitHub profile information
feat: add /cybro-weather command to fetch and display current weather information for a specified location
feat: add /cybro-crypto command to fetch and display cryptocurrency price information
feat: add /cybro-news command to fetch and display top tech news headlines from Hacker News
feat: add /cybro-dice command to roll a die and display the result
Ships:
🚀 What I Made: I built Cybro , an AI-powered utility and productivity Slack bot packed with features to automate and entertain: /cybro-ask : Contextual, instant answers powered by Gemini 3.5 Flash via the Hack Club AI API. /cybro-calc & /cybro-translate : Laser-focused AI modes restricted specifically to parsing complex math expressions or delivering precise language translations. /cybro-timer : A visual productivity countdown that updates in real time using custom Slack message progress bars [🟩🟩⬜⬜] . /cybro-date : A live global time tool that fetches structural data for any country or timezone using TimeAPI. /cybro-coinflip , /cybro-joke , /cybro-catfact , /cybro-dogfact , /cybro-ping , and /cybro-info to keep the workspace lively and fast. 🧠 What Was Challenging: Slack’s 3-Second Rule: Managing async execution lines to ensure Slack’s strict 3-second acknowledgement window ( ack() ) didn’t timeout while waiting on upstream responses from the Gemini API. Isolated Prompting: Fine-tuning separate system instruction blocks for /cybro-calc and /cybro-translate so the AI wouldn’t break character or answer general knowledge questions when it was only supposed to crunch numbers or translate text. Stateful Intervals: Structuring Javascript’s native setInterval safely inside Slack’s respond() payload structures to cleanly re-render and update the live timer blocks without breaking the message context. ✨ What I’m Proud Of: I went way past the baseline and built a fully modular 12-command suite! I’m especially proud of the UI/UX polish—using custom Slack layouts, block dividers, interactive context elements, and dynamic emojis to make the bot look incredibly professional inside the chat window. 👉 How to Test: Invite Cybro to your channel and run /cybro-help to view the master command menu, or test out its brains directly with /cybro-ask Where is Mount Everest? or /cybro-timer 5 !
Shiped
Completed the project Please rate this project good...
|
1793692598.07702
|
1794556598.07702
|
|
5287
|
Mars Terrain Classifier by @Gelo | Stardance
|
Gelo
|
1
|
4.0
|
27
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-10T21:25:42Z", "hours": 4.0, "multiplier": 6.75, "payout": 27, "blessing": "neutral", "text": "I made a Mars Terrain Classifier – a deep learning model that identifies 7 types of Martian geological features from orbital satellite images. The categories are: bright dune, crater, dark dune, impact ejecta, slope streak, spider, and swiss cheese. I also built a web interface where anyone can upload an image and get an instant prediction with confidence scores. The model runs on Hugging Face and the frontend is deployed on Netlify. Live demo: https://mars-terrain-classifier.netlify.app The biggest challenge was dataset handling. The official NASA dataset was over 20GB and kept failing to download. I had to find a smaller HiRISE dataset and manually organize it into train/val splits. Git was another nightmare – the trained model file was 216MB and GitHub kept rejecting my push. I had to use .gitignore and rewrite git history to remove it. Also, the model struggles with low-resolution images, weird color tones, and rover photos (since it was trained only on orbiter data). Debugging OpenCV image generation and label creation took way more time than expected. I’m proud that the model achieved 97% validation accuracy despite all the data issues. The web interface looks clean and professional – it has drag-and-drop upload, real-time predictions, and a NASA-inspired design. I’m also proud that I figured out how to deploy the model on Hugging Face and the frontend on Netlify, making it accessible to anyone without installing anything. The project went from a broken script to a fully functional web app that people can actually use. Go to https://mars-terrain-classifier.netlify.app – upload any Mars orbital image (JPG, PNG, TIFF). The model works best on clear, high-contrast satellite photos from HiRISE. It will struggle with low-resolution images, overexposed shots, or photos taken by rovers (Curiosity/Perseverance) because it was only trained on orbiter data. If the prediction confidence is low or seems wrong, it’s probably a resolution or color issue. The GitHub repo has all the code if you want to run it locally: https://github.com/gelo-dev-e/mars-terrain-classifier", "repo": "https://github.com/gelo-dev-e/mars-terrain-classifier", "demo": "https://mars-terrain-classifier.netlify.app"}]...
|
[{"post_id": 6457, "ts": "2026 [{"post_id": 6457, "ts": "2026-06-10T21:21:31Z", "hours": 0.9569, "text": "Final Devlog – Mars Terrain Classifier The Mars Terrain Classifier is now live The model runs on Hugging Face for inference, and the frontend is deployed on Netlify. You can try it here: 🔗 https://mars-terrain-classifier.netlify.app The model works well on clear orbital images from HiRISE, but it struggles with low-resolution photos, overexposed shots, or images with unusual color tones. It also has difficulty with rover-level photos (like from Curiosity or Perseverance) since it was trained only on orbiter data. Categories like spider and swiss cheese have fewer training samples, so predictions there are less confident. Upload a Mars image and see what happens – if it fails, it’s probably a resolution or color issue. The web UI is fully functional with drag-and-drop upload and real-time confidence scores. Live demo: https://mars-terrain-classifier.netlify.app GitHub: https://github.com/gelo-dev-e/mars-terrain-classifier"}, {"post_id": 3436, "ts": "2026-06-06T11:28:04Z", "hours": 0.9633, "text": "Devlog – Web UI for Mars Terrain Classifier Title: Building a Web Interface for the Mars Terrain Classifier After training the model to 97% validation accuracy, I created a web-based user interface to make the classifier accessible to anyone – no command line needed. The UI features: Drag & drop image upload Real-time prediction display 7 terrain categories with visual indicators Clean NASA-inspired design (dark theme, Mars colors) I’m not sure yet if I will deploy this publicly online, but the entire project will remain open source. The code, the training scripts, the web UI, and everything else will be available on GitHub for anyone to use, modify, or improve."}, {"post_id": 2799, "ts": "2026-06-05T16:46:46Z", "hours": 0.7358, "text": "Devlog – Training Complete! After all the dataset struggles, I finally completed the training! Training Results I trained a ResNet50 model for 20 epochs on 7 Mars terrain categories (bright dune, crater, dark dune, impact ejecta, slope streak, spider, swiss cheese). Final metrics: Training Accuracy: 96.41% Validation Accuracy: 96.80% Best Validation Accuracy: 97.00% Training Loss: 0.1261 Validation Loss: 0.0968 The model achieved 97% validation accuracy which is solid for a 7-class classifier on orbital Mars imagery. What Worked Well ResNet50 pretrained on ImageNet was a great base – even with limited data, it learned quickly Freezing early layers and only training layer4 + fc prevented overfitting Dropout (0.4 and 0.3) helped with generalization Data augmentation (random flips, rotations) made the model more robust Next Steps Now that I have a working model at 97% accuracy, here’s what’s next: Test on completely unseen validation data The 97% was measured on the validation split (20% of the original dataset) Next, I need to test on brand new images that the model has never seen – not even in validation Real-world testing Find fresh Mars orbiter images online (not from the original dataset) See if the model can correctly identify terrain types in the wild Identify weak spots Which categories is the model struggling with? Spider and swiss cheese have fewer training samples – likely lower accuracy Confusion matrix will show where mistakes happen Deploy as a demo Build a simple interface Upload any Mars image and get instant terrain prediction Goal Take the 97% validation model and prove it works on real-world, never-before-seen Mars images – not just the test split from the dataset."}, {"post_id": 1680, "ts": "2026-06-03T20:34:42Z", "hours": 0.585, "text": "I initially planned to use 4 simple categories (crater, dusty, rocky, sandy), but I ended up with 7 scientific categories from the HiRISE orbiter dataset: bright dune, crater, dark dune, impact ejecta, slope streak, spider, and swiss cheese. The main challenge was that the official NASA datasets (AI4Mars) had over 50,000 images and were too large to download (around 16-20 GB). Direct download kept failing, and the dataset required heavy preprocessing because it was semantic segmentation, not simple image classification. So instead, I used a smaller HiRISE dataset from Kaggle. The trade-off is that these are orbital telescope images, not rover photos, so the terrain looks different. Also, some categories like spider and swiss cheese are very rare, which makes the dataset imbalanced, and the model might struggle to learn them properly."}, {"post_id": 1418, "ts": "2026-06-03T13:26:55Z", "hours": 0.8628, "text": "Making the dataset (training and validation data) for my model."}]...
|
Title: Mars Terrain Classifier by @Gelo | Stardanc Title: Mars Terrain Classifier by @Gelo | Stardance
Devlogs:
Making the dataset (training and validation data) for my model.
I initially planned to use 4 simple categories (crater, dusty, rocky, sandy), but I ended up with 7 scientific categories from the HiRISE orbiter dataset: bright dune, crater, dark dune, impact ejecta, slope streak, spider, and swiss cheese. The main challenge was that the official NASA datasets (AI4Mars) had over 50,000 images and were too large to download (around 16-20 GB). Direct download kept failing, and the dataset required heavy preprocessing because it was semantic segmentation, not simple image classification. So instead, I used a smaller HiRISE dataset from Kaggle. The trade-off is that these are orbital telescope images, not rover photos, so the terrain looks different. Also, some categories like spider and swiss cheese are very rare, which makes the dataset imbalanced, and the model might struggle to learn them properly.
Devlog – Training Complete! After all the dataset struggles, I finally completed the training! Training Results I trained a ResNet50 model for 20 epochs on 7 Mars terrain categories (bright dune, crater, dark dune, impact ejecta, slope streak, spider, swiss cheese). Final metrics: Training Accuracy: 96.41% Validation Accuracy: 96.80% Best Validation Accuracy: 97.00% Training Loss: 0.1261 Validation Loss: 0.0968 The model achieved 97% validation accuracy which is solid for a 7-class classifier on orbital Mars imagery. What Worked Well ResNet50 pretrained on ImageNet was a great base – even with limited data, it learned quickly Freezing early layers and only training layer4 + fc prevented overfitting Dropout (0.4 and 0.3) helped with generalization Data augmentation (random flips, rotations) made the model more robust Next Steps Now that I have a working model at 97% accuracy, here’s what’s next: Test on completely unseen validation data The 97% was measured on the validation split (20% of the original dataset) Next, I need to test on brand new images that the model has never seen – not even in validation Real-world testing Find fresh Mars orbiter images online (not from the original dataset) See if the model can correctly identify terrain types in the wild Identify weak spots Which categories is the model struggling with? Spider and swiss cheese have fewer training samples – likely lower accuracy Confusion matrix will show where mistakes happen Deploy as a demo Build a simple interface Upload any Mars image and get instant terrain prediction Goal Take the 97% validation model and prove it works on real-world, never-before-seen Mars images – not just the test split from the dataset.
Devlog – Web UI for Mars Terrain Classifier Title: Building a Web Interface for the Mars Terrain Classifier After training the model to 97% validation accuracy, I created a web-based user interface to make the classifier accessible to anyone – no command line needed. The UI features: Drag & drop image upload Real-time prediction display 7 terrain categories with visual indicators Clean NASA-inspired design (dark theme, Mars colors) I’m not sure yet if I will deploy this publicly online, but the entire project will remain open source. The code, the training scripts, the web UI, and everything else will be available on GitHub for anyone to use, modify, or improve.
Final Devlog – Mars Terrain Classifier The Mars Terrain Classifier is now live The model runs on Hugging Face for inference, and the frontend is deployed on Netlify. You can try it here: 🔗 https://mars-terrain-classifier.netlify.app The model works well on clear orbital images from HiRISE, but it struggles with low-resolution photos, overexposed shots, or images with unusual color tones. It also has difficulty with rover-level photos (like from Curiosity or Perseverance) since it was trained only on orbiter data. Categories like spider and swiss cheese have fewer training samples, so predictions there are less confident. Upload a Mars image and see what happens – if it fails, it’s probably a resolution or color issue. The web UI is fully functional with drag-and-drop upload and real-time confidence scores. Live demo: https://mars-terrain-classifier.netlify.app GitHub: https://github.com/gelo-dev-e/mars-terrain-classifier
Ships:
I made a Mars Terrain Classifier – a deep learning model that identifies 7 types of Martian geological features from orbital satellite images. The categories are: bright dune, crater, dark dune, impact ejecta, slope streak, spider, and swiss cheese. I also built a web interface where anyone can upload an image and get an instant prediction with confidence scores. The model runs on Hugging Face and the frontend is deployed on Netlify. Live demo: https://mars-terrain-classifier.netlify.app The biggest challenge was dataset handling. The official NASA dataset was over 20GB and kept failing to download. I had to find a smaller HiRISE dataset and manually organize it into train/val splits. Git was another nightmare – the trained model file was 216MB and GitHub kept rejecting my push. I had to use .gitignore and rewrite git history to remove it. Also, the model struggles with low-resolution images, weird color tones, and rover photos (since it was trained only on orbiter data). Debugging OpenCV image generation and label creation took way more time than expected. I’m proud that the model achieved 97% validation accuracy despite all the data issues. The web interface looks clean and professional – it has drag-and-drop upload, real-time predictions, and a NASA-inspired design. I’m also proud that I figured out how to deploy the model on Hugging Face and the frontend on Netlify, making it accessible to anyone without installing anything. The project went from a broken script to a fully functional web app that people can actually use. Go to https://mars-terrain-classifier.netlify.app – upload any Mars orbital image (JPG, PNG, TIFF). The model works best on clear, high-contrast satellite photos from HiRISE. It will struggle with low-resolution images, overexposed shots, or photos taken by rovers (Curiosity/Perseverance) because it was only trained on orbiter data. If the prediction confidence is low or seems wrong, it’s probably a resolution or color issue. The GitHub repo has all the code if you want to run it locally: https://github.com/gelo-dev-e/mars-terrain-classifier...
|
1794113724.0734859
|
1794200124.0734859
|
|
59521
|
LatencyPad! by @No1Michael | Stardance
|
No1Michael
|
0
|
6.97
|
0
|
[]
|
[{"post_id": 64559, "ts": "202 [{"post_id": 64559, "ts": "2026-09-09T02:04:47Z", "hours": 3.15, "text": "Why did no one tell me copper wiring can go on both sides of the of the board ;-; I thought I was doomed, trying to route everything across the Front Copper of the board lol"}, {"post_id": 64493, "ts": "2026-09-08T22:35:51Z", "hours": 3.8153, "text": "For my First time working on hardware this is pretty fun! Designing the schematics and pcd looked like a daunting task at first, but soon it became pretty fun! I really liked the 3d render which allowed me to find many mistakes I originally had on my pcb which were much harder to see when I only had the 2d view!"}]...
|
Title: LatencyPad! by @No1Michael | Stardance
Dev Title: LatencyPad! by @No1Michael | Stardance
Devlogs:
For my First time working on hardware this is pretty fun! Designing the schematics and pcd looked like a daunting task at first, but soon it became pretty fun! I really liked the 3d render which allowed me to find many mistakes I originally had on my pcb which were much harder to see when I only had the 2d view!
Why did no one tell me copper wiring can go on both sides of the of the board ;-; I thought I was doomed, trying to route everything across the Front Copper of the board lol...
|
1793922671.8087602
|
1794786671.8087602
|
|
57937
|
hishaPix by @hoshi | Stardance
|
hoshi
|
1
|
10.0
|
55
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T02:35:32Z", "hours": 10.0, "multiplier": 5.36, "payout": 55, "blessing": "neutral", "text": "an image to pixel art converter where you can have fun in real life!", "repo": "https://github.com/uuukye/hishaPix", "demo": "https://uuukye.github.io/hishaPix/"}]...
|
[{"post_id": 64558, "ts": "202 [{"post_id": 64558, "ts": "2026-09-09T02:03:35Z", "hours": 1.6186, "text": "bug fixes and added some extensions"}, {"post_id": 63944, "ts": "2026-09-08T00:57:53Z", "hours": 5.4611, "text": "Done with most of the website, now I just need to polish the website and get rid of some bugs. But overall pretty good"}, {"post_id": 61883, "ts": "2026-09-05T01:26:22Z", "hours": 3.2408, "text": "started project, it transforms an image to a pixel art, and makes a print out that has an empty grid and can let you fill in with colors, there are still thousands of bugs"}]...
|
Title: hishaPix by @hoshi | Stardance
Devlogs:
st Title: hishaPix by @hoshi | Stardance
Devlogs:
started project, it transforms an image to a pixel art, and makes a print out that has an empty grid and can let you fill in with colors, there are still thousands of bugs
Done with most of the website, now I just need to polish the website and get rid of some bugs. But overall pretty good
bug fixes and added some extensions
Ships:
an image to pixel art converter where you can have fun in real life!...
|
1793965838.3443375
|
1794052238.3443375
|
|
4431
|
Geared Reversible CVT by @packager | Stardance
|
packager
|
0
|
202.39
|
0
|
[]
|
[{"post_id": 64554, "ts": "202 [{"post_id": 64554, "ts": "2026-09-09T01:51:47Z", "hours": 7.6675, "text": "Finished tolerancing the holes, and I added the pulley to the input gear. I also changed the large bearing mount for the gear shifter and also redid the lead screw mount because stuff was hitting. Here’s what I did: I went through like 70 holes, compared it to the toleranced version that was assembled. Lots of problems happened when I had to oversize the holes. For example, the linear bearing holes on the gear shifter mount had to be oversized, which made the thickness of the wall like 0.8mm thick. I then had to go into my mastersketch and change up the dimensions which took a stupidly long time. Regeneration times are hitting near 2 minutes (300 features isn’t good, plus tons of dependencies, and so many dimensions that it takes up the entire sketch). I added the pulley to the input gear. I had to switch to a different featurescript because the one I was using didn’t have GT2. After that it was pretty easy, just had to cad the walls, chamfer a bit and boolean and bore it. The most annoying part was that the copper lead screw nut (on the mount) was hitting the 1:1 gears completely ruining the whole thing. I basically had to redo the shaping of the lead screw mount. I moved the copper part further up the part, keeping the standoffs at basically the same level. As a result, I had more space at the bottom for two screws instead of 1. Also, now all the constraints are fully dependent on the external parts, so there’s no random dimensions I did just to make stuff look good, which is good because it means if I change the gearing or something in the mastersketch, the mount should update accordingly. This also took a pretty long time and 2 min regeneration doesn’t help."}, {"post_id": 62711, "ts": "2026-09-06T06:17:18Z", "hours": 8.0844, "text": "Cleaned up a lot of the stuff hitting and a lot of the tolerances too. I also had to do some cooked surface modeling with onshape (I have never surface modeled before). Here’s what I did: The blue pieces were also hitting at the bottom, so I had to make the material even thinner than it was (really cooked, near 1.5mm thickness and barely clearing eachother). The standoff placements really cook everything so I’ll probably just extend the plate and move the standoffs further from the gears. However it will be uglier, and I would rather have a good looking cvt that doesn’t work than a ugly cvt that works. I had to do some really cooked stuff with surface modeling. Basically, the wrap feature wasn’t working. I spent like an hour or two trying to learn surface modeling, but nothing was working because the shape was weird, so I ended up just doing 8 separate revolutes, boolean, and then some move faces. Also, the bumps can’t be radial because the bearing isn’t radial (it faces horizontal, so the edge closer to the center moves up first which causes the whole thing to jam). To fix that I had to do even more cooked remove revolutes, then bridge curving and then knitting (I had never used these before) and fileting. I need to figure out a clearer way to do it because it’s getting on my nerves. I went through the latest V3 and compared around half of the holes to the V2 (it turns out there’s like 3 holes per part and theres like 100 holes to go through, not including clearances). The clearances also cooked some of the spacing so I went and fixed that. I’ve been spending some time thinking about the 1way bearing solution, and I completely switched up and now think it’s impossible."}, {"post_id": 61667, "ts": "2026-09-04T18:15:01Z", "hours": 9.5906, "text": "Finished most of the cad, just need to clean up tolerances and split a few parts. Here’s what I did: I made the rings for the gearshifter bigger because the gear shifter mount on the lead screw was hitting the center 1:1 gears. This caused lots of issues with sketches breaking so I had to redo those. I had to change the gearing for the last stage. The 1:1 gears were hitting the bearings so the only solution is to move the bearings further from the center, hence change the gear ratio. This also caused tons of problems and I had to redo a lot of the parts again, especially the gear shifter mount that mounts onto the lead screw. I added cutouts onto the blue part (it’s gray now, but the one that houses the bearing that the dog clutch goes on. The blue parts used to be hitting the 1:1 gears but now it clears by like 0.5 mm. I’m still deciding whether I want to assemble this or not. I can’t figure out the 1way bearing based thing, and I’m starting to feel like it’s fundamentally impossible."}, {"post_id": 60403, "ts": "2026-09-02T18:22:52Z", "hours": 7.5178, "text": "I mirrored the whole thing, and the V3 looks complete but there’s some fundamental flaws. I also thopught a lot about the 1way bearing based solution. Here’s what I did: Mirrored the whole thing onto the other side. I didn’t run into any spacing issues which means I’m good at mastersketching. Currently, the 1:1 gears are hitting the big bearing that the dog clutch is in. I dont’ know how to fix this because it means I’ll have to change the gear ratios. I spent a lot of time thinking about the 1way cvt that doesn’t use clutching. I realized that I could put the input gear on a 1way bearing and somehow run different sets of gears based on the direction. However, everything is inevitably linked to the same output which jams everything. Also, the arm system is inherently not backdrivable which is makes the input on a 1way bearing solution not work. I’m gonna have to think more about a better solution. I need to do some finishing touches to the V3, but I’ll spend more of my time thinking about the 1way bearing cvt."}, {"post_id": 59751, "ts": "2026-09-01T17:59:00Z", "hours": 5.7678, "text": "Made the 1:1 gears to power the cam and made a new rail system for the ring. Today was really productive, here’s what I did: initially, I messed with a lot of the dimensioning and spacing with the rails on the outside. I realized there’s no way it was gonna work, and even if it could, it would take up tons of space. I needed a better solution. Having the rails on the outside makes everything really big which doesn’t fit. I figured out a way to add a rail inside the tube. Instead of the ring being constrained to a rail, the inside thick square piece is constrained to a rail. This leaves tons of space on the outside for gears (almost 6mm of space on each side). I finally added the gears. I had 6mm of space which is more than enough. However, the gears hit the bearings that track the ring, so I’ll probably end up making the ring bigger either way. Another terrible thing is that the gears hit the blue piece. It actually goes far enough to cut into the bearing. Either I shift into smaller bearings, or I change the spacing between the gears. I still have to decide which on to do. I don’t think I’ll be building this version in hopes of coming up with a way to use one-way bearings."}, {"post_id": 59002, "ts": "2026-08-31T16:09:51Z", "hours": 5.5344, "text": "More cad. I assembled the lead screw and gear shifter. Here’s some stuff I did: After building my v2, I realized the ring is super unstable and can easily tilt, causing the whole thing to jam. This is especially true because its only being pushed at one point (the contact of the bearing). Therefore, I added some holes for rails so it can slide along the holes. However the rails need mounts which take up space, taking away space for the gear, so I might switch the rails to something else. The rails made the ring bigger so it started hitting the blue piece again, so i changed the position of the standoff to create more distance. I assembled the center shaft, which includes the output gears and the perpendicular cam. I had to change up some of the dimensions because it wasn’t fitting. I also removed the from the part because it would make it hard to print, and instead used a separate spacer. I’m starting to become pretty unproductive at cad because almost 40-50% of the time spent is just thinking about how I can design it rather than actually designing it. I also spent some time thinking about the one-way bearing solution. I finally got my hands on them so I’ll be trying stuff out instead of just trying to visualize them."}, {"post_id": 57937, "ts": "2026-08-30T08:41:36Z", "hours": 9.2519, "text": "Did tons of cad, semi finished the parts (still need to fix some stuff) and started an assembly. Here’s some stuff I did/problems I ran into: I cadded the new lead screw mounts for the gearshifter. I lowk dont have any clue what I’ll do about it hitting the 1:1 gears. Hopefully there’s some geometry fixes I can make. The bottom moving piece (that moves back and forth following the cam) is oversized and will hit the ring for the ramp. I will change it tmmrw. I realized a lot of my new parts are gonna be really hard to print so I split them. I started the assembly. I finished the basic side (most of the rest should just be mirorred). I have to figure out a better way to transfer torque while also spinning (remember the linear bearings spinning smooth). The current method just has something sliding on a shaft which is high friction. There are actual linear bearings that prevent rotation, but they are crazy expensive and barely produced anymore. I’ve also been thinking more about the one-way bearing based solution. I realize that maybe the key is just to mirror the whole gearbox and change the direction that it’s clutched in."}, {"post_id": 55759, "ts": "2026-08-27T19:04:18Z", "hours": 7.1681, "text": "Did more cad, especially working on the gear shifter mechanism. I was having lapse and hackatime issues so I couldn’t really record much or post a devlog. Here’s what I worked on and some problems I ran into: chromebooks are slow as hell and are literally impossible to cad on (hence i need the macbook). This means the only time I can cad really productivley is at home which is annoying because I don’t do anything at school. For the gearshifter to work, it needs to be geared 1:1 with the tubes. This is a huge problem geometrically because it hits the blue piece. In fact, it goes into the bearing hole for the blue piece which means I can’t just cope and be lazy by making the piece thin. The closer I move the output gears to the dog clutch gears, the closer the blue piece moves to the center gear which cancels out making the 1:1 gears smaller. I have to figure out a solution soon. I swtched from the cam being sandwiched between bearings to the bearings being sandwiched between the cam because it gives space for the gears to be on the outisde. I’m pretty sure this is also better force wise because instead of pulling out each bearings individually when it moves side to side, the bearings are in contact so you effectively have to pull out both bearings at the same time. Also the lever arm for the center version looks smaller than the version with the separate gear just for the shifting which means less friction. I had to tweak the ratios and spacing a bit because the blue piece barely has space. Even now, it’s way too thin (1mm) which I don’t like. No, I haven’t forgotten the mythical one-way-bearing based concept, I’m still thinking about it. I have a vague idea of what it should kind of look like (somehow have two sets, both of them mirrored, each of them ratcheting the other way). I’m pretty sure there’s a solution but I’m not smart enough to figure it out."}, {"post_id": 54291, "ts": "2026-08-25T07:26:33Z", "hours": 5.0694, "text": "Finalized the sketching and starting making some parts. Here’s some stuff I did: I realized mod 1mm is way too small and I want the macbook more than a smaller cvt, so I’ll be sticking with mod 1.25mm. I basically went through like 35 features and redo them because of the new dimensions. I have yet to go through 210 more and add more features on top of that. Since I’m keeping the gears as mod 1.25mm, I increased the radius of the gear shifting from 9mm to 11mm (like it was originally). Based on how the built model performed, I redid a lot of the tolerances. I also needed to cad a new base plate because of the new shape. the gears were hitting so I changed the output and dog-clutch gear sizes. Now that I’m devlogging, I realize that I seriously need to lock in on the constant-speed gears. I’ll be spending lots of time tomorrow working on that."}, {"post_id": 53601, "ts": "2026-08-24T07:20:36Z", "hours": 6.5417, "text": "Look who’s back. Back again. I was banned from using my personal computer because my parents saw that I was cadding instead of studying for sat, but I just took it and I can finally cad now. I feel like I’m close to finding a way to eliminate the clutch but I can’t figure out how to yet. Therefore I decided to save it for a v4 and focus on other stuff for a v3. Here’s some stuff I did today: I sketched out what the v3 will look like. Instead of a pentagon it’ll look more like a trapezoid because I don’t need the 3rd gear anymore. I’m still not sure if it’s possible to gear the gear selector 1:1 with the outside gears because it has to be bigger than the tube. After building my v2, I realized my gearshifting mechanism was completely cooked. It jammed a ton because there was nothing stopping the ring from angling and binding with the tube. Adding fuel to the fire was the fact that the worm gear mech only pushed it from one side making it impossible to stop the ring from angling. I wanted to add support rods for my v2 but it was impossible because the gears were way too close, but now it’s possible because of the new spacing. Also, the worm gear is effectively moved downward, more in line with the centers of the rings, which lets me wrap it around the ring and make bending less easy. I still haven’t decided if I want to stick with ramps or switch to something else. I switched everything to 1mm mod gears, but I realized spacing was way too cooked because there’s PROBABLY no space for the cutout for the ramps (or whatever I choose to use, it’s just that I have no space for 2 linear bearings in a row). I still haven’t figured out the cutout dimension fully, but there’s a good chance that I’ll end up switching back to 1.25mm mod. Also, 1mm mod means I need to buy new bearings and stuff which are expensive and cut away money from my stardust payout (which I wanna maximize because I NEED THAT MACBOOK so I can cad during school)."}, {"post_id": 33928, "ts": "2026-07-24T07:36:27Z", "hours": 5.2675, "text": "Did tons of math and tons of brainstorming. The math is absolute hell and annoying but desmos is carrying. I got a shape for the non-circular gears for now (they can’t be called elliptical), see the first image. The sharp angles might be a problem with the gears depending on how many teeth are on them, so I may have to change a fully flat output to something very slightly oscillating. I spent a good amount of time thinking about how to eliminate the clutch. I am no longer as confident about there being a solution as right after opensauce, but I may be onto something. I came up with a mechanical “absolute value” system which takes an input and basically gives the absolute value of it. The input will be both geared and belted to an output shaft, and the recieving gear and pulley will have a one way bearing on them. Since the direction of each recieving thing is opposite to eachother (the gear changes direction while pulley keeps it the same), one bearing will always be ratcheting while the other is transmitting torque. Therefore, regardless of how you spin the input, the output always spins in the same direction. Also, after doing the math, it turns out that the output osciallting speeds isn’t symettric in both directions: it’s actually faster when spinning one way than the other. This is really good because it gives me a way to differentiate between the two directions. I sitll haven’t figured this out yet but I think I’m in the right direction. Overall, the math is complete hell and I’m not too sure whether it’s even possible to eliminate the clutch entirely and shift to a system of one-way bearings. However, I do feel like I’m somewhat onto something."}, {"post_id": 32569, "ts": "2026-07-21T20:40:47Z", "hours": 5.96, "text": "I haven’t devlogged in a while cuz I was busy with outpost/opensauce, but I almost finished the build. I had terrible printing problems (my parts were warping all over the place) and I basically had to print/build the entire thing in 2 nights. As a result i have rlly bad friction on the gear shifting mechanism. After talking to some people at outpost and opensauce, I believe it is possible replace the clutch with a system of one way bearings, so I will spend most of my time brainstorming solutions for a v3 or v4."}, {"post_id": 27538, "ts": "2026-07-13T05:55:23Z", "hours": 8.5006, "text": "I finished printing all the parts and tuned all of the tolerances. I ran into far too many printing issues (I probably wasted as much filament as will be used in the project), especially with bed adhesion. It was to the point where even a 10mm brim with 0 brim-object gap and increasing the bed temp by 5 degrees and washing the bed couldn’t stop warping. But at the end of the day I thugged through and got all my parts. I also ran into some cooked tolerancing with the bearings and even the screw holes for some reason. But all of that is behind me now cuz I can finally start building."}, {"post_id": 23948, "ts": "2026-07-07T05:04:04Z", "hours": 22.6917, "text": "I ordered all the parts and set stuff to print to test the tolerances and I ran into some pretty annoying issues. Here’s some of the issues I ran into: There was only 4 packs of 2 3x6 linear bearings in stock so I had to redesign the lead screw gear shifter to use 6x12 ones. 32x39 bearings are literally 12 bucks per and there’s only one singular vendor for it so I switched to 30x37 bearings which are way cheaper. In doing so I ran into really sketchy wall thicknesses. The slots for the 28mm dowel pins were way too close to the walls of the gear, so I had to change up some of the geometry so it doesn’t just print as a half circle. I spent a good amount of time tuning the tolerances so that the bearings would actually pressfit and not slide off easily. Same thing with the dowel pins. The biggest problem I ran into was that apparently you CAN rotate linear bearings around a shaft very smoothly. Every google search made it seems like I would break my wrist and explode trying to rotate a linear bearing, and it was pretty shocking to see it spinning smoother than a fidget spinner. This completely cooks my entire design and I still can’t figure out a good solution the second biggest problems was that, when switching from 32 to 30mm bearings, I forgot to change the dowel pin size so now they don’t fit in the bearings. I might just end up 3d printing pins if they’re too expensive/take too long to ship. a lot of the parts were really hard to 3d print so I split them into multiple to screw in. Apparently the maximum devlog time limit is 10 hrs. I had 22 hrs logged because I wanted to have some aura post with 40 hrs where the entire thing was built, but I ended up losing 12 hrs instead."}, {"post_id": 16824, "ts": "2026-06-27T10:00:06Z", "hours": 7.3842, "text": "another great lock in, the cad is done (finally). V2 seems like it could work IRL so I’m gonna actually order parts and build it. Today, I split the gray gears (with the tube) into two parts so I can actually assembly it, added countersinks to parts that need it, and fixed up some tolerances. I don’t have too many new ideas for the V3, but hopefully after I build/test V2 I can notice some key problems. Here’s the general gist of I’m aiming to accomplish: Obviously, I need to actually lock in with elliptical gears for the V3. This is the biggest problem with the V2. Because of the sinusoidal motion, the output gear isn’t constant speed (it oscillates slightly too). The whole extra gear for the CAM is super annoying, so I’m gonna keep it coaxial to the input/output shaft (running three things coaxial) and gear it from the tubes instead of a separate thing. I need a huge geometry change for this which is why I’m saving it for a V3. I want to figure out a better way to do the dog clutch system. I’m hoping there’s a smarter way which doesn’t rely on meshing/unmeshing but so far I couldn’t think of anything. I’m really happy with where this has come, and I can’t wait to start assembling this. For those who want to take a closer look, here is the link to the cad: https://cad.onshape.com/documents/c369754a085e1b437744081a/w/8784f23027b47ba880d55ef1/e/7f96dc46c879863ea30c1be9?renderMode=0&uiState=6a3f9f14c9069ebe4a356101"}, {"post_id": 16166, "ts": "2026-06-26T08:42:14Z", "hours": 8.2175, "text": "insane lock in, I finished the whole linear motion, and made tons of small changes. Here’s some of the bigger stuff I did: I was originally planning to use thrust bearings, but they were way too big. Instead, I just decided to use 3x6 bearings sideways (ball bearings are designed to handle radial load anyway). The packaging was cleaner than thrust bearings anyway. for the linear motion, I had to add more dowel pins - linear bearings to stop the thing from rotating with the lead screw. I ran into some really stupid onshape problems where everything was off by 0.088 degrees for some reason. I was messing with random parts and doing random mates for like 30 minutes until suddenly it worked. I have no clue how, but that doesn’t matter. The linear cams were hitting the 3mm dowel pins inside the gear so I cut out part of it. The linear cam seemed really weak, so I connected the bottom of the ramp to the main assembly. This was a huge pain because there’s barely any space, so tolerances had to be tight. Just one more day of cad and I will be done with it."}, {"post_id": 15541, "ts": "2026-06-25T08:19:43Z", "hours": 4.5006, "text": "Huge lock in, finished up the linear CAM so it should work now, and started the worm gear for the gear shifter. I realized I was doing the linear CAM wrong, and it has to be mirrored instead of just a 180 degree turn, so I fixed that and made a new part for the other side. I also added the lead screw and bearing for the gear shifting. Turns out everything packages nicely (i love uxcell) so I don’t have to do cooked stuff. Just another day or two of CAD and I should be ready to build."}, {"post_id": 14927, "ts": "2026-06-24T07:41:56Z", "hours": 10.0839, "text": "Did tons of changes to the design and continued procrastinating my devlogs. I realized the whole dog clutch thing was too cooked with that little space because it means less space between the bearings for the perpendicular cam. It was also better to change the angle of the linear cam to 45 degrees, and doing so gave me more space. I finished up the dog clutch stuff. I also spent some time cadding the perpendicular cam, and I ended up spending a couple of hours learning surface modeling in Onshape (it was super hard to get it to work). I also put tons of time into thinking about a better way to power the cam: having a whole separate gear is messy, so I wanted to keep it coaxial on the output shaft, but it turns out there isn’t enough space. Hopefully I can switch to this in a V3. I’m also saving elliptical gears for a V3 cuz I have to get this done by outpost. I just need to do some final touches and a full assembly check before I can start building."}, {"post_id": 11814, "ts": "2026-06-19T07:23:14Z", "hours": 4.7167, "text": "I added the dog clutches and realized there’s some big spacing issues. I mated the dog clutches and switched from a 19mm to 18mm length linear bearing. There’s some really bad spacing issues with the linear bearings: not only is it super long, but there also needs to be space between the two separate shafts so that the linear bearings don’t contact two at the same time. However, this distance can’t be too much or else the distance between the clutch and the gear in disengaged state will be too small. I spent some time searching for that balance only to realize that my linear bearing was contacting the flanged bearing, so I changed the lengths up but still no luck. I’m probably going to just make the whole thing a bit wider (because the angle for the linear motion is too steep right now anyway) which should make everything a lot easier."}, {"post_id": 11140, "ts": "2026-06-18T06:55:51Z", "hours": 6.8189, "text": "Finished around half of the assembly. I assembled some of the parts in onshape and realized there’s a few intersections and some of the spacings were off so I changed those. I didn’t run into much problems, but I had a few better ideas that I’ll try implementing in the future: It turns out I was being stupid and you need two separate dog clutches for each side. This might actually be better because since they just have to rotate differently but the spacing between them is constant, I can make that outer ring much thicker. This gives me space to bearing sandwich the cam instead of doing some other cooked stuff. However this also means you need two separate shafts which are cantilevered. I need to figure out a way to support the shafts from the inner end. While I was assembling, I realized I had done the linear cam (for the gear shifting) wrong because everything can be one part. This will make the entire thing thinner. I had a stroke of genius and realized that instead of using that fifth bottom gear which makes everything bigger and ugly, I can gear the perpendicular cam (for the dog clutches) to the gear shifting mechanism, making the entire gearbox so much cleaner. This is kinda cooked because it means the gears will be sliding on each other and because it relies on the tolerancing of 3d printed parts which I don’t trust too much. But if it means making the gearbox look much better, it may be worth it (aesthetics are the most important consideration when designing functional parts). I realized I could switch everything from mod 1.25mm to mod 1 or even mod 0.8 because there’s no more cooked gear meshing/unmeshing. However, it may be too late to do this for the V2, so I’ll probably save it for a V3. The gearbox is not only thinner than the V1, but is also much less cooked. And (probably best of all) the packaging will be really really clean. It does take up more space radially, but that can easily be fixed by switching from mod 1.25 to mod 0.8."}, {"post_id": 10511, "ts": "2026-06-17T08:13:48Z", "hours": 13.7492, "text": "I’ve been procrastinating my devlogs, but I finished up basically all the parts and fixed a ton of problems. Now I can get started with the assembly. I’ve been procrastinating way too much with devlogging because every time I finish recording its late at night and I’m too lazy to devlog but here’s a summary: I tried implementing the linear cam (which is just a fancy name for a sliding ramp) but I quit halfway through because there was barely any space and I was too lazy to make it work. I then implemented my old idea (the linkage) but when you mirror it, it takes up 50mm which is huge. I then decided to go back to the linear cam. I added two ramps and two slots instead of just one so its more stable. I plan to add a screwed in 3d print plate underneath so it doesn’t bend. Now it only takes up like 35mm which is slightly better. I mirrored the gear and realized the plate that switches the gear ratio will be hitting the outer bearing of the dog clutch, so I spaced out the gears a bit more. I’ll probably be switching away from the outer gear on the dog clutch because it takes up tons of space. The parts are basically done, I just have to see how everything works in an assembly."}, {"post_id": 7364, "ts": "2026-06-12T08:34:27Z", "hours": 2.0681, "text": "Figured out perpendicular cam geometry. I was running into quite a few issues and managed to find a solution that fixed most of them. I pivoted from 6mm ID bearings to 32mm for the second stage of gears (the oscillating ones). I also realized that instead of moving the dog clutch directly, I have to mount another bearing around it with a 3d print mount. This not only allowed me to save tons of space, but now I only have to use one perpendicular cam because I can make the 3d prints 90 degrees offset, preserving phase. Here are some problems I ran into and how I tried fixing them: The 32mm bearings were hitting, so I changed up the main geometry and will be alternately adding flange space on each side of the main plate. There isn’t enough space for 2 flanges to be next to each other, but there’s enough space for 1 flange and a normal bearing to be next to each other (0.1mm of space). With my old design (screwing a sidways bearing directly on the dog clutch), I had to use two separate cams because the phase was not 90 degrees offset. However, with another bearing around the whole thing, I can change the angle to not be radial, making it exactly 90 degrees. Looks like V2 will take the shape of a pentagon, and will soon look like a hexagon once I add the linear motion for the gear shifting mechanism."}, {"post_id": 6718, "ts": "2026-06-11T07:53:07Z", "hours": 3.0533, "text": "I did tons of brainstorming and came up with a better replacement for the meshing/unmeshing gears (I actually had 2.5 hours more recorded the night before but lapse ran into a problem so they aren’t counted for here). I realized I could keep the gears in contact the entire time, and instead use a perpendicular CAM (idk what it’s called, it’s basically a CAM that has its offsets parallel to its axis of rotation) to engage a dog clutch onto the gears. The dog clutch basically has 0 chance of bad alignment because the clutch will self align. This hopefully makes everything much more reliable and efficient. To power this, I need a third gear directly connected to the input gear that takes the linear CAM below the input shaft (you can’t run it coaxially). To make it fit, I changed up some of the gear ratios. I soon plan to switch from 1.25 mm to 1mm modulus."}, {"post_id": 5446, "ts": "2026-06-09T07:10:30Z", "hours": 5.2933, "text": "Continued sketching my V2. I spent most of my time visualizing the whole thing (I spent almost two hours sketching the thing out and doing the math). Here are some of the problems I ran into (and how I fixed them): I need the inputs on both sides to be powered, but I also want the output to be a pulley on the side (not in the center). This is impossible with a normal coaxial setup. Instead, I linked the first stage of gears (the one that has the ration changing mechanism) and will be changing up the linear motion mechanism. When connecting the first stage, it hit the output gear, so I had to change some of the geometry. As mentioned before, the radial force by the gear changing mechanism of V1 will probably cause the linear bearings to bind, so I’ll be changing this to a static linear-CAM type of motion for a constant force throughout the motion. Because I’m linking the first stage, everything will basically be inside a tube."}, {"post_id": 4760, "ts": "2026-06-08T07:08:52Z", "hours": 3.3856, "text": "Did some math for the V2. I want the output to be at a constant speed, which means the gears have to be noncircular. The output right now actually isn’t even sinusoidal, and Claude and I had to do tons of weird trig to find the angle as a function of time. After graphing everything on Desmos, I figured out the ideal shape of the gears. Next, I’ll do more mastersketching, and export the shapes from Desmos into Onshape. In the image, the black curve is the position as a function of time, and the blue and red curves are the ideal gear shapes. Actually, now that I think about it, this is wrong and I need to change the whole thing."}, {"post_id": 3356, "ts": "2026-06-06T07:38:50Z", "hours": 4.0761, "text": "I made some minor changes and I’m almost ready for a v2. I fixed up some of the spacers, changed the direction of the linkage that changes the ratio, changed some of the bearings. I also changed the coloring, and it looks much cleaner (I chose pink because I have pink filament loaded in, if you guys have any recommendations please tell me). Here are some fundamental problems with the current version and how I’ll fix them in the v2: The biggest problem is probably gears meshing. The entire thing has to be perfectly synchronized for the gears to mesh perfectly every time, which is obviously impossible. The only thing preventing jams right now is my prayers. However, backlash does give it some room for error. I’ll probably find a better gear tooth profile for my V2, but this is sort of a fundamental problems that will exist. The second biggest problem is that the gears oscillate from max speed to 0 speed every half-cycle, which means the speed will be constantly oscillating. This is easily fixable: in my V2, I’ll use more driving gears (probably 4) each active for a smaller fraction of their period. This combined with elliptical gears to counter the sine waves should make the output basically constant speed. The linkage for the gear changing has basically zero torque, and backlash will completely fry it. Also, this adds weird thrust forces on the linear bearings which will probably cause them to bind. In my V2, I’ll probably shift from a linkage to a linear CAM type of thing (I still have to figure it out). This is really big and wastes some space. My V2 will (hopefully) have better packaging and be smaller. This is achieved by putting the second layer of gears on the inside of the plate and praying there is enough space. The uniform coloring makes it look way better. Once again, if you have any colors you think would look better, please tell me."}, {"post_id": 2610, "ts": "2026-06-05T07:19:25Z", "hours": 4.9444, "text": "I basically finished up the linear motion for the CAM. All that remains is some minute adjustments. Here’s some problems I ran into: The geometry was incredibly hard due to the lack of space, and I ended up just trying a bunch of possibilities and landing on one that worked decently. While I was planning to use belts, I switched to gears after I saw how little space there was. Screws were hitting the servo for the gear changing mechanism, so I rearranged it so the lip is on the outside of the plate, giving me a precious 4mm to work with. It was hard to come up with a way to ensure the full range of motion always happens. There’s nothing pushing the gears up after the CAM pushes it down. Initially, I was planning to do some complex linkage relying on the definition of an ellipse (the sum of distances from the foci is constant). I tried sketching it out but there was literally no space. At the end, I thought of tying a string to both gears and wrap it around an idler to keep the constant sum of distances. This thing’s gonna look clean once everything is colored. All that remains is some minute adjustments and I can move on to a V2."}, {"post_id": 2001, "ts": "2026-06-04T08:28:28Z", "hours": 4.7186, "text": "Started the linear motion for the CAM. I was initially thinking about using MGN3 linear rails until a realized that each rail is over 100 bucks. Instead, I decided on linear bearing based motion with 3mm rods similar to how the ratio changes. Here’s some problems I ran into: Cheap MGN rails were way too big so I decided on the linear bearings (I spent way too long searching for cheap MGN3 linear rails) I initially wanted to put the rods between the yellow and blue plate, but after sketching it I realized the tolerances were too sketchy. Initially I was going to do one main CAM in the center, but I realized when the CAM is pushing the shaft to the outside, the angle is weird so the force is basically transmitted perpendicular to the direction of the motion, which really cooks efficiency. So instead I decided on 2 smaller CAMS that are belted to the main gear. some future/long term problems I need to fix: I don’t think there’s enough space for the belts and cams, so this whole design might be fried The 3mm rods aren’t constrained on their ends, so I have to figure out a way to do that (right now its only held by friction). The motion of the driven gear will oscillate a ton because of the CAM. One potential solution is to use elliptical gears and have the gears engage only in a certain phase where its speed is high (so its not stopping) There’s something similar to the coaxial effect from swerve drives in this gearbox too: I’m gonna call it the CVT effect. When the gear ratio changes, the linear motion makes the gear change phases. Something similar happens because of the CAM, but this isn’t that big of a problem. But when in doubt, assume software can account for it."}, {"post_id": 1318, "ts": "2026-06-03T07:33:32Z", "hours": 1.1881, "text": "Mounted the CAM gear, added a front plate, and added screws. I ran into a problem where one of the hubs hits the belt to the lead screw so I changed up some of the geometry. The gearbox is starting to look pretty complicated and dense without the second most complicated part (the CAM). I am holding off coloring everything and pocketing till the very end because it’ll be very satisfying."}, {"post_id": 1291, "ts": "2026-06-03T05:55:02Z", "hours": 3.5786, "text": "Finish up Linear Motion for CVT. Mounted the linear bearing, added the servo, and finalized the linkage so the actual CVT part now works. Now, I have to work on the CAM mechanism."}]...
|
Title: Geared Reversible CVT by @packager | Starda Title: Geared Reversible CVT by @packager | Stardance
Devlogs:
Finish up Linear Motion for CVT. Mounted the linear bearing, added the servo, and finalized the linkage so the actual CVT part now works. Now, I have to work on the CAM mechanism.
Mounted the CAM gear, added a front plate, and added screws. I ran into a problem where one of the hubs hits the belt to the lead screw so I changed up some of the geometry. The gearbox is starting to look pretty complicated and dense without the second most complicated part (the CAM). I am holding off coloring everything and pocketing till the very end because it’ll be very satisfying.
Started the linear motion for the CAM. I was initially thinking about using MGN3 linear rails until a realized that each rail is over 100 bucks. Instead, I decided on linear bearing based motion with 3mm rods similar to how the ratio changes. Here’s some problems I ran into: Cheap MGN rails were way too big so I decided on the linear bearings (I spent way too long searching for cheap MGN3 linear rails) I initially wanted to put the rods between the yellow and blue plate, but after sketching it I realized the tolerances were too sketchy. Initially I was going to do one main CAM in the center, but I realized when the CAM is pushing the shaft to the outside, the angle is weird so the force is basically transmitted perpendicular to the direction of the motion, which really cooks efficiency. So instead I decided on 2 smaller CAMS that are belted to the main gear. some future/long term problems I need to fix: I don’t think there’s enough space for the belts and cams, so this whole design might be fried The 3mm rods aren’t constrained on their ends, so I have to figure out a way to do that (right now its only held by friction). The motion of the driven gear will oscillate a ton because of the CAM. One potential solution is to use elliptical gears and have the gears engage only in a certain phase where its speed is high (so its not stopping) There’s something similar to the coaxial effect from swerve drives in this gearbox too: I’m gonna call it the CVT effect. When the gear ratio changes, the linear motion makes the gear change phases. Something similar happens because of the CAM, but this isn’t that big of a problem. But when in doubt, assume software can account for it.
I basically finished up the linear motion for the CAM. All that remains is some minute adjustments. Here’s some problems I ran into: The geometry was incredibly hard due to the lack of space, and I ended up just trying a bunch of possibilities and landing on one that worked decently. While I was planning to use belts, I switched to gears after I saw how little space there was. Screws were hitting the servo for the gear changing mechanism, so I rearranged it so the lip is on the outside of the plate, giving me a precious 4mm to work with. It was hard to come up with a way to ensure the full range of motion always happens. There’s nothing pushing the gears up after the CAM pushes it down. Initially, I was planning to do some complex linkage relying on the definition of an ellipse (the sum of distances from the foci is constant). I tried sketching it out but there was literally no space. At the end, I thought of tying a string to both gears and wrap it around an idler to keep the constant sum of distances. This thing’s gonna look clean once everything is colored. All that remains is some minute adjustments and I can move on to a V2.
I made some minor changes and I’m almost ready for a v2. I fixed up some of the spacers, changed the direction of the linkage that changes the ratio, changed some of the bearings. I also changed the coloring, and it looks much cleaner (I chose pink because I have pink filament loaded in, if you guys have any recommendations please tell me). Here are some fundamental problems with the current version and how I’ll fix them in the v2: The biggest problem is probably gears meshing. The entire thing has to be perfectly synchronized for the gears to mesh perfectly every time, which is obviously impossible. The only thing preventing jams right now is my prayers. However, backlash does give it some room for error. I’ll probably find a better gear tooth profile for my V2, but this is sort of a fundamental problems that will exist. The second biggest problem is that the gears oscillate from max speed to 0 speed every half-cycle, which means the speed will be constantly oscillating. This is easily fixable: in my V2, I’ll use more driving gears (probably 4) each active for a smaller fraction of their period. This combined with elliptical gears to counter the sine waves should make the output basically constant speed. The linkage for the gear changing has basically zero torque, and backlash will completely fry it. Also, this adds weird thrust forces on the linear bearings which will probably cause them to bind. In my V2, I’ll probably shift from a linkage to a linear CAM type of thing (I still have to figure it out). This is really big and wastes some space. My V2 will (hopefully) have better packaging and be smaller. This is achieved by putting the second layer of gears on the inside of the plate and praying there is enough space. The uniform coloring makes it look way better. Once again, if you have any colors you think would look better, please tell me.
Did some math for the V2. I want the output to be at a constant speed, which means the gears have to be noncircular. The output right now actually isn’t even sinusoidal, and Claude and I had to do tons of weird trig to find the angle as a function of time. After graphing everything on Desmos, I figured out the ideal shape of the gears. Next, I’ll do more mastersketching, and export the shapes from Desmos into Onshape. In the image, the black curve is the position as a function of time, and the blue and red curves are the ideal gear shapes. Actually, now that I think about it, this is wrong and I need to change the whole thing.
Continued sketching my V2. I spent most of my time visualizing the whole thing (I spent almost two hours sketching the thing out and doing the math). Here are some of the problems I ran into (and how I fixed them): I need the inputs on both sides to be powered, but I also want the output to be a pulley on the side (not in the center). This is impossible with a normal coaxial setup. Instead, I linked the first stage of gears (the one that has the ration changing mechanism) and will be changing up the linear motion mechanism. When connecting the first stage, it hit the output gear, so I had to change some of the geometry. As mentioned before, the radial force by the gear changing mechanism of V1 will probably cause the linear bearings to bind, so I’ll be changing this to a static linear-CAM type of motion for a constant force throughout the motion. Because I’m linking the first stage, everything will basically be inside a tube.
I did tons of brainstorming and came up with a better replacement for the meshing/unmeshing gears (I actually had 2.5 hours more recorded the night before but lapse ran into a problem so they aren’t counted for here). I realized I could keep the gears in contact the entire time, and instead use a perpendicular CAM (idk what it’s called, it’s basically a CAM that has its offsets parallel to its axis of rotation) to engage a dog clutch onto the gears. The dog clutch basically has 0 chance of bad alignment because the clutch will self align. This hopefully makes everything much more reliable and efficient. To power this, I need a third gear directly connected to the input gear that takes the linear CAM below the input shaft (you can’t run it coaxially). To make it fit, I changed up some of the gear ratios. I soon plan to switch from 1.25 mm to 1mm modulus.
Figured out perpendicular cam geometry. I was running into quite a few issues and managed to find a solution that fixed most of them. I pivoted from 6mm ID bearings to 32mm for the second stage of gears (the oscillating ones). I also realized that instead of moving the dog clutch directly, I have to mount another bearing around it with a 3d print mount. This not only allowed me to save tons of space, but now I only have to use one perpendicular cam because I can make the 3d prints 90 degrees offset, preserving phase. Here are some problems I ran into and how I tried fixing them: The 32mm bearings were hitting, so I changed up the main geometry and will be alternately adding flange space on each side of the main plate. There isn’t enough space for 2 flanges to be next to each other, but there’s enough space for 1 flange and a normal bearing to be next to each other (0.1mm of space). With my old design (screwing a sidways bearing directly on the dog clutch), I had to use two separate cams because the phase was not 90 degrees offset. However, with another bearing around the whole thing, I can change the angle to not be radial, making it exactly 90 degrees. Looks like V2 will take the shape of a pentagon, and will soon look like a hexagon once I add the linear motion for the gear shifting mechanism.
I’ve been procrastinating my devlogs, but I finished up basically all the parts and fixed a ton of problems. Now I can get started with the assembly. I’ve been procrastinating way too much with devlogging because every time I finish recording its late at night and I’m too lazy to devlog but here’s a summary: I tried implementing the linear cam (which is just a fancy name for a sliding ramp) but I quit halfway through because there was barely any space and I was too lazy to make it work. I then implemented my old idea (the linkage) but when you mirror it, it takes up 50mm which is huge. I then decided to go back to the linear cam. I added two ramps and two slots instead of just one so its more stable. I plan to add a screwed in 3d print plate underneath so it doesn’t bend. Now it only takes up like 35mm which is slightly better. I mirrored the gear and realized the plate that switches the gear ratio will be hitting the outer bearing of the dog clutch, so I spaced out the gears a bit more. I’ll probably be switching away from the outer gear on the dog clutch because it takes up tons of space. The parts are basically done, I just have to see how everything works in an assembly.
Finished around half of the assembly. I assembled some of the parts in onshape and realized there’s a few intersections and some of the spacings were off so I changed those. I didn’t run into much problems, but I had a few better ideas that I’ll try implementing in the future: It turns out I was being stupid and you need two separate dog clutches for each side. This might actually be better because since they just have to rotate differently but the spacing between them is constant, I can make that outer ring much thicker. This gives me space to bearing sandwich the cam instead of doing some other cooked stuff. However this also means you need two separate shafts which are cantilevered. I need to figure out a way to support the shafts from the inner end. While I was assembling, I realized I had done the linear cam (for the gear shifting) wrong because everything can be one part. This will make the entire thing thinner. I had a stroke of genius and realized that instead of using that fifth bottom gear which makes everything bigger and ugly, I can gear the perpendicular cam (for the dog clutches) to the gear shifting mechanism, making the entire gearbox so much cleaner. This is kinda cooked because it means the gears will be sliding on each other and because it relies on the tolerancing of 3d printed parts which I don’t trust too much. But if it means making the gearbox look much better, it may be worth it (aesthetics are the most important consideration when designing functional parts). I realized I could switch everything from mod 1.25mm to mod 1 or even mod 0.8 because there’s no more cooked gear meshing/unmeshing. However, it may be too late to do this for the V2, so I’ll probably save it for a V3. The gearbox is not only thinner than the V1, but is also much less cooked. And (probably best of all) the packaging will be really really clean. It does take up more space radially, but that can easily be fixed by switching from mod 1.25 to mod 0.8.
I added the dog clutches and realized there’s some big spacing issues. I mated the dog clutches and switched from a 19mm to 18mm length linear bearing. There’s some really bad spacing issues with the linear bearings: not only is it super long, but there also needs to be space between the two separate shafts so that the linear bearings don’t contact two at the same time. However, this distance can’t be too much or else the distance between the clutch and the gear in disengaged state will be too small. I spent some time searching for that balance only to realize that my linear bearing was contacting the flanged bearing, so I changed the lengths up but still no luck. I’m probably going to just make the whole thing a bit wider (because the angle for the linear motion is too steep right now anyway) which should make everything a lot easier.
Did tons of changes to the design and continued procrastinating my devlogs. I realized the whole dog clutch thing was too cooked with that little space because it means less space between the bearings for the perpendicular cam. It was also better to change the angle of the linear cam to 45 degrees, and doing so gave me more space. I finished up the dog clutch stuff. I also spent some time cadding the perpendicular cam, and I ended up spending a couple of hours learning surface modeling in Onshape (it was super hard to get it to work). I also put tons of time into thinking about a better way to power the cam: having a whole separate gear is messy, so I wanted to keep it coaxial on the output shaft, but it turns out there isn’t enough space. Hopefully I can switch to this in a V3. I’m also saving elliptical gears for a V3 cuz I have to get this done by outpost. I just need to do some final touches and a full assembly check before I can start building.
Huge lock in, finished up the linear CAM so it should work now, and started the worm gear for the gear shifter. I realized I was doing the linear CAM wrong, and it has to be mirrored instead of just a 180 degree turn, so I fixed that and made a new part for the other side. I also added the lead screw and bearing for the gear shifting. Turns out everything packages nicely (i love uxcell) so I don’t have to do cooked stuff. Just another day or two of CAD and I should be ready to build.
insane lock in, I finished the whole linear motion, and made tons of small changes. Here’s some of the bigger stuff I did: I was originally planning to use thrust bearings, but they were way too big. Instead, I just decided to use 3x6 bearings sideways (ball bearings are designed to handle radial load anyway). The packaging was cleaner than thrust bearings anyway. for the linear motion, I had to add more dowel pins - linear bearings to stop the thing from rotating with the lead screw. I ran into some really stupid onshape problems where everything was off by 0.088 degrees for some reason. I was messing with random parts and doing random mates for like 30 minutes until suddenly it worked. I have no clue how, but that doesn’t matter. The linear cams were hitting the 3mm dowel pins inside the gear so I cut out part of it. The linear cam seemed really weak, so I connected the bottom of the ramp to the main assembly. This was a huge pain because there’s barely any space, so tolerances had to be tight. Just one more day of cad and I will be done with it.
another great lock in, the cad is done (finally). V2 seems like it could work IRL so I’m gonna actually order parts and build it. Today, I split the gray gears (with the tube) into two parts so I can actually assembly it, added countersinks to parts that need it, and fixed up some tolerances. I don’t have too many new ideas for the V3, but hopefully after I build/test V2 I can notice some key problems. Here’s the general gist of I’m aiming to accomplish: Obviously, I need to actually lock in with elliptical gears for the V3. This is the biggest problem with the V2. Because of the sinusoidal motion, the output gear isn’t constant speed (it oscillates slightly too). The whole extra gear for the CAM is super annoying, so I’m gonna keep it coaxial to the input/output shaft (running three things coaxial) and gear it from the tubes instead of a separate thing. I need a huge geometry change for this which is why I’m saving it for a V3. I want to figure out a better way to do the dog clutch system. I’m hoping there’s a smarter way which doesn’t rely on meshing/unmeshing but so far I couldn’t think of anything. I’m really happy with where this has come, and I can’t wait to start assembling this. For those who want to take a closer look, here is the link to the cad: https://cad.onshape.com/documents/c369754a085e1b437744081a/w/8784f23027b47ba880d55ef1/e/7f96dc46c879863ea30c1be9?renderMode=0&uiState=6a3f9f14c9069ebe4a356101
I ordered all the parts and set stuff to print to test the tolerances and I ran into some pretty annoying issues. Here’s some of the issues I ran into: There was only 4 packs of 2 3x6 linear bearings in stock so I had to redesign the lead screw gear shifter to use 6x12 ones. 32x39 bearings are literally 12 bucks per and there’s only one singular vendor for it so I switched to 30x37 bearings which are way cheaper. In doing so I ran into really sketchy wall thicknesses. The slots for the 28mm dowel pins were way too close to the walls of the gear, so I had to change up some of the geometry so it doesn’t just print as a half circle. I spent a good amount of time tuning the tolerances so that the bearings would actually pressfit and not slide off easily. Same thing with the dowel pins. The biggest problem I ran into was that apparently you CAN rotate linear bearings around a shaft very smoothly. Every google search made it seems like I would break my wrist and explode trying to rotate a linear bearing, and it was pretty shocking to see it spinning smoother than a fidget spinner. This completely cooks my entire design and I still can’t figure out a good solution the second biggest problems was that, when switching from 32 to 30mm bearings, I forgot to change the dowel pin size so now they don’t fit in the bearings. I might just end up 3d printing pins if they’re too expensive/take too long to ship. a lot of the parts were really hard to 3d print so I split them into multiple to screw in. Apparently the maximum devlog time limit is 10 hrs. I had 22 hrs logged because I wanted to have some aura post with 40 hrs where the entire thing was built, but I ended up losing 12 hrs instead.
I finished printing all the parts and tuned all of the tolerances. I ran into far too many printing issues (I probably wasted as much filament as will be used in the project), especially with bed adhesion. It was to the point where even a 10mm brim with 0 brim-object gap and increasing the bed temp by 5 degrees and washing the bed couldn’t stop warping. But at the end of the day I thugged through and got all my parts. I also ran into some cooked tolerancing with the bearings and even the screw holes for some reason. But all of that is behind me now cuz I can finally start building.
I haven’t devlogged in a while cuz I was busy with outpost/opensauce, but I almost finished the build. I had terrible printing problems (my parts were warping all over the place) and I basically had to print/build the entire thing in 2 nights. As a result i have rlly bad friction on the gear shifting mechanism. After talking to some people at outpost and opensauce, I believe it is possible replace the clutch with a system of one way bearings, so I will spend most of my time brainstorming solutions for a v3 or v4.
Did tons of math and tons of brainstorming. The math is absolute hell and annoying but desmos is carrying. I got a shape for the non-circular gears for now (they can’t be called elliptical), see the first image. The sharp angles might be a problem with the gears depending on how many teeth are on them, so I may have to change a fully flat output to something very slightly oscillating. I spent a good amount of time thinking about how to eliminate the clutch. I am no longer as confident about there being a solution as right after opensauce, but I may be onto something. I came up with a mechanical “absolute value” system which takes an input and basically gives the absolute value of it. The input will be both geared and belted to an output shaft, and the recieving gear and pulley will have a one way bearing on them. Since the direction of each recieving thing is opposite to eachother (the gear changes direction while pulley keeps it the same), one bearing will always be ratcheting while the other is transmitting torque. Therefore, regardless of how you spin the input, the output always spins in the same direction. Also, after doing the math, it turns out that the output osciallting speeds isn’t symettric in both directions: it’s actually faster when spinning one way than the other. This is really good because it gives me a way to differentiate between the two directions. I sitll haven’t figured this out yet but I think I’m in the right direction. Overall, the math is complete hell and I’m not too sure whether it’s even possible to eliminate the clutch entirely and shift to a system of one-way bearings. However, I do feel like I’m somewhat onto something.
Look who’s back. Back again. I was banned from using my personal computer because my parents saw that I was cadding instead of studying for sat, but I just took it and I can finally cad now. I feel like I’m close to finding a way to eliminate the clutch but I can’t figure out how to yet. Therefore I decided to save it for a v4 and focus on other stuff for a v3. Here’s some stuff I did today: I sketched out what the v3 will look like. Instead of a pentagon it’ll look more like a trapezoid because I don’t need the 3rd gear anymore. I’m still not sure if it’s possible to gear the gear selector 1:1 with the outside gears because it has to be bigger than the tube. After building my v2, I realized my gearshifting mechanism was completely cooked. It jammed a ton because there was nothing stopping the ring from angling and binding with the tube. Adding fuel to the fire was the fact that the worm gear mech only pushed it from one side making it impossible to stop the ring from angling. I wanted to add support rods for my v2 but it was impossible because the gears were way too close, but now it’s possible because of the new spacing. Also, the worm gear is effectively moved downward, more in line with the centers of the rings, which lets me wrap it around the ring and make bending less easy. I still haven’t decided if I want to stick with ramps or switch to something else. I switched everything to 1mm mod gears, but I realized spacing was way too cooked because there’s PROBABLY no space for the cutout for the ramps (or whatever I choose to use, it’s just that I have no space for 2 linear bearings in a row). I still haven’t figured out the cutout dimension fully, but there’s a good chance that I’ll end up switching back to 1.25mm mod. Also, 1mm mod means I need to buy new bearings and stuff which are expensive and cut away money from my stardust payout (which I wanna maximize because I NEED THAT MACBOOK so I can cad during school).
Finalized the sketching and starting making some parts. Here’s some stuff I did: I realized mod 1mm is way too small and I want the macbook more than a smaller cvt, so I’ll be sticking with mod 1.25mm. I basically went through like 35 features and redo them because of the new dimensions. I have yet to go through 210 more and add more features on top of that. Since I’m keeping the gears as mod 1.25mm, I increased the radius of the gear shifting from 9mm to 11mm (like it was originally). Based on how the built model performed, I redid a lot of the tolerances. I also needed to cad a new base plate because of the new shape. the gears were hitting so I changed the output and dog-clutch gear sizes. Now that I’m devlogging, I realize that I seriously need to lock in on the constant-speed gears. I’ll be spending lots of time tomorrow working on that.
Did more cad, especially working on the gear shifter mechanism. I was having lapse and hackatime issues so I couldn’t really record much or post a devlog. Here’s what I worked on and some problems I ran into: chromebooks are slow as hell and are literally impossible to cad on (hence i need the macbook). This means the only time I can cad really productivley is at home which is annoying because I don’t do anything at school. For the gearshifter to work, it needs to be geared 1:1 with the tubes. This is a huge problem geometrically because it hits the blue piece. In fact, it goes into the bearing hole for the blue piece which means I can’t just cope and be lazy by making the piece thin. The closer I move the output gears to the dog clutch gears, the closer the blue piece moves to the center gear which cancels out making the 1:1 gears smaller. I have to figure out a solution soon. I swtched from the cam being sandwiched between bearings to the bearings being sandwiched between the cam because it gives space for the gears to be on the outisde. I’m pretty sure this is also better force wise because instead of pulling out each bearings individually when it moves side to side, the bearings are in contact so you effectively have to pull out both bearings at the same time. Also the lever arm for the center version looks smaller than the version with the separate gear just for the shifting which means less friction. I had to tweak the ratios and spacing a bit because the blue piece barely has space. Even now, it’s way too thin (1mm) which I don’t like. No, I haven’t forgotten the mythical one-way-bearing based concept, I’m still thinking about it. I have a vague idea of what it should kind of look like (somehow have two sets, both of them mirrored, each of them ratcheting the other way). I’m pretty sure there’s a solution but I’m not smart enough to figure it out.
Did tons of cad, semi finished the parts (still need to fix some stuff) and started an assembly. Here’s some stuff I did/problems I ran into: I cadded the new lead screw mounts for the gearshifter. I lowk dont have any clue what I’ll do about it hitting the 1:1 gears. Hopefully there’s some geometry fixes I can make. The bottom moving piece (that moves back and forth following the cam) is oversized and will hit the ring for the ramp. I will change it tmmrw. I realized a lot of my new parts are gonna be really hard to print so I split them. I started the assembly. I finished the basic side (most of the rest should just be mirorred). I have to figure out a better way to transfer torque while also spinning (remember the linear bearings spinning smooth). The current method just has something sliding on a shaft which is high friction. There are actual linear bearings that prevent rotation, but they are crazy expensive and barely produced anymore. I’ve also been thinking more about the one-way bearing based solution. I realize that maybe the key is just to mirror the whole gearbox and change the direction that it’s clutched in.
More cad. I assembled the lead screw and gear shifter. Here’s some stuff I did: After building my v2, I realized the ring is super unstable and can easily tilt, causing the whole thing to jam. This is especially true because its only being pushed at one point (the contact of the bearing). Therefore, I added some holes for rails so it can slide along the holes. However the rails need mounts which take up space, taking away space for the gear, so I might switch the rails to something else. The rails made the ring bigger so it started hitting the blue piece again, so i changed the position of the standoff to create more distance. I assembled the center shaft, which includes the output gears and the perpendicular cam. I had to change up some of the dimensions because it wasn’t fitting. I also removed the from the part because it would make it hard to print, and instead used a separate spacer. I’m starting to become pretty unproductive at cad because almost 40-50% of the time spent is just thinking about how I can design it rather than actually designing it. I also spent some time thinking about the one-way bearing solution. I finally got my hands on them so I’ll be trying stuff out instead of just trying to visualize them.
Made the 1:1 gears to power the cam and made a new rail system for the ring. Today was really productive, here’s what I did: initially, I messed with a lot of the dimensioning and spacing with the rails on the outside. I realized there’s no way it was gonna work, and even if it could, it would take up tons of space. I needed a better solution. Having the rails on the outside makes everything really big which doesn’t fit. I figured out a way to add a rail inside the tube. Instead of the ring being constrained to a rail, the inside thick square piece is constrained to a rail. This leaves tons of space on the outside for gears (almost 6mm of space on each side). I finally added the gears. I had 6mm of space which is more than enough. However, the gears hit the bearings that track the ring, so I’ll probably end up making the ring bigger either way. Another terrible thing is that the gears hit the blue piece. It actually goes far enough to cut into the bearing. Either I shift into smaller bearings, or I change the spacing between the gears. I still have to decide which on to do. I don’t think I’ll be building this version in hopes of coming up with a way to use one-way bearings.
I mirrored the whole thing, and the V3 looks complete but there’s some fundamental flaws. I also thopught a lot about the 1way bearing based solution. Here’s what I did: Mirrored the whole thing onto the other side. I didn’t run into any spacing issues which means I’m good at mastersketching. Currently, the 1:1 gears are hitting the big bearing that the dog clutch is in. I dont’ know how to fix this because it means I’ll have to change the gear ratios. I spent a lot of time thinking about the 1way cvt that doesn’t use clutching. I realized that I could put the input gear on a 1way bearing and somehow run different sets of gears based on the direction. However, everything is inevitably linked to the same output which jams everything. Also, the arm system is inherently not backdrivable which is makes the input on a 1way bearing solution not work. I’m gonna have to think more about a better solution. I need to do some finishing touches to the V3, but I’ll spend more of my time thinking about the 1way bearing cvt.
Finished most of the cad, just need to clean up tolerances and split a few parts. Here’s what I did: I made the rings for the gearshifter bigger because the gear shifter mount on the lead screw was hitting the center 1:1 gears. This caused lots of issues with sketches breaking so I had to redo those. I had to change the gearing for the last stage. The 1:1 gears were hitting the bearings so the only solution is to move the bearings further from the center, hence change the gear ratio. This also caused tons of problems and I had to redo a lot of the parts again, especially the gear shifter mount that mounts onto the lead screw. I added cutouts onto the blue part (it’s gray now, but the one that houses the bearing that the dog clutch goes on. The blue parts used to be hitting the 1:1 gears but now it clears by like 0.5 mm. I’m still deciding whether I want to assemble this or not. I can’t figure out the 1way bearing based thing, and I’m starting to feel like it’s fundamentally impossible.
Cleaned up a lot of the stuff hitting and a lot of the tolerances too. I also had to do some cooked surface modeling with onshape (I have never surface modeled before). Here’s what I did: The blue pieces were also hitting at the bottom, so I had to make the material even thinner than it was (really cooked, near 1.5mm thickness and barely clearing eachother). The standoff placements really cook everything so I’ll probably just extend the plate and move the standoffs further from the gears. However it will be uglier, and I would rather have a good looking cvt that doesn’t work than a ugly cvt that works. I had to do some really cooked stuff with surface modeling. Basically, the wrap feature wasn’t working. I spent like an hour or two trying to learn surface modeling, but nothing was working because the shape was weird, so I ended up just doing 8 separate revolutes, boolean, and then some move faces. Also, the bumps can’t be radial because the bearing isn’t radial (it faces horizontal, so the edge closer to the center moves up first which causes the whole thing to jam). To fix that I had to do even more cooked remove revolutes, then bridge curving and then knitting (I had never used these before) and fileting. I need to figure out a clearer way to do it because it’s getting on my nerves. I went through the latest V3 and compared around half of the holes to the V2 (it turns out there’s like 3 holes per part and theres like 100 holes to go through, not including clearances). The clearances also cooked some of the spacing so I went and fixed that. I’ve been spending some time thinking about the 1way bearing solution, and I completely switched up and now think it’s impossible.
Finished tolerancing the holes, and I added the pulley to the input gear. I also changed the large bearing mount for the gear shifter and also redid the lead screw mount because stuff was hitting. Here’s what I did: I went through like 70 holes, compared it to the toleranced version that was assembled. Lots of problems happened when I had to oversize the holes. For example, the linear bearing holes on the gear shifter mount had to be oversized, which made the thickness of the wall like 0.8mm thick. I then had to go into my mastersketch and change up the dimensions which took a stupidly long time. Regeneration times are hitting near 2 minutes (300 features isn’t good, plus tons of dependencies, and so many dimensions that it takes up the entire sketch). I added the pulley to the input gear. I had to switch to a different featurescript because the one I was using didn’t have GT2. After that it was pretty easy, just had to cad the walls, chamfer a bit and boolean and bore it. The most annoying part was that the copper lead screw nut (on the mount) was hitting the 1:1 gears completely ruining the whole thing. I basically had to redo the shaping of the lead screw mount. I moved the copper part further up the part, keeping the standoffs at basically the same level. As a result, I had more space at the bottom for two screws instead of 1. Also, now all the constraints are fully dependent on the external parts, so there’s no random dimensions I did just to make stuff look good, which is good because it means if I change the gearing or something in the mastersketch, the mount should update accordingly. This also took a pretty long time and 2 min regeneration doesn’t help....
|
1793450957.568789
|
1794055757.568789
|
|
59930
|
The Stratus Magpad by @ace_x | Stardance
|
ace_x
|
0
|
1.8
|
0
|
[]
|
[{"post_id": 64545, "ts": "202 [{"post_id": 64545, "ts": "2026-09-09T01:24:27Z", "hours": 1.8036, "text": "The making of the schematic: I started with the chip and just added stuff from memory till i had to check the datasheets and I got footprints in and tried using autoplacer but it doesnt like me, will add all footprints later"}]...
|
Title: The Stratus Magpad by @ace_x | Stardance
D Title: The Stratus Magpad by @ace_x | Stardance
Devlogs:
The making of the schematic: I started with the chip and just added stuff from memory till i had to check the datasheets and I got footprints in and tried using autoplacer but it doesnt like me, will add all footprints later...
|
1793638451.1776307
|
1794243251.1776307
|