|
37114
|
Slack Bot with a Humor by @Sai_Shreyansh | Stardan Slack Bot with a Humor by @Sai_Shreyansh | Stardance...
|
Sai_Shreyansh
|
1
|
1.0
|
1
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-01T06:42:09Z", "hours": 1.0, "multiplier": 1.37, "payout": 1, "blessing": "neutral", "text": "I made a Slack Bot, the difficult part was waiting for Nest to get approved for me and I’m happy that this came out good, as this is the first real project I’ve done. You can test this in the Slack bot-spam channel", "repo": "https://github.com/saishreyansh28-ux/Slack-Bot-Stardance", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354?_gl=1*1d6g81a*_gcl_au*MjA4NTgwODU1Mi4xNzkwNjA3OTcw"}]...
|
[{"post_id": 75806, "ts": "202 [{"post_id": 75806, "ts": "2026-10-01T06:33:15Z", "hours": 0.3797, "text": "Completed the thing fully!"}, {"post_id": 74944, "ts": "2026-09-28T17:26:58Z", "hours": 0.5036, "text": "got the code part done"}]...
|
Title: Slack Bot with a Humor by @Sai_Shreyansh | Title: Slack Bot with a Humor by @Sai_Shreyansh | Stardance
Devlogs:
got the code part done
Completed the thing fully!
Ships:
I made a Slack Bot, the difficult part was waiting for Nest to get approved for me and I’m happy that this came out good, as this is the first real project I’ve done. You can test this in the Slack bot-spam channel...
|
1793008094.0406616
|
1793094494.0406616
|
|
28654
|
Hyperlaunch by @byzann | Stardance
|
byzann
|
1
|
57.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T16:03:40Z", "hours": 57.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "My own Minecraft launcher, Hyperlaunch, is in a good, usable state. It supports most versions of Minecraft, as well as having built in support for both the Fabric and NeoForge loaders. Additionally, it supports downloading mods from Modrinth. Installations are divided into ‘instances’ by default, keeping mod setups separated. If you choose to try it, I hope you enjoy it! (ultimately I have more I want to add to this project, but it’s in a very good state at the moment.)", "repo": "https://github.com/ByzantineProcess/hyperlaunch", "demo": "https://github.com/ByzantineProcess/hyperlaunch/releases/tag/v0.1-bugfix"}]...
|
[{"post_id": 71712, "ts": "202 [{"post_id": 71712, "ts": "2026-09-21T11:15:25Z", "hours": 6.7503, "text": "Hyperlaunch (Minecraft launcher) - devlog 7 last one! I’ve fixed a lot of launcher bugs and prepared a minimal GUI for trying the launcher out. Windows and Linux builds are functional and tested. I can’t confirm Mac builds work without bugs, but the launcher core itself was tested on a Mac Neo around a week ago. I hope anyone reading enjoys Hyperlaunch, even if the user interface is a bit clunky at the moment."}, {"post_id": 68684, "ts": "2026-09-15T15:17:18Z", "hours": 8.7233, "text": "Hyperlaunch (Minecraft launcher) - devlog 6 i lost my sticky streak NeoForge support is done for 26.1 and later. Added an instance command for rudimentary management of game instances, you can see a demo of the interface below. Modrinth support is good enough for a search -> download flow, as also shown below. Still improving over time."}, {"post_id": 65282, "ts": "2026-09-10T09:33:27Z", "hours": 9.8283, "text": "Hyperlaunch - devlog 5 Modrinth support Modrinth support is progressing nicely, and Hyperlaunch is now (technically) capable of doing more complex searches than Modrinth App allows. This means Hyperlaunch is better at using Modrinth than Modrinth itself. NeoForge support I’ve started work on supporting the NeoForge mod loader inside Hyperlaunch. This is harder than Fabric for a few reasons, but the main issue is that it requires directly patching Minecraft’s code. The NeoForge installer handles this all, but I want to bring the patching system inside Hyperlaunch. This is progressing nicely too. I’ve had to add a dependency on 7-Zip’s LZMA SDK as part of this. Issues spent like 3 hours diagnosing why decompressing the NeoForge patches was broken only for it to be an accidental cast from an int64 to an int32. writing JSON classes so Hyperlaunch can read Modrinth API responses is taking too long"}, {"post_id": 58118, "ts": "2026-08-30T13:53:14Z", "hours": 8.3553, "text": "Hyperlaunch - devlog 4. It’s been a month since my last devlog because I’ve just been unmotivated to continue working. I do really want to finish this though, so I’ll see it through. This update is mostly about bugfixes. There are no big new features done. Modrinth support I spent a good 3-5 hours building out a proper, full featured Modrinth search client, just for the API docs to be wrong, meaning I massively over-engineered a simple system. Really annoying. Bugfixes All the optimisations and big changes I made over the past few devlogs meant I had a lot of broken code on my hands. Won’t list everything here, but: Nearly all code bound to the UI was outdated/wrong Microsoft auth broke The code that handles downloading the client would not extract some necessary files Listing versions to download broke Small new features Hyperlaunch can now generate Java launch commands, handling downloads/logins/etc. automatically. That’s.. it. No video for this devlog, have some assorted screenshots from development on this devlog’s work."}, {"post_id": 36254, "ts": "2026-07-28T07:23:26Z", "hours": 9.1853, "text": "Hyperlaunch - devlog 3 Hyperlaunch now has the fastest download time of any Minecraft launcher I have tested! This is due to a number of optimisations done, mostly informed from app profiling (you can see a screenshot below.) Network activity is also more steady, and should start less connections overall. Hyperlaunch was slower because parts of the cache system & download system were reading and writing to a lot of files at once. I used the PerfView profiler to figure out how I could improve the download time after testing Modrinth App and Pandora Launcher and scoring twice as worse against both. I’ve attached a screenshot of PerfView below, but it’s very ugly to look at. Changes: Many syscall optimisations in the download handler & caching system Download workers no longer wait for a file to be written to disk before starting another download Started on Modrinth API client Some bugfixes in client manifest parsing"}, {"post_id": 24601, "ts": "2026-07-08T09:55:06Z", "hours": 7.7542, "text": "Hyperlaunch - devlog 2 Hyperlaunch is a Minecraft launcher that tries to be as efficient as possible without compromise. Progress Caching : I finally made a proper global caching system! Its purpose is minimising the network traffic, both for launch speeds and general efficiency. It can get big at times, so I also added compression, using the Brotli algorithm for speed. The cache sits in front of every network request. The cache will try to minimise the cost of the network request where possible. Often, it will just find a cached version instead of using the network. The cache works by URL. It splits the URL into domain name and resource. Take Hyperlaunch’s Stardance project page as an example; if it were to be cached, the directory would be stardance.hackclub.com , and the resource would be projects/28654 . The resource name is hashed with XxHash128, a hashing algorithm that’s not used for storing secrets, then the file at the URL is cached at .hyperlaunch/cache/<directory>/<resource hash> . If the file came with caching instructions (either ETag or Last-Modified HTTP headers), then those are stored alongside the cached file as separate files (see the image attached.) Parallelism : The launcher now handles each task at the same time, instead of in order. This is probably the biggest speedup so far. Instances : The launcher can now handle multiple installs as instances! This means multiple setups can coexist, and users can pick between them. Think MultiMC or PrismLauncher. CLI : Reworked a lot of the CLI as part of these changes. Difficulties Maybe I’m just new to C#, but I found a lot of the HTTP stuff confusing. One example is using the Last-Modified header . If you want to use this header, you need to access the response.Content.Headers variable. For all other headers, you access response.Headers . Brotli compression also seemed unusually difficult. It only works on Stream objects, and the syntax was strange which resulted in a few unintentional logic bugs that I just didn’t know how to spot. Video and some photos of the cache in action below. The cache in action"}, {"post_id": 22826, "ts": "2026-07-05T12:59:36Z", "hours": 6.5678, "text": "Hyperlaunch devlog 1 Hyperlaunch is a Minecraft launcher that tries to be as efficient as possible without compromising in any area. I started this project earlier this year, but I want to finish it under Stardance. Progress Started on instances system for managing multiple installs. Like PrismLauncher or MultiMC. Added to, cleaned up, and fixed multiple issues in the client manifest parsing system. The client manifest is what tells the launcher how to do its job, where to download everything, and how to start the game. Mojang sometimes changes the format. In the 4-month gap since last working on this, they changed how Java arguments are handled, and added a way for launch ingredients to only be considered on specific OS version ranges (for example, only allow a certain library on Windows versions newer than 22H2). Those were both really annoying to fix, mostly because the parsing code was messy. (Used AI to split classes across files.) Added the ability to automatically download and launch Fabric modded versions. (see a demo below) (i really hope the video works, a cdn link should be below otherwise) cdn video link"}]...
|
Title: Hyperlaunch by @byzann | Stardance
Devlogs Title: Hyperlaunch by @byzann | Stardance
Devlogs:
Hyperlaunch devlog 1 Hyperlaunch is a Minecraft launcher that tries to be as efficient as possible without compromising in any area. I started this project earlier this year, but I want to finish it under Stardance. Progress Started on instances system for managing multiple installs. Like PrismLauncher or MultiMC. Added to, cleaned up, and fixed multiple issues in the client manifest parsing system. The client manifest is what tells the launcher how to do its job, where to download everything, and how to start the game. Mojang sometimes changes the format. In the 4-month gap since last working on this, they changed how Java arguments are handled, and added a way for launch ingredients to only be considered on specific OS version ranges (for example, only allow a certain library on Windows versions newer than 22H2). Those were both really annoying to fix, mostly because the parsing code was messy. (Used AI to split classes across files.) Added the ability to automatically download and launch Fabric modded versions. (see a demo below) (i really hope the video works, a cdn link should be below otherwise) cdn video link
Hyperlaunch - devlog 2 Hyperlaunch is a Minecraft launcher that tries to be as efficient as possible without compromise. Progress Caching : I finally made a proper global caching system! Its purpose is minimising the network traffic, both for launch speeds and general efficiency. It can get big at times, so I also added compression, using the Brotli algorithm for speed. The cache sits in front of every network request. The cache will try to minimise the cost of the network request where possible. Often, it will just find a cached version instead of using the network. The cache works by URL. It splits the URL into domain name and resource. Take Hyperlaunch’s Stardance project page as an example; if it were to be cached, the directory would be stardance.hackclub.com , and the resource would be projects/28654 . The resource name is hashed with XxHash128, a hashing algorithm that’s not used for storing secrets, then the file at the URL is cached at .hyperlaunch/cache/<directory>/<resource hash> . If the file came with caching instructions (either ETag or Last-Modified HTTP headers), then those are stored alongside the cached file as separate files (see the image attached.) Parallelism : The launcher now handles each task at the same time, instead of in order. This is probably the biggest speedup so far. Instances : The launcher can now handle multiple installs as instances! This means multiple setups can coexist, and users can pick between them. Think MultiMC or PrismLauncher. CLI : Reworked a lot of the CLI as part of these changes. Difficulties Maybe I’m just new to C#, but I found a lot of the HTTP stuff confusing. One example is using the Last-Modified header . If you want to use this header, you need to access the response.Content.Headers variable. For all other headers, you access response.Headers . Brotli compression also seemed unusually difficult. It only works on Stream objects, and the syntax was strange which resulted in a few unintentional logic bugs that I just didn’t know how to spot. Video and some photos of the cache in action below. The cache in action
Hyperlaunch - devlog 3 Hyperlaunch now has the fastest download time of any Minecraft launcher I have tested! This is due to a number of optimisations done, mostly informed from app profiling (you can see a screenshot below.) Network activity is also more steady, and should start less connections overall. Hyperlaunch was slower because parts of the cache system & download system were reading and writing to a lot of files at once. I used the PerfView profiler to figure out how I could improve the download time after testing Modrinth App and Pandora Launcher and scoring twice as worse against both. I’ve attached a screenshot of PerfView below, but it’s very ugly to look at. Changes: Many syscall optimisations in the download handler & caching system Download workers no longer wait for a file to be written to disk before starting another download Started on Modrinth API client Some bugfixes in client manifest parsing
Hyperlaunch - devlog 4. It’s been a month since my last devlog because I’ve just been unmotivated to continue working. I do really want to finish this though, so I’ll see it through. This update is mostly about bugfixes. There are no big new features done. Modrinth support I spent a good 3-5 hours building out a proper, full featured Modrinth search client, just for the API docs to be wrong, meaning I massively over-engineered a simple system. Really annoying. Bugfixes All the optimisations and big changes I made over the past few devlogs meant I had a lot of broken code on my hands. Won’t list everything here, but: Nearly all code bound to the UI was outdated/wrong Microsoft auth broke The code that handles downloading the client would not extract some necessary files Listing versions to download broke Small new features Hyperlaunch can now generate Java launch commands, handling downloads/logins/etc. automatically. That’s.. it. No video for this devlog, have some assorted screenshots from development on this devlog’s work.
Hyperlaunch - devlog 5 Modrinth support Modrinth support is progressing nicely, and Hyperlaunch is now (technically) capable of doing more complex searches than Modrinth App allows. This means Hyperlaunch is better at using Modrinth than Modrinth itself. NeoForge support I’ve started work on supporting the NeoForge mod loader inside Hyperlaunch. This is harder than Fabric for a few reasons, but the main issue is that it requires directly patching Minecraft’s code. The NeoForge installer handles this all, but I want to bring the patching system inside Hyperlaunch. This is progressing nicely too. I’ve had to add a dependency on 7-Zip’s LZMA SDK as part of this. Issues spent like 3 hours diagnosing why decompressing the NeoForge patches was broken only for it to be an accidental cast from an int64 to an int32. writing JSON classes so Hyperlaunch can read Modrinth API responses is taking too long
Hyperlaunch (Minecraft launcher) - devlog 6 i lost my sticky streak NeoForge support is done for 26.1 and later. Added an instance command for rudimentary management of game instances, you can see a demo of the interface below. Modrinth support is good enough for a search -> download flow, as also shown below. Still improving over time.
Hyperlaunch (Minecraft launcher) - devlog 7 last one! I’ve fixed a lot of launcher bugs and prepared a minimal GUI for trying the launcher out. Windows and Linux builds are functional and tested. I can’t confirm Mac builds work without bugs, but the launcher core itself was tested on a Mac Neo around a week ago. I hope anyone reading enjoys Hyperlaunch, even if the user interface is a bit clunky at the moment.
Ships:
My own Minecraft launcher, Hyperlaunch, is in a good, usable state. It supports most versions of Minecraft, as well as having built in support for both the Fabric and NeoForge loaders. Additionally, it supports downloading mods from Modrinth. Installations are divided into ‘instances’ by default, keeping mod setups separated. If you choose to try it, I hope you enjoy it! (ultimately I have more I want to add to this project, but it’s in a very good state at the moment.)...
|
1793008092.8417156
|
1793094492.8417156
|
|
58419
|
WaveLens by @vertriwayz | Stardance
|
vertriwayz
|
1
|
12.14
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T12:41:50Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I created Wavelens, which is a dashboard that is in your browser that fetches live WSPR and FT8 telemetry feeds, and even plots them into beautiful nodes on an interactive map, as well as a live bar known as a signal-to-noise ratio (aka SNR), and shows a list of active frequencies internationally (so epic!). It was challenging fetching the API because at some times in the day it would tap out and at some point I wanted to use a “mock frequencies list”, but I found a stronger API which could compute the SNR and telemetry feeds. I am proud of the web design, API and especially the colourful map. To run this project you have to clone it via GitHub, and you have to create a Render server (or local if you choose) to run the frequencies, and have an active instance of Python (>=3.14).", "repo": "https://github.com/VihaanVinoth/wavelens", "demo": ""}]...
|
[{"post_id": 72713, "ts": "202 [{"post_id": 72713, "ts": "2026-09-23T15:55:42Z", "hours": 2.7658, "text": "Another Devlog: Building WaveLens So I’ve decided to work on the site a little bit more, but this time it is more of the style, and adding more features. I’ve even added a cool wave logo I made in Canva! One major thing I have added is buttons in the frequency feed is the Update button which updates the frequencies to the latest version (by second), the clear button to erase, then repopulate the nodes, then CSV, which allows you to export the frequencies into a cool CSV file. I also wanted to reflect on the topography, and make it look much more minimalistic, so I wanted to put in this much smoother look. I like the nodes, and now when there is more receivers from a sender, their node grows bigger, showing like different levels in the map, and I worked on the navbar. I intended on putting a welcome page with a hero section, but I thought it was too chunky and decided to just do the map since it was already as amazing as it is already."}, {"post_id": 71939, "ts": "2026-09-21T20:23:49Z", "hours": 1.5081, "text": "Quick Devlog I had to rewrite the code again and I decided to add some flair and make the design like my personal website so it looks minimalistic and clean. This devlog is just an update and I have pretty much revamped everything and I am really proud of this result right now."}, {"post_id": 71894, "ts": "2026-09-21T18:31:22Z", "hours": 1.3969, "text": "Devlog #4: Rewriting Everything I think this was one of the most painful parts of the project, and that apparently my project mostly used AI, so despite that I had to rewrite most of my code and stuff, and I am proud to say that it looks really clean and much better now and now that I have done the README, the code, and the styling, it looks good and the nodes are working. This took some time to make, but I think it was worth it in the end, and I am really proud of this result."}, {"post_id": 71713, "ts": "2026-09-21T11:18:07Z", "hours": 0.6158, "text": "Devlog #3 - Fixing my README So a reason my project got returned was because my README was not fully informative and was a bit short, so I decided to tidy things up and introduce sections such as instructions as to how to install and run your own instance using a WSGI Gunicorn server, or using the Flask development server from the ground up, and I just added slightly more background to the already existing sections like the features, and blurb. So far the readme is looking much more presentable , and I think my project should be ready now to ship :D"}, {"post_id": 71610, "ts": "2026-09-21T05:00:07Z", "hours": 1.8508, "text": "Devlog #2 - Building WaveLens So as a quick update before I ship my project, it has taken me meticulous hours to bridge connectivity of Wavelens to the web. It was gruelling for the API which kept failing very frequently, leading me to choose one which didn’t require as much calls and was actually free , and I had to keep changing server providers, like Render, then Ngrok, and then finally Cloudflared, which allowed me to use my own subdomain (wavelens.vihaanvinoth.com), and now it is running peacefully, whereas previously you had to take the measures to download the whole project from GitHub, then find a suitable server to host, or locally, then you could run it. Feel free to check out the site at wavelens.vihaanvinoth.com - it’s really cool!"}, {"post_id": 66453, "ts": "2026-09-12T09:07:49Z", "hours": 3.9967, "text": "Devlog #1 + Final - Building WaveLens TL:DR As I haven’t yet put both devlogs into here, this is it. Devlog #1 : Alright, so this is the first devlog so far of building WaveLens, which is basically a web dashboard which can extract WSPR/FT8 telemetry feeds, and plots them onto a large node map mapping out the callsigns. So far i’ve run them using Flask, Gunicorn, and Render, however i’m waiting for approval from the admins to approve my Nest Linux server so that I can run the Python app onto the server and run my site. So far it is turning out great, and there might be more stuff to work on soon. The image attached is from my gunicorn application that is running it temporarily, but I will soon transition to a Linux Server interface. This is also my first time building a Radio-related application, and I think it has been really fun to make so far. Final Devlog : All right, so this is the final post that I am creating for WaveLens. It has been a very valuable project for me to create, and I hope to create more like this in the future. I was able to use my background of HTML, CSS, and JS, as well as some flask to build this web application."}]...
|
Title: WaveLens by @vertriwayz | Stardance
Devlog Title: WaveLens by @vertriwayz | Stardance
Devlogs:
Devlog #1 + Final - Building WaveLens TL:DR As I haven’t yet put both devlogs into here, this is it. Devlog #1 : Alright, so this is the first devlog so far of building WaveLens, which is basically a web dashboard which can extract WSPR/FT8 telemetry feeds, and plots them onto a large node map mapping out the callsigns. So far i’ve run them using Flask, Gunicorn, and Render, however i’m waiting for approval from the admins to approve my Nest Linux server so that I can run the Python app onto the server and run my site. So far it is turning out great, and there might be more stuff to work on soon. The image attached is from my gunicorn application that is running it temporarily, but I will soon transition to a Linux Server interface. This is also my first time building a Radio-related application, and I think it has been really fun to make so far. Final Devlog : All right, so this is the final post that I am creating for WaveLens. It has been a very valuable project for me to create, and I hope to create more like this in the future. I was able to use my background of HTML, CSS, and JS, as well as some flask to build this web application.
Devlog #2 - Building WaveLens So as a quick update before I ship my project, it has taken me meticulous hours to bridge connectivity of Wavelens to the web. It was gruelling for the API which kept failing very frequently, leading me to choose one which didn’t require as much calls and was actually free , and I had to keep changing server providers, like Render, then Ngrok, and then finally Cloudflared, which allowed me to use my own subdomain (wavelens.vihaanvinoth.com), and now it is running peacefully, whereas previously you had to take the measures to download the whole project from GitHub, then find a suitable server to host, or locally, then you could run it. Feel free to check out the site at wavelens.vihaanvinoth.com - it’s really cool!
Devlog #3 - Fixing my README So a reason my project got returned was because my README was not fully informative and was a bit short, so I decided to tidy things up and introduce sections such as instructions as to how to install and run your own instance using a WSGI Gunicorn server, or using the Flask development server from the ground up, and I just added slightly more background to the already existing sections like the features, and blurb. So far the readme is looking much more presentable , and I think my project should be ready now to ship :D
Devlog #4: Rewriting Everything I think this was one of the most painful parts of the project, and that apparently my project mostly used AI, so despite that I had to rewrite most of my code and stuff, and I am proud to say that it looks really clean and much better now and now that I have done the README, the code, and the styling, it looks good and the nodes are working. This took some time to make, but I think it was worth it in the end, and I am really proud of this result.
Quick Devlog I had to rewrite the code again and I decided to add some flair and make the design like my personal website so it looks minimalistic and clean. This devlog is just an update and I have pretty much revamped everything and I am really proud of this result right now.
Another Devlog: Building WaveLens So I’ve decided to work on the site a little bit more, but this time it is more of the style, and adding more features. I’ve even added a cool wave logo I made in Canva! One major thing I have added is buttons in the frequency feed is the Update button which updates the frequencies to the latest version (by second), the clear button to erase, then repopulate the nodes, then CSV, which allows you to export the frequencies into a cool CSV file. I also wanted to reflect on the topography, and make it look much more minimalistic, so I wanted to put in this much smoother look. I like the nodes, and now when there is more receivers from a sender, their node grows bigger, showing like different levels in the map, and I worked on the navbar. I intended on putting a welcome page with a hero section, but I thought it was too chunky and decided to just do the map since it was already as amazing as it is already.
Ships:
I created Wavelens, which is a dashboard that is in your browser that fetches live WSPR and FT8 telemetry feeds, and even plots them into beautiful nodes on an interactive map, as well as a live bar known as a signal-to-noise ratio (aka SNR), and shows a list of active frequencies internationally (so epic!). It was challenging fetching the API because at some times in the day it would tap out and at some point I wanted to use a “mock frequencies list”, but I found a stronger API which could compute the SNR and telemetry feeds. I am proud of the web design, API and especially the colourful map. To run this project you have to clone it via GitHub, and you have to create a Render server (or local if you choose) to run the frequencies, and have an active instance of Python (>=3.14)....
|
1793008091.734337
|
1793094491.734337
|
|
58410
|
Bucket-List-for-a-Perfect-Day by @mian | Stardance
|
mian
|
1
|
7.0
|
47
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T08:16:05Z", "hours": 7.0, "multiplier": 6.34, "payout": 47, "blessing": "neutral", "text": "About This is a checklist that users can use to plan their day to ensure it’s the perfect day! It has a pixel theme differing from other normal checklists. Users are able to add, edit, and delete tasks. Completed tasks can be checked with the pixel star next to each activity. Challenge What I found a bit challenging was that I needed three files in different languages to make this work. This was my first time not making a static site, so although it’s normal to have an HTML, CSS, and JavaScript file when creating a website, I found it quite an unusual experience. I found that the majority of my bugs and issues came from forgetting to reference classes and IDs in my JavaScript code. Overall, this project was really fun to do, as I could see my work come to life as it became actually functional. What am I proud of? I am really, really proud that I was able to make a functional site with input. I am especially happy that there is local storage. It makes the website feel like a proper one. What should you guys know? This was the first time I’ve coded using JavaScript, so the coding is a bit messy and confusing. If there are any bugs or recommendations, please let me know! I will be very happy to improve this site. In the future, I plan to enable users to create multiple sticky notes around the page so all the tasks aren’t clumped in one area. I also hope to let people delete one task without having to delete them all at once.", "repo": "https://github.com/mianyay/Bucket-List-for-a-Perfect-Day", "demo": "https://mianyay.github.io/Bucket-List-for-a-Perfect-Day/"}]...
|
[{"post_id": 67197, "ts": "202 [{"post_id": 67197, "ts": "2026-09-13T07:58:35Z", "hours": 4.8008, "text": "I coded the javascript which made my website functional. There are floating bubbles in the background, which make the screen feel less still. You can add, delete, and edit tasks. I also wanted the website to look prettier, so I made it a pixel theme, all drawn by me! While coding this, I realised a lot of the functions were only known to be so I had to put some changing-colour hover animation over it to make it noticeable. The bubble animation was probably the hardest part here, as that was a whole step away from the guide I used. It involved a bit of math lol, and I realised I accidentally wrote .png instead of .PNG, which completely stopped the bubbles from appearing. However, as you can see in the image below, I wanted to make the to-do list my own, so I incorporated pixel elements. I chose to do a star as the checkbox instead to make it feel more like an achievement. Not to mention that the white box was really annoying to make, as I had to make it look pixelated, which was very hard. It took a long time of trial and error to get those pixel corners, but I managed in the end! :D"}, {"post_id": 65892, "ts": "2026-09-11T10:29:26Z", "hours": 2.6558, "text": "So I started my project and decided to do the HTML and CSS first (well, of course). I finished the basics of my HTML and CSS, so it looks like an average checklist. I would have included it in the picture below, but only one was allowed. Below, you can see my HTML code. What I learnt in this session was all the HTML shortcuts. I had no idea; honestly, I could just write div and enter and it would make all the <> for me. It saved so much time when I was coding. Currently, the website is a static website, but soon I’ll code the JavaScript, making it interactive! I am really excited to see my to-do list come to life. I hope to make some sort of animation in the background as the checklist is looking pretty plain"}]...
|
Title: Bucket-List-for-a-Perfect-Day by @mian | St Title: Bucket-List-for-a-Perfect-Day by @mian | Stardance
Devlogs:
So I started my project and decided to do the HTML and CSS first (well, of course). I finished the basics of my HTML and CSS, so it looks like an average checklist. I would have included it in the picture below, but only one was allowed. Below, you can see my HTML code. What I learnt in this session was all the HTML shortcuts. I had no idea; honestly, I could just write div and enter and it would make all the <> for me. It saved so much time when I was coding. Currently, the website is a static website, but soon I’ll code the JavaScript, making it interactive! I am really excited to see my to-do list come to life. I hope to make some sort of animation in the background as the checklist is looking pretty plain
I coded the javascript which made my website functional. There are floating bubbles in the background, which make the screen feel less still. You can add, delete, and edit tasks. I also wanted the website to look prettier, so I made it a pixel theme, all drawn by me! While coding this, I realised a lot of the functions were only known to be so I had to put some changing-colour hover animation over it to make it noticeable. The bubble animation was probably the hardest part here, as that was a whole step away from the guide I used. It involved a bit of math lol, and I realised I accidentally wrote .png instead of .PNG, which completely stopped the bubbles from appearing. However, as you can see in the image below, I wanted to make the to-do list my own, so I incorporated pixel elements. I chose to do a star as the checkbox instead to make it feel more like an achievement. Not to mention that the white box was really annoying to make, as I had to make it look pixelated, which was very hard. It took a long time of trial and error to get those pixel corners, but I managed in the end! :D
Ships:
About This is a checklist that users can use to plan their day to ensure it’s the perfect day! It has a pixel theme differing from other normal checklists. Users are able to add, edit, and delete tasks. Completed tasks can be checked with the pixel star next to each activity. Challenge What I found a bit challenging was that I needed three files in different languages to make this work. This was my first time not making a static site, so although it’s normal to have an HTML, CSS, and JavaScript file when creating a website, I found it quite an unusual experience. I found that the majority of my bugs and issues came from forgetting to reference classes and IDs in my JavaScript code. Overall, this project was really fun to do, as I could see my work come to life as it became actually functional. What am I proud of? I am really, really proud that I was able to make a functional site with input. I am especially happy that there is local storage. It makes the website feel like a proper one. What should you guys know? This was the first time I’ve coded using JavaScript, so the coding is a bit messy and confusing. If there are any bugs or recommendations, please let me know! I will be very happy to improve this site. In the future, I plan to enable users to create multiple sticky notes around the page so all the tasks aren’t clumped in one area. I also hope to let people delete one task without having to delete them all at once....
|
1793008090.610125
|
1793094490.610125
|
|
33733
|
Soulsyche by @andwoo | Stardance
|
andwoo
|
1
|
53.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T16:24:47Z", "hours": 53.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Soulsyche About A dungeon crawler bullet hell, where you have to clear all rooms of the dungeon in order to beat the game. ( Also, when the second bar appears when level 3 is reached, that is your ability bar. Pressing RMB while temporarily grant you your ability [ invincibility ], then the cooldown begins again. Features Procedurally generated dungeon rooms Multiple enemy types ( sniper, pistol, shotgun, assault rifle ) Different weapons with unique stats Soul ability system Enemy spawning and room clearing Chests with random loot Random loot drops Door and door connection system Controls WASD - Movement Mouse - Aiming Left Mouse Button - Shoot Right Mouse Button - Ability R - Reload Dash - Space Interact ( Open Chest ) - E Overview This game is heavily reliant on composition over inheritance, where several components and modules work together to make certain behaviours. Examples of these systems are: Player movement and combat Weapon management UI Room Generation Enemy spawning Health and damage Soul system Loot and item spawning Credits Developed by andwoo ( Andrew ) for Stardance 2026. Used ChatGPT for helping to plan out and design systems Future improvements Art and SFX More souls A boss fight", "repo": "https://github.com/xPuv/Soulsyche", "demo": "https://xpuv.itch.io/soulsyche"}]...
|
[{"post_id": 74537, "ts": "202 [{"post_id": 74537, "ts": "2026-09-27T16:21:27Z", "hours": 5.8858, "text": "Final commit added more enemies cleaned stuff up, making it playable"}, {"post_id": 63170, "ts": "2026-09-06T20:26:06Z", "hours": 5.4714, "text": "devlog 4 custom room generation algorithm random rooms"}, {"post_id": 52213, "ts": "2026-08-22T09:45:21Z", "hours": 12.0461, "text": "devlog 3 added souls ( buffs, u can ffind in runs) added ui began working on randomly generated rooms added doors that lock and unlock after beating the room"}, {"post_id": 46341, "ts": "2026-08-13T14:25:57Z", "hours": 10.1642, "text": "devlog 2 added enemies that can shoot chests with rng hit shader keys to unlock chests"}, {"post_id": 35708, "ts": "2026-07-27T09:50:33Z", "hours": 10.1531, "text": "devlog 1 added a shotgun ( the dawg ) added weapon switching added UI began working on enemy AI with patrol, chase and investigate behaviour being implemented added damaging enemies"}, {"post_id": 33996, "ts": "2026-07-24T12:00:14Z", "hours": 9.6122, "text": "DEVLOG 0 hello! recently i’ve been working on the my own roguelike, Soulsyche, which is going to be a top down shooter. In the time on the devlog, I’ve spent time implementing a modular gun system and basic player movement. Below is a list stating all the changes alongside a video of what I’ve done. ( also, if anyone has any advivce/can help with the bugfix of the weird jittering, would really be grateful! feel free to comment below ) added shooting added reloading added movement sprite polishes ( gun faces direction of mouse cursor ) adding dashing added vfx to dash"}]...
|
Title: Soulsyche by @andwoo | Stardance
Devlogs:
Title: Soulsyche by @andwoo | Stardance
Devlogs:
DEVLOG 0 hello! recently i’ve been working on the my own roguelike, Soulsyche, which is going to be a top down shooter. In the time on the devlog, I’ve spent time implementing a modular gun system and basic player movement. Below is a list stating all the changes alongside a video of what I’ve done. ( also, if anyone has any advivce/can help with the bugfix of the weird jittering, would really be grateful! feel free to comment below ) added shooting added reloading added movement sprite polishes ( gun faces direction of mouse cursor ) adding dashing added vfx to dash
devlog 1 added a shotgun ( the dawg ) added weapon switching added UI began working on enemy AI with patrol, chase and investigate behaviour being implemented added damaging enemies
devlog 2 added enemies that can shoot chests with rng hit shader keys to unlock chests
devlog 3 added souls ( buffs, u can ffind in runs) added ui began working on randomly generated rooms added doors that lock and unlock after beating the room
devlog 4 custom room generation algorithm random rooms
Final commit added more enemies cleaned stuff up, making it playable
Ships:
Soulsyche About A dungeon crawler bullet hell, where you have to clear all rooms of the dungeon in order to beat the game. ( Also, when the second bar appears when level 3 is reached, that is your ability bar. Pressing RMB while temporarily grant you your ability [ invincibility ], then the cooldown begins again. Features Procedurally generated dungeon rooms Multiple enemy types ( sniper, pistol, shotgun, assault rifle ) Different weapons with unique stats Soul ability system Enemy spawning and room clearing Chests with random loot Random loot drops Door and door connection system Controls WASD - Movement Mouse - Aiming Left Mouse Button - Shoot Right Mouse Button - Ability R - Reload Dash - Space Interact ( Open Chest ) - E Overview This game is heavily reliant on composition over inheritance, where several components and modules work together to make certain behaviours. Examples of these systems are: Player movement and combat Weapon management UI Room Generation Enemy spawning Health and damage Soul system Loot and item spawning Credits Developed by andwoo ( Andrew ) for Stardance 2026. Used ChatGPT for helping to plan out and design systems Future improvements Art and SFX More souls A boss fight...
|
1793008089.4777958
|
1793094489.4777958
|
|
53492
|
Modeling Assets for City of the Forgotten (my proj Modeling Assets for City of the Forgotten (my project) by @Ling | Stardance...
|
Ling
|
1
|
27.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T01:51:43Z", "hours": 27.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 3D Model for my Character For my Game City of the Forgotten I made The Texture the rig and the 3d model", "repo": "https://github.com/Miyamoto-web/Modeling-Assets-for-City-of-the-Forgotten-my-project-", "demo": "https://youtu.be/9ZU8_nbiwio"}]...
|
[{"post_id": 69409, "ts": "202 [{"post_id": 69409, "ts": "2026-09-17T00:18:21Z", "hours": 1.785, "text": "README"}, {"post_id": 68934, "ts": "2026-09-16T02:13:42Z", "hours": 0.4, "text": "Making README Currently explaning the creative process"}, {"post_id": 66637, "ts": "2026-09-12T14:21:00Z", "hours": 1.05, "text": "Finshed rig"}, {"post_id": 65707, "ts": "2026-09-11T01:20:15Z", "hours": 0.5839, "text": "Making rig"}, {"post_id": 65097, "ts": "2026-09-10T00:07:21Z", "hours": 9.3428, "text": "Character done making meta rig"}, {"post_id": 61916, "ts": "2026-09-05T02:46:41Z", "hours": 7.9033, "text": "Modeling protagonist coat"}, {"post_id": 58114, "ts": "2026-08-30T13:49:19Z", "hours": 2.9789, "text": "Finaly modeling the first part of the characther"}, {"post_id": 57726, "ts": "2026-08-29T23:59:45Z", "hours": 1.4169, "text": "Character Image reference editing (He is a noir detective ww2 vet)"}, {"post_id": 54142, "ts": "2026-08-24T23:40:12Z", "hours": 1.5181, "text": "Learning Blender"}]...
|
Title: Modeling Assets for City of the Forgotten ( Title: Modeling Assets for City of the Forgotten (my project) by @Ling | Stardance
Devlogs:
Learning Blender
Character Image reference editing (He is a noir detective ww2 vet)
Finaly modeling the first part of the characther
Modeling protagonist coat
Character done making meta rig
Making rig
Finshed rig
Making README Currently explaning the creative process
README
Ships:
I made a 3D Model for my Character For my Game City of the Forgotten I made The Texture the rig and the 3d model...
|
1793008088.3046248
|
1793094488.3046248
|
|
53468
|
MassCompose by @Iarush7 | Stardance
|
Iarush7
|
1
|
15.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-09T14:58:00Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I am shipping Masscompose, a downloadable Python package that extends trimesh’s capabilities by allowing users to add point masses to existing STL meshes to calculate the center of mass and inertia tensors. This project initially came from the development of a UAV Unity simulation where I was exploring the importance of custom drone designs, and I used a trimesh-based Python backend to calculate the physical characteristics of the design for accurate flight. That backend has been rewritten to create masscompose! The hardest challenge was definitely testing the project as we were going on. I had to revisit my pytest and learn how to write tests that ensured the math was being done correctly. Also, uploading a package to PYPI feels like a developer milestone, and learning how to package it with twill was interesting as well.", "repo": "https://github.com/Iarush/MassCompose", "demo": "https://github.com/Iarush/masscompose/releases/tag/v.1.0.0"}]...
|
[{"post_id": 78080, "ts": "202 [{"post_id": 78080, "ts": "2026-10-09T14:41:30Z", "hours": 0.3653, "text": "The Python Package has been uploaded to PYPI by packaging it with twill. Additioanally, the demo is also up and running in the repo in the releases section where someone can download the zip file and run the run.py script to install the required dependencies and launch the demo program"}, {"post_id": 78008, "ts": "2026-10-09T05:14:45Z", "hours": 5.6217, "text": "Demo Python Application: To better showcase the abilities of Mass Compose and visualize it. I have also created a demo application. The demo is fully python and can be downloaded from GitHub. It uses PyVista for rendering the 3D meshes, NumPy for some basic error work, and then Pillow so images can be shown in Tkinter. Obviously, Tkinter is used for the UI ,and masscompose is the one doing all the math behind this app. Most importantly, the Mesh shows you the Center of Mass as well as the point mass. You can see how the point masses affect the COM."}, {"post_id": 53368, "ts": "2026-08-23T21:50:02Z", "hours": 8.6286, "text": "The initial mass composer script for UAV NeoSIM is done and bug free! This project started off as a small personal project targeted at adding a feature to UAV NeoSIM (A drone simulation created on Unity) where users can import their own custom drone models and fly them around. A python mass-properties script was created that takes in the imported stl, mass density, and specific point masses for objects such as the motors, the battery, and the computers to calculate the inertial tensors. Out of this working mass composing script evolved the larger idea to make a python package with a more general version of a masscompose function. The idea is to help out game and sim devs everywhere by giving them an easy way to create their own rigidbody physics objects that need the additonal of additional masses. mass-properties (The initial module) took advantage of the trimesh module to calculate the COM and the original inertial tensor from here. The parallel axis theorem was added to calculate the changed COM and inertial tensors with the addition of the point masses. This “backend” of sorts had three parts, the most important being udp_listener which communicated back and forth with unity to recieve coordinates and masses and sent coordinates and masses. This backend serves as the logical backbone that this python package can be finished."}]...
|
Title: MassCompose by @Iarush7 | Stardance
Devlog Title: MassCompose by @Iarush7 | Stardance
Devlogs:
The initial mass composer script for UAV NeoSIM is done and bug free! This project started off as a small personal project targeted at adding a feature to UAV NeoSIM (A drone simulation created on Unity) where users can import their own custom drone models and fly them around. A python mass-properties script was created that takes in the imported stl, mass density, and specific point masses for objects such as the motors, the battery, and the computers to calculate the inertial tensors. Out of this working mass composing script evolved the larger idea to make a python package with a more general version of a masscompose function. The idea is to help out game and sim devs everywhere by giving them an easy way to create their own rigidbody physics objects that need the additonal of additional masses. mass-properties (The initial module) took advantage of the trimesh module to calculate the COM and the original inertial tensor from here. The parallel axis theorem was added to calculate the changed COM and inertial tensors with the addition of the point masses. This “backend” of sorts had three parts, the most important being udp_listener which communicated back and forth with unity to recieve coordinates and masses and sent coordinates and masses. This backend serves as the logical backbone that this python package can be finished.
Demo Python Application: To better showcase the abilities of Mass Compose and visualize it. I have also created a demo application. The demo is fully python and can be downloaded from GitHub. It uses PyVista for rendering the 3D meshes, NumPy for some basic error work, and then Pillow so images can be shown in Tkinter. Obviously, Tkinter is used for the UI ,and masscompose is the one doing all the math behind this app. Most importantly, the Mesh shows you the Center of Mass as well as the point mass. You can see how the point masses affect the COM.
The Python Package has been uploaded to PYPI by packaging it with twill. Additioanally, the demo is also up and running in the repo in the releases section where someone can download the zip file and run the run.py script to install the required dependencies and launch the demo program
Ships:
I am shipping Masscompose, a downloadable Python package that extends trimesh’s capabilities by allowing users to add point masses to existing STL meshes to calculate the center of mass and inertia tensors. This project initially came from the development of a UAV Unity simulation where I was exploring the importance of custom drone designs, and I used a trimesh-based Python backend to calculate the physical characteristics of the design for accurate flight. That backend has been rewritten to create masscompose! The hardest challenge was definitely testing the project as we were going on. I had to revisit my pytest and learn how to write tests that ensured the math was being done correctly. Also, uploading a package to PYPI feels like a developer milestone, and learning how to package it with twill was interesting as well....
|
1793008087.179637
|
1793094487.179637
|
|
14371
|
Archimedes Cube by @ncHammer | Stardance
|
ncHammer
|
1
|
12.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-19T18:40:08Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "The Archimedes Cube is a modular, 3D-printable mechanical puzzle that merges the core mechanics of a traditional Rubik’s cube with an interactive marble maze. The internal mechanism utilizes a custom-designed core and six interlocking center swivels, while the outer layer consists of eight corner and twelve side pieces that slide together in a precise sequence. Rather than using traditional screws for tension, the parts rely on mechanical clasps to lock into place. Once fully assembled, a marble can travel continuously across all six faces of the outer shell via interconnected pathways and custom corner tunnels. Each face of the cube houses a separate maze track panel, and these paths connect at the seams through secondary edge framing pieces, which route the marble around the turning axes without interrupting the rotation of the cube layers.For customization, the center swivels feature interchangeable design slots, allowing builders to color-code faces in green, blue, orange, and red, or slide in personalized tile geometries. The yellow center segment acts as a dedicated marble garage, utilizing concealed internal magnets and a custom maze plug to hold the tracking marble in place when the puzzle is being solved or transported.Developing this project highlighted several mechanical constraints, particularly regarding friction and tolerances. Because fused deposition modeling (FDM) 3D printing layers introduce too much surface friction for a functional rotational mechanism, every single internal contact face requires manual sanding prior to assembly to prevent binding. Additionally, the assembly sequence must be exact; forcing a corner or edge piece into the final assembly slot easily shears the internal alignment channels. Instead, the mechanical loop must be completed by installing a center swivel piece last to properly distribute tension across the tracks. Finally, attaching the maze panels requires precise application of liquid superglue directly to the center swivels, ensuring no adhesive bleeds into the rotational seams, which would permanently lock the moving layers.", "repo": "https://github.com/noahcraig029-code/ArchimedesCube", "demo": "https://www.thingiverse.com/thing:7411782"}]...
|
[{"post_id": 70757, "ts": "202 [{"post_id": 70757, "ts": "2026-09-19T18:23:48Z", "hours": 2.4667, "text": "I’m finally finished! It’s 100% printed, assembled, and fully functional! I mainly used superglue to put it all together, and I’ve been messing around with it for hours. I hope y’all give it a chance and enjoy it! Happy cubing!"}, {"post_id": 46539, "ts": "2026-08-13T20:44:34Z", "hours": 2.6453, "text": "I’ve revamped the edge design for the marble maze, making a smoother tunnel that lines up perfectly with the panels fitting along the main cube pieces. The originals were a straight 90 degree angle, and the marble got stuck. The new model is a 45 degree curve that lets the marble flow from one face to another!"}, {"post_id": 37193, "ts": "2026-07-29T18:43:57Z", "hours": 5.0642, "text": "Bored of a regular Rubik’s Cube? I have a monstrosity for you then! The Archimedes Cube is a 5 cubed inch Rubik’s cube with a marble maze engraved onto the face. It has over 50 individually designed parts created on Onshape. I just finished designing and piecing a final assembly together that can be used to see what the project will look like when it’s fully completed! I’m planning on shipping it soon, so make sure you check it out when it’s done!"}, {"post_id": 29126, "ts": "2026-07-15T19:54:21Z", "hours": 0.8961, "text": "If you like puzzles check this project out! I’ve finally managed to create a cohesive printing guide, as well as a construction README that’s available once the Onshape doc is opened. I’m working on creating a 3D reference model inside the project so you don’t get lost during assembly. I’m also working on my own physical assembly, magnets and all! My next step is to complete building the cube in real life, as well as on Onshape."}, {"post_id": 28946, "ts": "2026-07-15T15:45:27Z", "hours": 1.1611, "text": "I’ve finally finished modeling all pieces for the cube and mazes! The last step I need to complete is to write and include a printing and construction guide. Shown below is the assembly PRINTING COLLECTION, which has everything you need to create your own Archimedes Cube at home, provided you have a 3D printer. Colors are not required, but heavily recommended. The Onshape link is included in the project, I hope you guys enjoy it! Any suggestions for cubit designs or alternate maze creations are welcome!"}]...
|
Title: Archimedes Cube by @ncHammer | Stardance
D Title: Archimedes Cube by @ncHammer | Stardance
Devlogs:
I’ve finally finished modeling all pieces for the cube and mazes! The last step I need to complete is to write and include a printing and construction guide. Shown below is the assembly PRINTING COLLECTION, which has everything you need to create your own Archimedes Cube at home, provided you have a 3D printer. Colors are not required, but heavily recommended. The Onshape link is included in the project, I hope you guys enjoy it! Any suggestions for cubit designs or alternate maze creations are welcome!
If you like puzzles check this project out! I’ve finally managed to create a cohesive printing guide, as well as a construction README that’s available once the Onshape doc is opened. I’m working on creating a 3D reference model inside the project so you don’t get lost during assembly. I’m also working on my own physical assembly, magnets and all! My next step is to complete building the cube in real life, as well as on Onshape.
Bored of a regular Rubik’s Cube? I have a monstrosity for you then! The Archimedes Cube is a 5 cubed inch Rubik’s cube with a marble maze engraved onto the face. It has over 50 individually designed parts created on Onshape. I just finished designing and piecing a final assembly together that can be used to see what the project will look like when it’s fully completed! I’m planning on shipping it soon, so make sure you check it out when it’s done!
I’ve revamped the edge design for the marble maze, making a smoother tunnel that lines up perfectly with the panels fitting along the main cube pieces. The originals were a straight 90 degree angle, and the marble got stuck. The new model is a 45 degree curve that lets the marble flow from one face to another!
I’m finally finished! It’s 100% printed, assembled, and fully functional! I mainly used superglue to put it all together, and I’ve been messing around with it for hours. I hope y’all give it a chance and enjoy it! Happy cubing!
Ships:
The Archimedes Cube is a modular, 3D-printable mechanical puzzle that merges the core mechanics of a traditional Rubik’s cube with an interactive marble maze. The internal mechanism utilizes a custom-designed core and six interlocking center swivels, while the outer layer consists of eight corner and twelve side pieces that slide together in a precise sequence. Rather than using traditional screws for tension, the parts rely on mechanical clasps to lock into place. Once fully assembled, a marble can travel continuously across all six faces of the outer shell via interconnected pathways and custom corner tunnels. Each face of the cube houses a separate maze track panel, and these paths connect at the seams through secondary edge framing pieces, which route the marble around the turning axes without interrupting the rotation of the cube layers.For customization, the center swivels feature interchangeable design slots, allowing builders to color-code faces in green, blue, orange, and red, or slide in personalized tile geometries. The yellow center segment acts as a dedicated marble garage, utilizing concealed internal magnets and a custom maze plug to hold the tracking marble in place when the puzzle is being solved or transported.Developing this project highlighted several mechanical constraints, particularly regarding friction and tolerances. Because fused deposition modeling (FDM) 3D printing layers introduce too much surface friction for a functional rotational mechanism, every single internal contact face requires manual sanding prior to assembly to prevent binding. Additionally, the assembly sequence must be exact; forcing a corner or edge piece into the final assembly slot easily shears the internal alignment channels. Instead, the mechanical loop must be completed by installing a center swivel piece last to properly distribute tension across the tracks. Finally, attaching the maze panels requires precise application of liquid superglue directly to the center swivels, ensuring no adhesive bleeds into the rotational seams, which would permanently lock the moving layers....
|
1793008086.039538
|
1793094486.039538
|
|
58392
|
physics-minigame by @Rishav | Stardance
|
Rishav
|
1
|
5.0
|
23
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T04:19:26Z", "hours": 5.0, "multiplier": 4.24, "payout": 23, "blessing": "neutral", "text": "I had initially thought of creating the game using Godot software, and when the project didn’t work out, I grew frustrated after it actually crashed and I lost some of the resources I had hoped to use. After feeling somewhat bored, I found the motivation I needed to start writing some lines of code in order to develop a new physics minigame using Pygame. After I had completed my first 42 lines of code, I was pleasantly surprised to see my game move on. While pursuing this project, I also discovered just how crucial it is to follow the right indentation rules in Python programming, especially during debugging. Since then, I have successfully finished the game and added several different features to it, such as gravity, bouncing, many different kinds of balls, collision physics, a guessing game and two more minigames called Catch and Dodge.The accomplishment I am most proud of is the sports joke and milestone system. Real-life sports events provide meaning to the various levels of the score. I have tied the scores to various sports milestones such as RCB winning the 49-0 match, Barcelona losing to Bayern Munich, and Germany beating Brazil 7-1. Players will receive a message when a particular score is achieved, thus making the scoring system more interesting and unique. Another challenge was packing the entire game into an executable. I found out that I had two versions of Python installed on my PC. As a result, sometimes, pip and Python would be working with different installations. Even though Pygame was installed successfully, it kept disappearing when I was trying to compile the project. The issue was resolved by specifying the complete path of my command. What started as a failed attempt to make a Godot game turned into a finished Pygame project. While working on it, I have learned a lot about Python, debugging, physics, game making, and even solving the issues of packing the project into an executable.", "repo": "https://github.com/rishavjha8515-hub/physics-minigames", "demo": "https://github.com/rishavjha8515-hub/physics-minigames/releases/tag/v1.0.0"}]...
|
[{"post_id": 67852, "ts": "202 [{"post_id": 67852, "ts": "2026-09-14T04:05:56Z", "hours": 4.3267, "text": "In my second devlog, I have completed the entire game since my previous update. Various features have been implemented such as gravity, bouncing, different kinds of balls and collision physics, as well as determining the time needed for the guessing game, and two mini-games called Catch and Dodge. The most remarkable feature, in my opinion, is the sports joke/milestones system. In this system, I connected my scoring levels to real-life events, such as visiting RCB’s matches (49-10), Barcelona’s loss to Bayern Munich, and Germany’s win over Brazil (7-1). As a result, once a score has been reached, the game shows a related message. Packaging the whole game into an executable file was challenging, as I found out that I had two different Python installations on my computer. As a result, pip and Python send different signals according to the command, and pygame has installed successfully but has disappeared when I tried to build the project. I needed to use the full path to direct my commands to one Python installation."}, {"post_id": 65314, "ts": "2026-09-10T11:41:06Z", "hours": 1.105, "text": "First devlog Was going to make a game on gadot,but was unsuccessful,got fed up and steak was broken and stickers now lost which were upcoming.Gathered the courage to make a write few lines of codes for a new physics minigames i am working on since i was feeling pretty bored.wrote my first 42 lines of code and got this on pygame and learnt a lot of significance of the indentation during debugging"}]...
|
Title: physics-minigame by @Rishav | Stardance
De Title: physics-minigame by @Rishav | Stardance
Devlogs:
First devlog Was going to make a game on gadot,but was unsuccessful,got fed up and steak was broken and stickers now lost which were upcoming.Gathered the courage to make a write few lines of codes for a new physics minigames i am working on since i was feeling pretty bored.wrote my first 42 lines of code and got this on pygame and learnt a lot of significance of the indentation during debugging
In my second devlog, I have completed the entire game since my previous update. Various features have been implemented such as gravity, bouncing, different kinds of balls and collision physics, as well as determining the time needed for the guessing game, and two mini-games called Catch and Dodge. The most remarkable feature, in my opinion, is the sports joke/milestones system. In this system, I connected my scoring levels to real-life events, such as visiting RCB’s matches (49-10), Barcelona’s loss to Bayern Munich, and Germany’s win over Brazil (7-1). As a result, once a score has been reached, the game shows a related message. Packaging the whole game into an executable file was challenging, as I found out that I had two different Python installations on my computer. As a result, pip and Python send different signals according to the command, and pygame has installed successfully but has disappeared when I tried to build the project. I needed to use the full path to direct my commands to one Python installation.
Ships:
I had initially thought of creating the game using Godot software, and when the project didn’t work out, I grew frustrated after it actually crashed and I lost some of the resources I had hoped to use. After feeling somewhat bored, I found the motivation I needed to start writing some lines of code in order to develop a new physics minigame using Pygame. After I had completed my first 42 lines of code, I was pleasantly surprised to see my game move on. While pursuing this project, I also discovered just how crucial it is to follow the right indentation rules in Python programming, especially during debugging. Since then, I have successfully finished the game and added several different features to it, such as gravity, bouncing, many different kinds of balls, collision physics, a guessing game and two more minigames called Catch and Dodge.The accomplishment I am most proud of is the sports joke and milestone system. Real-life sports events provide meaning to the various levels of the score. I have tied the scores to various sports milestones such as RCB winning the 49-0 match, Barcelona losing to Bayern Munich, and Germany beating Brazil 7-1. Players will receive a message when a particular score is achieved, thus making the scoring system more interesting and unique. Another challenge was packing the entire game into an executable. I found out that I had two versions of Python installed on my PC. As a result, sometimes, pip and Python would be working with different installations. Even though Pygame was installed successfully, it kept disappearing when I was trying to compile the project. The issue was resolved by specifying the complete path of my command. What started as a failed attempt to make a Godot game turned into a finished Pygame project. While working on it, I have learned a lot about Python, debugging, physics, game making, and even solving the issues of packing the project into an executable....
|
1793008084.934783
|
1793094484.934783
|
|
12747
|
Hack-A-Gent by @to_aarav_g | Stardance
|
to_aarav_g
|
1
|
177.01
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-29T13:09:15Z", "hours": 141.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What did you make? Hack-A-Gent — an AI coding agent that can plan, write, test and fix code for a hackathon project. What was challenging? Getting the agent to fix its own mistakes without breaking existing code. Cross-file dependencies and keeping shared code safe were probably the hardest parts. What are you proud of? I got it to go beyond just generating code and actually test and repair what it creates. How do I run it? Clone the repo, run npm install , create a .env with your Gemini API key, then run npm run dev . Start with a small coding task and let the agent work through it.", "repo": "https://github.com/Theuser1211/Hack-A-Gent", "demo": "https://github.com/Theuser1211/Hack-A-Gent/releases/"}]...
|
[{"post_id": 77987, "ts": "202 [{"post_id": 77987, "ts": "2026-10-09T03:55:17Z", "hours": 3.6219, "text": "Greeting! I have made 1 bid decision and ported the whole hag to python scipt using external libraries instead of building every agent myself. But for this we need gemini-cli configured with a paid account(which I dont have!). Sad, but I am happy rest all of hag works without any issues"}, {"post_id": 76687, "ts": "2026-10-04T10:37:59Z", "hours": 3.055, "text": "Got 208/208 tests to pass. Also I have implemented the providor for LLM as Gemini(Primary) -> Openrouter -> NVIDIA. So that maximum success rates can be achived. Also for anyone to test out HAG, just use README.md from github to install HAG, then setup up your API keys in the .env (don’t worry it’s all local), and you are ready to go."}, {"post_id": 76124, "ts": "2026-10-02T12:50:50Z", "hours": 3.5364, "text": "Heyyy, I have updated my README.md and also fixed my failing tests by now. I guess I am ready to ship Hack-A-Gent for Ship#1"}, {"post_id": 75504, "ts": "2026-09-30T09:17:25Z", "hours": 25.7925, "text": "I have realised that using NVIDIA NIMS is the issue, my app is almost working. , but the providors is failing at this point. I will try using gemini and openrouter to chek if it will work or not. I guess I will not be able to. And I also need to update my README.md for some reason it looks like AI written, I will write it in a funny way now."}, {"post_id": 72689, "ts": "2026-09-23T14:43:47Z", "hours": 20.6364, "text": "Fixed a pretty annoying bug today. HAG can now actually reach Nemotron during auto-repair after NVIDIA 503s. One step closer to a full successful run."}, {"post_id": 42039, "ts": "2026-08-06T16:28:40Z", "hours": 8.8503, "text": "Major progress today! I completed the Phase 1 stabilization of Hack-A-Gent by resolving all remaining test and build issues (1721/1721 tests passing, clean TypeScript build). I also performed a deep forensic investigation into the AI generation pipeline and discovered a critical issue where the router was rejecting recoverable LLM responses before they reached the JSON extraction layer. With the core architecture now stable, the focus shifts to eliminating unnecessary template fallbacks and improving the quality of AI-generated hackathon projects."}, {"post_id": 41361, "ts": "2026-08-05T15:03:39Z", "hours": 13.7719, "text": "Today’s work focused on stabilizing Hack-A-Gent for a production-ready release. I fixed the Improvement Pass so it now completes the full critique -> patch -> build -> judge cycle with measurable score improvements, strengthened template fallback generation with complete project scaffolding and improved styling, added automatic generation of deployment assets like LICENSE and vercel.json, and implemented comprehensive child-process lifecycle management to ensure the CLI exits cleanly after execution. I also streamlined the interview flow by removing unnecessary prompts, improved validation, and verified the project with a clean TypeScript build and extensive unit and feature test coverage."}, {"post_id": 39997, "ts": "2026-08-03T10:51:49Z", "hours": 8.8792, "text": "This is session I added a better parser so I get almost 99% accuracy and also made many improvements in the code generation. Almost done and drained out from all this"}, {"post_id": 39011, "ts": "2026-08-01T17:39:57Z", "hours": 14.4528, "text": "Spent this session improving Hack-A-Gent’s reliability and generation pipeline. Fixed a major architectural issue where generated apps were being overwritten by fallback templates, allowing AI-generated pages to be preserved correctly. Also resolved several runtime and build issues, improved validation, and verified the full pipeline by generating, building, and running a real hackathon project successfully. The next focus is improving project quality so the generated apps are more original, context-aware, and competitive in real hackathons."}, {"post_id": 35101, "ts": "2026-07-26T09:58:01Z", "hours": 11.1589, "text": "Today was mostly about making Hack-A-Gent more reliable instead of adding new features. I finally tracked down a long-standing parser issue that turned out to be an architectural problem: the CLI and the analysis pipeline were using two completely different parsers. I merged everything into a single parser, updated the production build to include it, and verified that all parser regression tests and the full test suite still pass. After that, I confirmed the CLI now extracts real judging criteria like Impact and Innovation instead of mistakenly treating navigation links as judging criteria. With parsing in a much better place, I shifted focus toward hardening the overall pipeline by planning phased reliability work around generation, auto-repair, validation, and recovery so the goal is no longer just generating code, but consistently producing projects that typecheck, build, run, and are ready for submission."}, {"post_id": 33322, "ts": "2026-07-23T04:04:01Z", "hours": 8.9597, "text": "This week I focused on making Hack-A-Gent stable and release-ready instead of adding new features. I cleaned up dead code, removed unused files, improved CLI logging and error messages, and verified the project with a full build and test pass. The CLI now parses real hackathon pages, plans projects, and gracefully falls back when AI providers are unavailable. I also ran end-to-end tests on real hackathon URLs to identify the final issues before release. The remaining work is improving template fallback and validation so every generated project is immediately usable, bringing Hack-A-Gent closer to its first stable release."}, {"post_id": 27158, "ts": "2026-07-12T13:41:30Z", "hours": 6.4664, "text": "Might be on final stages, making sure the agent doesn’t blows up in users hands. Taking time but needs to be done, Hope I can ship it by this week"}, {"post_id": 26029, "ts": "2026-07-10T16:39:54Z", "hours": 22.7653, "text": "Spent today improving Hack-A-Gent’s long-term direction instead of just fixing bugs. I mapped out a roadmap to turn it into a real Devpost hackathon agent, including a hackathon qualification engine, real Devpost benchmark suite, autonomous repair loop, browser validation, and organizational learning. Also audited the current architecture to identify what already exists, what needs refactoring, and what should be built next before writing more code."}, {"post_id": 21958, "ts": "2026-07-04T05:04:47Z", "hours": 25.1944, "text": "Hack-A-Gent I built Hack-A-Gent , a CLI-based AI agent that helps developers turn a Devpost hackathon challenge into a working project in minutes. Simply paste a Devpost competition URL into the terminal, and Hack-A-Gent analyzes the challenge, extracts the judging criteria and submission requirements, plans an appropriate architecture, and generates a production-ready project scaffold. You bring your own LLM API key (Anthropic, OpenAI, Google Gemini, NVIDIA NIMs, Ollama, and more), and Hack-A-Gent orchestrates the rest—from understanding the hackathon prompt to generating code, documentation, and a submission-ready starting point. The goal isn’t to replace developers, but to eliminate the repetitive setup work so builders can spend more time refining their ideas, polishing their projects, and creating a great demo."}]...
|
Title: Hack-A-Gent by @to_aarav_g | Stardance
Dev Title: Hack-A-Gent by @to_aarav_g | Stardance
Devlogs:
Hack-A-Gent I built Hack-A-Gent , a CLI-based AI agent that helps developers turn a Devpost hackathon challenge into a working project in minutes. Simply paste a Devpost competition URL into the terminal, and Hack-A-Gent analyzes the challenge, extracts the judging criteria and submission requirements, plans an appropriate architecture, and generates a production-ready project scaffold. You bring your own LLM API key (Anthropic, OpenAI, Google Gemini, NVIDIA NIMs, Ollama, and more), and Hack-A-Gent orchestrates the rest—from understanding the hackathon prompt to generating code, documentation, and a submission-ready starting point. The goal isn’t to replace developers, but to eliminate the repetitive setup work so builders can spend more time refining their ideas, polishing their projects, and creating a great demo.
Spent today improving Hack-A-Gent’s long-term direction instead of just fixing bugs. I mapped out a roadmap to turn it into a real Devpost hackathon agent, including a hackathon qualification engine, real Devpost benchmark suite, autonomous repair loop, browser validation, and organizational learning. Also audited the current architecture to identify what already exists, what needs refactoring, and what should be built next before writing more code.
Might be on final stages, making sure the agent doesn’t blows up in users hands. Taking time but needs to be done, Hope I can ship it by this week
This week I focused on making Hack-A-Gent stable and release-ready instead of adding new features. I cleaned up dead code, removed unused files, improved CLI logging and error messages, and verified the project with a full build and test pass. The CLI now parses real hackathon pages, plans projects, and gracefully falls back when AI providers are unavailable. I also ran end-to-end tests on real hackathon URLs to identify the final issues before release. The remaining work is improving template fallback and validation so every generated project is immediately usable, bringing Hack-A-Gent closer to its first stable release.
Today was mostly about making Hack-A-Gent more reliable instead of adding new features. I finally tracked down a long-standing parser issue that turned out to be an architectural problem: the CLI and the analysis pipeline were using two completely different parsers. I merged everything into a single parser, updated the production build to include it, and verified that all parser regression tests and the full test suite still pass. After that, I confirmed the CLI now extracts real judging criteria like Impact and Innovation instead of mistakenly treating navigation links as judging criteria. With parsing in a much better place, I shifted focus toward hardening the overall pipeline by planning phased reliability work around generation, auto-repair, validation, and recovery so the goal is no longer just generating code, but consistently producing projects that typecheck, build, run, and are ready for submission.
Spent this session improving Hack-A-Gent’s reliability and generation pipeline. Fixed a major architectural issue where generated apps were being overwritten by fallback templates, allowing AI-generated pages to be preserved correctly. Also resolved several runtime and build issues, improved validation, and verified the full pipeline by generating, building, and running a real hackathon project successfully. The next focus is improving project quality so the generated apps are more original, context-aware, and competitive in real hackathons.
This is session I added a better parser so I get almost 99% accuracy and also made many improvements in the code generation. Almost done and drained out from all this
Today’s work focused on stabilizing Hack-A-Gent for a production-ready release. I fixed the Improvement Pass so it now completes the full critique -> patch -> build -> judge cycle with measurable score improvements, strengthened template fallback generation with complete project scaffolding and improved styling, added automatic generation of deployment assets like LICENSE and vercel.json, and implemented comprehensive child-process lifecycle management to ensure the CLI exits cleanly after execution. I also streamlined the interview flow by removing unnecessary prompts, improved validation, and verified the project with a clean TypeScript build and extensive unit and feature test coverage.
Major progress today! I completed the Phase 1 stabilization of Hack-A-Gent by resolving all remaining test and build issues (1721/1721 tests passing, clean TypeScript build). I also performed a deep forensic investigation into the AI generation pipeline and discovered a critical issue where the router was rejecting recoverable LLM responses before they reached the JSON extraction layer. With the core architecture now stable, the focus shifts to eliminating unnecessary template fallbacks and improving the quality of AI-generated hackathon projects.
Fixed a pretty annoying bug today. HAG can now actually reach Nemotron during auto-repair after NVIDIA 503s. One step closer to a full successful run.
I have realised that using NVIDIA NIMS is the issue, my app is almost working. , but the providors is failing at this point. I will try using gemini and openrouter to chek if it will work or not. I guess I will not be able to. And I also need to update my README.md for some reason it looks like AI written, I will write it in a funny way now.
Heyyy, I have updated my README.md and also fixed my failing tests by now. I guess I am ready to ship Hack-A-Gent for Ship#1
Got 208/208 tests to pass. Also I have implemented the providor for LLM as Gemini(Primary) -> Openrouter -> NVIDIA. So that maximum success rates can be achived. Also for anyone to test out HAG, just use README.md from github to install HAG, then setup up your API keys in the .env (don’t worry it’s all local), and you are ready to go.
Greeting! I have made 1 bid decision and ported the whole hag to python scipt using external libraries instead of building every agent myself. But for this we need gemini-cli configured with a paid account(which I dont have!). Sad, but I am happy rest all of hag works without any issues
Ships:
What did you make? Hack-A-Gent — an AI coding agent that can plan, write, test and fix code for a hackathon project. What was challenging? Getting the agent to fix its own mistakes without breaking existing code. Cross-file dependencies and keeping shared code safe were probably the hardest parts. What are you proud of? I got it to go beyond just generating code and actually test and repair what it creates. How do I run it? Clone the repo, run npm install , create a .env with your Gemini API key, then run npm run dev . Start with a small coding task and let the agent work through it....
|
1793008083.7202892
|
1793094483.7202892
|
|
53416
|
DuckDNS + Cloudflare Client by @vaito | Stardance
|
vaito
|
1
|
14.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-19T17:47:54Z", "hours": 14.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a simple DuckDNS client mixed with some feature of Cloudflare. It allows you to: Update your DuckDNS record (IP4 and IP6) Use the updated IP from DuckDNS to update your Cloudflare DNS record. Also, this is implemented with Rust, which also the first time I use Rust. So this code is not considered as a well optimized code 😿", "repo": "https://git.vaito.dev/vaito/duckdns-client", "demo": "https://crates.io/crates/duckdns-client"}]...
|
[{"post_id": 70731, "ts": "202 [{"post_id": 70731, "ts": "2026-09-19T17:41:11Z", "hours": 3.1617, "text": "Quite a lots update and here is the summaries: I added the --filter with regex and exact equal mode for filtering domains I do some stuff to get ready for publishing to crates.io. I create a CICD pipeline for automating publish to crates.io and docker registry. Now you can use both method to use my app"}, {"post_id": 69651, "ts": "2026-09-17T14:39:03Z", "hours": 4.9475, "text": "I have removed the PTR update feature since I misunderstood how it work Also, some bugs related to batch update are fixed"}, {"post_id": 55100, "ts": "2026-08-26T15:39:20Z", "hours": 1.825, "text": "I have done the base for the Cloudflare client"}, {"post_id": 53175, "ts": "2026-08-23T16:47:05Z", "hours": 4.1144, "text": "The reason for 4-hr devlog is I forgot to create the Stardance project ;-; Btw, this is the first project I code using Rust I made this for auto updating the DuckDNS record and Cloudflare DNS record (especially PTR record) I have done the DuckDNS client and moving to Cloudflare side"}]...
|
Title: DuckDNS + Cloudflare Client by @vaito | Sta Title: DuckDNS + Cloudflare Client by @vaito | Stardance
Devlogs:
The reason for 4-hr devlog is I forgot to create the Stardance project ;-; Btw, this is the first project I code using Rust I made this for auto updating the DuckDNS record and Cloudflare DNS record (especially PTR record) I have done the DuckDNS client and moving to Cloudflare side
I have done the base for the Cloudflare client
I have removed the PTR update feature since I misunderstood how it work Also, some bugs related to batch update are fixed
Quite a lots update and here is the summaries: I added the --filter with regex and exact equal mode for filtering domains I do some stuff to get ready for publishing to crates.io. I create a CICD pipeline for automating publish to crates.io and docker registry. Now you can use both method to use my app
Ships:
This is a simple DuckDNS client mixed with some feature of Cloudflare. It allows you to: Update your DuckDNS record (IP4 and IP6) Use the updated IP from DuckDNS to update your Cloudflare DNS record. Also, this is implemented with Rust, which also the first time I use Rust. So this code is not considered as a well optimized code 😿...
|
1793008082.5665429
|
1793094482.5665429
|
|
53406
|
Iris by @Hamna | Stardance
|
Hamna
|
1
|
144.68
|
1521
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-18T22:02:27Z", "hours": 131.0, "multiplier": 13.36, "payout": 1521, "blessing": "neutral", "text": "This is my booking website for wellness (my family hotel). There’s a public site, online checkout, a Reception console and a Management console The most difficult part to stop double bookings btw the website and the front desk,I fixed this by making a hold time of 10 mints on suites I’m really so proud of this project as this was something I was planning to make for my family and it turned out to so amazing and I got to learn so much about security (P.S , This is my last project on Hackclub , I really had the cool experience here, This platform really motivated me to make this project)", "repo": "https://github.com/lilithCode/Iris_ChatBot", "demo": "https://iris-chat-bot-lac.vercel.app/"}]...
|
[{"post_id": 76064, "ts": "202 [{"post_id": 76064, "ts": "2026-10-02T07:21:18Z", "hours": 6.8922, "text": "Changed the UI a bit"}, {"post_id": 73916, "ts": "2026-09-26T09:52:32Z", "hours": 2.9411, "text": "There were some UI erros in the git pages file i made, so this is the last final verison for this project for the demo link: hope you’ll like this : )"}, {"post_id": 71239, "ts": "2026-09-20T14:41:31Z", "hours": 3.8447, "text": "Fixed it today! I replaced ChatInterface in the Space with a gr.Interface that takes the history as a JSON input, so the conversation actually reaches the model now. I also added a history count to the logs so I can see it arriving with every message. This fixes Amadeus too, since they share the same Space. Iris finally remembers what we’re talking about, and that feels like the right place to call this project complete"}, {"post_id": 70295, "ts": "2026-09-18T21:53:46Z", "hours": 4.7014, "text": "Spent today debugging the memory problem. The frontend was sending the chat history and the router was clearly using it, but the model was answering like every message was the first one. I asked “what did I just ask?” and got a totally random reply. Then I checked the Space’s API info and found the problem: Gradio 6’s ChatInterface hides the history from the API, so it was silently throwing the whole conversation away"}, {"post_id": 69607, "ts": "2026-09-17T12:20:33Z", "hours": 5.0708, "text": "Tested the new pipeline today. I asked “who won the last cricket world cup?” and it searched, found the facts and answered “Australia” correctly. Iris knowing current events feels like a huge upgrade. But while chatting normally I noticed something weird: it kept saying “Hai haii” to everything and had no idea what we’d been talking about"}, {"post_id": 69182, "ts": "2026-09-16T15:25:12Z", "hours": 4.86, "text": "Big backend day. I made Iris use the exact same backend as my other project, Amadeus: the same Hugging Face ZeroGPU Space, plus a RAG pipeline. Now a small router model on Hack Club AI rewrites the question, decides whether it needs a web search, and remembers facts about the user. If it needs current info, it searches the web with Exa and passes verified facts to the model. The UI stayed exactly the same"}, {"post_id": 67350, "ts": "2026-09-13T13:00:04Z", "hours": 8.9375, "text": "Tried Modal as another hosting option today, to compare it with ZeroGPU. I switched the route to call a Modal endpoint with an API key. It worked, but managing two setups for two projects (Iris and Amadeus) was getting messy, and I started thinking about putting both on the same backend"}, {"post_id": 66168, "ts": "2026-09-11T20:25:17Z", "hours": 11.0492, "text": "Came back to Iris after a while because responses were way too slow on free CPU hosting. Today I moved the model to Hugging Face ZeroGPU, so it actually runs on a GPU now. I rewrote the backend route to call the Space through the Gradio API, with retries and fallback messages in case something fail"}, {"post_id": 65771, "ts": "2026-09-11T04:17:48Z", "hours": 6.2706, "text": "Final UI touches today. I polished the About modal, updated the project links and rewrote the README with the whole training pipeline. Then I deployed it on Vercel. Iris is officially live and I shared the link with everyone"}, {"post_id": 65244, "ts": "2026-09-10T07:34:11Z", "hours": 8.7197, "text": "Today I connected the frontend to the real Hugging Face backend instead of the placeholder. Seeing Iris reply on my own website, in Senpai’s style, felt unreal. Responses were slow, but it was talking, and I spent way too long just chatting with it"}, {"post_id": 64336, "ts": "2026-09-08T17:12:01Z", "hours": 3.4358, "text": "I replaced the old playlist with songs that match the vibe better and made new covers for each track. Some of the song links broke right after, so I fixed those, and one mp3 was way too big, so I compressed it. Small stuff, but the radio station panel feels complete now"}, {"post_id": 64109, "ts": "2026-09-08T09:37:59Z", "hours": 4.6706, "text": "I didn’t like how the UI looked yesterday, so today I redesigned almost all of it. I went with a soft lavender pastel theme that feels more like Iris, removed the cyber cursor and added a cute Senpai avatar that pops up with little messages. I also made the whole thing responsive so it works on phones too"}, {"post_id": 63712, "ts": "2026-09-07T17:27:59Z", "hours": 9.7992, "text": "Started the frontend today with Next.js and Tailwind. I built the main layout: a chat panel in the middle, a music player on the left, and a side panel on the right. I also added a loading screen and little send/receive sound effects, because a chatbot without sounds feels lifeless. Pushed the first commit with the UI, routing and model connection all together"}, {"post_id": 62439, "ts": "2026-09-05T19:40:06Z", "hours": 11.1208, "text": "Training ran for 1000 steps today and I watched the loss drop from about 2.5 to 0.3. When I tested it, it replied with “Kk” and an eye roll emoji, and that’s literally how Senpai texts. I sent screenshots to my friends and they were all shocked. That was the best moment of the project so far"}, {"post_id": 61489, "ts": "2026-09-04T13:05:44Z", "hours": 22.205, "text": "Set up my Kaggle notebook today with Unsloth and Llama-3 8B as the base model. Most of the day went into fighting configs and memory errors on the T4 x2 GPUs. After a lot of trial and error I settled on a 2048 sequence length and a 5e-5 learning rate. It finally started training without crashing, and I almost cried"}, {"post_id": 59161, "ts": "2026-08-31T19:49:02Z", "hours": 12.4886, "text": "Today I turned the cleaned chats into proper training data. Senpai sends five short messages in a row instead of one long one, so I grouped consecutive messages together to keep that natural texting flow. I ended up with 12,613 dialogue samples. Seeing that number made it feel like a real project for the first time"}, {"post_id": 56717, "ts": "2026-08-28T16:11:34Z", "hours": 7.4811, "text": "Spent the whole day cleaning the WhatsApp export. It was around 81,000 lines of pure chaos: timestamps, “media omitted”, deleted messages, random links. I wrote a script to strip all the junk out and kept only the actual conversations. My eyes hurt, but the data finally looks usable"}, {"post_id": 54957, "ts": "2026-08-26T12:02:23Z", "hours": 9.8514, "text": "Today I finally started something I’d been thinking about for a while. Every AI chatbot I’ve used feels so polite and robotic, like it has zero aura. So I decided to make one that talks like a real person, specifically my friend “Senpai”. I exported our WhatsApp chats and just stared at them for a bit, wondering what I’d gotten myself into"}]...
|
Title: Iris by @Hamna | Stardance
Devlogs:
Today Title: Iris by @Hamna | Stardance
Devlogs:
Today I finally started something I’d been thinking about for a while. Every AI chatbot I’ve used feels so polite and robotic, like it has zero aura. So I decided to make one that talks like a real person, specifically my friend “Senpai”. I exported our WhatsApp chats and just stared at them for a bit, wondering what I’d gotten myself into
Spent the whole day cleaning the WhatsApp export. It was around 81,000 lines of pure chaos: timestamps, “media omitted”, deleted messages, random links. I wrote a script to strip all the junk out and kept only the actual conversations. My eyes hurt, but the data finally looks usable
Today I turned the cleaned chats into proper training data. Senpai sends five short messages in a row instead of one long one, so I grouped consecutive messages together to keep that natural texting flow. I ended up with 12,613 dialogue samples. Seeing that number made it feel like a real project for the first time
Set up my Kaggle notebook today with Unsloth and Llama-3 8B as the base model. Most of the day went into fighting configs and memory errors on the T4 x2 GPUs. After a lot of trial and error I settled on a 2048 sequence length and a 5e-5 learning rate. It finally started training without crashing, and I almost cried
Training ran for 1000 steps today and I watched the loss drop from about 2.5 to 0.3. When I tested it, it replied with “Kk” and an eye roll emoji, and that’s literally how Senpai texts. I sent screenshots to my friends and they were all shocked. That was the best moment of the project so far
Started the frontend today with Next.js and Tailwind. I built the main layout: a chat panel in the middle, a music player on the left, and a side panel on the right. I also added a loading screen and little send/receive sound effects, because a chatbot without sounds feels lifeless. Pushed the first commit with the UI, routing and model connection all together
I didn’t like how the UI looked yesterday, so today I redesigned almost all of it. I went with a soft lavender pastel theme that feels more like Iris, removed the cyber cursor and added a cute Senpai avatar that pops up with little messages. I also made the whole thing responsive so it works on phones too
I replaced the old playlist with songs that match the vibe better and made new covers for each track. Some of the song links broke right after, so I fixed those, and one mp3 was way too big, so I compressed it. Small stuff, but the radio station panel feels complete now
Today I connected the frontend to the real Hugging Face backend instead of the placeholder. Seeing Iris reply on my own website, in Senpai’s style, felt unreal. Responses were slow, but it was talking, and I spent way too long just chatting with it
Final UI touches today. I polished the About modal, updated the project links and rewrote the README with the whole training pipeline. Then I deployed it on Vercel. Iris is officially live and I shared the link with everyone
Came back to Iris after a while because responses were way too slow on free CPU hosting. Today I moved the model to Hugging Face ZeroGPU, so it actually runs on a GPU now. I rewrote the backend route to call the Space through the Gradio API, with retries and fallback messages in case something fail
Tried Modal as another hosting option today, to compare it with ZeroGPU. I switched the route to call a Modal endpoint with an API key. It worked, but managing two setups for two projects (Iris and Amadeus) was getting messy, and I started thinking about putting both on the same backend
Big backend day. I made Iris use the exact same backend as my other project, Amadeus: the same Hugging Face ZeroGPU Space, plus a RAG pipeline. Now a small router model on Hack Club AI rewrites the question, decides whether it needs a web search, and remembers facts about the user. If it needs current info, it searches the web with Exa and passes verified facts to the model. The UI stayed exactly the same
Tested the new pipeline today. I asked “who won the last cricket world cup?” and it searched, found the facts and answered “Australia” correctly. Iris knowing current events feels like a huge upgrade. But while chatting normally I noticed something weird: it kept saying “Hai haii” to everything and had no idea what we’d been talking about
Spent today debugging the memory problem. The frontend was sending the chat history and the router was clearly using it, but the model was answering like every message was the first one. I asked “what did I just ask?” and got a totally random reply. Then I checked the Space’s API info and found the problem: Gradio 6’s ChatInterface hides the history from the API, so it was silently throwing the whole conversation away
Fixed it today! I replaced ChatInterface in the Space with a gr.Interface that takes the history as a JSON input, so the conversation actually reaches the model now. I also added a history count to the logs so I can see it arriving with every message. This fixes Amadeus too, since they share the same Space. Iris finally remembers what we’re talking about, and that feels like the right place to call this project complete
There were some UI erros in the git pages file i made, so this is the last final verison for this project for the demo link: hope you’ll like this : )
Changed the UI a bit
Ships:
This is my booking website for wellness (my family hotel). There’s a public site, online checkout, a Reception console and a Management console The most difficult part to stop double bookings btw the website and the front desk,I fixed this by making a hold time of 10 mints on suites I’m really so proud of this project as this was something I was planning to make for my family and it turned out to so amazing and I got to learn so much about security (P.S , This is my last project on Hackclub , I really had the cool experience here, This platform really motivated me to make this project)...
|
1793008081.3630981
|
1793094481.3630981
|
|
39530
|
Ship Talkers by @SeradedStripes | Stardance
|
SeradedStripes
|
1
|
44.69
|
676
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T09:59:54Z", "hours": 41.0, "multiplier": 13.61, "payout": 676, "blessing": "neutral", "text": "I made shiptalkers! A bot that originally allows you to compare your slack time to hackatime time. Previously it was shut down, but I have revived it! With many additions as well. It features a website with a bunch of aggregated stats, a cool api and sweet leaderboards. Even a search system! It processes all messages in hack club slack to calculate slack time. Although if you opt in to it storing your messages as well, it will be way more accurate and will stay updated faster.", "repo": "https://github.com/SeradedStripes/shiptalkers", "demo": "https://shiptalkers.kirze.de"}]...
|
[{"post_id": 75302, "ts": "202 [{"post_id": 75302, "ts": "2026-09-29T18:01:58Z", "hours": 1.6317, "text": "Updates Quite a bit this time that are important. First up I added a link to the github in the header and fixed the bot to actually follow slack rate limtis. Added a board for linked accounts page. Big thing now. Added consent gated slack scraping. Basically fd told me i need people to opt in. And finally the last big thing I added channel blacklisting as a shipwright and a goi linked through OAuth so I had to blacklist all sw channels and goi channel as they have sensitive messages in them"}, {"post_id": 74418, "ts": "2026-09-27T11:00:42Z", "hours": 2.0608, "text": "Update time Been quite a bit since ship and i decided because of the stardance extension I’m going to do more devlogs. Mainly i added an opt out feature and realized the new defaults for scraping speeds were shit so i undid them. I then decided that because there were channels with fucking 3000 thread roots, i lowered the age limit of threads to 7 days instead of 30 days. I nuked opt out/opt in and nuked the manual apps needed for scraping. There is now an OAuth system with slack, you can link your account and it will scrape your messages in private channels you are in. works without this though. Added a max scraping per minute variable so i dont strain my internet connection a bunch. And finally I also added the [PRIVATE] and [ARCHIVED] badges to channels"}, {"post_id": 69557, "ts": "2026-09-17T09:48:52Z", "hours": 2.6625, "text": "Updates Should be final update before I ship Added all users and all channels boards Renamed Leaderboards to just Boards Normalized colum widths for those boards and added pagination We were hammering hackatime, it now has a hard limit of 50k hackatime reqs/day and 1req/sec Massive update to stats page so it displays more info and is more relevant. Changed total time to total hours where the time was hours and added total time in format of years/months/ etc. as well We sped up docker builds a bunch We retry known private hackatime users ever 30 days now Fixed a shared message-scrape lock The response when you ask the bot for time now includes a link to your/person your checking time ofs stats page I think thats about it"}, {"post_id": 68061, "ts": "2026-09-14T13:34:14Z", "hours": 3.9675, "text": "Updates Quite a bunch of updates this time, a lot of work has been done, and i feel like I was nearly killed by fd. Okay so Shiptalkers is now opt in. Most of this devlogs time was spent: Adding a message locator system, basically maps out where every message is instead of storing content of it Process messages without storing message content Backfill message content for users who opt in Add a custom shiptalkers id assigned to messages so we dont store sender id of each message. To opt in you can send “Opt In” in the shiptalkers channel Apart from that I migrated from in file SQL to a proper migrations system. General updates Added mobile support Massive cleanup of AGENTS.md 0 Full fetch and scrape all messages run in parrallel now. Archived channels card for stats page. Now persists thread rescans, added a thread timestamp index, persisted thread high-water marks. Reduced repeated history-wide scans Added durable consent backfill progress and fixed backfills blocking fresh message checks Fixed a per message update of the shared database counter row. It now updates per statement Score recomputation is now hourly instead of passly. I think thats about it. Main point of this is that we got scraping to be way faster, and we got opt in requirement."}, {"post_id": 64872, "ts": "2026-09-09T15:53:56Z", "hours": 2.1342, "text": "Updates Bunch of API related things this time Added api docs API key section in account tab and APIT key account endpoints Added CSRF support (lmao i dont know why i didnt have it before) Made the api key response be a popup in account page and centered it in a later commit Added Stats API endpoint Added Max Age to cookies Website and slack bot now share 1 source of truth for stats (stupid that i didnt have it like this already) Added granting perms to other api keys New user joins are now picked up in real time. Thats about it"}, {"post_id": 62009, "ts": "2026-09-05T06:41:19Z", "hours": 0.9625, "text": "Updates Really short devlog this time. Added Error logging for session_query Resumable channel sweeps Use a new action for build & deploys Workflows are also greatly increased with speed"}, {"post_id": 60402, "ts": "2026-09-02T18:19:48Z", "hours": 3.8992, "text": "Alot of updates this time Updates Brand new scraper crate separate from app, dk if I have mentioned it before in devlogs. It does slack and hackatime scraping all in one so we can have the main app deploys not interrupt scrapes. Updates^2 Added “a” keyword - Alias for “all time” Updated settings.rs and example.env to fit new defaults Fixed refresh_daily_stats failing on a second Fixed a bunch of ::bigint needing to be everywhere a sum() was decoded switched scraper to mimalloc allocator Replaced ts with real message_tis / 1000000 (I dont know if i put enough/too many zeros here) Fixed slack time recomputing in new postgredb Precomputes page stats now Removed a useless half-hourly job ON CONFLICT now only fires when counts actually change Added DB available probe to tests Better logging (disabled timestamps in logger) Added a mark_seen dedupe Updated hackatime sync logging to be less taking up all logs Added zstd + drop duplicate tables Removed zstd as postgre18-alpine does not come with it and I am not rescraping slack Only the scraper can init tables now I don’t think im missing anything else i did, If I am though then sorry gois Also see in one of the images below is total ram and cpu usage. somehow the postgre db is using over 4.5G of ram"}, {"post_id": 55696, "ts": "2026-08-27T17:39:34Z", "hours": 2.3453, "text": "Updates Mighta lowkey forgot to be doing devlogs again… Anyway Updates^2 Basically any keyword for time works now Cargo Chef is now used for docker Updated AGENTS.md No longer requires hackatime data to display slack time data. Ported everything from clickhouse to postgresql but havent deployed that yet You can now mention other people to get their stats I think thats it Might be wrong on that tho. Anyway I got better from being sick last week and im sick again Also used @mahad in screenshot below, def not an excuse just for a random pung"}, {"post_id": 50981, "ts": "2026-08-20T13:52:57Z", "hours": 1.0983, "text": "Updates We still sick (not much better today) but i got some work done Updates^2 Split a bunch of existing code into separate files for maintainability added font caching parallel resyncs (hackatime) More memory/CPU optimizations in the code (I lowkey forgot what i changed for this Thats it for now"}, {"post_id": 50495, "ts": "2026-08-19T17:34:53Z", "hours": 1.4911, "text": "A decent length devlog this time So recently I have been sick so i got less time. (Wish me to get better soon) Anyway enough of that, on to the changes: Updates Fixed authless hackatime syncing Using the spans api of hackatime so we get all data for time specific commands fix SQL and rust helper dividing by 1000000 Wrapped the entire sum(if(…)) in toUInt64(), which fixed the slack bot reporting wrong time from public hackatime syncing change. It makes it so clickhouse sees a single output type regardless of what it infers inside. Thats about it"}, {"post_id": 47761, "ts": "2026-08-15T22:05:51Z", "hours": 1.8011, "text": "Updates We swapped aws-lc-rs for ring futures swapped for futures-util nuked tower crate & lowered what is pulled for tokio Brought back dependabot auto merge Added cool charts Nuked cool charts Stats page changed again (wip) Broke hackatime time syncing when i tried to make it not need auth (tmrw me problem) Added page streaming and incremantal word totals"}, {"post_id": 47444, "ts": "2026-08-15T11:36:12Z", "hours": 2.1614, "text": "Updates improving my devlog to hour ratio Anyway.. New db scrape is completed! Major changes Top words leaderboard Leaderboard search system Updated stats page (see below) Added a combined leaderboard (hackatime + slack time) Added backups in coolify Minor repo restructure (moved shiptalkers-app to its own shiptalkers-app/ dir) Added gzip support for slack api scrapers im lowkey running out of things to add… Drop any suggestions in the comments"}, {"post_id": 45844, "ts": "2026-08-12T15:56:53Z", "hours": 2.9381, "text": "Updates Tad bit of time that i forgot to log progressively. Anyway DB got corrupted We rescraping dis shi rn Added a whole new formula (multiple times actually) Added tests for formula Did a bunch of fixes to try and save corrupted db Afterwards i just nuked it and we started rescraping yesterday Made ini_tables probe slack_messages_by_user first Added default clickhouse values into the rust app Now recomputes stats page cache every 30s Fixed UNKNOWN_IDENTIFIER: ‘chars’ (Yeah i had claude do this one) Added a better system to add new slack keys to the env, instead of 1 big env var, its now, SLACK_BOT_TOKEN_X=xoxb…. Where X is token number made it a shared work queue instead of static round robin sharding for scraper Switched to a mimalloc allocator from glibc It now does backfills for channels and users in parallel Added a system for incase hackatime goes down Did a commit for one new keyboard being “last 2 months” It also now scrapes reactions"}, {"post_id": 43402, "ts": "2026-08-08T16:58:43Z", "hours": 2.14, "text": "Updates Added proper test system More keywords Heavily sped up per user pages & stats page Updates stats ui to mostly show 5 decs for db size in gib added a display load time in ms to footer Nuked the admin panel Dependabot & PR labeler system(s) We now use alpine base for docker We got a tests system now I think thats it, idk tho"}, {"post_id": 43170, "ts": "2026-08-08T09:04:47Z", "hours": 3.83, "text": "Updates May have forgot to be doing devlogs Anyway Actual thread scanning and actually scraping its replies Recconect system for run_socket so the slack bot part stops dying Added an admin panel Is bot and Is Deleted acc tags to make leaderboard better Slack_app_creation script (to scrape with more tokens.. faster) Added error support from slack Proper slack stats time computation for in channel image Scan older threads support (up to 30 days) If slack stops sending periodic pings then slack bot auto reconnects Displays coding time as hours and minutes instead of just minutes DB schema updates"}, {"post_id": 40194, "ts": "2026-08-03T16:25:15Z", "hours": 3.8114, "text": "Oops, forgot to devlog for a bit Anyway Updates its online it works Round robin support for multiple tokens for > speed it replies in channel (ship-talkers channel) downgraded clickhouse to 26.4 for my older server added a proper health check endpoint Optimized slack messages daily Realized conversations.history supports 999 per request instead of just 100 msgs Auto deploy system Limited resources for clickhouse Consistant rescrape checks w/ round robin support ofc Thats about it i think Oh yeah it finished the full slack scrape Next up Changing scrape system for privacy reasons (maybe) more scrape accs QOL features Idk gang"}, {"post_id": 39345, "ts": "2026-08-02T08:05:59Z", "hours": 1.7075, "text": "Updates As usual we got a bunch of features Search system Channel search User Search Per user stats page Per channel stats page Hackatime/HCA login systems Header & Footer Added a cool banner at top of the page to show its scraping for initial scrape Fix docker failing due to forgeting to COPY templates for it Added scopes needed for everything to readme Switched out the purple for a soft pink Still not done scraping"}, {"post_id": 38890, "ts": "2026-08-01T13:41:10Z", "hours": 1.4708, "text": "Updates Docker stuff Better concurrency system Replaced hand rolled bucket Two queue system for need to be scraped and already scraped checking Show total db size in stats page Backfilling for already scraped channels Top chatters and top shiptalkers tables in stats page Move all styling to a css file Add the css file to the repo as i forgot to include it in the move all styling to css file commit Use askama crate for server side rendering to remove javascript in website remove dead code and dead crates Create AGENTS.md Syslink CLAUDE.md to AGENTS.md Create clippy.toml Create a justfile Create CONTRIBUTING.md Add expected environment to contributing file Realize slack api sucks for the millionth time Fix things that i was ignoring and just lint needed me to fix to not error outs Scraping is coming along good too over 1k channels done 14.8k to go"}, {"post_id": 38777, "ts": "2026-08-01T10:43:33Z", "hours": 1.6328, "text": "Updates Archived Channel ID scraping I then reverted that change 2 days later after how stupid it was No more infinite scan loops Message scraping support Auto dedupe Better scraping Better logging Thread Scraping Then better thread scraping Finally Thread reply scraping in background"}, {"post_id": 35126, "ts": "2026-07-26T11:24:54Z", "hours": 1.0536, "text": "Updates We got it scraping total channel count so far Proper list Link up stats page to clickhouse Fix it not pushing to clickhouse often enough Start off with scraping total channel count Docker compose stuff Fun Fact: There is a total of 15,958 channels in Hack Club Slack!"}, {"post_id": 35088, "ts": "2026-07-26T09:20:49Z", "hours": 0.275, "text": "Updates Basic project setup"}]...
|
Title: Ship Talkers by @SeradedStripes | Stardance Title: Ship Talkers by @SeradedStripes | Stardance
Devlogs:
Updates Basic project setup
Updates We got it scraping total channel count so far Proper list Link up stats page to clickhouse Fix it not pushing to clickhouse often enough Start off with scraping total channel count Docker compose stuff Fun Fact: There is a total of 15,958 channels in Hack Club Slack!
Updates Archived Channel ID scraping I then reverted that change 2 days later after how stupid it was No more infinite scan loops Message scraping support Auto dedupe Better scraping Better logging Thread Scraping Then better thread scraping Finally Thread reply scraping in background
Updates Docker stuff Better concurrency system Replaced hand rolled bucket Two queue system for need to be scraped and already scraped checking Show total db size in stats page Backfilling for already scraped channels Top chatters and top shiptalkers tables in stats page Move all styling to a css file Add the css file to the repo as i forgot to include it in the move all styling to css file commit Use askama crate for server side rendering to remove javascript in website remove dead code and dead crates Create AGENTS.md Syslink CLAUDE.md to AGENTS.md Create clippy.toml Create a justfile Create CONTRIBUTING.md Add expected environment to contributing file Realize slack api sucks for the millionth time Fix things that i was ignoring and just lint needed me to fix to not error outs Scraping is coming along good too over 1k channels done 14.8k to go
Updates As usual we got a bunch of features Search system Channel search User Search Per user stats page Per channel stats page Hackatime/HCA login systems Header & Footer Added a cool banner at top of the page to show its scraping for initial scrape Fix docker failing due to forgeting to COPY templates for it Added scopes needed for everything to readme Switched out the purple for a soft pink Still not done scraping
Oops, forgot to devlog for a bit Anyway Updates its online it works Round robin support for multiple tokens for > speed it replies in channel (ship-talkers channel) downgraded clickhouse to 26.4 for my older server added a proper health check endpoint Optimized slack messages daily Realized conversations.history supports 999 per request instead of just 100 msgs Auto deploy system Limited resources for clickhouse Consistant rescrape checks w/ round robin support ofc Thats about it i think Oh yeah it finished the full slack scrape Next up Changing scrape system for privacy reasons (maybe) more scrape accs QOL features Idk gang
Updates May have forgot to be doing devlogs Anyway Actual thread scanning and actually scraping its replies Recconect system for run_socket so the slack bot part stops dying Added an admin panel Is bot and Is Deleted acc tags to make leaderboard better Slack_app_creation script (to scrape with more tokens.. faster) Added error support from slack Proper slack stats time computation for in channel image Scan older threads support (up to 30 days) If slack stops sending periodic pings then slack bot auto reconnects Displays coding time as hours and minutes instead of just minutes DB schema updates
Updates Added proper test system More keywords Heavily sped up per user pages & stats page Updates stats ui to mostly show 5 decs for db size in gib added a display load time in ms to footer Nuked the admin panel Dependabot & PR labeler system(s) We now use alpine base for docker We got a tests system now I think thats it, idk tho
Updates Tad bit of time that i forgot to log progressively. Anyway DB got corrupted We rescraping dis shi rn Added a whole new formula (multiple times actually) Added tests for formula Did a bunch of fixes to try and save corrupted db Afterwards i just nuked it and we started rescraping yesterday Made ini_tables probe slack_messages_by_user first Added default clickhouse values into the rust app Now recomputes stats page cache every 30s Fixed UNKNOWN_IDENTIFIER: ‘chars’ (Yeah i had claude do this one) Added a better system to add new slack keys to the env, instead of 1 big env var, its now, SLACK_BOT_TOKEN_X=xoxb…. Where X is token number made it a shared work queue instead of static round robin sharding for scraper Switched to a mimalloc allocator from glibc It now does backfills for channels and users in parallel Added a system for incase hackatime goes down Did a commit for one new keyboard being “last 2 months” It also now scrapes reactions
Updates improving my devlog to hour ratio Anyway.. New db scrape is completed! Major changes Top words leaderboard Leaderboard search system Updated stats page (see below) Added a combined leaderboard (hackatime + slack time) Added backups in coolify Minor repo restructure (moved shiptalkers-app to its own shiptalkers-app/ dir) Added gzip support for slack api scrapers im lowkey running out of things to add… Drop any suggestions in the comments
Updates We swapped aws-lc-rs for ring futures swapped for futures-util nuked tower crate & lowered what is pulled for tokio Brought back dependabot auto merge Added cool charts Nuked cool charts Stats page changed again (wip) Broke hackatime time syncing when i tried to make it not need auth (tmrw me problem) Added page streaming and incremantal word totals
A decent length devlog this time So recently I have been sick so i got less time. (Wish me to get better soon) Anyway enough of that, on to the changes: Updates Fixed authless hackatime syncing Using the spans api of hackatime so we get all data for time specific commands fix SQL and rust helper dividing by 1000000 Wrapped the entire sum(if(…)) in toUInt64(), which fixed the slack bot reporting wrong time from public hackatime syncing change. It makes it so clickhouse sees a single output type regardless of what it infers inside. Thats about it
Updates We still sick (not much better today) but i got some work done Updates^2 Split a bunch of existing code into separate files for maintainability added font caching parallel resyncs (hackatime) More memory/CPU optimizations in the code (I lowkey forgot what i changed for this Thats it for now
Updates Mighta lowkey forgot to be doing devlogs again… Anyway Updates^2 Basically any keyword for time works now Cargo Chef is now used for docker Updated AGENTS.md No longer requires hackatime data to display slack time data. Ported everything from clickhouse to postgresql but havent deployed that yet You can now mention other people to get their stats I think thats it Might be wrong on that tho. Anyway I got better from being sick last week and im sick again Also used @mahad in screenshot below, def not an excuse just for a random pung
Alot of updates this time Updates Brand new scraper crate separate from app, dk if I have mentioned it before in devlogs. It does slack and hackatime scraping all in one so we can have the main app deploys not interrupt scrapes. Updates^2 Added “a” keyword - Alias for “all time” Updated settings.rs and example.env to fit new defaults Fixed refresh_daily_stats failing on a second Fixed a bunch of ::bigint needing to be everywhere a sum() was decoded switched scraper to mimalloc allocator Replaced ts with real message_tis / 1000000 (I dont know if i put enough/too many zeros here) Fixed slack time recomputing in new postgredb Precomputes page stats now Removed a useless half-hourly job ON CONFLICT now only fires when counts actually change Added DB available probe to tests Better logging (disabled timestamps in logger) Added a mark_seen dedupe Updated hackatime sync logging to be less taking up all logs Added zstd + drop duplicate tables Removed zstd as postgre18-alpine does not come with it and I am not rescraping slack Only the scraper can init tables now I don’t think im missing anything else i did, If I am though then sorry gois Also see in one of the images below is total ram and cpu usage. somehow the postgre db is using over 4.5G of ram
Updates Really short devlog this time. Added Error logging for session_query Resumable channel sweeps Use a new action for build & deploys Workflows are also greatly increased with speed
Updates Bunch of API related things this time Added api docs API key section in account tab and APIT key account endpoints Added CSRF support (lmao i dont know why i didnt have it before) Made the api key response be a popup in account page and centered it in a later commit Added Stats API endpoint Added Max Age to cookies Website and slack bot now share 1 source of truth for stats (stupid that i didnt have it like this already) Added granting perms to other api keys New user joins are now picked up in real time. Thats about it
Updates Quite a bunch of updates this time, a lot of work has been done, and i feel like I was nearly killed by fd. Okay so Shiptalkers is now opt in. Most of this devlogs time was spent: Adding a message locator system, basically maps out where every message is instead of storing content of it Process messages without storing message content Backfill message content for users who opt in Add a custom shiptalkers id assigned to messages so we dont store sender id of each message. To opt in you can send “Opt In” in the shiptalkers channel Apart from that I migrated from in file SQL to a proper migrations system. General updates Added mobile support Massive cleanup of AGENTS.md 0 Full fetch and scrape all messages run in parrallel now. Archived channels card for stats page. Now persists thread rescans, added a thread timestamp index, persisted thread high-water marks. Reduced repeated history-wide scans Added durable consent backfill progress and fixed backfills blocking fresh message checks Fixed a per message update of the shared database counter row. It now updates per statement Score recomputation is now hourly instead of passly. I think thats about it. Main point of this is that we got scraping to be way faster, and we got opt in requirement.
Updates Should be final update before I ship Added all users and all channels boards Renamed Leaderboards to just Boards Normalized colum widths for those boards and added pagination We were hammering hackatime, it now has a hard limit of 50k hackatime reqs/day and 1req/sec Massive update to stats page so it displays more info and is more relevant. Changed total time to total hours where the time was hours and added total time in format of years/months/ etc. as well We sped up docker builds a bunch We retry known private hackatime users ever 30 days now Fixed a shared message-scrape lock The response when you ask the bot for time now includes a link to your/person your checking time ofs stats page I think thats about it
Update time Been quite a bit since ship and i decided because of the stardance extension I’m going to do more devlogs. Mainly i added an opt out feature and realized the new defaults for scraping speeds were shit so i undid them. I then decided that because there were channels with fucking 3000 thread roots, i lowered the age limit of threads to 7 days instead of 30 days. I nuked opt out/opt in and nuked the manual apps needed for scraping. There is now an OAuth system with slack, you can link your account and it will scrape your messages in private channels you are in. works without this though. Added a max scraping per minute variable so i dont strain my internet connection a bunch. And finally I also added the [PRIVATE] and [ARCHIVED] badges to channels
Updates Quite a bit this time that are important. First up I added a link to the github in the header and fixed the bot to actually follow slack rate limtis. Added a board for linked accounts page. Big thing now. Added consent gated slack scraping. Basically fd told me i need people to opt in. And finally the last big thing I added channel blacklisting as a shipwright and a goi linked through OAuth so I had to blacklist all sw channels and goi channel as they have sensitive messages in them
Ships:
I made shiptalkers! A bot that originally allows you to compare your slack time to hackatime time. Previously it was shut down, but I have revived it! With many additions as well. It features a website with a bunch of aggregated stats, a cool api and sweet leaderboards. Even a search system! It processes all messages in hack club slack to calculate slack time. Although if you opt in to it storing your messages as well, it will be way more accurate and will stay updated faster....
|
1793008080.1337075
|
1793094480.1337075
|
|
53361
|
FreeDomain by @theskriptkid | Stardance
|
theskriptkid
|
1
|
27.21
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-01T13:52:33Z", "hours": 26.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Free SUbdomain Hosting plattform! Anyone can get a Free subdomain of the *.freedomain.meme domain, as long as its only per account. Please Note while testing: The domain May (or may not?) take up to 30-60 minutes to come up, this is because of Namecheap and I cant do anything about it! You can Only make 1 Domain per Useraccount You need an 2 Factor app on your phone You can Not change your password, we generated it for you. On the TEST Ip, you WILL GET an Certificate warning. If this were not our test IP, you would be able to use certbot or similar programms that allow you to generate an Certificate for your site. However, as we Don’t know your subdomain name, we cant do that and because of that there is an Warning (should be skippable, goto show more and then continue to site)", "repo": "https://github.com/TherealONE12/FreeDomain", "demo": "https://freedomain.meme"}]...
|
[{"post_id": 82925, "ts": "202 [{"post_id": 82925, "ts": "2026-10-26T08:32:04Z", "hours": 0.8281, "text": "Okay, so hopefully everything works now… LOL Fixxed a lot of bugs, including that one of the packages from pip didnt work anymore, and i had to migrate evrrything to a new package. Then I tested everything and hopefully now it works… Also I have added a test site for you guys to test it out, as many of the other sites block acsess from unknown domains"}, {"post_id": 80617, "ts": "2026-10-18T09:58:52Z", "hours": 0.3808, "text": "fixxed stuff, clarified in readme ai usage, Redeployed everything."}, {"post_id": 75800, "ts": "2026-10-01T05:48:53Z", "hours": 2.5833, "text": "fixxed (All?) Bugss, gonna ship Now!"}, {"post_id": 69787, "ts": "2026-09-17T19:51:14Z", "hours": 1.0708, "text": "I wanted to Ship today but YAY DEBUGGING DAY! Well, thanks to zsharpminor (sorry, I only know your dc name ) and two of my real Live friends We found some bugs. And afther an hour or so of fixing stuff, There are still Bugs. Well, Gonna ship another Day! (And btw, YAY Day 20 Of 21 of Code everyday for a Pluschi!!!)"}, {"post_id": 69597, "ts": "2026-09-17T11:52:51Z", "hours": 0.8467, "text": "Deployed The Website! But Wait, why Isnt this the ship Message? Because, I sadly found a few bugs and wrong Grammar/text on the website, wich I will Fix Today a bit later, and then, it goes to one last round of Beta Testing and then I will ship (Hopefully no bugs emerge)! Im pretty hyped, as I can see the end of this Projekt!! Cant wait to share what I build!!"}, {"post_id": 68791, "ts": "2026-09-15T19:18:31Z", "hours": 2.8333, "text": "debugged, fixxed and removed useless stuff. Began on recommenting and added an (empty) readme file"}, {"post_id": 67919, "ts": "2026-09-14T07:06:43Z", "hours": 3.4039, "text": "Made the HTML sites more dynamic, and added MINIMAL logic to the code to make the HTML sites more dynamic and yeah. They still look no good, but i dont know css or html soooooo i will need some more time… (Wich is good because more time = more stardust ;) ) It broke everything existing. I dont know why or how. But heyyyyy, thats gonna be fine or something"}, {"post_id": 66082, "ts": "2026-09-11T17:30:54Z", "hours": 1.7911, "text": "Added The Admin System (Well the Logging part) I Made varius different types of logs. One for New Domains, one for varius stuff, one for Bans, etc. And They look pretty Okay!"}, {"post_id": 65810, "ts": "2026-09-11T06:10:11Z", "hours": 0.7681, "text": "Secured the Homepage, added that the real A level names get pulled from the DNS server (Namecheap) instead of just the safed entries in the database, so that it “auto-syncs” on each new request the names from the dns provider and my personal entries dont get overwritten. The next step would be to either add an small website scraper to verify the connected websites that they are sfw and dont do bad stuff (cause thats still my domain and I am getting to jail if smth happens) Or add more different html error/sucsess types so that they are acutally usefull Or to Make the Admin integrations for (un) Banning members, (re)setting the domains or smth Or to enhance the sites with some css/better html styling cause I think my rating is getting obliverated if I let them how they are right now…"}, {"post_id": 65351, "ts": "2026-09-10T13:13:27Z", "hours": 3.9522, "text": "fixxed the problem with namecheap, added support to make domains, added mayor Commenting for interested people to understand what my thoughts are on why stuff what made that way"}, {"post_id": 63803, "ts": "2026-09-07T19:27:19Z", "hours": 1.7511, "text": "Finalised and tested OTP/login/register flow, added support for subdomain-creation and added the m,ethodes to interact with namecheap api. Sadly namecheap is currently blocking all requests and idk why… Even though I added the correct api key AND the correct ip…. gotta see what I can do."}, {"post_id": 62437, "ts": "2026-09-05T19:39:20Z", "hours": 2.8569, "text": "Added background system for domain registration, and a new auth system so that you dont have to input an topt code every 10s"}, {"post_id": 59084, "ts": "2026-08-31T18:11:07Z", "hours": 4.1478, "text": "I have made some cool Progress! I added an register flow (with db) and account code generation. There are still some “minor” bugs, but its good enough for the 1. devlog."}]...
|
Title: FreeDomain by @theskriptkid | Stardance
De Title: FreeDomain by @theskriptkid | Stardance
Devlogs:
I have made some cool Progress! I added an register flow (with db) and account code generation. There are still some “minor” bugs, but its good enough for the 1. devlog.
Added background system for domain registration, and a new auth system so that you dont have to input an topt code every 10s
Finalised and tested OTP/login/register flow, added support for subdomain-creation and added the m,ethodes to interact with namecheap api. Sadly namecheap is currently blocking all requests and idk why… Even though I added the correct api key AND the correct ip…. gotta see what I can do.
fixxed the problem with namecheap, added support to make domains, added mayor Commenting for interested people to understand what my thoughts are on why stuff what made that way
Secured the Homepage, added that the real A level names get pulled from the DNS server (Namecheap) instead of just the safed entries in the database, so that it “auto-syncs” on each new request the names from the dns provider and my personal entries dont get overwritten. The next step would be to either add an small website scraper to verify the connected websites that they are sfw and dont do bad stuff (cause thats still my domain and I am getting to jail if smth happens) Or add more different html error/sucsess types so that they are acutally usefull Or to Make the Admin integrations for (un) Banning members, (re)setting the domains or smth Or to enhance the sites with some css/better html styling cause I think my rating is getting obliverated if I let them how they are right now…
Added The Admin System (Well the Logging part) I Made varius different types of logs. One for New Domains, one for varius stuff, one for Bans, etc. And They look pretty Okay!
Made the HTML sites more dynamic, and added MINIMAL logic to the code to make the HTML sites more dynamic and yeah. They still look no good, but i dont know css or html soooooo i will need some more time… (Wich is good because more time = more stardust ;) ) It broke everything existing. I dont know why or how. But heyyyyy, thats gonna be fine or something
debugged, fixxed and removed useless stuff. Began on recommenting and added an (empty) readme file
Deployed The Website! But Wait, why Isnt this the ship Message? Because, I sadly found a few bugs and wrong Grammar/text on the website, wich I will Fix Today a bit later, and then, it goes to one last round of Beta Testing and then I will ship (Hopefully no bugs emerge)! Im pretty hyped, as I can see the end of this Projekt!! Cant wait to share what I build!!
I wanted to Ship today but YAY DEBUGGING DAY! Well, thanks to zsharpminor (sorry, I only know your dc name ) and two of my real Live friends We found some bugs. And afther an hour or so of fixing stuff, There are still Bugs. Well, Gonna ship another Day! (And btw, YAY Day 20 Of 21 of Code everyday for a Pluschi!!!)
fixxed (All?) Bugss, gonna ship Now!
fixxed stuff, clarified in readme ai usage, Redeployed everything.
Okay, so hopefully everything works now… LOL Fixxed a lot of bugs, including that one of the packages from pip didnt work anymore, and i had to migrate evrrything to a new package. Then I tested everything and hopefully now it works… Also I have added a test site for you guys to test it out, as many of the other sites block acsess from unknown domains
Ships:
I made a Free SUbdomain Hosting plattform! Anyone can get a Free subdomain of the *.freedomain.meme domain, as long as its only per account. Please Note while testing: The domain May (or may not?) take up to 30-60 minutes to come up, this is because of Namecheap and I cant do anything about it! You can Only make 1 Domain per Useraccount You need an 2 Factor app on your phone You can Not change your password, we generated it for you. On the TEST Ip, you WILL GET an Certificate warning. If this were not our test IP, you would be able to use certbot or similar programms that allow you to generate an Certificate for your site. However, as we Don’t know your subdomain name, we cant do that and because of that there is an Warning (should be skippable, goto show more and then continue to site)...
|
1793008078.9222183
|
1793094478.9222183
|
|
27788
|
Self balancing robot- QuadCat by @MaxMadeGG | Star Self balancing robot- QuadCat by @MaxMadeGG | Stardance...
|
MaxMadeGG
|
1
|
0.32
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T08:57:47Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "The project is now shipped due that the event ends soon and that my ESP32 is dead and the new one arrives too late so i decided to submit what i have, which is the main thing…the working PCB with the FOC loop i created so you can still build the robot because there is basically everything in the repo just the code isn’t done and tuned. Have fun! Made :)", "repo": "https://github.com/MaxMadeGG/Self-balancing-robot--QuadCat", "demo": ""}]...
|
[{"post_id": 72741, "ts": "202 [{"post_id": 72741, "ts": "2026-09-23T17:03:51Z", "hours": 0.3189, "text": "Thank you for the great decision of Hack club and if you guys want to continue following my self balancing robot go to> https://stardance.hackclub.com/projects/65148"}, {"post_id": 70581, "ts": "2026-09-19T12:03:35Z", "hours": 1.5503, "text": "fixed the body and sending to the printer to print it again and i will enjoy two hours changing the filament for color T_T i don’t have the AMS lite thingy XD"}, {"post_id": 70096, "ts": "2026-09-18T13:25:27Z", "hours": 1.4169, "text": "finished the body now printing and let’s hope it works :D"}, {"post_id": 69670, "ts": "2026-09-17T15:26:47Z", "hours": 5.1669, "text": "The new PCB arrived so i was soldering for 2hrs then started making the motors work and after 2hrs i finally managed to make work one then after 1hr i found out that in1 was swapped with EN in the code so that’s why it wasn’t working then made work the servos which worked immediately then made run motors and servos at the same time which worked so wonderful! then started finishing the body-shell which i will finish tomorrow and send to the printer and then i will assemble all and solder all permanently :D hyped for tomorrow"}, {"post_id": 68733, "ts": "2026-09-15T17:16:18Z", "hours": 1.1003, "text": "I made a completely new design(why? check out previous posts)…it’s kinda a box which is not what i wanted but it looks good even not finished :D Btw reminds me of a star-wars robot it wasn’t intentional…still waiting for the new PCB fingers crossed that it arrives before the end of Stardance"}, {"post_id": 68050, "ts": "2026-09-14T13:03:29Z", "hours": 0.4669, "text": "So i’m still making the body and still thinking of how to put the laser sensor at the front that it doesn’t look odd…if you have any ideas then please feel free to tell me in comments :D (this design at the base wasn’t thought that there will be a laser sensor)"}, {"post_id": 67460, "ts": "2026-09-13T15:57:30Z", "hours": 0.5836, "text": "Thinking about how to implement the laser sensors into the body-shell design that it isn’t odd and fixing some stuff in Fusion. I also made a small wooden table next to my desk that i can have more place for my projects. Still waiting for the v2.0 PCB and idk if i will have time to finish this robot before the end of stardance but at least i think i will have a working PCB which is the main thing of the robot"}, {"post_id": 65337, "ts": "2026-09-10T12:42:50Z", "hours": 0.2833, "text": "I unsoldered everything and unplugged. Now waiting that the new PCB v2.0 arrives—–––> if you want to know more: https://youtu.be/JHu94_pjOXo"}, {"post_id": 64916, "ts": "2026-09-09T17:09:01Z", "hours": 0.8167, "text": "After too much problems making the motor want to spin and finding other problems i decided to make a new PCB with all the stuff fixed and reviewed hundreds of times —––> if you want to know more: https://youtu.be/JHu94_pjOXo"}, {"post_id": 63618, "ts": "2026-09-07T15:22:32Z", "hours": 1.5503, "text": "Ok this is funny…i’ve been trying to make work my motors with the custom PCB for 3days and now i found out that the motor i was testing was using the encoder of the other motor that i wasn’t using so yeah pretty stupid lol…and look at the video what i can do with it, i can make spin the other motor by turning one by hand. Anyway i did manage to make work one motor perfectly but the other one is another story and now the battery is dead so i’m charging 😭"}, {"post_id": 60929, "ts": "2026-09-03T16:31:38Z", "hours": 3.6669, "text": "Ok so i finished soldering the stuff on the PCB…i basically was soldering and soldering and soldering…for 3hrs almost 4…ehm anyway now i will code the thing and then let’s see if the PCB works…ah you’re lucky i forgot to post this so you will know if the PCB works…and like yes it works but i have to fix some little problems :)"}, {"post_id": 60362, "ts": "2026-09-02T17:29:39Z", "hours": 0.9667, "text": "The PCB has finally arrived so i started soldering the stuff but it’s late rn so i will finsih tomorrow"}, {"post_id": 59641, "ts": "2026-09-01T15:41:52Z", "hours": 0.3503, "text": "Ok so bad and good news…i have the laser sensors but i destroyed one a little like he works but the small chip is a little cooked so it reads stuff at only max 7cm of it which could work anyway…the bad news…uhh the PCB is stuck somewhere due to douane stuff so it will arrive in one week for the best so it could arrive in one month(next time i order a PCB somewhere in EU never again in china…sorry jlcpcb or pcbway if you wanted to sponsor me)….anyway now i made the part for my robot leg and it’s currently printing so we will see :D"}, {"post_id": 59618, "ts": "2026-09-01T15:14:12Z", "hours": 0.9169, "text": "Hi this is a old thing i have made but because it didn’t sync due to some Hackatime problems i’m posting it today after one week…tho i don’t remember what i did so yeah😅 anyway now i’m gonna model a part in Fusion for my leg and you will know more in the next post!🙃"}, {"post_id": 54497, "ts": "2026-08-25T14:49:47Z", "hours": 2.2503, "text": "So as i said i will make my own FOC controller which turned into a blowed up ESP32…jk jk in fact it worked super nicely it actually works! So now just waiting that the PCB arrives and the laser sensors for wall avidance. and the breakdown of today is: i’m happy https://youtu.be/9f9dHl2CsRY?si=nJjeVBc7lghW3pOh"}, {"post_id": 53839, "ts": "2026-08-24T15:10:11Z", "hours": 0.5333, "text": "Hi guys has been a while since, right? But today i’m back with a new idea for my robot which is adding laser sensors!🌟 For wall avoidance…anyway today i upgraded my PCB to the max fixed all small things that could be a problem and then tried to make the motor spin with simple FOC library but didn’t work 😭yeah didn’t :( after trying to make it work for 4hrs no wait 5hrs i decided that i will make my own thing…we will see in next episode if it will work or not…oh wait i forgot that i managed to make the motors spin without the FOC!!! which was wonderful to see🎉 the code that worked was this one: void setup() { ledcAttach(16, 20000, 8); ledcAttach(17, 20000, 8); ledcAttach(18, 20000, 8); pinMode(33, OUTPUT); digitalWrite(33, HIGH); } void loop() { static int a = 0; ledcWrite(16, 128 + 100 * sin(a * 0.01)); ledcWrite(17, 128 + 100 * sin(a * 0.01 + 2.09)); ledcWrite(18, 128 + 100 * sin(a * 0.01 + 4.19)); a++; delayMicroseconds(200); } also i have a YT and a VID will drop soon so please be sure to sub, thx: https://www.youtube.com/@Made-g4u"}, {"post_id": 43147, "ts": "2026-08-08T07:59:02Z", "hours": 0.6333, "text": "ok i plugged all and i also changed the voltage of the boost converter and it didn’t blow up so that’s great…and now i’m gonna write some code(claude) to test the motor…uhh just for the final complete code i will write it myself. Also if you want to support more my 💩 projects https://www.youtube.com/@Made-g4u"}, {"post_id": 41237, "ts": "2026-08-05T10:04:09Z", "hours": 1.4169, "text": "Updated🛠️ my custom PCB that it fits inside the body. Also next i might fix the model of the body because there are some minor faults that i did. I might maybe retry tomorrow the boost converter with a multimeter that i will buy…uhh yea i don’t have a multimeter😅 anyway if it blows up💥 again😤 after changing the Voltage then the board might have another problem than the Voltage that was wrong…🚮"}, {"post_id": 40722, "ts": "2026-08-04T13:15:47Z", "hours": 2.6675, "text": "Made the body, now it will go to the printer lets hope it works. Also i might finish testing the stuff on the bread board next week or in 1-2 weeks. Tomorrow i will make the wheels i think"}, {"post_id": 39962, "ts": "2026-08-03T09:23:45Z", "hours": 1.0167, "text": "uhh ok this is nice…idk why but the boost converter blow up after i finished plugging all together, no polarity reverse or stuff i just plugged and then after 2 secs pshh 💥pow big 💨smoke going off…so yeah interesting🤔, i will try to change the V of the boost to 10V and then if my other boost converter blows up💥 again then it must be a cheap, low quality one that i bought…this project is the most unlucky one i’m working on so far😢…wish me luck🙏. Below photo of almost all plugged(without the boost)."}, {"post_id": 39362, "ts": "2026-08-02T09:17:57Z", "hours": 0.2669, "text": "prepared stuff that i can start making the main body later because now i wont be at home for some time"}, {"post_id": 38710, "ts": "2026-08-01T07:49:11Z", "hours": 0.3503, "text": "I made a part that i forgot to do."}, {"post_id": 38134, "ts": "2026-07-31T11:13:59Z", "hours": 0.7336, "text": "finishing legs for the robot, next have to make the body and other stuff so lets hope the legs work. Btw i blew up my controller 😅 and found out i forgot to buy smth XD"}, {"post_id": 37506, "ts": "2026-07-30T09:34:58Z", "hours": 0.55, "text": "I created my own Dupont wires because yesterday my wiring wasn’t pretty nice and it didn’t work so lets hope it works now! :D btw it’s pretty a mess all these wires"}, {"post_id": 36994, "ts": "2026-07-29T13:25:37Z", "hours": 0.2833, "text": "soldering and cliping all on a breadboard, i also printed a holder for the motor that i can test all next will finish clip all and then program it"}, {"post_id": 36351, "ts": "2026-07-28T12:28:46Z", "hours": 0.4167, "text": "I’ve made a pcb holder stand that i can weld stuff without headaches. Btw all the parts have arrived so i can continue!"}, {"post_id": 29500, "ts": "2026-07-16T14:04:08Z", "hours": 3.1667, "text": "I was making the pcb that i didn’t finish yet i’m taking a little pause of this stupid unresponsive PC and easyEDA. this is the only screenshot i can show you, i have made more but this…PC doesn’t work i can’t do even ctrl+v or take a screenshot"}, {"post_id": 28858, "ts": "2026-07-15T12:31:18Z", "hours": 0.3675, "text": "i started fixing the body but then realized that i don’t have the physical parts yet so i don’t know the size of them and if i fix it now then i will maybe need to fix it again so it would be a waste of time. So i will wait that the parts arrive and then continue making the body"}, {"post_id": 28788, "ts": "2026-07-15T09:05:55Z", "hours": 0.7508, "text": "I’ve been finalizing the legs a little then looking if it all fits and unfortunately i did some calculation fault somewhere because the body is a little too big like maybe too much. Next i will finish the parts and fix the body size and fix that it’s not all at the front because if you noticed the body is too much at the front so too much weight."}, {"post_id": 27553, "ts": "2026-07-13T07:15:45Z", "hours": 0.6342, "text": "again 3D modeling- almost finished the body"}, {"post_id": 21550, "ts": "2026-07-03T15:54:00Z", "hours": 0.5339, "text": "a little of modeling the body"}, {"post_id": 21504, "ts": "2026-07-03T14:29:36Z", "hours": 0.6667, "text": "i have been modeling the leg parts and a little the main body"}, {"post_id": 20768, "ts": "2026-07-02T13:46:14Z", "hours": 1.8325, "text": "Brainstorming, thinking and a lot of 3D modeling mostly fighting with painful Fusion 360 lolll tired"}]...
|
Title: Self balancing robot- QuadCat by @MaxMadeGG Title: Self balancing robot- QuadCat by @MaxMadeGG | Stardance
Devlogs:
Brainstorming, thinking and a lot of 3D modeling mostly fighting with painful Fusion 360 lolll tired
i have been modeling the leg parts and a little the main body
a little of modeling the body
again 3D modeling- almost finished the body
I’ve been finalizing the legs a little then looking if it all fits and unfortunately i did some calculation fault somewhere because the body is a little too big like maybe too much. Next i will finish the parts and fix the body size and fix that it’s not all at the front because if you noticed the body is too much at the front so too much weight.
i started fixing the body but then realized that i don’t have the physical parts yet so i don’t know the size of them and if i fix it now then i will maybe need to fix it again so it would be a waste of time. So i will wait that the parts arrive and then continue making the body
I was making the pcb that i didn’t finish yet i’m taking a little pause of this stupid unresponsive PC and easyEDA. this is the only screenshot i can show you, i have made more but this…PC doesn’t work i can’t do even ctrl+v or take a screenshot
I’ve made a pcb holder stand that i can weld stuff without headaches. Btw all the parts have arrived so i can continue!
soldering and cliping all on a breadboard, i also printed a holder for the motor that i can test all next will finish clip all and then program it
I created my own Dupont wires because yesterday my wiring wasn’t pretty nice and it didn’t work so lets hope it works now! :D btw it’s pretty a mess all these wires
finishing legs for the robot, next have to make the body and other stuff so lets hope the legs work. Btw i blew up my controller 😅 and found out i forgot to buy smth XD
I made a part that i forgot to do.
prepared stuff that i can start making the main body later because now i wont be at home for some time
uhh ok this is nice…idk why but the boost converter blow up after i finished plugging all together, no polarity reverse or stuff i just plugged and then after 2 secs pshh 💥pow big 💨smoke going off…so yeah interesting🤔, i will try to change the V of the boost to 10V and then if my other boost converter blows up💥 again then it must be a cheap, low quality one that i bought…this project is the most unlucky one i’m working on so far😢…wish me luck🙏. Below photo of almost all plugged(without the boost).
Made the body, now it will go to the printer lets hope it works. Also i might finish testing the stuff on the bread board next week or in 1-2 weeks. Tomorrow i will make the wheels i think
Updated🛠️ my custom PCB that it fits inside the body. Also next i might fix the model of the body because there are some minor faults that i did. I might maybe retry tomorrow the boost converter with a multimeter that i will buy…uhh yea i don’t have a multimeter😅 anyway if it blows up💥 again😤 after changing the Voltage then the board might have another problem than the Voltage that was wrong…🚮
ok i plugged all and i also changed the voltage of the boost converter and it didn’t blow up so that’s great…and now i’m gonna write some code(claude) to test the motor…uhh just for the final complete code i will write it myself. Also if you want to support more my 💩 projects https://www.youtube.com/@Made-g4u
Hi guys has been a while since, right? But today i’m back with a new idea for my robot which is adding laser sensors!🌟 For wall avoidance…anyway today i upgraded my PCB to the max fixed all small things that could be a problem and then tried to make the motor spin with simple FOC library but didn’t work 😭yeah didn’t :( after trying to make it work for 4hrs no wait 5hrs i decided that i will make my own thing…we will see in next episode if it will work or not…oh wait i forgot that i managed to make the motors spin without the FOC!!! which was wonderful to see🎉 the code that worked was this one: void setup() { ledcAttach(16, 20000, 8); ledcAttach(17, 20000, 8); ledcAttach(18, 20000, 8); pinMode(33, OUTPUT); digitalWrite(33, HIGH); } void loop() { static int a = 0; ledcWrite(16, 128 + 100 * sin(a * 0.01)); ledcWrite(17, 128 + 100 * sin(a * 0.01 + 2.09)); ledcWrite(18, 128 + 100 * sin(a * 0.01 + 4.19)); a++; delayMicroseconds(200); } also i have a YT and a VID will drop soon so please be sure to sub, thx: https://www.youtube.com/@Made-g4u
So as i said i will make my own FOC controller which turned into a blowed up ESP32…jk jk in fact it worked super nicely it actually works! So now just waiting that the PCB arrives and the laser sensors for wall avidance. and the breakdown of today is: i’m happy https://youtu.be/9f9dHl2CsRY?si=nJjeVBc7lghW3pOh
Hi this is a old thing i have made but because it didn’t sync due to some Hackatime problems i’m posting it today after one week…tho i don’t remember what i did so yeah😅 anyway now i’m gonna model a part in Fusion for my leg and you will know more in the next post!🙃
Ok so bad and good news…i have the laser sensors but i destroyed one a little like he works but the small chip is a little cooked so it reads stuff at only max 7cm of it which could work anyway…the bad news…uhh the PCB is stuck somewhere due to douane stuff so it will arrive in one week for the best so it could arrive in one month(next time i order a PCB somewhere in EU never again in china…sorry jlcpcb or pcbway if you wanted to sponsor me)….anyway now i made the part for my robot leg and it’s currently printing so we will see :D
The PCB has finally arrived so i started soldering the stuff but it’s late rn so i will finsih tomorrow
Ok so i finished soldering the stuff on the PCB…i basically was soldering and soldering and soldering…for 3hrs almost 4…ehm anyway now i will code the thing and then let’s see if the PCB works…ah you’re lucky i forgot to post this so you will know if the PCB works…and like yes it works but i have to fix some little problems :)
Ok this is funny…i’ve been trying to make work my motors with the custom PCB for 3days and now i found out that the motor i was testing was using the encoder of the other motor that i wasn’t using so yeah pretty stupid lol…and look at the video what i can do with it, i can make spin the other motor by turning one by hand. Anyway i did manage to make work one motor perfectly but the other one is another story and now the battery is dead so i’m charging 😭
After too much problems making the motor want to spin and finding other problems i decided to make a new PCB with all the stuff fixed and reviewed hundreds of times —––> if you want to know more: https://youtu.be/JHu94_pjOXo
I unsoldered everything and unplugged. Now waiting that the new PCB v2.0 arrives—–––> if you want to know more: https://youtu.be/JHu94_pjOXo
Thinking about how to implement the laser sensors into the body-shell design that it isn’t odd and fixing some stuff in Fusion. I also made a small wooden table next to my desk that i can have more place for my projects. Still waiting for the v2.0 PCB and idk if i will have time to finish this robot before the end of stardance but at least i think i will have a working PCB which is the main thing of the robot
So i’m still making the body and still thinking of how to put the laser sensor at the front that it doesn’t look odd…if you have any ideas then please feel free to tell me in comments :D (this design at the base wasn’t thought that there will be a laser sensor)
I made a completely new design(why? check out previous posts)…it’s kinda a box which is not what i wanted but it looks good even not finished :D Btw reminds me of a star-wars robot it wasn’t intentional…still waiting for the new PCB fingers crossed that it arrives before the end of Stardance
The new PCB arrived so i was soldering for 2hrs then started making the motors work and after 2hrs i finally managed to make work one then after 1hr i found out that in1 was swapped with EN in the code so that’s why it wasn’t working then made work the servos which worked immediately then made run motors and servos at the same time which worked so wonderful! then started finishing the body-shell which i will finish tomorrow and send to the printer and then i will assemble all and solder all permanently :D hyped for tomorrow
finished the body now printing and let’s hope it works :D
fixed the body and sending to the printer to print it again and i will enjoy two hours changing the filament for color T_T i don’t have the AMS lite thingy XD
Thank you for the great decision of Hack club and if you guys want to continue following my self balancing robot go to> https://stardance.hackclub.com/projects/65148
Ships:
The project is now shipped due that the event ends soon and that my ESP32 is dead and the new one arrives too late so i decided to submit what i have, which is the main thing…the working PCB with the FOC loop i created so you can still build the robot because there is basically everything in the repo just the code isn’t done and tuned. Have fun! Made :)...
|
1793008075.9323466
|
1793094475.9323466
|
|
19113
|
AcademiaOS by @aminoacid | Stardance
|
aminoacid
|
2
|
28.0
|
88
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-09T15:37:31Z", "hours": 10.0, "multiplier": 8.46, "payout": 88, "blessing": "neutral", "text": "I completed the WebOS 2 mission. In the updated WebOS, I added: pomodoro app weather app clock widget animated cat widget During this project I learned how to retrieve data using javascript for the weather app and how to animate in libresprite. Figuring out how to rotate the clock hands was challenging, but the hardest part of the project was to manage it with my school work and SAT exams.", "repo": "https://github.com/909aminoacid909/AcademiaOS", "demo": "https://909aminoacid909.github.io/AcademiaOS/"}, {"ship_num": 2, "ts": "2026-09-12T11:57:20Z", "hours": 18.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Completed my second Stardance Project! AcademiaOS is my web based operating system inspired by a dark academia aesthetic. I built a notes app, a calculator, a record player and a browser. The most difficult part of this project was definitely the javascript for opening, closing and dragging tabs. Since this is my first project with Javascript, the functionality is quite simple. This project did familiarize me with the basics of the language, and once I’ve learned more I might attempt to work on WebOS 2. I’m very proud of the design of the record player app and all the square buttons; I made sure everything would be cohesive and fit well into the theme.", "repo": "https://github.com/909aminoacid909/AcademiaOS", "demo": "https://909aminoacid909.github.io/AcademiaOS/"}]...
|
[{"post_id": 78092, "ts": "202 [{"post_id": 78092, "ts": "2026-10-09T15:23:22Z", "hours": 0.7172, "text": "Completed the updated README!"}, {"post_id": 78058, "ts": "2026-10-09T12:18:20Z", "hours": 2.4817, "text": "Added an Antique Clock and cat widget. Getting the clock hands to work definitely took me some time. I animated the cat in libresprite."}, {"post_id": 74211, "ts": "2026-09-26T22:25:01Z", "hours": 7.2367, "text": "Finished the pomodoro and the weather app. I designed the logos for the apps and the all the weather icons too in libresprite. Work’s been slow since the SAT date is coming up rip T-T"}, {"post_id": 66537, "ts": "2026-09-12T11:43:46Z", "hours": 0.8903, "text": "Devlog#6 Finished the README file. This project took me forever T-T."}, {"post_id": 66478, "ts": "2026-09-12T09:57:41Z", "hours": 2.9394, "text": "Devlog#5 Completed the browser and the notes app. The javascript for the notes app was the hardest for me to figure out smh. Now I’m going to write a README and submit it."}, {"post_id": 63191, "ts": "2026-09-06T21:11:07Z", "hours": 1.0447, "text": "Devlog#4 Completed most of the record player app. Just have a bit of the javascript left."}, {"post_id": 59825, "ts": "2026-09-01T20:01:27Z", "hours": 2.8883, "text": "Devlog#3 Finished the calculator and a bit of the notes app."}, {"post_id": 47216, "ts": "2026-08-14T23:56:25Z", "hours": 7.3244, "text": "Devlog#2 Ok so during the past week i worked on the: app icon, closing and opening windows, and app selection. It took me a ridiculous amount of time to make the app div change class in response to a click. I disabled pointer events on the background but that just turned it off for all the other windows too. Eventually, i found out i could enable pointer events for everything but the background using the *:not(#background) in css and it FINALLY worked. This was my first time using Javascript, so now that I’ve had some exposure hopefully its easier to work on the individual apps T-T. I made all the icons myself using libresprite."}, {"post_id": 41889, "ts": "2026-08-06T12:05:42Z", "hours": 2.6789, "text": "Devlog#1 Decided to make a pixel background and learned how to use libresprite. Took WAY longer than i thought-"}]...
|
Title: AcademiaOS by @aminoacid | Stardance
Devlo Title: AcademiaOS by @aminoacid | Stardance
Devlogs:
Devlog#1 Decided to make a pixel background and learned how to use libresprite. Took WAY longer than i thought-
Devlog#2 Ok so during the past week i worked on the: app icon, closing and opening windows, and app selection. It took me a ridiculous amount of time to make the app div change class in response to a click. I disabled pointer events on the background but that just turned it off for all the other windows too. Eventually, i found out i could enable pointer events for everything but the background using the *:not(#background) in css and it FINALLY worked. This was my first time using Javascript, so now that I’ve had some exposure hopefully its easier to work on the individual apps T-T. I made all the icons myself using libresprite.
Devlog#3 Finished the calculator and a bit of the notes app.
Devlog#4 Completed most of the record player app. Just have a bit of the javascript left.
Devlog#5 Completed the browser and the notes app. The javascript for the notes app was the hardest for me to figure out smh. Now I’m going to write a README and submit it.
Devlog#6 Finished the README file. This project took me forever T-T.
Finished the pomodoro and the weather app. I designed the logos for the apps and the all the weather icons too in libresprite. Work’s been slow since the SAT date is coming up rip T-T
Added an Antique Clock and cat widget. Getting the clock hands to work definitely took me some time. I animated the cat in libresprite.
Completed the updated README!
Ships:
Completed my second Stardance Project! AcademiaOS is my web based operating system inspired by a dark academia aesthetic. I built a notes app, a calculator, a record player and a browser. The most difficult part of this project was definitely the javascript for opening, closing and dragging tabs. Since this is my first project with Javascript, the functionality is quite simple. This project did familiarize me with the basics of the language, and once I’ve learned more I might attempt to work on WebOS 2. I’m very proud of the design of the record player app and all the square buttons; I made sure everything would be cohesive and fit well into the theme.
I completed the WebOS 2 mission. In the updated WebOS, I added: pomodoro app weather app clock widget animated cat widget During this project I learned how to retrieve data using javascript for the weather app and how to animate in libresprite. Figuring out how to rotate the clock hands was challenging, but the hardest part of the project was to manage it with my school work and SAT exams....
|
1793008074.2626548
|
1793094474.2626548
|
|
58262
|
MY PORTFOLIO WEBSITE by @Tejveer | Stardance
|
Tejveer
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-12T13:31:07Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "so i make a website for my portfolio and add very much cool things like animations and other things i due use ai for somethings but all the written part is mine where ever i got stuck i got help from my mama ji ya thats how i made the website", "repo": "https://github.com/Flexodin/personal-site-2", "demo": "https://tejveer-portfolio.netlify.app"}]...
|
[{"post_id": 66593, "ts": "202 [{"post_id": 66593, "ts": "2026-09-12T13:19:58Z", "hours": 0.9347, "text": "just added a pop up of the advancement made The end? and the form so any one can message me and become friends also added some minecraft grass and a respawn button that will get u back to the top also add the sound on the pop up"}, {"post_id": 66345, "ts": "2026-09-12T03:35:52Z", "hours": 4.3664, "text": "i just know added dark theme and my logo in the corner"}]...
|
Title: MY PORTFOLIO WEBSITE by @Tejveer | Stardanc Title: MY PORTFOLIO WEBSITE by @Tejveer | Stardance
Devlogs:
i just know added dark theme and my logo in the corner
just added a pop up of the advancement made The end? and the form so any one can message me and become friends also added some minecraft grass and a respawn button that will get u back to the top also add the sound on the pop up
Ships:
so i make a website for my portfolio and add very much cool things like animations and other things i due use ai for somethings but all the written part is mine where ever i got stuck i got help from my mama ji ya thats how i made the website...
|
1793008070.8830736
|
1793094470.8830736
|
|
53325
|
Slack bot by @Adhyan | Stardance
|
Adhyan
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-12T17:26:12Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a slack bot which responds to basic commands. The most challenging part of making this was that i am doing something like this for the first time and the instructions are super hard to follow especially when you don’t know anything related to it. i am most proud of the fact that in the 14 yrs of my existence i finally made something of my own. to test my project please click on the demo URL provided and type /the-bot-help to see all the available commands and what do they do and from there you can execute any of the commands available. thank for checking this project out.", "repo": "https://github.com/AdhyanAgarwal/my_first_slack_bot-D", "demo": "https://hackclub.enterprise.slack.com/archives/C0C19Q7SP53"}]...
|
[{"post_id": 65295, "ts": "202 [{"post_id": 65295, "ts": "2026-09-10T10:28:02Z", "hours": 0.495, "text": "Just completed section 6 of the guide i am trying to verify my identity to continue from section 7. the bot runs locally because i don’t yet have a nest account :( It responds to simple command:)"}]...
|
Title: Slack bot by @Adhyan | Stardance
Devlogs:
Title: Slack bot by @Adhyan | Stardance
Devlogs:
Just completed section 6 of the guide i am trying to verify my identity to continue from section 7. the bot runs locally because i don’t yet have a nest account :( It responds to simple command:)
Ships:
I made a slack bot which responds to basic commands. The most challenging part of making this was that i am doing something like this for the first time and the instructions are super hard to follow especially when you don’t know anything related to it. i am most proud of the fact that in the 14 yrs of my existence i finally made something of my own. to test my project please click on the demo URL provided and type /the-bot-help to see all the available commands and what do they do and from there you can execute any of the commands available. thank for checking this project out....
|
1793008069.968916
|
1793094469.968916
|
|
53309
|
Infrared AC Schedular by @Ibrahim-Sayed | Stardanc Infrared AC Schedular by @Ibrahim-Sayed | Stardance...
|
Ibrahim-Sayed
|
1
|
24.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-29T21:15:31Z", "hours": 24.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a smart AC controller that is a standalone device that can clone your orignal ac remote signals then you can use the device to control it as a remote with daily schedules,one time events,a global webapp, a offline webapp, emergency cooling system and much more, i had difficulty with hardware as the biggest issue was the IR signals having soo little range, and turns out i plugged in my 2n2222 transistor wrong,and then i decreased the resistance values and set the transistor in correct posistion this time,then added a S8050 transistor in a darlington pair and now the range is more that a orignal remote’s! and CAD designing for the pcb enclosure was also super hard", "repo": "https://github.com/NINJA311-CODE/SMART-INFRARED_AC_SCHEDULER", "demo": ""}]...
|
[{"post_id": 75353, "ts": "202 [{"post_id": 75353, "ts": "2026-09-29T20:26:05Z", "hours": 0.3844, "text": "Devlog#6 THE PCB ARRIVED,but even though i looked forward to it,i decided to test it then the esp32 wont turn on even though all connections seemed fine on pcb,i even checked with multimeter continuity mode,then i checked the standalone esp32 then it worked, so i checked gnd and other connection in continuity mode, MANY DATA PINS WERE LITERALLY SHORTING WITH GND AND FEW OTHER TRACES LIKE 3V3! 😭😭😭😭 i was hoping to finally present it here on stardance,but i have to present the prototype as redesign pcb would take 10 days to arrrive!😭😭 i guess all thats left is to ship my project here’s the protoype working demo: https://youtu.be/KKiCB_PlKlA"}, {"post_id": 68846, "ts": "2026-09-15T21:08:31Z", "hours": 4.525, "text": "Devlog#5 I FINALLY COMPLETED THE HARDEST PART Once it arrives ,i gotta quicly assemble it then test it! im quite excited,this gonna be so cool Next devlog: gonna post a vid of my prototype,as im gonna disassemble it and assemble those parts onto the pcb."}, {"post_id": 63189, "ts": "2026-09-06T21:09:18Z", "hours": 3.5503, "text": "Devlog#4 SO FINALLY after constantly adjusting dimensions and having 0 xp in this kinda cad work and taking help with gemini,i completed 60% of my first ever cad model! which is a great feeling,the gap between the screw holes and pcb edge was troublesome! now i have to make cutouts for the display,ir led,vs1838b receiver and power cable. Now in the next devlog,I MUST COMPLETE THE CAD MODEL AND PLACE THE ORDER! wish me luck for completing this quick, later i gotta assemble everything and show ya’ll the protype vid before that! comment what improvements to add to my product,read the project details on my page as i didnt make any readme file yet."}, {"post_id": 57588, "ts": "2026-08-29T19:38:42Z", "hours": 8.1497, "text": "DEVLOG#3 i was learning to create the enclosure from yt,then i thought of exporting the 3d pcb model with the components from easyeda,when i viewed the pcb on the easyeda,I realised i made quite a fatal miastake that wouldve been a disaster,my dimension calculations were wrong! SO AFTER HOURS OF HEADACHE OF RE-DESIGNING THE PCB LAYOUT ON A COMPLETELY NEW UI OF EASYEDA PRO! I FINALLY ADDED IT INTO THE CART THEN TO CONTINUE THE HEADACHE OF DESIGNING THE ENCLOSURE WITH 0 KNOWLEDGE,took much help from gemini for the pcb re design on the new non-familiar pro version,then yt for some cad modelling,becuz of easyeda pro,i burnt so much time D: TIP: DONT TRUST THE CALCULATIONS OF MODULES U WILL SOLDER ON UR PCB,CROSS-CHECK WITH 3D VIEW IG in the next devlog i’d complete the plastic enclosure atlast!"}, {"post_id": 55201, "ts": "2026-08-26T18:34:17Z", "hours": 2.6669, "text": "Devlog#2 So i have successfully completed phase 2 of designing my pcb,from my previous devlog my design with smt assembly had reached 52$ which was overpriced,so i re-designed the pcb by removing the separate battery holder,resistors,decoupling caps and that expensive RTC chip. since i should be soldering everything myself, i decided to solder all the components from my breadboard onto the pcb which felt like a genius idea! so i updated the footprints so i can solder the ds3231 module directly on the back of the board and the tactile button footprints as well. IDK why designing pcbs gets me nervous that i might make a mistake thatll waste the money and bcuz of tht the process takes hours! so after completing the layout and saving the 5 bare boards in cart with a coupon,NOW THE TOTAL IS 8.7$..AWSOME! :D with that,phase 2 is complete,IN the next devlog i will have completed the CAD design of the outer cover that i will order from the same vendor,unfortunately i had to remove the buzzer from the schematics of my breadboard here cuz i had no space! i wonder how engineers even remember part numbers cuz i have to get all the components infos from gemini"}, {"post_id": 54648, "ts": "2026-08-25T17:58:11Z", "hours": 5.1381, "text": "I shouldve joined stardance before i made the prototype Why I Built This A month ago I was prepping for a 25-day summer vacation, and every time I leave my house, my room literally turns into an oven. Leaving the AC running 24/7 destroys the electricity bill, but turning it completely off means returning to melted stuff, fried electronics, and dead room plants. So I built a smart ESP32 IR controller to manage the AC automatically while I was away—you just plug it into any regular 5V wall adapter to keep it powered continuously, and let it do its thing! Coding the Firmware w/ Claude Since the firmware needed to handle real-time MQTT, an OLED menu, schedule tracking, and saving IR codes, I used Claude to generate and structure the C++/Arduino code.Universal IR Remote Cloning: It has a “Register New AC” option right on the OLED. You point any factory remote at it, it decodes the IR pulses, and saves them straight to flash memory so it stays saved even after a reboot.Global App + Offline Buttons: I built a phone web app using Lovable + MQTT so I can check room temp and toggle settings from anywhere in the world. If the internet drops, there’s a 6-button physical menu on the device to control everything offline. Auto Emergency Cooling: If the room temp hits 33°C, the ESP32 automatically kicks the AC on by itself so things don’t boil. Hardware Fix: The Darlington Pair Boost: During early testing, the IR LEDs couldn’t reach the AC unit across the room. After debugging the circuit w/ Gemini, I found out my transistor wiring was off. I fixed it by pairing the original 2N2222 with an S8050 to make a Darlington Pair. The extra current boost made the IR signal blast even further than the original factory remote! 25-Day Vacation Test & The $16 Price Shock I left this messy breadboard setup plugged into a 5V phone adapter and running unattended for 25 straight days while on vacation, and it worked flawlessly without crashing once.Now I’m turning the prototype into an actual polished PCB (upgrading the cheap DHT11 to an SHT40) and was working for some hours on it and asked the component stock infos from gemini. But right when I went to order, the standalone RTC chip spiked the total bill by $16 cuz of component pricing! Next log: fixing the schematic w/ a cheaper RTC chip and starting the 3D printed case! in the future devlogs,i will post a vid which shows almost all the functions of the prototype."}]...
|
Title: Infrared AC Schedular by @Ibrahim-Sayed | S Title: Infrared AC Schedular by @Ibrahim-Sayed | Stardance
Devlogs:
I shouldve joined stardance before i made the prototype Why I Built This A month ago I was prepping for a 25-day summer vacation, and every time I leave my house, my room literally turns into an oven. Leaving the AC running 24/7 destroys the electricity bill, but turning it completely off means returning to melted stuff, fried electronics, and dead room plants. So I built a smart ESP32 IR controller to manage the AC automatically while I was away—you just plug it into any regular 5V wall adapter to keep it powered continuously, and let it do its thing! Coding the Firmware w/ Claude Since the firmware needed to handle real-time MQTT, an OLED menu, schedule tracking, and saving IR codes, I used Claude to generate and structure the C++/Arduino code.Universal IR Remote Cloning: It has a “Register New AC” option right on the OLED. You point any factory remote at it, it decodes the IR pulses, and saves them straight to flash memory so it stays saved even after a reboot.Global App + Offline Buttons: I built a phone web app using Lovable + MQTT so I can check room temp and toggle settings from anywhere in the world. If the internet drops, there’s a 6-button physical menu on the device to control everything offline. Auto Emergency Cooling: If the room temp hits 33°C, the ESP32 automatically kicks the AC on by itself so things don’t boil. Hardware Fix: The Darlington Pair Boost: During early testing, the IR LEDs couldn’t reach the AC unit across the room. After debugging the circuit w/ Gemini, I found out my transistor wiring was off. I fixed it by pairing the original 2N2222 with an S8050 to make a Darlington Pair. The extra current boost made the IR signal blast even further than the original factory remote! 25-Day Vacation Test & The $16 Price Shock I left this messy breadboard setup plugged into a 5V phone adapter and running unattended for 25 straight days while on vacation, and it worked flawlessly without crashing once.Now I’m turning the prototype into an actual polished PCB (upgrading the cheap DHT11 to an SHT40) and was working for some hours on it and asked the component stock infos from gemini. But right when I went to order, the standalone RTC chip spiked the total bill by $16 cuz of component pricing! Next log: fixing the schematic w/ a cheaper RTC chip and starting the 3D printed case! in the future devlogs,i will post a vid which shows almost all the functions of the prototype.
Devlog#2 So i have successfully completed phase 2 of designing my pcb,from my previous devlog my design with smt assembly had reached 52$ which was overpriced,so i re-designed the pcb by removing the separate battery holder,resistors,decoupling caps and that expensive RTC chip. since i should be soldering everything myself, i decided to solder all the components from my breadboard onto the pcb which felt like a genius idea! so i updated the footprints so i can solder the ds3231 module directly on the back of the board and the tactile button footprints as well. IDK why designing pcbs gets me nervous that i might make a mistake thatll waste the money and bcuz of tht the process takes hours! so after completing the layout and saving the 5 bare boards in cart with a coupon,NOW THE TOTAL IS 8.7$..AWSOME! :D with that,phase 2 is complete,IN the next devlog i will have completed the CAD design of the outer cover that i will order from the same vendor,unfortunately i had to remove the buzzer from the schematics of my breadboard here cuz i had no space! i wonder how engineers even remember part numbers cuz i have to get all the components infos from gemini
DEVLOG#3 i was learning to create the enclosure from yt,then i thought of exporting the 3d pcb model with the components from easyeda,when i viewed the pcb on the easyeda,I realised i made quite a fatal miastake that wouldve been a disaster,my dimension calculations were wrong! SO AFTER HOURS OF HEADACHE OF RE-DESIGNING THE PCB LAYOUT ON A COMPLETELY NEW UI OF EASYEDA PRO! I FINALLY ADDED IT INTO THE CART THEN TO CONTINUE THE HEADACHE OF DESIGNING THE ENCLOSURE WITH 0 KNOWLEDGE,took much help from gemini for the pcb re design on the new non-familiar pro version,then yt for some cad modelling,becuz of easyeda pro,i burnt so much time D: TIP: DONT TRUST THE CALCULATIONS OF MODULES U WILL SOLDER ON UR PCB,CROSS-CHECK WITH 3D VIEW IG in the next devlog i’d complete the plastic enclosure atlast!
Devlog#4 SO FINALLY after constantly adjusting dimensions and having 0 xp in this kinda cad work and taking help with gemini,i completed 60% of my first ever cad model! which is a great feeling,the gap between the screw holes and pcb edge was troublesome! now i have to make cutouts for the display,ir led,vs1838b receiver and power cable. Now in the next devlog,I MUST COMPLETE THE CAD MODEL AND PLACE THE ORDER! wish me luck for completing this quick, later i gotta assemble everything and show ya’ll the protype vid before that! comment what improvements to add to my product,read the project details on my page as i didnt make any readme file yet.
Devlog#5 I FINALLY COMPLETED THE HARDEST PART Once it arrives ,i gotta quicly assemble it then test it! im quite excited,this gonna be so cool Next devlog: gonna post a vid of my prototype,as im gonna disassemble it and assemble those parts onto the pcb.
Devlog#6 THE PCB ARRIVED,but even though i looked forward to it,i decided to test it then the esp32 wont turn on even though all connections seemed fine on pcb,i even checked with multimeter continuity mode,then i checked the standalone esp32 then it worked, so i checked gnd and other connection in continuity mode, MANY DATA PINS WERE LITERALLY SHORTING WITH GND AND FEW OTHER TRACES LIKE 3V3! 😭😭😭😭 i was hoping to finally present it here on stardance,but i have to present the prototype as redesign pcb would take 10 days to arrrive!😭😭 i guess all thats left is to ship my project here’s the protoype working demo: https://youtu.be/KKiCB_PlKlA
Ships:
i made a smart AC controller that is a standalone device that can clone your orignal ac remote signals then you can use the device to control it as a remote with daily schedules,one time events,a global webapp, a offline webapp, emergency cooling system and much more, i had difficulty with hardware as the biggest issue was the IR signals having soo little range, and turns out i plugged in my 2n2222 transistor wrong,and then i decreased the resistance values and set the transistor in correct posistion this time,then added a S8050 transistor in a darlington pair and now the range is more that a orignal remote’s! and CAD designing for the pcb enclosure was also super hard...
|
1793008067.632414
|
1793094467.632414
|
|
53300
|
Hypocycloid by @abhineet881 | Stardance
|
abhineet881
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-14T18:54:09Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a tool to draw out hypocycloids. my interest was piqued when i used a spirograph and it drew cool new shapes completely with 2 circles. after which i delved into the rabbit holes of mathematical shapes like this and finally coded it up in javascript and then made a html and css frontend for it", "repo": "https://github.com/coder-hardware881/projects-881", "demo": "https://projects-881.web.app/hypocycloid/"}]...
|
[{"post_id": 59095, "ts": "202 [{"post_id": 59095, "ts": "2026-08-31T18:32:53Z", "hours": 0.4158, "text": "A website that draws hypocycloids and animates the process too"}]...
|
Title: Hypocycloid by @abhineet881 | Stardance
De Title: Hypocycloid by @abhineet881 | Stardance
Devlogs:
A website that draws hypocycloids and animates the process too
Ships:
I made a tool to draw out hypocycloids. my interest was piqued when i used a spirograph and it drew cool new shapes completely with 2 circles. after which i delved into the rabbit holes of mathematical shapes like this and finally coded it up in javascript and then made a html and css frontend for it...
|
1793008066.5071583
|
1793094466.5071583
|
|
58248
|
Darmigan by @darmigan2011 | Stardance
|
darmigan2011
|
1
|
15.04
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-04T11:10:33Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a personal portfolio website to showcase my work in 3D printing, AI, IoT and engineering. I wanted it to feel more like a real personal website instead of a basic school project, so I spent time working on the dark futuristic design, animations, navigation and project sections. One of the challenging parts was getting everything deployed properly on GitHub Pages and making sure the website worked outside localhost. I also had to figure out Git and deal with some merge issues while deploying it. I’m most proud of how the final site brings my different interests together in one place. I also included my Flash Force 3D Printing business and some of my engineering projects. To test it, open the deployed website and try the navigation, especially the 3D Printing section and the different project/contact sections.", "repo": "https://github.com/darmigan2011-ops/-personal-profile-for-my-business-", "demo": "https://darmigan2011-ops.github.io/-personal-profile-for-my-business-/"}]...
|
[{"post_id": 82333, "ts": "202 [{"post_id": 82333, "ts": "2026-10-24T16:22:01Z", "hours": 2.6378, "text": "Devlog — Finally finished my portfolio website! I’ve been working on my personal website for a while, and I’ve finally got it to a point where I’m happy with how it looks. I didn’t want to make another basic portfolio with the usual template, so I went with a dark theme, cyan accents, and a minimal design. I also made a separate projects page where I can showcase the things I’ve been working on. The website brings together my work in web development, AI, IoT, and 3D printing. There’s still room for improvement, but getting the design and all the different sections together was a fun experience. Here’s how it looks right now 👇 Website: https://darmigan2011-ops.github.io/-personal-profile-for-my-business-/projects.html I’d love to hear what you think! Is there anything you would change or improve?"}, {"post_id": 77046, "ts": "2026-10-05T14:07:35Z", "hours": 1.4014, "text": "I finally got this one into a working website. I started with a simple visual idea — a dark, cinematic portfolio with a strong hero section — and slowly turned it into an actual interactive website. The main focus was making it feel like me, not just another developer portfolio. I worked on: The cinematic hero section Smooth scrolling and animations 3D / interactive elements AI, IoT and 3D printing sections Project showcase Responsive design The overall dark + cyan visual style One thing I really enjoyed was seeing the design go from an image/reference in my head to something I could actually open in the browser and interact with. It still isn’t “finished” in my mind — there are definitely more things I want to improve, especially the 3D interactions and some of the scroll animations."}, {"post_id": 76620, "ts": "2026-10-04T06:13:34Z", "hours": 10.9781, "text": "Finally got my personal website to a point where I can share it . I’ve been working on this for a while and I wanted to build something that was more than just a normal portfolio. I wanted it to actually show what I’m interested in and what I’m building. The site now has sections for my 3D printing work, AI/computer vision projects, IoT experiments, skills, projects and ways to contact me. I also spent a lot of time working on the UI — dark theme, cyan/blue highlights, cards, animations, responsive sections and all the small details that make the site feel better. Some of the projects shown are things I’ve actually worked on, like my JARVIS voice assistant, computer vision/object tracking, IoT systems and 3D printing projects. It’s definitely not finished yet. I still want to add more interactions, animations and improve some sections. But I’m finally happy with how far it has come, so I wanted to post the current version. More updates coming as I keep building."}]...
|
Title: Darmigan by @darmigan2011 | Stardance
Devl Title: Darmigan by @darmigan2011 | Stardance
Devlogs:
Finally got my personal website to a point where I can share it . I’ve been working on this for a while and I wanted to build something that was more than just a normal portfolio. I wanted it to actually show what I’m interested in and what I’m building. The site now has sections for my 3D printing work, AI/computer vision projects, IoT experiments, skills, projects and ways to contact me. I also spent a lot of time working on the UI — dark theme, cyan/blue highlights, cards, animations, responsive sections and all the small details that make the site feel better. Some of the projects shown are things I’ve actually worked on, like my JARVIS voice assistant, computer vision/object tracking, IoT systems and 3D printing projects. It’s definitely not finished yet. I still want to add more interactions, animations and improve some sections. But I’m finally happy with how far it has come, so I wanted to post the current version. More updates coming as I keep building.
I finally got this one into a working website. I started with a simple visual idea — a dark, cinematic portfolio with a strong hero section — and slowly turned it into an actual interactive website. The main focus was making it feel like me, not just another developer portfolio. I worked on: The cinematic hero section Smooth scrolling and animations 3D / interactive elements AI, IoT and 3D printing sections Project showcase Responsive design The overall dark + cyan visual style One thing I really enjoyed was seeing the design go from an image/reference in my head to something I could actually open in the browser and interact with. It still isn’t “finished” in my mind — there are definitely more things I want to improve, especially the 3D interactions and some of the scroll animations.
Devlog — Finally finished my portfolio website! I’ve been working on my personal website for a while, and I’ve finally got it to a point where I’m happy with how it looks. I didn’t want to make another basic portfolio with the usual template, so I went with a dark theme, cyan accents, and a minimal design. I also made a separate projects page where I can showcase the things I’ve been working on. The website brings together my work in web development, AI, IoT, and 3D printing. There’s still room for improvement, but getting the design and all the different sections together was a fun experience. Here’s how it looks right now 👇 Website: https://darmigan2011-ops.github.io/-personal-profile-for-my-business-/projects.html I’d love to hear what you think! Is there anything you would change or improve?
Ships:
I built a personal portfolio website to showcase my work in 3D printing, AI, IoT and engineering. I wanted it to feel more like a real personal website instead of a basic school project, so I spent time working on the dark futuristic design, animations, navigation and project sections. One of the challenging parts was getting everything deployed properly on GitHub Pages and making sure the website worked outside localhost. I also had to figure out Git and deal with some merge issues while deploying it. I’m most proud of how the final site brings my different interests together in one place. I also included my Flash Force 3D Printing business and some of my engineering projects. To test it, open the deployed website and try the navigation, especially the 3D Printing section and the different project/contact sections....
|
1793008065.399607
|
1793094465.399607
|
|
58239
|
JainilOS by @jainilgringlani | Stardance
|
jainilgringlani
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T06:34:01Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "“I have made my own personal web-based OS. My OS consists of a file manager, a recycle bin, notes, and a terminal. I am very proud that I can now use my own OS.”", "repo": "https://github.com/jainilgringlani499-cloud/JainilOS", "demo": "https://jainilgringlani499-cloud.github.io/JainilOS/"}]...
|
[{"post_id": 70568, "ts": "202 [{"post_id": 70568, "ts": "2026-09-19T11:37:49Z", "hours": 0.7114, "text": "Just to make a newer version of my os version 3"}, {"post_id": 68099, "ts": "2026-09-14T14:47:54Z", "hours": 4.3222, "text": "I am working on my project to make it more good I am improving it."}, {"post_id": 61994, "ts": "2026-09-05T06:16:32Z", "hours": 0.2581, "text": "I am working on my personal OS. JainilOS"}]...
|
Title: JainilOS by @jainilgringlani | Stardance
D Title: JainilOS by @jainilgringlani | Stardance
Devlogs:
I am working on my personal OS. JainilOS
I am working on my project to make it more good I am improving it.
Just to make a newer version of my os version 3
Ships:
“I have made my own personal web-based OS. My OS consists of a file manager, a recycle bin, notes, and a terminal. I am very proud that I can now use my own OS.”...
|
1793008064.4908671
|
1793094464.4908671
|
|
58238
|
DARPA ENGINEERING by @darmigan2011 | Stardance
|
darmigan2011
|
1
|
6.75
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-04T16:12:57Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I worked on a new website for DARPA Engineering in Hosur. The main goal was to present the company and its engineering work in a much more modern way instead of having a basic company website. I worked on the layout, sections, images, service information and overall design. I wanted the site to feel professional but still have some of my own design style in it. One of the challenging parts was figuring out how to organise a lot of company information without making the website feel too crowded. Getting the different sections to look good together also took quite a bit of testing. I’m proud of how the final website brings the manufacturing side of DARPA Engineering together with a more modern web design. People can test it by going through the different sections of the website, checking the services and company information, and trying the contact section.", "repo": "https://github.com/darmigan2011-ops/darpa-engineering", "demo": "https://darmigan2011-ops.github.io/darpa-engineering/"}]...
|
[{"post_id": 82364, "ts": "202 [{"post_id": 82364, "ts": "2026-10-24T17:05:02Z", "hours": 0.3042, "text": "Devlog — Working on the DARPA Engineering website Another project I’ve been working on is the website for DARPA Engineering. Since the company works with sheet metal stampings and non-ferrous castings, I wanted the website to feel professional and reflect the actual work the company does. I’ve been working on the layout, product showcase, navigation, and overall visual design. One thing I focused on was presenting the manufactured components clearly instead of making the website feel like a generic company template. There’s still room to improve, but I’m happy with how the product section is coming together. You can check it out here: 🔗 https://darmigan2011-ops.github.io/darpa-engineering/ I’ve attached a screenshot of the product showcase. Would love to hear what you think or what you’d improve!"}, {"post_id": 78315, "ts": "2026-10-10T12:09:05Z", "hours": 2.4472, "text": "I finally modified the new website I was working on for DARPA Engineering. I wanted this one to feel different from the usual manufacturing websites. Instead of adding too many effects and making it look futuristic, I tried to keep it clean, industrial and focused on the actual work. I rebuilt the site around the three main areas — Stampings, Non-ferrous Castings and Tooling. I also added sections for the stamping process, robotics/welding, product gallery, casting details and an interactive tooling section. A lot of the content and images are based on the actual company information and products. I spent quite a bit of time making the small interactions work properly instead of just making them look good in a screenshot. I also tested the mobile layout, different screen sizes, keyboard interactions and reduced-motion behavior. After all that, I finally pushed it to GitHub and deployed it with GitHub Pages."}, {"post_id": 76656, "ts": "2026-10-04T08:52:20Z", "hours": 3.8408, "text": "I worked on the new version of the DARPA Engineering website. I already had an older version of the site, but instead of completely throwing it away, I decided to keep that one as a backup and rebuild the project from the existing code. This time I wanted the website to feel more like an actual engineering company website and less like a normal template. I worked on the overall layout, hero section, manufacturing capabilities, company section, services, process, industries, gallery, testimonials, articles, FAQ and the contact section. I’m also trying to add more animation and interaction, but I’m being careful with it. I don’t want every section moving just for the sake of animation. The idea is to make the website feel premium while still keeping it professional and easy to use. One thing I found during the rebuild was that the old website had quite a few things that needed fixing, especially around performance, accessibility, deployment and some of the content. The current version is looking much closer to what I had in mind. There is still a lot to improve — especially the animations, mobile version, performance and final polishing. I’ll keep working on it and hopefully get the final version deployed soon. Day by day, the website is getting closer to what I actually imagined."}]...
|
Title: DARPA ENGINEERING by @darmigan2011 | Starda Title: DARPA ENGINEERING by @darmigan2011 | Stardance
Devlogs:
I worked on the new version of the DARPA Engineering website. I already had an older version of the site, but instead of completely throwing it away, I decided to keep that one as a backup and rebuild the project from the existing code. This time I wanted the website to feel more like an actual engineering company website and less like a normal template. I worked on the overall layout, hero section, manufacturing capabilities, company section, services, process, industries, gallery, testimonials, articles, FAQ and the contact section. I’m also trying to add more animation and interaction, but I’m being careful with it. I don’t want every section moving just for the sake of animation. The idea is to make the website feel premium while still keeping it professional and easy to use. One thing I found during the rebuild was that the old website had quite a few things that needed fixing, especially around performance, accessibility, deployment and some of the content. The current version is looking much closer to what I had in mind. There is still a lot to improve — especially the animations, mobile version, performance and final polishing. I’ll keep working on it and hopefully get the final version deployed soon. Day by day, the website is getting closer to what I actually imagined.
I finally modified the new website I was working on for DARPA Engineering. I wanted this one to feel different from the usual manufacturing websites. Instead of adding too many effects and making it look futuristic, I tried to keep it clean, industrial and focused on the actual work. I rebuilt the site around the three main areas — Stampings, Non-ferrous Castings and Tooling. I also added sections for the stamping process, robotics/welding, product gallery, casting details and an interactive tooling section. A lot of the content and images are based on the actual company information and products. I spent quite a bit of time making the small interactions work properly instead of just making them look good in a screenshot. I also tested the mobile layout, different screen sizes, keyboard interactions and reduced-motion behavior. After all that, I finally pushed it to GitHub and deployed it with GitHub Pages.
Devlog — Working on the DARPA Engineering website Another project I’ve been working on is the website for DARPA Engineering. Since the company works with sheet metal stampings and non-ferrous castings, I wanted the website to feel professional and reflect the actual work the company does. I’ve been working on the layout, product showcase, navigation, and overall visual design. One thing I focused on was presenting the manufactured components clearly instead of making the website feel like a generic company template. There’s still room to improve, but I’m happy with how the product section is coming together. You can check it out here: 🔗 https://darmigan2011-ops.github.io/darpa-engineering/ I’ve attached a screenshot of the product showcase. Would love to hear what you think or what you’d improve!
Ships:
I worked on a new website for DARPA Engineering in Hosur. The main goal was to present the company and its engineering work in a much more modern way instead of having a basic company website. I worked on the layout, sections, images, service information and overall design. I wanted the site to feel professional but still have some of my own design style in it. One of the challenging parts was figuring out how to organise a lot of company information without making the website feel too crowded. Getting the different sections to look good together also took quite a bit of testing. I’m proud of how the final website brings the manufacturing side of DARPA Engineering together with a more modern web design. People can test it by going through the different sections of the website, checking the services and company information, and trying the contact section....
|
1793008063.3616512
|
1793094463.3616512
|
|
58180
|
SSwipy-Movie rating website by @mohithkumar | Star SSwipy-Movie rating website by @mohithkumar | Stardance...
|
mohithkumar
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T15:53:53Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "SSwipy-Movie rating website, The website was originally designed in Figma and used AI to convert into CSS. Since API for movie data cost money (which i couldn’t afford) so I used AI to get me a list of 50 movies. This Website main focus and inspiration was dating apps, I thought why not swipe and rate movies the same way we match couples, Thank for stardance for providing me this opportunity to present this to u.", "repo": "https://github.com/mohithkumar-kry/Sswipt", "demo": "https://mohithkumar-kry.github.io/Sswipt/"}]...
|
[{"post_id": 69676, "ts": "202 [{"post_id": 69676, "ts": "2026-09-17T15:44:55Z", "hours": 3.4367, "text": "Fixed some bugs"}, {"post_id": 64917, "ts": "2026-09-09T17:09:06Z", "hours": 0.3358, "text": "Sswipy , The website where u rate movies with swipe features. Actually the website is completed in another pc where hackatime isn’t installed, so it shows only 20 mins has been recorded but the website itself took me 4+ hr to create. I used AI to create 50+ movies name and rating for each one , i even used AI to create a custom photo card for each movie card. I first designed the website in figma which took 1 + hr as i am not that good in design. I am honestly shocked if u managed to read all the message, as myself i consider the above passage as yapping. Finally do try the website for urself!"}]...
|
Title: SSwipy-Movie rating website by @mohithkumar Title: SSwipy-Movie rating website by @mohithkumar | Stardance
Devlogs:
Sswipy , The website where u rate movies with swipe features. Actually the website is completed in another pc where hackatime isn’t installed, so it shows only 20 mins has been recorded but the website itself took me 4+ hr to create. I used AI to create 50+ movies name and rating for each one , i even used AI to create a custom photo card for each movie card. I first designed the website in figma which took 1 + hr as i am not that good in design. I am honestly shocked if u managed to read all the message, as myself i consider the above passage as yapping. Finally do try the website for urself!
Fixed some bugs
Ships:
SSwipy-Movie rating website, The website was originally designed in Figma and used AI to convert into CSS. Since API for movie data cost money (which i couldn’t afford) so I used AI to get me a list of 50 movies. This Website main focus and inspiration was dating apps, I thought why not swipe and rate movies the same way we match couples, Thank for stardance for providing me this opportunity to present this to u....
|
1793008062.4709473
|
1793094462.4709473
|
|
53171
|
a blackjack game by @sanjaysatheesh417 | Stardance
|
sanjaysatheesh417
|
1
|
2.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-13T06:22:24Z", "hours": 2.0, "multiplier": 1.12, "payout": 3, "blessing": "neutral", "text": "i created a simple blackjack game using CSS ,html and javascript. i have used AI to add the images for the cards and improved styling.", "repo": "https://github.com/sanjaysatheesh417-cyber/blackjackgame", "demo": "https://blackjackgame-6gp8.onrender.com/"}]...
|
[{"post_id": 67139, "ts": "202 [{"post_id": 67139, "ts": "2026-09-13T06:20:48Z", "hours": 0.2656, "text": "enhanced the game by adding images for cards and improved style using ai."}, {"post_id": 67122, "ts": "2026-09-13T05:42:05Z", "hours": 1.4964, "text": "i just added the working algorithm of a blackjack game. using objects to display the player name and his credits, rendering random numbers that indicate the cards, css buttons to let you start the game or draw a new card and the logic where it tells u if you have gotten blackjack or not."}, {"post_id": 52841, "ts": "2026-08-23T06:14:00Z", "hours": 0.7069, "text": "a simple playable blackjack game using html, css and javascript. initial styling done!!"}]...
|
Title: a blackjack game by @sanjaysatheesh417 | St Title: a blackjack game by @sanjaysatheesh417 | Stardance
Devlogs:
a simple playable blackjack game using html, css and javascript. initial styling done!!
i just added the working algorithm of a blackjack game. using objects to display the player name and his credits, rendering random numbers that indicate the cards, css buttons to let you start the game or draw a new card and the logic where it tells u if you have gotten blackjack or not.
enhanced the game by adding images for cards and improved style using ai.
Ships:
i created a simple blackjack game using CSS ,html and javascript. i have used AI to add the images for the cards and improved styling....
|
1793008061.5847216
|
1793094461.5847216
|
|
53153
|
PoseiOS by @Visott | Stardance
|
Visott
|
1
|
27.07
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-18T12:57:54Z", "hours": 16.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is PoseiOS v1. What did I make? PoseiOS is a WebOS based around the Greek god of the sea: Poseidon. The website includes books/info about Poseidon, and a notes app that saves notes locally so refreshing the site won’t cause you to lose your notes! Challenges The most challenging part was implementing the window dragging using JS and also using JS to program the app’s functionality. I had to do a lot of debugging, finding typos in class names, and constantly had to check the developer mode in chrome. What I love about PoseiOS I am very proud of the glassmorphic design since it looks very futuristic and cool. I am also proud of the notes app and the details in the project that make it work well (like how app windows focus on click or how click on the desktop deselects any selected app icon). Before Testing This website was made mainly for a desktop screen, although it is responsive so it should work on mobile screens as well. I hope you enjoy surfing around PoseiOS :)", "repo": "https://github.com/VITNT/PoseiOS", "demo": "https://posei-os.vercel.app/"}]...
|
[{"post_id": 73000, "ts": "202 [{"post_id": 73000, "ts": "2026-09-24T06:06:28Z", "hours": 8.0772, "text": "Devlog #9 New Apps! I added two new apps: a timer app and a simple browser. The timer app currently only supports 5 minutes. It has a start, pause, and reset button. Initially, I got this funny glitch where the water height was decreasing upwards (see video) instead of downwards. I fixed this by giving the water div a position of absolute and setting bottom to 3px. I also accidentally named id of the timer text to be the same as the id of the top-bar time, which caused the timer to display on the top-bar instead The browser was somewhat easier to implement. I set up a input box and a button, and programmed the button to open the link or search query that was inputted into the search box. I’m planning on adding an iframe to showcase the website directly on the OS instead of opening a new tab! Some other changes I also split my css and js into separate files for each app to make future development more organized. PoseiOS now has a dock which you can run apps from!"}, {"post_id": 71742, "ts": "2026-09-21T13:11:00Z", "hours": 2.9928, "text": "Devlog #7 CSS and JS changes I rewrote some of my Javascript to make it more readable and understandable. I reworked the UI in PoseiOS to make it more blue-ish/sea themed. The top-bar is more transparent and only has pill shaped background for the elements. The apps have new highlight/hover aesthetics and selected notes/books will now have a blue shadow, giving it a comic-looking theme. The background of the apps was also changed, now having more of a greenish teal tone to it. The display or heading font for PoseiOS is now Zarathustra."}, {"post_id": 69685, "ts": "2026-09-17T16:03:39Z", "hours": 4.5261, "text": "Devlog #6 Changes Restructure CSS to be more scalable by using classes and css root variables. I added a new app called Books which is essentially a library catalog of Poseidon/greek fantasy books that I thought was an interesting and great read. I added content to the books app. I spent around 15 minutes tweaking the color palette and finding colors to improve the UI of PoseiOS. I finished writing the first good version of my README. Bug Fixes Bug where selecting 3 app mean one will inevitably be opened and cant be unselected. Fix by allowing to only select one app at a time. So when an app is selected and another app is clicked on, the currently selected app would be deselected and the new app icon would be selected. Fixed a bug where it said the title was undefined since when the loop finished, i = 2 which is more than the object index which had only 0 and 1 (before I added more to the object). To fix this, I changed “var” to “let” and it worked again. I learned that let allows i to have it own value every iteration. So I basically implemented the for loop wrong in Javascript (I thought that var and let would do the same thing, turns out it has its differences!). PoseiOS V1 is finally complete!!!"}, {"post_id": 66447, "ts": "2026-09-12T08:54:33Z", "hours": 6.5875, "text": "Devlog #5 It’s been a while since my last devlog. Most of the time was spent trying to fix a bunch of bugs in the javascript code. Bug Fixes Spent 2 hours trying to fix bug where you could drag windows out of frame and never see them back. Trying to limit the drag based on viewport was very confusing. I fixed this bug by creating a new function clampWindowPos() that would determine the max x and y offset that the windows could have in order to stay in the viewport. The function calculates this by calculating half of the width and height of the window (since the window has transform: translate(-50%, -50%); which causes the center to be at half the width/height). Then, it calculates the minimum left value and the maximum left value that the window could move to and did the same for the top value. Finally the function return those values. Changes & More Fixes Added a feature where clicking on the desktop window deselects the currently selected app by letting the body listen for a mouse down event and deselecting the icon if the mouse-down location is not on an app icon. Added poseidon.md, my first app! It took a whole 3 hours to style and get the app to function. Chrome dev tools was my best friend 🤩. It helped me spot few typos in variable names and find out javascript code that wasn’t working. I first started by trying out the javascript code show in the hack club workshop. It didn’t really work so I browsed through other WebOS shipped projects to see how they made the app. A really useful project I found was Blackbird OS, which I took inspiration from for coding my poseidon.md notes app. I began by implementing a local storage that didn’t really work so I left it for last and went to work on the other features like adding, deleting, and editing notes. After finishing these features, I came back to fix the local storage bug. The issue was that I directly accessed the storedNotes object in my Javascript functions instead of the note objects stored in the local browser. To fix this, I created a variable content and set it to equal loadNotes() so that this new variable would be an updated object with all of the saved notes. What’s Next I’m going to polish poseidon.md’s UI a bit and then start working on more apps for the WebOS."}, {"post_id": 62794, "ts": "2026-09-06T09:46:50Z", "hours": 2.4394, "text": "Devlog #4 What I learned Learned how to use arrow functions and how to add classes to an HTML element via element.classList.add(\"...\"); Learned width: fit-content so that I don’t have to guess the width of my div. Changes & Bug Fixes Aesthetic tweak: Changed cursor grab to only show when hovering over handle instead of showing over the whole window). Reduced repetition and improved scalability by turning open/close window into a generalized function that works for all windows, so I can call the function for future apps. A lot of bugs and back-and-forth and commenting out code to add open-close function for the apps. I found out that I needed 2 parameters for the functions closeWindowOnClick and openWindowOnClick. First parameter is used for checking if the open button (app icon) or close button was selected/tapped, and second parameter is used for targeting the specific window that should be opened/closed. The parameters made me very confused because I would sometimes misinterpret the element as the button when the element parameter being passed was linked to the window. Added an icon and CSS styling for my first app: poseidon.md Added attributions to my README, for the bg image and the icons. Programming Decisions Called addWindowTapHandler() on line 19 instead of calling addWindowTapHandler() for each window directly to reduce redundancy. Chose mousedown instead of click for event listener so that the window auto-focus when it is tapped immediately (if click is used then the window will only focus after mouse is up). What’s Next? More README tweaks coming soon! More apps and content about Poseidon within each app."}, {"post_id": 61519, "ts": "2026-09-04T13:57:13Z", "hours": 0.8361, "text": "Devlog #3 Some New Features! Add open and close window functions. You can open by clicking “PoseiOS” in the topbar, and close by clicking the “x” button. Add left & right padding on top bar. Bug Fixes Fix text being highlighted when dragging windows by using user-select: none; cursor: grab; I encountered a bug where u can drag window by selecting any part of it. I fixed this by changing the id to include “-handle” so that the javascript could recognize it (before the javascript was looking for “handle” instead of “-handle” which created the bug)."}, {"post_id": 60639, "ts": "2026-09-03T03:54:39Z", "hours": 0.7353, "text": "Devlog #2 Implement some JavaScript for draggable windows and a real-time clock on the top bar. I added a glass design for the windows and top-bar using backdrop-blur and background-color: rgba(255, 255, 255, 0.1); I learned how to center a div using position absolute and transform. At first, I ran into a problem where the top left corner of the welcome window was centered, but the window wasn’t centered correctly. I found out that this was because I didn’t use transform: translate(-50%, -50%);"}, {"post_id": 60044, "ts": "2026-09-02T04:43:09Z", "hours": 0.9728, "text": "Devlog #1: I started off with some boilerplate code, creating and linking the HTML, CSS, and JS files. I added some content on the webpage. I added a background wallpaper for the WebOS. I styled the site using CSS, but I haven’t added any Javascript yet. I imported the Inter Font from Google fonts. A new tag that I learned was using background-position in order to crop/position the background image so that it fit my preferences."}]...
|
Title: PoseiOS by @Visott | Stardance
Devlogs:
De Title: PoseiOS by @Visott | Stardance
Devlogs:
Devlog #1: I started off with some boilerplate code, creating and linking the HTML, CSS, and JS files. I added some content on the webpage. I added a background wallpaper for the WebOS. I styled the site using CSS, but I haven’t added any Javascript yet. I imported the Inter Font from Google fonts. A new tag that I learned was using background-position in order to crop/position the background image so that it fit my preferences.
Devlog #2 Implement some JavaScript for draggable windows and a real-time clock on the top bar. I added a glass design for the windows and top-bar using backdrop-blur and background-color: rgba(255, 255, 255, 0.1); I learned how to center a div using position absolute and transform. At first, I ran into a problem where the top left corner of the welcome window was centered, but the window wasn’t centered correctly. I found out that this was because I didn’t use transform: translate(-50%, -50%);
Devlog #3 Some New Features! Add open and close window functions. You can open by clicking “PoseiOS” in the topbar, and close by clicking the “x” button. Add left & right padding on top bar. Bug Fixes Fix text being highlighted when dragging windows by using user-select: none; cursor: grab; I encountered a bug where u can drag window by selecting any part of it. I fixed this by changing the id to include “-handle” so that the javascript could recognize it (before the javascript was looking for “handle” instead of “-handle” which created the bug).
Devlog #4 What I learned Learned how to use arrow functions and how to add classes to an HTML element via element.classList.add("..."); Learned width: fit-content so that I don’t have to guess the width of my div. Changes & Bug Fixes Aesthetic tweak: Changed cursor grab to only show when hovering over handle instead of showing over the whole window). Reduced repetition and improved scalability by turning open/close window into a generalized function that works for all windows, so I can call the function for future apps. A lot of bugs and back-and-forth and commenting out code to add open-close function for the apps. I found out that I needed 2 parameters for the functions closeWindowOnClick and openWindowOnClick. First parameter is used for checking if the open button (app icon) or close button was selected/tapped, and second parameter is used for targeting the specific window that should be opened/closed. The parameters made me very confused because I would sometimes misinterpret the element as the button when the element parameter being passed was linked to the window. Added an icon and CSS styling for my first app: poseidon.md Added attributions to my README, for the bg image and the icons. Programming Decisions Called addWindowTapHandler() on line 19 instead of calling addWindowTapHandler() for each window directly to reduce redundancy. Chose mousedown instead of click for event listener so that the window auto-focus when it is tapped immediately (if click is used then the window will only focus after mouse is up). What’s Next? More README tweaks coming soon! More apps and content about Poseidon within each app.
Devlog #5 It’s been a while since my last devlog. Most of the time was spent trying to fix a bunch of bugs in the javascript code. Bug Fixes Spent 2 hours trying to fix bug where you could drag windows out of frame and never see them back. Trying to limit the drag based on viewport was very confusing. I fixed this bug by creating a new function clampWindowPos() that would determine the max x and y offset that the windows could have in order to stay in the viewport. The function calculates this by calculating half of the width and height of the window (since the window has transform: translate(-50%, -50%); which causes the center to be at half the width/height). Then, it calculates the minimum left value and the maximum left value that the window could move to and did the same for the top value. Finally the function return those values. Changes & More Fixes Added a feature where clicking on the desktop window deselects the currently selected app by letting the body listen for a mouse down event and deselecting the icon if the mouse-down location is not on an app icon. Added poseidon.md, my first app! It took a whole 3 hours to style and get the app to function. Chrome dev tools was my best friend 🤩. It helped me spot few typos in variable names and find out javascript code that wasn’t working. I first started by trying out the javascript code show in the hack club workshop. It didn’t really work so I browsed through other WebOS shipped projects to see how they made the app. A really useful project I found was Blackbird OS, which I took inspiration from for coding my poseidon.md notes app. I began by implementing a local storage that didn’t really work so I left it for last and went to work on the other features like adding, deleting, and editing notes. After finishing these features, I came back to fix the local storage bug. The issue was that I directly accessed the storedNotes object in my Javascript functions instead of the note objects stored in the local browser. To fix this, I created a variable content and set it to equal loadNotes() so that this new variable would be an updated object with all of the saved notes. What’s Next I’m going to polish poseidon.md’s UI a bit and then start working on more apps for the WebOS.
Devlog #6 Changes Restructure CSS to be more scalable by using classes and css root variables. I added a new app called Books which is essentially a library catalog of Poseidon/greek fantasy books that I thought was an interesting and great read. I added content to the books app. I spent around 15 minutes tweaking the color palette and finding colors to improve the UI of PoseiOS. I finished writing the first good version of my README. Bug Fixes Bug where selecting 3 app mean one will inevitably be opened and cant be unselected. Fix by allowing to only select one app at a time. So when an app is selected and another app is clicked on, the currently selected app would be deselected and the new app icon would be selected. Fixed a bug where it said the title was undefined since when the loop finished, i = 2 which is more than the object index which had only 0 and 1 (before I added more to the object). To fix this, I changed “var” to “let” and it worked again. I learned that let allows i to have it own value every iteration. So I basically implemented the for loop wrong in Javascript (I thought that var and let would do the same thing, turns out it has its differences!). PoseiOS V1 is finally complete!!!
Devlog #7 CSS and JS changes I rewrote some of my Javascript to make it more readable and understandable. I reworked the UI in PoseiOS to make it more blue-ish/sea themed. The top-bar is more transparent and only has pill shaped background for the elements. The apps have new highlight/hover aesthetics and selected notes/books will now have a blue shadow, giving it a comic-looking theme. The background of the apps was also changed, now having more of a greenish teal tone to it. The display or heading font for PoseiOS is now Zarathustra.
Devlog #9 New Apps! I added two new apps: a timer app and a simple browser. The timer app currently only supports 5 minutes. It has a start, pause, and reset button. Initially, I got this funny glitch where the water height was decreasing upwards (see video) instead of downwards. I fixed this by giving the water div a position of absolute and setting bottom to 3px. I also accidentally named id of the timer text to be the same as the id of the top-bar time, which caused the timer to display on the top-bar instead The browser was somewhat easier to implement. I set up a input box and a button, and programmed the button to open the link or search query that was inputted into the search box. I’m planning on adding an iframe to showcase the website directly on the OS instead of opening a new tab! Some other changes I also split my css and js into separate files for each app to make future development more organized. PoseiOS now has a dock which you can run apps from!
Ships:
This is PoseiOS v1. What did I make? PoseiOS is a WebOS based around the Greek god of the sea: Poseidon. The website includes books/info about Poseidon, and a notes app that saves notes locally so refreshing the site won’t cause you to lose your notes! Challenges The most challenging part was implementing the window dragging using JS and also using JS to program the app’s functionality. I had to do a lot of debugging, finding typos in class names, and constantly had to check the developer mode in chrome. What I love about PoseiOS I am very proud of the glassmorphic design since it looks very futuristic and cool. I am also proud of the notes app and the details in the project that make it work well (like how app windows focus on click or how click on the desktop deselects any selected app icon). Before Testing This website was made mainly for a desktop screen, although it is responsive so it should work on mobile screens as well. I hope you enjoy surfing around PoseiOS :)...
|
1793008060.3579245
|
1793094460.3579245
|
|
14359
|
AuraCare CRM by @AuraZod | Stardance
|
AuraZod
|
1
|
55.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-12T13:45:13Z", "hours": 55.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built AuraCare CRM — a fast, lightweight healthcare and clinic management system. Most hospital software is clunky, slow, and painful to look at, so I wanted to make something modern that actually feels good to use for daily clinic rounds. It’s split into an Express.js REST API hosted on a Linux VPS behind a Cloudflare tunnel, a React 18 + Vite dashboard with Tailwind CSS and Radix UI primitives, and packaged as an Electron desktop app for clinic workstations. It covers the complete clinical flow across 6 roles (Super Admin, Admin, Doctor, Receptionist, Pharmacy, and Diagnostics) — from patient check-in and live queues to digital prescriptions, lab orders, inventory management, and PDF invoices. The most challenging part was session management and granular RBAC. In real clinics, doctors get interrupted constantly; standard 15-minute JWT timeouts were kicking them out mid-consultation. I built a 30-day extended session architecture with rolling token renewals and inactivity tracking, while ensuring cross-department data (like an Rx immediately updating pharmacy stock and billing) flows seamlessly. I’m most proud of the UI responsiveness — it switches views instantly and feels smooth, even with dark mode and live charts. To test it out: Open the live web app: https://auracare-gamma.vercel.app On the login page, click the “Sandbox Demo Login” button — you can pick any role (Doctor, Receptionist, Admin, etc.) to jump straight in without signing up! Windows desktop installer is also available in the GitHub releases: https://github.com/AuraZod/AuraCare-CRM/releases", "repo": "https://github.com/AuraZod/AuraCare-CRM", "demo": "https://auracare-gamma.vercel.app"}]...
|
[{"post_id": 66544, "ts": "202 [{"post_id": 66544, "ts": "2026-09-12T12:00:34Z", "hours": 22.8506, "text": "I had medical issues and couldn’t post more devlogs moving forward, neither I was able to finish the entire project to be supported in multiple platforms, but i’ve still made the web and desktop version of this project…….."}, {"post_id": 8123, "ts": "2026-06-13T15:48:23Z", "hours": 6.5056, "text": "Devlog 9 finally done. literally coding until my fingers are numb. completed the entire crm frontend and the desktop wrapper is fully functional. no more mock gaps or missing files. here is the breakdown of what happened: frontend modules (crmfrontend): finished the pharmacy inventory page (pharmacyinventory.tsx). it handles full batch tracking, manufacturing/expiry dates, cost/selling price margins, gst calculation (5%, 12%, 18%), and hsn codes. also threw in reorder level alerts when stock drops below threshold. built out pharmacybilling.tsx from scratch. doctors write rx, pharmacist pulls it, builds the bill with automatic gst and prints receipt. made pharmacycustomers.tsx to track loyalty points, lifetime spend, and outstanding balances. has a quick reminder trigger. wrote pharmacyprescriptions.tsx to handle the incoming doctor prescription queues. pharmacists can do complete or partial dispensing if we are short on stock. added pharmacypurchase.tsx for restock orders and supplier inventory ingestion. built pharmacyreports.tsx for tracking medicine usage patterns and monthly sales dashboards. all routes are auth-locked in app.tsx using role-based routing policies (doctor, pharmacist, receptionist, admin, super-admin). styling is built using vanilla tailwind classes alongside shadcn UI components like dialogs, tables, and dropdown menus for layout consistency. data fetching is managed using tanstack react-query to cache active lists and handles state mutators for adding/editing items. toast notifications via sonner trigger real-time updates for pharmacy sales completions and out of stock warnings. integrated standard currency formatters to display indian rupee values properly in all tables. desktop wrapper (auracaredesktop): spun up electron setup. main.js manages window dimensions (1400x900 min, resizable) and ipc communication channels. preload.js sets up contextbridge and ipcrenderer exposing window controls safely without opening nodeintegration. connection strategy: in dev, package.json uses concurrently and wait-on to launch the frontend dev server on port 8080 and then point the electron browser window loadurl to localhost:8080. for prod, we run electron-builder which bundles our assets. npm build script builds the react frontend, copies dist to desktop/frontend-dist, and main.js loads it locally via loadfile. configured cross-platform packaging target options for windows (nsis installer, portable executables), mac (dmg, zip), and linux (appimage, deb) in package.json. added native OS window hooks for minimized, maximized, and close events so client-side buttons in the custom titlebar work. added shell handler for opening external web links in native browser instead of electron window. assets folder holds local icons configured for specific OS packing rules (ico, icns, png). how it connects: the desktop shell is just a container running our react client, which talks to the node/express backend via api client calls to VITE_API_URL. ipc communication checks the app version and process platform. window actions (minimize, maximize, close) are wired back to the ipcMain handler. if backend is unreachable, the API services default to local mock fallback data so the app does not freeze. auth tokens are saved in localstorage inside the web view which carries over across app launches. took way too long to align the dist copy paths in the build script. had a dumb bug where frontend-dist was missing and loading a blank screen, but fixed the cp target path. compilation is completely green now. going to collapse."}, {"post_id": 7129, "ts": "2026-06-11T22:13:59Z", "hours": 9.46, "text": "Devlog 8 coded for 10 hours straight. brain is absolutely fried but got most of the core pages done. the lopsided progress is finally balancing out. frontend is starting to talk to the backend client. made some serious headway: user-management.tsx: admin controls, user activity graphs, and session tracking. shows average response times and role badges. billing-finance.tsx: invoice lists, revenue breakdowns (upi, cash, card), stats, and mock trends. pharmacy/pharmacy-customers.tsx: mapped patients to pharmacy profiles. tracked loyalty points and total amount spent, plus warning badges for outstanding dues. app.tsx: wired up all the protected routes and role permissions. admins, doctors, pharmacists all see different stuff now. what’s left: pharmacy-inventory.tsx is half-baked. literally stopped at line 65 state declaration because i needed a break. need to add medicine batch dialogs, GST calculations, and stock levels. missing pharmacy-prescriptions.tsx, pharmacy-purchase.tsx, and pharmacy-reports.tsx files completely. they’re imported in app.tsx but the files don’t exist on disk yet. build will crash if i try to compile right now. actual integrations testing with the express backend. right now it falls back to mock data if the local server isn’t running. need to build the electron wrapper for desktop and expo for mobile later. everything is coming together. the app finally feels like a real crm instead of just a bunch of empty files. going to sleep now. Project Screenshot The attached screenshot is ai generated as the final devlog will contain demo link to try website yourselves."}, {"post_id": 6673, "ts": "2026-06-11T05:40:01Z", "hours": 4.5169, "text": "Devlog 7 Worked a lot more on it and progress so far : Chart Checkbox Collapsible Command Context menu Dialog Drawer Dropdown Menu Form Hover Card Input otp Input Label Menubar Navigation Menu Pagination Popover Progress Radio Group Resizable Scroll Area Select Separator Sheet Sidebar, Skeleton, Slider, Sonnar, Switch, Table Tabs, Text Area, Toast, Toaster, Toggle-Group, toggle, Tooltip Use toast, Roles, auth context, use mobile, use toasts, use debounce Api, utils, Analytics, appointments billing, billing finances, compliance security."}, {"post_id": 6172, "ts": "2026-06-10T11:41:12Z", "hours": 1.4475, "text": "Devlog 6 So far so good, made a whole lot of progress : Overall Dashboard Layout completed Header, Sidebar, Accordion created Alert Dialog, Alerts & Aspect ratio completed. Avatar, Badge, Breadcrumbs Buttons Calendar Cards Carousel. around 20% frontend work finished."}, {"post_id": 6138, "ts": "2026-06-10T10:13:18Z", "hours": 1.2061, "text": "Devlog 5 Progress so far : Finished Doctor Dashboard Pharmacy Dashboard Receptionist Dashboard SuperAdmin Dashboard (In progress)"}, {"post_id": 6115, "ts": "2026-06-10T09:00:37Z", "hours": 1.4219, "text": "Devlog 4 Okay so progress so far : Built the login system flow. Defined the different variations of dashboard based on role. Admin Dashboard menu. Controls for each role seperately divided. Functionalities : added search patients functionality. Appointments list design and function. Modules overview Quick Actions Revenue Charts StatsCard Upcoming reminders Admin Dashboard Diagnostic Dashboard Doctor Dashboard For now everything is just plain frontend that contains mock data and no actual working. will take more work to finish this."}, {"post_id": 6091, "ts": "2026-06-10T07:36:38Z", "hours": 1.64, "text": "Devlog 3 Looking so far so good. worked for about 1 & half hour now and it’s looking promising. worked on login page and menu design and style (will improve more with theme customization). Worked on role management and how each role will be handled differently. Found out bugs here and there, will fix after i’m done with creating the dashboard menu and style. It still needs about 10-15hrs of code based on the speed i’m working with (not sure if it’s less or more). Debugging and implementing new features will also require time."}, {"post_id": 6059, "ts": "2026-06-10T05:44:12Z", "hours": 4.1136, "text": "Devlog 2 Been Working for whole night with backend. I have made quite a lot of progress, so far so good. Almost everything that backend will need to operate is done and what’s left of it is to actually test it out. Now after a few more checks i’ll get ahead to code the actual frontend and the design of site. After the frontend is entirely created, i’ll test out all the backend functions and see if those works or not & if needed I might’ve to work on backend too as I go along this road……….."}, {"post_id": 5758, "ts": "2026-06-09T17:36:17Z", "hours": 1.6689, "text": "Devlog 1 Needed a crm that actually works for hospitals without the usual bloat. decided to split it into clean micro-services: node/express backend, react front, electron for desktop, and expo for mobile. most of the core structure is there but progress is pretty lopsided. spent a bit of time spinning up the backend and database routes, barely touched the actual frontend pages. focus is to get all the backend api endpoints and role validations completely solid before moving on to the ui. cross-device communication is just going to be rest calls to the centralized node server."}]...
|
Title: AuraCare CRM by @AuraZod | Stardance
Devlo Title: AuraCare CRM by @AuraZod | Stardance
Devlogs:
Devlog 1 Needed a crm that actually works for hospitals without the usual bloat. decided to split it into clean micro-services: node/express backend, react front, electron for desktop, and expo for mobile. most of the core structure is there but progress is pretty lopsided. spent a bit of time spinning up the backend and database routes, barely touched the actual frontend pages. focus is to get all the backend api endpoints and role validations completely solid before moving on to the ui. cross-device communication is just going to be rest calls to the centralized node server.
Devlog 2 Been Working for whole night with backend. I have made quite a lot of progress, so far so good. Almost everything that backend will need to operate is done and what’s left of it is to actually test it out. Now after a few more checks i’ll get ahead to code the actual frontend and the design of site. After the frontend is entirely created, i’ll test out all the backend functions and see if those works or not & if needed I might’ve to work on backend too as I go along this road………..
Devlog 3 Looking so far so good. worked for about 1 & half hour now and it’s looking promising. worked on login page and menu design and style (will improve more with theme customization). Worked on role management and how each role will be handled differently. Found out bugs here and there, will fix after i’m done with creating the dashboard menu and style. It still needs about 10-15hrs of code based on the speed i’m working with (not sure if it’s less or more). Debugging and implementing new features will also require time.
Devlog 4 Okay so progress so far : Built the login system flow. Defined the different variations of dashboard based on role. Admin Dashboard menu. Controls for each role seperately divided. Functionalities : added search patients functionality. Appointments list design and function. Modules overview Quick Actions Revenue Charts StatsCard Upcoming reminders Admin Dashboard Diagnostic Dashboard Doctor Dashboard For now everything is just plain frontend that contains mock data and no actual working. will take more work to finish this.
Devlog 5 Progress so far : Finished Doctor Dashboard Pharmacy Dashboard Receptionist Dashboard SuperAdmin Dashboard (In progress)
Devlog 6 So far so good, made a whole lot of progress : Overall Dashboard Layout completed Header, Sidebar, Accordion created Alert Dialog, Alerts & Aspect ratio completed. Avatar, Badge, Breadcrumbs Buttons Calendar Cards Carousel. around 20% frontend work finished.
Devlog 7 Worked a lot more on it and progress so far : Chart Checkbox Collapsible Command Context menu Dialog Drawer Dropdown Menu Form Hover Card Input otp Input Label Menubar Navigation Menu Pagination Popover Progress Radio Group Resizable Scroll Area Select Separator Sheet Sidebar, Skeleton, Slider, Sonnar, Switch, Table Tabs, Text Area, Toast, Toaster, Toggle-Group, toggle, Tooltip Use toast, Roles, auth context, use mobile, use toasts, use debounce Api, utils, Analytics, appointments billing, billing finances, compliance security.
Devlog 8 coded for 10 hours straight. brain is absolutely fried but got most of the core pages done. the lopsided progress is finally balancing out. frontend is starting to talk to the backend client. made some serious headway: user-management.tsx: admin controls, user activity graphs, and session tracking. shows average response times and role badges. billing-finance.tsx: invoice lists, revenue breakdowns (upi, cash, card), stats, and mock trends. pharmacy/pharmacy-customers.tsx: mapped patients to pharmacy profiles. tracked loyalty points and total amount spent, plus warning badges for outstanding dues. app.tsx: wired up all the protected routes and role permissions. admins, doctors, pharmacists all see different stuff now. what’s left: pharmacy-inventory.tsx is half-baked. literally stopped at line 65 state declaration because i needed a break. need to add medicine batch dialogs, GST calculations, and stock levels. missing pharmacy-prescriptions.tsx, pharmacy-purchase.tsx, and pharmacy-reports.tsx files completely. they’re imported in app.tsx but the files don’t exist on disk yet. build will crash if i try to compile right now. actual integrations testing with the express backend. right now it falls back to mock data if the local server isn’t running. need to build the electron wrapper for desktop and expo for mobile later. everything is coming together. the app finally feels like a real crm instead of just a bunch of empty files. going to sleep now. Project Screenshot The attached screenshot is ai generated as the final devlog will contain demo link to try website yourselves.
Devlog 9 finally done. literally coding until my fingers are numb. completed the entire crm frontend and the desktop wrapper is fully functional. no more mock gaps or missing files. here is the breakdown of what happened: frontend modules (crmfrontend): finished the pharmacy inventory page (pharmacyinventory.tsx). it handles full batch tracking, manufacturing/expiry dates, cost/selling price margins, gst calculation (5%, 12%, 18%), and hsn codes. also threw in reorder level alerts when stock drops below threshold. built out pharmacybilling.tsx from scratch. doctors write rx, pharmacist pulls it, builds the bill with automatic gst and prints receipt. made pharmacycustomers.tsx to track loyalty points, lifetime spend, and outstanding balances. has a quick reminder trigger. wrote pharmacyprescriptions.tsx to handle the incoming doctor prescription queues. pharmacists can do complete or partial dispensing if we are short on stock. added pharmacypurchase.tsx for restock orders and supplier inventory ingestion. built pharmacyreports.tsx for tracking medicine usage patterns and monthly sales dashboards. all routes are auth-locked in app.tsx using role-based routing policies (doctor, pharmacist, receptionist, admin, super-admin). styling is built using vanilla tailwind classes alongside shadcn UI components like dialogs, tables, and dropdown menus for layout consistency. data fetching is managed using tanstack react-query to cache active lists and handles state mutators for adding/editing items. toast notifications via sonner trigger real-time updates for pharmacy sales completions and out of stock warnings. integrated standard currency formatters to display indian rupee values properly in all tables. desktop wrapper (auracaredesktop): spun up electron setup. main.js manages window dimensions (1400x900 min, resizable) and ipc communication channels. preload.js sets up contextbridge and ipcrenderer exposing window controls safely without opening nodeintegration. connection strategy: in dev, package.json uses concurrently and wait-on to launch the frontend dev server on port 8080 and then point the electron browser window loadurl to localhost:8080. for prod, we run electron-builder which bundles our assets. npm build script builds the react frontend, copies dist to desktop/frontend-dist, and main.js loads it locally via loadfile. configured cross-platform packaging target options for windows (nsis installer, portable executables), mac (dmg, zip), and linux (appimage, deb) in package.json. added native OS window hooks for minimized, maximized, and close events so client-side buttons in the custom titlebar work. added shell handler for opening external web links in native browser instead of electron window. assets folder holds local icons configured for specific OS packing rules (ico, icns, png). how it connects: the desktop shell is just a container running our react client, which talks to the node/express backend via api client calls to VITE_API_URL. ipc communication checks the app version and process platform. window actions (minimize, maximize, close) are wired back to the ipcMain handler. if backend is unreachable, the API services default to local mock fallback data so the app does not freeze. auth tokens are saved in localstorage inside the web view which carries over across app launches. took way too long to align the dist copy paths in the build script. had a dumb bug where frontend-dist was missing and loading a blank screen, but fixed the cp target path. compilation is completely green now. going to collapse.
I had medical issues and couldn’t post more devlogs moving forward, neither I was able to finish the entire project to be supported in multiple platforms, but i’ve still made the web and desktop version of this project……..
Ships:
I built AuraCare CRM — a fast, lightweight healthcare and clinic management system. Most hospital software is clunky, slow, and painful to look at, so I wanted to make something modern that actually feels good to use for daily clinic rounds. It’s split into an Express.js REST API hosted on a Linux VPS behind a Cloudflare tunnel, a React 18 + Vite dashboard with Tailwind CSS and Radix UI primitives, and packaged as an Electron desktop app for clinic workstations. It covers the complete clinical flow across 6 roles (Super Admin, Admin, Doctor, Receptionist, Pharmacy, and Diagnostics) — from patient check-in and live queues to digital prescriptions, lab orders, inventory management, and PDF invoices. The most challenging part was session management and granular RBAC. In real clinics, doctors get interrupted constantly; standard 15-minute JWT timeouts were kicking them out mid-consultation. I built a 30-day extended session architecture with rolling token renewals and inactivity tracking, while ensuring cross-department data (like an Rx immediately updating pharmacy stock and billing) flows seamlessly. I’m most proud of the UI responsiveness — it switches views instantly and feels smooth, even with dark mode and live charts. To test it out: Open the live web app: https://auracare-gamma.vercel.app On the login page, click the “Sandbox Demo Login” button — you can pick any role (Doctor, Receptionist, Admin, etc.) to jump straight in without signing up! Windows desktop installer is also available in the GitHub releases: https://github.com/AuraZod/AuraCare-CRM/releases...
|
1793008059.1638594
|
1793094459.1638594
|
|
53120
|
Tab Grab by @ImBatman | Stardance
|
ImBatman
|
1
|
20.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-30T02:52:29Z", "hours": 20.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Overall I made a Bookmarking tool, that enhances the features that I always wished bookmarking and tab grouping had, which includes auto organization and easily and quick bookmarking without much user labor. I always wanted to look at tutorials and articles and videos that I always found interesting. But I never really had the attention span to look at them at that moment, and proceed to doomscroll. However, as I kept on adding more and more tabs into my tab space my browser would get messy. Obviously people’s first approach would be to bookmark and group tabs, my biggest problem with bookmarking and grouping tabs were that it required so much more user labor and especially for bookmarking you needed much more labor to organize it into individual folders. So overall made this extension to enhance the easiness of organizing tabs you want to go back to. I like to call it Bookmarking+.This project overall was a great learning experience as it was the first time i ever really used HTML/CSS/JS and other APIs. Overall I was able to make it so that my extension could automatically AI organize(Gemini api key) every single tab sent to your tab dashboard. Overall I am really proud of this because even though it may not seem special I find lots of use in this since it really answers to problems I always dealt with browsing the web. Though my biggest hassle with the project was managing all my ideas. Over this project I had many ideas, but the biggest problem was that I started working on this project so late. There were 2 big ideas that I badly wanted to implement but never found the time to do so. I wanted to add a tab flow chart connection network(similar to notes for obsidian) and a chatbot to help you with things. But overall, this was a great learning experience.and I feel like I made something worth remembering and being proud of!", "repo": "https://github.com/ReallyBADatWritingCode/TabGrab", "demo": "https://github.com/ReallyBADatWritingCode/TabGrab/releases/tag/v1.0.0"}]...
|
[{"post_id": 73479, "ts": "202 [{"post_id": 73479, "ts": "2026-09-25T06:35:01Z", "hours": 13.4164, "text": "Hi its been a long time since i last logged my development! My journey is almost at an end I’m hoping to finish in these the next 2 days but i have overall done plenty. Last time I posted a devlog I finished styling my V1 popup, however lots has changed. In my tab organization/saving extension I wanted to overall make it so that you could either manually send in tabs that you wanted to be saved or it would automatically send it in after a tab had been open for a certain amount of time. After lots of thinking, I didn’t see the use of the automatically sending in since there was a chance that a tab that you wouldn’t want to be closed could be closed and it would overall cause more stress for the user. I still wanted to play with the idea, so I vibecoded a version of this idea into my extension. As expected it didn’t’ seem to provide any use. This feature is still in app, since I feel like its just cool to have in any scenario the user is in, but it is disabled on default. Next the main point of this extension was so I could send in tabs and have it be auto organized by topic or whatever, so that I could always look back at the tabs whenever I wanted to. So I created this menu when a tab is right clicked called Send To Dashboard, sending tabs to the code. However, at that point this extension is no different from bookmarking. I wanted to put an emphasis on organization. However the easiest way to do organize was by domain, which itself wasn’t very organized. The user would refer to the tab they are looking for not by a random url, but by a topic. However, in order to do this you would need an AI to easily guestimate a good topic name for a folder that would be created for the tab to be stored in. So I used an old Gemini model api(free) and created a server.js where I’d create an asynchronous function that all I had to do was import the API and then use the functions of it to give it a prompt(ex. Asking to return a topic based on the tab details, URL, TITLE, etc.) and based off that result it would create a folder based on that name. However, I would need to transmitt these functions throughout files. This caused lots of export errors for me whenever I tried. So what I did was I posted a new POST route(ex. /organize) and then in the corresponding file i needed it in I would fetch that URL and call the async function. However I would constantly need to go into my terminal and individually call the command: node server.js. So I did some research and found a web service hosting platform called render where I could upload my git repo and it would run these API requests I needed!(These requests included, Organizing tabs into folders, Generating a summary for each tab, integrating a chat-bot(will get into later), and an obsidian like flow-chart(will get into later). Though since I am running on Render free, the requests are somewhat slow. Now overall the extension is basically done, it serves its purpose of being bookmarking pro, as it auto organizes your tabs making it easy for you to go back on things you want to look at and isn’t as cramped as normal bookmarking, or grouping tabs, which requires manual labor while this extension automatically organizes your tabs for you. However I felt like this wasn’t enough emphasis on the organization part I felt like I could add more. So obviously I did. So far it has been 2 weeks into this journey to make the extension better as I approach the deadline. My 3 main ideas were to 1) Generate a summary for each tab in a side bar 2) Integrate a chat-bot to make looking for tabs of related topics easier 3) I wanted to make a obsidian like flow-chart that connects tabs with lines based on relevance and color codes relevance. So far I have completely finished summaries for each tabs, the chat-bot works but needs some fine tuning, and gotten the base of the obsidian like flow-chart done, as it connects tabs based on relevance. Overall heavy polish is needed now."}, {"post_id": 52769, "ts": "2026-08-23T03:32:57Z", "hours": 6.8894, "text": "Finished Pop-Up! So basically this past week I have been looking at an extensions tutorial to create gain experience with HTML/CSS/JS and the extension I am planning to make will help store and view old links that you wish to view sooner or later, but just don’t have the time or will to look at it currently. Overall, I struggled with this problem a lot, I was interested in all these things but never had the attention span to look at them, which made me have a lot of tabs open all the time. I always closed the tabs and bookmarked them but it got increasingly messy similar to my tabs. So I was planning on making an extension that could handle all these tabs. It would overall either automatically close these tabs after a period of time or you could manually close them and it would auto sort into another web page with into sub folders related to each topic so you could easily look back at these links and tabs you wanted to look at earlier. It may not be an amazing idea but I think its a great start for where I am at, and so far I have finished the Pop-Up Panel for the extension!"}]...
|
Title: Tab Grab by @ImBatman | Stardance
Devlogs: Title: Tab Grab by @ImBatman | Stardance
Devlogs:
Finished Pop-Up! So basically this past week I have been looking at an extensions tutorial to create gain experience with HTML/CSS/JS and the extension I am planning to make will help store and view old links that you wish to view sooner or later, but just don’t have the time or will to look at it currently. Overall, I struggled with this problem a lot, I was interested in all these things but never had the attention span to look at them, which made me have a lot of tabs open all the time. I always closed the tabs and bookmarked them but it got increasingly messy similar to my tabs. So I was planning on making an extension that could handle all these tabs. It would overall either automatically close these tabs after a period of time or you could manually close them and it would auto sort into another web page with into sub folders related to each topic so you could easily look back at these links and tabs you wanted to look at earlier. It may not be an amazing idea but I think its a great start for where I am at, and so far I have finished the Pop-Up Panel for the extension!
Hi its been a long time since i last logged my development! My journey is almost at an end I’m hoping to finish in these the next 2 days but i have overall done plenty. Last time I posted a devlog I finished styling my V1 popup, however lots has changed. In my tab organization/saving extension I wanted to overall make it so that you could either manually send in tabs that you wanted to be saved or it would automatically send it in after a tab had been open for a certain amount of time. After lots of thinking, I didn’t see the use of the automatically sending in since there was a chance that a tab that you wouldn’t want to be closed could be closed and it would overall cause more stress for the user. I still wanted to play with the idea, so I vibecoded a version of this idea into my extension. As expected it didn’t’ seem to provide any use. This feature is still in app, since I feel like its just cool to have in any scenario the user is in, but it is disabled on default. Next the main point of this extension was so I could send in tabs and have it be auto organized by topic or whatever, so that I could always look back at the tabs whenever I wanted to. So I created this menu when a tab is right clicked called Send To Dashboard, sending tabs to the code. However, at that point this extension is no different from bookmarking. I wanted to put an emphasis on organization. However the easiest way to do organize was by domain, which itself wasn’t very organized. The user would refer to the tab they are looking for not by a random url, but by a topic. However, in order to do this you would need an AI to easily guestimate a good topic name for a folder that would be created for the tab to be stored in. So I used an old Gemini model api(free) and created a server.js where I’d create an asynchronous function that all I had to do was import the API and then use the functions of it to give it a prompt(ex. Asking to return a topic based on the tab details, URL, TITLE, etc.) and based off that result it would create a folder based on that name. However, I would need to transmitt these functions throughout files. This caused lots of export errors for me whenever I tried. So what I did was I posted a new POST route(ex. /organize) and then in the corresponding file i needed it in I would fetch that URL and call the async function. However I would constantly need to go into my terminal and individually call the command: node server.js. So I did some research and found a web service hosting platform called render where I could upload my git repo and it would run these API requests I needed!(These requests included, Organizing tabs into folders, Generating a summary for each tab, integrating a chat-bot(will get into later), and an obsidian like flow-chart(will get into later). Though since I am running on Render free, the requests are somewhat slow. Now overall the extension is basically done, it serves its purpose of being bookmarking pro, as it auto organizes your tabs making it easy for you to go back on things you want to look at and isn’t as cramped as normal bookmarking, or grouping tabs, which requires manual labor while this extension automatically organizes your tabs for you. However I felt like this wasn’t enough emphasis on the organization part I felt like I could add more. So obviously I did. So far it has been 2 weeks into this journey to make the extension better as I approach the deadline. My 3 main ideas were to 1) Generate a summary for each tab in a side bar 2) Integrate a chat-bot to make looking for tabs of related topics easier 3) I wanted to make a obsidian like flow-chart that connects tabs with lines based on relevance and color codes relevance. So far I have completely finished summaries for each tabs, the chat-bot works but needs some fine tuning, and gotten the base of the obsidian like flow-chart done, as it connects tabs based on relevance. Overall heavy polish is needed now.
Ships:
Overall I made a Bookmarking tool, that enhances the features that I always wished bookmarking and tab grouping had, which includes auto organization and easily and quick bookmarking without much user labor. I always wanted to look at tutorials and articles and videos that I always found interesting. But I never really had the attention span to look at them at that moment, and proceed to doomscroll. However, as I kept on adding more and more tabs into my tab space my browser would get messy. Obviously people’s first approach would be to bookmark and group tabs, my biggest problem with bookmarking and grouping tabs were that it required so much more user labor and especially for bookmarking you needed much more labor to organize it into individual folders. So overall made this extension to enhance the easiness of organizing tabs you want to go back to. I like to call it Bookmarking+.This project overall was a great learning experience as it was the first time i ever really used HTML/CSS/JS and other APIs. Overall I was able to make it so that my extension could automatically AI organize(Gemini api key) every single tab sent to your tab dashboard. Overall I am really proud of this because even though it may not seem special I find lots of use in this since it really answers to problems I always dealt with browsing the web. Though my biggest hassle with the project was managing all my ideas. Over this project I had many ideas, but the biggest problem was that I started working on this project so late. There were 2 big ideas that I badly wanted to implement but never found the time to do so. I wanted to add a tab flow chart connection network(similar to notes for obsidian) and a chatbot to help you with things. But overall, this was a great learning experience.and I feel like I made something worth remembering and being proud of!...
|
1793008058.0544107
|
1793094458.0544107
|
|
58062
|
Personal Site by @BigBrainNevin | Stardance
|
BigBrainNevin
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-12T16:32:41Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website. I know it doesn’t look as polished but I hope to improve it one day and make it seem more beautiful. The most challenging part was the CSS. There is so much stuff in CSS I did eventually use the documentation so that’s a W. But of course there is a bunch to learn!", "repo": "https://github.com/Nevin-Thomas1810/Personal-Website", "demo": "https://nevin-thomas1810.github.io/Personal-Website/"}]...
|
[{"post_id": 66378, "ts": "202 [{"post_id": 66378, "ts": "2026-09-12T05:28:54Z", "hours": 0.2533, "text": "Gonna ship my project i know it doesnt look good but i dont know css and i dont know how to have those cool layouts and stuff"}, {"post_id": 64190, "ts": "2026-09-08T12:46:43Z", "hours": 1.6139, "text": "I am writing a personal website"}]...
|
Title: Personal Site by @BigBrainNevin | Stardance Title: Personal Site by @BigBrainNevin | Stardance
Devlogs:
I am writing a personal website
Gonna ship my project i know it doesnt look good but i dont know css and i dont know how to have those cool layouts and stuff
Ships:
I made a personal website. I know it doesn’t look as polished but I hope to improve it one day and make it seem more beautiful. The most challenging part was the CSS. There is so much stuff in CSS I did eventually use the documentation so that’s a W. But of course there is a bunch to learn!...
|
1793008057.1870997
|
1793094457.1870997
|
|
58056
|
Financemanager by @javin_wittig | Stardance
|
javin_wittig
|
1
|
5.52
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-11T11:07:57Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a Python command-line application for managing personal finances. On first use, it creates a local account (username/password stored in a JSON file). Users can log custom income and expense transactions with a date, amount, category, and description, and generate summaries, total income, total expenses, and savings over a custom date range. All transactions are continuously saved to a CSV file. Everything you need to know about how to use it is explained in the README", "repo": "https://github.com/javinwittig/Financemanager", "demo": "https://github.com/javinwittig/Financemanager/releases/tag/v1.0.1"}]...
|
[{"post_id": 74479, "ts": "202 [{"post_id": 74479, "ts": "2026-09-27T14:04:58Z", "hours": 0.5153, "text": "Final changes"}, {"post_id": 65234, "ts": "2026-09-10T07:10:06Z", "hours": 4.9311, "text": "I am building a Finance Tracker in the Terminal"}]...
|
Title: Financemanager by @javin_wittig | Stardance Title: Financemanager by @javin_wittig | Stardance
Devlogs:
I am building a Finance Tracker in the Terminal
Final changes
Ships:
I built a Python command-line application for managing personal finances. On first use, it creates a local account (username/password stored in a JSON file). Users can log custom income and expense transactions with a date, amount, category, and description, and generate summaries, total income, total expenses, and savings over a custom date range. All transactions are continuously saved to a CSV file. Everything you need to know about how to use it is explained in the README...
|
1793008056.3052838
|
1793094456.3052838
|
|
2013
|
Grocery Price Tracker by @Draaal | Stardance
|
Draaal
|
1
|
12.51
|
45
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-30T15:40:56Z", "hours": 11.0, "multiplier": 4.22, "payout": 45, "blessing": "neutral", "text": "I structured this a bit like a FAQ so you don’t have to read everything; read whatever sections you find interesting TLDR A website with live data about products from the austrian grocery store “SPAR”. You can search filter, … It was my first time touching react and I learned quite a bit about docker. I also used some new rust libraries for serialization and hosing api endpoints Troubleshooting The server is a bit unstable, it might be unreachable if it hasn’t been accessed in a while and need a few minutes to start back up again. I don’t have a SSL certificate, so the browser might show something like “The connection is insecure. Are you sure you want to proceed?”. This is fine, it just means that the traffic between you and the serve is not encrypted. Just don’t put your bank credentials there, okay? What is this? You can use this to view prices of SPAR (a austrian grocery store). It has live data (unless I forget to start the update) and some nice search filters. Currently only products from one brand, but the design allows easy addition of further brands. Why are some parts of the website in german? Since SPAR is an austrian vendor, the product names are of course in german and the legal stuff is in german too for that reason. The rest is in english so you guys don’t need a translator. My experience So first I wanted to do this project to do some web dev again, after only doing local (mostly cli) stuff for a while. But this time in rust. First I struggeled a bit with Docker, because my AI was halluzinating again (thats on me though for using the trashy free model), but the implementation of the web scraping was pretty and db insertion was not too difficult, if I remember correctly after 3 months. Then I used react for frontend, which I knew nothing about, but after our Chatty gave me some hints on how to make things work it was fine. I also have to confess the html is ai-generated, because thats the part I really don’t care about. Price tracker ? It is called a price tracker, but it really isn’t. Once upon a time it was intended to be one, I ditched that feature in favor of storm (my other project). I never changed the name though…", "repo": "https://github.com/andraaal/price-tracker", "demo": "https://products.draaal.dpdns.org/"}]...
|
[{"post_id": 76267, "ts": "202 [{"post_id": 76267, "ts": "2026-10-03T00:09:57Z", "hours": 0.7756, "text": "Mods: The proejct description and the ship still say that it may have startup times. This is no longer true. Could someone remove that as I can’t do that any longer? Fixing shiping #2 Now we have proper hosting without any cold starts. Additionally we now also have cloudflare caching for that extra performance. And while I was at it I added a very simple favicon too"}, {"post_id": 75876, "ts": "2026-10-01T13:31:24Z", "hours": 0.7381, "text": "Whoops! I forgot the README. Now its there."}, {"post_id": 75602, "ts": "2026-09-30T15:12:27Z", "hours": 0.6042, "text": "#6 Devlog (now for real) I had almost given up when I rebuildt the container on my potato server for the 5th time, because I used local builds for the server. But then it just worked!!! It is still a miracle to me how there was nothing that went wrong, but it seems for once the server I set up works properly. Yay!!! Now is really time for shipping"}, {"post_id": 75567, "ts": "2026-09-30T13:45:46Z", "hours": 0.755, "text": "#6 Devlog (not really) Almost forgot to ship this; and I was kinda panicing because the server was broken. Was a quick fix at least. But now I found that the search system is a bit whacky and I am really scared to fix it. Let’s hope I don’t break the server, because it has been some time since I set it up and I have no idea on how to fix it if it breaks."}, {"post_id": 25934, "ts": "2026-07-10T13:08:24Z", "hours": 2.5278, "text": "Devlog #5: Final upload After I finally finished uploading everything to the server and fetching all of the 22K products they have, I noticed that the page is kinda laggy if you try displaying all of them at once (who would have thought). So I implemented paging and downloaded everything AGAIN, because idk?. There is db persistence across builds, but I do it on startup anyways. And all of that with 1s delay between requests to avoid getting rate-limited by their server. It took sooo long. Anyways, it is ready for shipping, I hope you enjoy it!"}, {"post_id": 22077, "ts": "2026-07-04T10:16:40Z", "hours": 0.9444, "text": "Devlog #4: Setting up a server So for the last day or so I’ve been working on setting up an online server. Getting the OCI (Oracle) Free Tier account took forever and then actually aquiring a machine too; They’re always out of resources, unless you upgrade to pay as you go. The one hour logged here is mainly me creating new Dockerfiles, that don’t have any of the build tools in the live server. Idk what to show, here is some screenshot from the server I set up:"}, {"post_id": 21068, "ts": "2026-07-02T20:55:28Z", "hours": 1.6758, "text": "Devlog #3: The frontend I restructured my project a bit, so I could have a simple web UI for my project. Nothing fancy yet, but it proofs that everything works. Still, quite interesting, since I have never used React before and I see why so many people like it (Also got a fair bit of help from AI with the design; that’s not really my cup of tea). Since all of the base features are implemented now, I think I will ship it soon, but before that, I want to make a few more adjustments (to not get rate-limited) and polish the UI a bit. Below you see the first UI draft"}, {"post_id": 20783, "ts": "2026-07-02T14:07:51Z", "hours": 1.9867, "text": "Devlog #2: Data Expansion After I got everything set up last devlog I now added some real data collection capabilities. We now track: name brand vendor price of one unit size of one unit (The thing in the image, not necessarily 1 kg/L/etc) image URL reference price (How much does 1 kg/L/etc cost?) tags like “organic”, “gluten-free”, etc I also restructured some of the code to make it easier to add new vendors, befor we were kinda fixed on SPAR. That’s all for now, I will now go and create a frontend so that next time I can show you more than some db schema."}, {"post_id": 19920, "ts": "2026-07-01T11:05:56Z", "hours": 2.1147, "text": "Deblog #1: New Project The end goal is to have an app that can compare prices between different grocery stores and can tell you where you can get your items the cheapest. I have set up a basic project in Docker with Rust and Postgres. Current capabilities are loading product data from SPAR deserializing, structuring and storing it in the db. There is no UI yet, but thats the next step."}]...
|
Title: Grocery Price Tracker by @Draaal | Stardanc Title: Grocery Price Tracker by @Draaal | Stardance
Devlogs:
Deblog #1: New Project The end goal is to have an app that can compare prices between different grocery stores and can tell you where you can get your items the cheapest. I have set up a basic project in Docker with Rust and Postgres. Current capabilities are loading product data from SPAR deserializing, structuring and storing it in the db. There is no UI yet, but thats the next step.
Devlog #2: Data Expansion After I got everything set up last devlog I now added some real data collection capabilities. We now track: name brand vendor price of one unit size of one unit (The thing in the image, not necessarily 1 kg/L/etc) image URL reference price (How much does 1 kg/L/etc cost?) tags like “organic”, “gluten-free”, etc I also restructured some of the code to make it easier to add new vendors, befor we were kinda fixed on SPAR. That’s all for now, I will now go and create a frontend so that next time I can show you more than some db schema.
Devlog #3: The frontend I restructured my project a bit, so I could have a simple web UI for my project. Nothing fancy yet, but it proofs that everything works. Still, quite interesting, since I have never used React before and I see why so many people like it (Also got a fair bit of help from AI with the design; that’s not really my cup of tea). Since all of the base features are implemented now, I think I will ship it soon, but before that, I want to make a few more adjustments (to not get rate-limited) and polish the UI a bit. Below you see the first UI draft
Devlog #4: Setting up a server So for the last day or so I’ve been working on setting up an online server. Getting the OCI (Oracle) Free Tier account took forever and then actually aquiring a machine too; They’re always out of resources, unless you upgrade to pay as you go. The one hour logged here is mainly me creating new Dockerfiles, that don’t have any of the build tools in the live server. Idk what to show, here is some screenshot from the server I set up:
Devlog #5: Final upload After I finally finished uploading everything to the server and fetching all of the 22K products they have, I noticed that the page is kinda laggy if you try displaying all of them at once (who would have thought). So I implemented paging and downloaded everything AGAIN, because idk?. There is db persistence across builds, but I do it on startup anyways. And all of that with 1s delay between requests to avoid getting rate-limited by their server. It took sooo long. Anyways, it is ready for shipping, I hope you enjoy it!
#6 Devlog (not really) Almost forgot to ship this; and I was kinda panicing because the server was broken. Was a quick fix at least. But now I found that the search system is a bit whacky and I am really scared to fix it. Let’s hope I don’t break the server, because it has been some time since I set it up and I have no idea on how to fix it if it breaks.
#6 Devlog (now for real) I had almost given up when I rebuildt the container on my potato server for the 5th time, because I used local builds for the server. But then it just worked!!! It is still a miracle to me how there was nothing that went wrong, but it seems for once the server I set up works properly. Yay!!! Now is really time for shipping
Whoops! I forgot the README. Now its there.
Mods: The proejct description and the ship still say that it may have startup times. This is no longer true. Could someone remove that as I can’t do that any longer? Fixing shiping #2 Now we have proper hosting without any cold starts. Additionally we now also have cloudflare caching for that extra performance. And while I was at it I added a very simple favicon too
Ships:
I structured this a bit like a FAQ so you don’t have to read everything; read whatever sections you find interesting TLDR A website with live data about products from the austrian grocery store “SPAR”. You can search filter, … It was my first time touching react and I learned quite a bit about docker. I also used some new rust libraries for serialization and hosing api endpoints Troubleshooting The server is a bit unstable, it might be unreachable if it hasn’t been accessed in a while and need a few minutes to start back up again. I don’t have a SSL certificate, so the browser might show something like “The connection is insecure. Are you sure you want to proceed?”. This is fine, it just means that the traffic between you and the serve is not encrypted. Just don’t put your bank credentials there, okay? What is this? You can use this to view prices of SPAR (a austrian grocery store). It has live data (unless I forget to start the update) and some nice search filters. Currently only products from one brand, but the design allows easy addition of further brands. Why are some parts of the website in german? Since SPAR is an austrian vendor, the product names are of course in german and the legal stuff is in german too for that reason. The rest is in english so you guys don’t need a translator. My experience So first I wanted to do this project to do some web dev again, after only doing local (mostly cli) stuff for a while. But this time in rust. First I struggeled a bit with Docker, because my AI was halluzinating again (thats on me though for using the trashy free model), but the implementation of the web scraping was pretty and db insertion was not too difficult, if I remember correctly after 3 months. Then I used react for frontend, which I knew nothing about, but after our Chatty gave me some hints on how to make things work it was fine. I also have to confess the html is ai-generated, because thats the part I really don’t care about. Price tracker ? It is called a price tracker, but it really isn’t. Once upon a time it was intended to be one, I ditched that feature in favor of storm (my other project). I never changed the name though…...
|
1793008054.588253
|
1793094454.588253
|
|
27346
|
shadow less light by @flyingfish | Stardance
|
flyingfish
|
1
|
200.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T21:59:09Z", "hours": 200.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "this is a desk lamp inspired my surgery lights this is my first time ever doing a pcb or smd soldering i learned a ton it was super fun", "repo": "https://github.com/dinotiger01/shadowless-light", "demo": ""}]...
|
[{"post_id": 71477, "ts": "202 [{"post_id": 71477, "ts": "2026-09-20T21:56:22Z", "hours": 7.8586, "text": "https://youtu.be/H-r51vnOVfs everything is done i can ship now there wasnt a lot of stuff to say in the midle of development so the devlogs got kinda bad around the middle"}, {"post_id": 69984, "ts": "2026-09-18T05:47:32Z", "hours": 6.7189, "text": "i have the video on my phone but i dont have wifi rn so you can have this i assembed every thing and starded the covumantation"}, {"post_id": 68285, "ts": "2026-09-14T20:58:58Z", "hours": 7.6081, "text": "100% done with 3d modeling it just takes a long time to proint everything"}, {"post_id": 66330, "ts": "2026-09-12T03:15:51Z", "hours": 8.2417, "text": "um i have done almost everything besides the case servos were breaking everything so aparently even if you dont use a servo on pin 10 0r 9 the servo lobrary still disables it but i uses those for red and green so i will need to figure that out later all panels and the main board are soldered and wired controlls when you click on the rotary encoder it changes what value you are changeing white - white lights red - red lights green - green lights blue - blue lights yellow - servos (not working) purple - turns on uv on main pannel"}, {"post_id": 65764, "ts": "2026-09-11T03:41:50Z", "hours": 4.5517, "text": "i started soldering everything over to the mother board i was able to dim the lights but i broke also its like green idk but most of the fir ware is done"}, {"post_id": 65105, "ts": "2026-09-10T00:33:09Z", "hours": 2.18, "text": "i have finished most of the soldering the rest is just small stuff"}, {"post_id": 64596, "ts": "2026-09-09T03:20:50Z", "hours": 5.7506, "text": "i am at 7/9 sooo close"}, {"post_id": 64439, "ts": "2026-09-08T20:21:40Z", "hours": 2.9669, "text": "i just made a a panel i am at 5/8 i am going to try to finish the other 3 today also"}, {"post_id": 64073, "ts": "2026-09-08T07:05:34Z", "hours": 3.8169, "text": "i got the uv lights all soldered up and made another panel i have made 4/8 panels i was going to meanchen how i have posted 3 devlogs today but i just noticed it became tomorrow during my last recording"}, {"post_id": 63995, "ts": "2026-09-08T03:05:37Z", "hours": 7.0836, "text": "i did the big one and every single light acualy works this time my back is in extreme consent pain i am almost don with soldering though my eyes i have been staring in to these lights for like 7 hr"}, {"post_id": 63665, "ts": "2026-09-07T16:29:00Z", "hours": 2.4503, "text": "i am starting to get the hang of things i lowered my chair and now i dont have insane back pain"}, {"post_id": 63304, "ts": "2026-09-07T01:49:15Z", "hours": 2.8169, "text": "i got some new stuff for soldering um and my back hurts sooo bad"}, {"post_id": 63218, "ts": "2026-09-06T22:02:36Z", "hours": 5.0336, "text": "yooo"}, {"post_id": 62617, "ts": "2026-09-06T02:45:23Z", "hours": 5.6875, "text": "so like i think i poisoned my self or somthing i wasnt able to get mech work done i am like on the verge of passing out like constently ill do a lot more tomarow"}, {"post_id": 61747, "ts": "2026-09-04T20:03:13Z", "hours": 7.3389, "text": "it works"}, {"post_id": 36826, "ts": "2026-07-29T04:02:13Z", "hours": 6.045, "text": "3d modeling and i hate windows i have finish all the 3dmodling i need to do for now and am now just waiting foe the pcbs to ship in the mean tim i wall be here https://stardance.hackclub.com/projects/41354 clips i added clips on the bottom of the outer pieaces they wew to small on the first print so i made them bigger poles i did almost a com pleat overhaul on the poles i made them connect stronger by making them go deeper in logo * i added the loo to everything because it looks cool control i add a control panel it is at the base of the main light and just kinda sits there idea i have a another idea but i am way to tired to add it rn so i am not adding it till later the idea is to have a light conecten to a pole so i can pull it off to like press it up against things rn i also want to add a uv light to it so i can cure things better"}, {"post_id": 35555, "ts": "2026-07-27T02:13:05Z", "hours": 9.48, "text": "windows is soo slow i am making this because i have been modeling for 10hr and more then 10hr doesn’t log to star dance will make a longer devlog in a bit"}, {"post_id": 33887, "ts": "2026-07-24T05:20:04Z", "hours": 4.9367, "text": "alright i got the pcbs 100% done for real this time UV i fully implemented the UV lights IR i gave the option to attach a it receiver so i can do that in the futor if i want to logo i added the updated logo silkscreen i went through the silkscreen and fixed all there errors check i want through literately every since trace and footprint on these boards to make sure i am actually done designing thease"}, {"post_id": 33673, "ts": "2026-07-23T19:40:16Z", "hours": 5.7425, "text": "so turns out i was not done with the pcbs i redesigned the logo i gave it this outline and added a gear to the light bulb uv i had the idea to add uv light to the light for like idk i will probably never use it but its fun the best use i can think of is curing resen witch is really cool i added them in to the pcb redesign so while adding the uv i realized i didnt use the vertion of the foot print ment for hand a soldering so i made sure to fix that hopfully they are done for real this time"}, {"post_id": 32810, "ts": "2026-07-22T06:19:52Z", "hours": 9.4156, "text": "logo i got everything done to get the pcbs orderd Logo i made a logo so i could add it to the silkscreen for some extra style mother board the mother board is basically an Arduino what directly plugs in to 36 outputs so it can control all 9 boards controll to make the controller i have desided it is going to be comprised of 3 componest the indicator a rotary encoder and a switch indicator it is passively a relay small since wrgb controller so i can do a small display type out but it is also nice because i have extra of all the components so this will make them easy to use for other components jlc is goofy so if you have sevral break away bords in one they charge you for all of them witch is like a lot and the work around is if you split all of them in to there own file it only cost like $2 per board so instead of paying $20 for for board i paid $8 for the same amount this is what i split everything in to fin_right fin_left indicator mother_board main_light"}, {"post_id": 32122, "ts": "2026-07-21T02:09:02Z", "hours": 6.1692, "text": "uh i am so tired i did like 6hr of work while fighting to stay awake split i split the pcb in to 2 100mm sections becouse it is like a lot cheaper. i have no mony to connect between panels i come up with an idea that is rather guineas or it is going to be the biggest mistake in the entire project i put 5 pads on the sides of each board and i am planing to aline the boards then bridge the gap with solder this should electrically connect the 2 boards and hold them together at least a bit net i finished the net on the main pcb i finished the not on the fins flip just like yesterday i flipped the pcb so that the leds work"}, {"post_id": 31867, "ts": "2026-07-20T16:31:24Z", "hours": 7.3906, "text": "data sheet uh resistors i moved the resistors like 5mm apart because i have plenty of space and it will be like X400 easier so solder i am blind i was testing the led so i can make sure every thing works the led is like really small so i was leaning in so that i can see the pins so i can try and turn it on… so like it is super bright and i burned a little dot in my eye data sheet so when i was testing the led i noticed that you need to power it from the left side and i assumed that it was powered from the right side i was curious as to why i got it backwards because i reference the data sheet like all the time. so apparently the schematic counted clockwise. while everything else on the data sheet is counter-clockwise like look at pg 15 and you can see why i assumed the power went from right to left not left to right https://downloads.cree-led.com/files/ds/h/HB-CLW6A-TKW.pdf the flip so i needed to flip the entire pcb becouse the power is on the wrong side i would have just rotated it around but scene the resistors are specific to the pins that wouldn’t work and the leds would burn out i also learned that you cant mirror footprints on kicad so what i did was set the center of my pcb to (0,0) then went through and switch the sign on every x value on the pcb"}, {"post_id": 31021, "ts": "2026-07-19T02:34:27Z", "hours": 6.3408, "text": "i am making things small small i have decided to find some way to fit everything in to 100 mm pieces the old deign would have costed like $30 idk why but pcb manufacturers really like 100mm x 100mm and each only cost like 1 dollar"}, {"post_id": 30448, "ts": "2026-07-18T00:20:00Z", "hours": 4.9019, "text": "pcb are really time consuming i have found (expetaly if you have never used any kinda pcb editor) bigger trace the traces on my pcb before were a bit to small and there was a good chance they would but each light pulls 20mA witch is 0.02A there is 25 lights and each has 4 light in side because RGBW witch means this could potently run at 2 amps and the 0.2 mm traces can only handle like 0.5A(i forgot but it is a smaller number) so i mad most things bigger lets hope it doesn’t explode"}, {"post_id": 29907, "ts": "2026-07-17T02:32:06Z", "hours": 4.6172, "text": "pcbs are like really expenceve so turns out most pcb manufatuers only sell 5 panels at a time so i shrunk my design down to just 2 so i get 10 in total also all the components arrived from mouser because i assumed it would take waaaay longer for them to ship"}, {"post_id": 29262, "ts": "2026-07-16T02:11:59Z", "hours": 6.4558, "text": "i think i got scamed idk why but like a lot of my time just didnt get logged i am working on it fins are done i put the finishing toutches on the fin lights mainly changing out the mosfets and stuff net so i had no clue what net is and aparently i was sposed to be lableing what everything is sposed to canect to so it can auto check for shorts so i spent like 2 hrs individualy assining a value to all the pads on the pcb panalization i was doing a lot of stuff trying to figure out panzatoin its almost done i think"}, {"post_id": 28654, "ts": "2026-07-15T01:16:48Z", "hours": 10.5153, "text": "so i had to go to my grand parents over the week end so i want able to get much work done but i figured out how to use kicad on my laptop so it was funny in the car while we driving i was working and then kicad crashed before i saved and i had to restart and then after i had done it all a second time i saved and turns out my kicad was out of date so i had to restart all i did was sett up the main pcb that has the 25 lights as seen below the zig zag pattern is because all the lights need to be connected in parallel the really weird pattern in the middle right was because the light was too close to the side so i had to move things and that is that only way i could find that things fit new mosfets i just changed the mosfets for fun idk"}, {"post_id": 26330, "ts": "2026-07-11T01:59:42Z", "hours": 10.4356, "text": "i did a lot of work on the pcb and Um idk i burnt my hand RGBW to i decided i would have 10 per segment and 25 on the core 105 in total witch end up at 8 amps and 1050 lumins resistors i decided to giv every pin its own resistor witch ends up with 420 resistor is need to solder i have never hand solder a smd component this is going to be a learning expireence mostfets i think i was high earlier it is like realy easy to fin smd mosfets i added smd mosfets i have in idea regarding the stand i didnt like the crane becouse it was really bulky and i feel like it wont move how i want it to and i wanted like a standered desk lamp where it can me moved easy but it is too wide for that to work well so what if i take the same mechonisum as the desk arm and just mount it to the wall"}, {"post_id": 24530, "ts": "2026-07-08T04:31:37Z", "hours": 5.7922, "text": "so i have to delete all of the pcb work i had before . i learned that making white light with RGB sucks and causes eye strain and it wont be brite enough RGBW i switched to RGBW leds witch is the same but with a dedicated white led the white light fixes both problems the pure white light wont cause eye strain and they are about 4x brighter then the old ones however it took me like 3 hours to figure out how to add a footprint to my library"}, {"post_id": 23669, "ts": "2026-07-06T19:38:41Z", "hours": 4.6003, "text": "so i managed to not save and lost all my progress again pcb rgb so the rgb have common anode(+) witch means yo just need to power the one pin then short witch color you want to turn on i learned how to us the seconded layer in order to hook all the cathodes(-) together mosfet the plan is to use the mosfets to switch each color on using a arduino idk why i couldn’t find any smd mosfets so i added tht mosfets and put them in backward to i can add a heatsink with out it getting in the way of the light resistors idk man its a resistor its not that exiting"}, {"post_id": 23003, "ts": "2026-07-05T18:22:30Z", "hours": 4.7006, "text": "so uh i worked for a long time then a black out hit and i lost all of it"}, {"post_id": 21865, "ts": "2026-07-04T01:07:06Z", "hours": 4.8339, "text": "i finished the crane for the case matirials i decided to make part of the crane out of pvc pipe because idk i don’t know anything better *changeable i made a simple pole connector to hole the thing on so that the crane can hold any future projects if needed *motor i have been debating whether it is worth it to make it motorized at the moment it is set up to be but idk"}, {"post_id": 20491, "ts": "2026-07-02T02:58:40Z", "hours": 4.2003, "text": "so this is the first time i have ever used kicad there is not a lot to say here i just spent like 4 trying to make a pcb and nothing happend execpt things turned green every so often and idk why"}, {"post_id": 19714, "ts": "2026-07-01T03:18:51Z", "hours": 4.7839, "text": "i worked on the core model servo i made places for the servos to sit in the core *the servos will push and pull the control poles to tilt the segments *poles the poles i printed earlier finished and i though i could get away with just 2 servos but i am going to need 4 other then that is seems to work as expected for now *RGB *ngl i just think it would be funny to add RGB and it could help with very specific tasked i gouess *general so i feel kinda dumb but i realized i could add lights on the bottom of the core too so that is something i am working on now i did a lot of general changes to the design mainly getting rid of unneeded plastic witch makes it look cooler"}, {"post_id": 17315, "ts": "2026-06-28T01:16:37Z", "hours": 9.3347, "text": "so i want to make a desk lamp that works the same way that surgery lamps so there is no shadows constraints: bright: i want to be able to use it to see no shadows: i don’t want shadows alright this is the model so far: it has 8 segments : place to mount a pcb a hole with a pole that lets it swivel a second hole to have a pole that can control it moving in and out(see more farther down) each has 2 brackets that hold the swivel pole to the center control poles like the segments there are 8 of these each of them have a hole and a pole the idea is you thread the pole part thought the hole of another one till it comes all the way around then if one is pusher out it should push all of them out i am currently printing some small versions to see if the concept workes center it is curtly just a block with slits for the brackest i am sure there will be more on it latter"}]...
|
Title: shadow less light by @flyingfish | Stardanc Title: shadow less light by @flyingfish | Stardance
Devlogs:
so i want to make a desk lamp that works the same way that surgery lamps so there is no shadows constraints: bright: i want to be able to use it to see no shadows: i don’t want shadows alright this is the model so far: it has 8 segments : place to mount a pcb a hole with a pole that lets it swivel a second hole to have a pole that can control it moving in and out(see more farther down) each has 2 brackets that hold the swivel pole to the center control poles like the segments there are 8 of these each of them have a hole and a pole the idea is you thread the pole part thought the hole of another one till it comes all the way around then if one is pusher out it should push all of them out i am currently printing some small versions to see if the concept workes center it is curtly just a block with slits for the brackest i am sure there will be more on it latter
i worked on the core model servo i made places for the servos to sit in the core *the servos will push and pull the control poles to tilt the segments *poles the poles i printed earlier finished and i though i could get away with just 2 servos but i am going to need 4 other then that is seems to work as expected for now *RGB *ngl i just think it would be funny to add RGB and it could help with very specific tasked i gouess *general so i feel kinda dumb but i realized i could add lights on the bottom of the core too so that is something i am working on now i did a lot of general changes to the design mainly getting rid of unneeded plastic witch makes it look cooler
so this is the first time i have ever used kicad there is not a lot to say here i just spent like 4 trying to make a pcb and nothing happend execpt things turned green every so often and idk why
i finished the crane for the case matirials i decided to make part of the crane out of pvc pipe because idk i don’t know anything better *changeable i made a simple pole connector to hole the thing on so that the crane can hold any future projects if needed *motor i have been debating whether it is worth it to make it motorized at the moment it is set up to be but idk
so uh i worked for a long time then a black out hit and i lost all of it
so i managed to not save and lost all my progress again pcb rgb so the rgb have common anode(+) witch means yo just need to power the one pin then short witch color you want to turn on i learned how to us the seconded layer in order to hook all the cathodes(-) together mosfet the plan is to use the mosfets to switch each color on using a arduino idk why i couldn’t find any smd mosfets so i added tht mosfets and put them in backward to i can add a heatsink with out it getting in the way of the light resistors idk man its a resistor its not that exiting
so i have to delete all of the pcb work i had before . i learned that making white light with RGB sucks and causes eye strain and it wont be brite enough RGBW i switched to RGBW leds witch is the same but with a dedicated white led the white light fixes both problems the pure white light wont cause eye strain and they are about 4x brighter then the old ones however it took me like 3 hours to figure out how to add a footprint to my library
i did a lot of work on the pcb and Um idk i burnt my hand RGBW to i decided i would have 10 per segment and 25 on the core 105 in total witch end up at 8 amps and 1050 lumins resistors i decided to giv every pin its own resistor witch ends up with 420 resistor is need to solder i have never hand solder a smd component this is going to be a learning expireence mostfets i think i was high earlier it is like realy easy to fin smd mosfets i added smd mosfets i have in idea regarding the stand i didnt like the crane becouse it was really bulky and i feel like it wont move how i want it to and i wanted like a standered desk lamp where it can me moved easy but it is too wide for that to work well so what if i take the same mechonisum as the desk arm and just mount it to the wall
so i had to go to my grand parents over the week end so i want able to get much work done but i figured out how to use kicad on my laptop so it was funny in the car while we driving i was working and then kicad crashed before i saved and i had to restart and then after i had done it all a second time i saved and turns out my kicad was out of date so i had to restart all i did was sett up the main pcb that has the 25 lights as seen below the zig zag pattern is because all the lights need to be connected in parallel the really weird pattern in the middle right was because the light was too close to the side so i had to move things and that is that only way i could find that things fit new mosfets i just changed the mosfets for fun idk
i think i got scamed idk why but like a lot of my time just didnt get logged i am working on it fins are done i put the finishing toutches on the fin lights mainly changing out the mosfets and stuff net so i had no clue what net is and aparently i was sposed to be lableing what everything is sposed to canect to so it can auto check for shorts so i spent like 2 hrs individualy assining a value to all the pads on the pcb panalization i was doing a lot of stuff trying to figure out panzatoin its almost done i think
pcbs are like really expenceve so turns out most pcb manufatuers only sell 5 panels at a time so i shrunk my design down to just 2 so i get 10 in total also all the components arrived from mouser because i assumed it would take waaaay longer for them to ship
pcb are really time consuming i have found (expetaly if you have never used any kinda pcb editor) bigger trace the traces on my pcb before were a bit to small and there was a good chance they would but each light pulls 20mA witch is 0.02A there is 25 lights and each has 4 light in side because RGBW witch means this could potently run at 2 amps and the 0.2 mm traces can only handle like 0.5A(i forgot but it is a smaller number) so i mad most things bigger lets hope it doesn’t explode
i am making things small small i have decided to find some way to fit everything in to 100 mm pieces the old deign would have costed like $30 idk why but pcb manufacturers really like 100mm x 100mm and each only cost like 1 dollar
data sheet uh resistors i moved the resistors like 5mm apart because i have plenty of space and it will be like X400 easier so solder i am blind i was testing the led so i can make sure every thing works the led is like really small so i was leaning in so that i can see the pins so i can try and turn it on… so like it is super bright and i burned a little dot in my eye data sheet so when i was testing the led i noticed that you need to power it from the left side and i assumed that it was powered from the right side i was curious as to why i got it backwards because i reference the data sheet like all the time. so apparently the schematic counted clockwise. while everything else on the data sheet is counter-clockwise like look at pg 15 and you can see why i assumed the power went from right to left not left to right https://downloads.cree-led.com/files/ds/h/HB-CLW6A-TKW.pdf the flip so i needed to flip the entire pcb becouse the power is on the wrong side i would have just rotated it around but scene the resistors are specific to the pins that wouldn’t work and the leds would burn out i also learned that you cant mirror footprints on kicad so what i did was set the center of my pcb to (0,0) then went through and switch the sign on every x value on the pcb
uh i am so tired i did like 6hr of work while fighting to stay awake split i split the pcb in to 2 100mm sections becouse it is like a lot cheaper. i have no mony to connect between panels i come up with an idea that is rather guineas or it is going to be the biggest mistake in the entire project i put 5 pads on the sides of each board and i am planing to aline the boards then bridge the gap with solder this should electrically connect the 2 boards and hold them together at least a bit net i finished the net on the main pcb i finished the not on the fins flip just like yesterday i flipped the pcb so that the leds work
logo i got everything done to get the pcbs orderd Logo i made a logo so i could add it to the silkscreen for some extra style mother board the mother board is basically an Arduino what directly plugs in to 36 outputs so it can control all 9 boards controll to make the controller i have desided it is going to be comprised of 3 componest the indicator a rotary encoder and a switch indicator it is passively a relay small since wrgb controller so i can do a small display type out but it is also nice because i have extra of all the components so this will make them easy to use for other components jlc is goofy so if you have sevral break away bords in one they charge you for all of them witch is like a lot and the work around is if you split all of them in to there own file it only cost like $2 per board so instead of paying $20 for for board i paid $8 for the same amount this is what i split everything in to fin_right fin_left indicator mother_board main_light
so turns out i was not done with the pcbs i redesigned the logo i gave it this outline and added a gear to the light bulb uv i had the idea to add uv light to the light for like idk i will probably never use it but its fun the best use i can think of is curing resen witch is really cool i added them in to the pcb redesign so while adding the uv i realized i didnt use the vertion of the foot print ment for hand a soldering so i made sure to fix that hopfully they are done for real this time
alright i got the pcbs 100% done for real this time UV i fully implemented the UV lights IR i gave the option to attach a it receiver so i can do that in the futor if i want to logo i added the updated logo silkscreen i went through the silkscreen and fixed all there errors check i want through literately every since trace and footprint on these boards to make sure i am actually done designing thease
windows is soo slow i am making this because i have been modeling for 10hr and more then 10hr doesn’t log to star dance will make a longer devlog in a bit
3d modeling and i hate windows i have finish all the 3dmodling i need to do for now and am now just waiting foe the pcbs to ship in the mean tim i wall be here https://stardance.hackclub.com/projects/41354 clips i added clips on the bottom of the outer pieaces they wew to small on the first print so i made them bigger poles i did almost a com pleat overhaul on the poles i made them connect stronger by making them go deeper in logo * i added the loo to everything because it looks cool control i add a control panel it is at the base of the main light and just kinda sits there idea i have a another idea but i am way to tired to add it rn so i am not adding it till later the idea is to have a light conecten to a pole so i can pull it off to like press it up against things rn i also want to add a uv light to it so i can cure things better
it works
so like i think i poisoned my self or somthing i wasnt able to get mech work done i am like on the verge of passing out like constently ill do a lot more tomarow
yooo
i got some new stuff for soldering um and my back hurts sooo bad
i am starting to get the hang of things i lowered my chair and now i dont have insane back pain
i did the big one and every single light acualy works this time my back is in extreme consent pain i am almost don with soldering though my eyes i have been staring in to these lights for like 7 hr
i got the uv lights all soldered up and made another panel i have made 4/8 panels i was going to meanchen how i have posted 3 devlogs today but i just noticed it became tomorrow during my last recording
i just made a a panel i am at 5/8 i am going to try to finish the other 3 today also
i am at 7/9 sooo close
i have finished most of the soldering the rest is just small stuff
i started soldering everything over to the mother board i was able to dim the lights but i broke also its like green idk but most of the fir ware is done
um i have done almost everything besides the case servos were breaking everything so aparently even if you dont use a servo on pin 10 0r 9 the servo lobrary still disables it but i uses those for red and green so i will need to figure that out later all panels and the main board are soldered and wired controlls when you click on the rotary encoder it changes what value you are changeing white - white lights red - red lights green - green lights blue - blue lights yellow - servos (not working) purple - turns on uv on main pannel
100% done with 3d modeling it just takes a long time to proint everything
i have the video on my phone but i dont have wifi rn so you can have this i assembed every thing and starded the covumantation
https://youtu.be/H-r51vnOVfs everything is done i can ship now there wasnt a lot of stuff to say in the midle of development so the devlogs got kinda bad around the middle
Ships:
this is a desk lamp inspired my surgery lights this is my first time ever doing a pcb or smd soldering i learned a ton it was super fun...
|
1793008053.2502232
|
1793094453.2502232
|
|
58038
|
StudyPilot AI by @aadhyachoudhary012 | Stardance
|
aadhyachoudhary012
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T18:15:20Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built StudyPilot AI because I wanted a study planner that actually adapts to the student instead of giving everyone the same timetable. The main challenge was connecting the different parts together — Gemini, MongoDB, student performance, and Google Calendar — so that the study recommendations actually change based on what the student needs. I’m most proud of the adaptive learning idea: quiz → analyze performance → find weak topics → study → re-test → adapt. You can test the project by creating an account, adding subjects/topics, trying the quiz features, and exploring the dashboard. I’d especially love feedback on the adaptive recommendations! 🚀", "repo": "https://github.com/webadda1401/studyPolitAI", "demo": "https://studypolitai.onrender.com/"}]...
|
[{"post_id": 68171, "ts": "202 [{"post_id": 68171, "ts": "2026-09-14T17:14:47Z", "hours": 2.0147, "text": "i have created a studyPolitAi in which student can track thier study.make plan to study . set priority subject and exam"}]...
|
Title: StudyPilot AI by @aadhyachoudhary012 | Star Title: StudyPilot AI by @aadhyachoudhary012 | Stardance
Devlogs:
i have created a studyPolitAi in which student can track thier study.make plan to study . set priority subject and exam
Ships:
I built StudyPilot AI because I wanted a study planner that actually adapts to the student instead of giving everyone the same timetable. The main challenge was connecting the different parts together — Gemini, MongoDB, student performance, and Google Calendar — so that the study recommendations actually change based on what the student needs. I’m most proud of the adaptive learning idea: quiz → analyze performance → find weak topics → study → re-test → adapt. You can test the project by creating an account, adding subjects/topics, trying the quiz features, and exploring the dashboard. I’d especially love feedback on the adaptive recommendations! 🚀...
|
1793008052.3692539
|
1793094452.3692539
|
|
58033
|
Nexus Escape by @raslanyossif | Stardance
|
raslanyossif
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T05:36:31Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I developed a game called NEXUS-09: Neon Escape, which is a cyberpunk-style escape room game that involves solving four puzzles to get fragments of access and run away before time is up. This game consists of a security code puzzle, a signal sequence challenge, and a memory matching game. The biggest difficulties were creating separate puzzle systems combined into one, handling the running of the countdown and game states simultaneously, and coming up with a graphical animated interface. It was also extremely important to track all progress, mistakes, sounds, transitions, and final results during the gameplay. I feel proud of the atmosphere and presentation of the game in general. The neon design of the game, glitch effects, particle background, scanlines, sound feedback, progress tracking, and ranking system are what I am especially satisfied with. What should you know before testing: Solve the terminal puzzle first, then complete the signal, memory, and reactor core challenges. The goal is to collect all four fragments before the timer reaches zero. You can’t access or do core challenge until you complete all the other 3 challenges then core unlocks.", "repo": "https://github.com/Yossifraslan/Nexus-Escape", "demo": "https://yossifraslan.github.io/Nexus-Escape/"}]...
|
[{"post_id": 65257, "ts": "202 [{"post_id": 65257, "ts": "2026-09-10T08:10:37Z", "hours": 9.8864, "text": "DEVLOG TIMEEEE:» NEXUS-09 // Neon Escape Built a browser escape room game - vanilla HTML/CSS/JS, no frameworks, no libraries. Just a single index.html , style.css , and script.js . the pitch You’re trapped inside a failing machine intelligence called NEXUS-09. You’ve got 5 minutes to recover 4 access fragments and get out before containment seals the partition. Cyberpunk/hacker terminal aesthetic - scanlines, glitch text, a particle field background, screen shake, the works. the four puzzles - Terminal - crack a 4-digit auth code using deduced clues (first digit > 3, second digit = cores online, third = flagged subsystems, last digit = double the first, wrapping past 9). Signal - a Simon-says style sequence of 4 symbols flashed on a fake oscilloscope canvas, played back and then repeated by the player. 3 mistakes and the transmission resets. Memory - classic 8-pair matching grid, but themed as a “memory lattice” with glyph tiles. Core - locked until the other 3 fragments are secured. Three concentric SVG rings, each rotated independently in 90° steps until all align - a synchronization puzzle to trigger the final breach. Once all 4 are collected, the game unlocks a shutdown/escape sequence with a progress bar and a scored results screen (time remaining, mistakes, puzzles completed → rank from Rookie Hacker up to System Breaker), with high score saved locally. some of the fun technical bits Web Audio, zero audio files. Every sound -clicks, errors, alarms, victory chime - is a synthesized oscillator tone (sine/square/triangle/sawtooth) with gain envelopes and frequency sweeps. No .mp3 / .wav anywhere. Canvas particle field in the background: ~70 points drift around and draw connecting lines when close to each other, classic constellation effect, capped by screen area so it doesn’t die on big displays. Fake system telemetry running the whole time you play - a live clock, CPU/security bars wiggling via sine waves + noise, a scrolling log of believable-sounding system messages, a random hex string ticking over. Purely cosmetic, but it sells the “you’re inside a machine” feeling. Screen shake is just a CSS class toggled on/off (forcing a reflow with offsetWidth so it can retrigger), fired on mistakes, fragment pickups, and timer milestones. Countdown timer flips into warning (⚠️ orange) and critical (🔴 red) states at 3 minutes and 1 minute left, with an alarm tone + shake at each threshold. Structure Everything is organized into small classes - AudioEngine , ParticleField , Telemetry , CountdownTimer , one class per puzzle ( TerminalPuzzle , SignalPuzzle , MemoryPuzzle , CorePuzzle ), and a top-level Game class that owns state (which fragments are collected, mistakes, current view) and wires everything together. Screens are just <section> elements toggled with an active class — boot log → start screen → game → final access → escape sequence → win/lose."}]...
|
Title: Nexus Escape by @raslanyossif | Stardance
Title: Nexus Escape by @raslanyossif | Stardance
Devlogs:
DEVLOG TIMEEEE:» NEXUS-09 // Neon Escape Built a browser escape room game - vanilla HTML/CSS/JS, no frameworks, no libraries. Just a single index.html , style.css , and script.js . the pitch You’re trapped inside a failing machine intelligence called NEXUS-09. You’ve got 5 minutes to recover 4 access fragments and get out before containment seals the partition. Cyberpunk/hacker terminal aesthetic - scanlines, glitch text, a particle field background, screen shake, the works. the four puzzles - Terminal - crack a 4-digit auth code using deduced clues (first digit > 3, second digit = cores online, third = flagged subsystems, last digit = double the first, wrapping past 9). Signal - a Simon-says style sequence of 4 symbols flashed on a fake oscilloscope canvas, played back and then repeated by the player. 3 mistakes and the transmission resets. Memory - classic 8-pair matching grid, but themed as a “memory lattice” with glyph tiles. Core - locked until the other 3 fragments are secured. Three concentric SVG rings, each rotated independently in 90° steps until all align - a synchronization puzzle to trigger the final breach. Once all 4 are collected, the game unlocks a shutdown/escape sequence with a progress bar and a scored results screen (time remaining, mistakes, puzzles completed → rank from Rookie Hacker up to System Breaker), with high score saved locally. some of the fun technical bits Web Audio, zero audio files. Every sound -clicks, errors, alarms, victory chime - is a synthesized oscillator tone (sine/square/triangle/sawtooth) with gain envelopes and frequency sweeps. No .mp3 / .wav anywhere. Canvas particle field in the background: ~70 points drift around and draw connecting lines when close to each other, classic constellation effect, capped by screen area so it doesn’t die on big displays. Fake system telemetry running the whole time you play - a live clock, CPU/security bars wiggling via sine waves + noise, a scrolling log of believable-sounding system messages, a random hex string ticking over. Purely cosmetic, but it sells the “you’re inside a machine” feeling. Screen shake is just a CSS class toggled on/off (forcing a reflow with offsetWidth so it can retrigger), fired on mistakes, fragment pickups, and timer milestones. Countdown timer flips into warning (⚠️ orange) and critical (🔴 red) states at 3 minutes and 1 minute left, with an alarm tone + shake at each threshold. Structure Everything is organized into small classes - AudioEngine , ParticleField , Telemetry , CountdownTimer , one class per puzzle ( TerminalPuzzle , SignalPuzzle , MemoryPuzzle , CorePuzzle ), and a top-level Game class that owns state (which fragments are collected, mistakes, current view) and wires everything together. Screens are just <section> elements toggled with an active class — boot log → start screen → game → final access → escape sequence → win/lose.
Ships:
I developed a game called NEXUS-09: Neon Escape, which is a cyberpunk-style escape room game that involves solving four puzzles to get fragments of access and run away before time is up. This game consists of a security code puzzle, a signal sequence challenge, and a memory matching game. The biggest difficulties were creating separate puzzle systems combined into one, handling the running of the countdown and game states simultaneously, and coming up with a graphical animated interface. It was also extremely important to track all progress, mistakes, sounds, transitions, and final results during the gameplay. I feel proud of the atmosphere and presentation of the game in general. The neon design of the game, glitch effects, particle background, scanlines, sound feedback, progress tracking, and ranking system are what I am especially satisfied with. What should you know before testing: Solve the terminal puzzle first, then complete the signal, memory, and reactor core challenges. The goal is to collect all four fragments before the timer reaches zero. You can’t access or do core challenge until you complete all the other 3 challenges then core unlocks....
|
1793008051.2124875
|
1793094451.2124875
|
|
53025
|
Hand Tracker by @javin_wittig | Stardance
|
javin_wittig
|
1
|
16.19
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T13:21:54Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a real-time Hand Tracker using a Raspberry Pi 4, two servo motors, and MediaPipe! It tracks my hand movement live through a camera and mimics it using a physical paper hand mounted on two servos. The biggest challenge: Running MediaPipe directly on the Pi 4 overheated it fast. To fix this, I now run MediaPipe on my PC. Now, the Pi streams the video feed to my PC, which calculates the coordinates and sends them back to the Rasperry PI,which then controls the two servos to mimic my hands movement. What I’m proud of: Solving the overheating issue using network streaming and seeing the mechanical hand follow my movements live! I also built a website: https://javinwittig.github.io/hand_tracker_website/ I made 3 Github Repos, one for the Rasperry PI, one for the backend on my PC, where MediaPipe is running and another for the website, which I hosted using Github Pages", "repo": "https://github.com/javinwittig/hand_tracker", "demo": ""}]...
|
[{"post_id": 80382, "ts": "202 [{"post_id": 80382, "ts": "2026-10-17T13:54:39Z", "hours": 1.1889, "text": "3D modeling my handtracker"}, {"post_id": 69620, "ts": "2026-09-17T13:05:18Z", "hours": 0.8253, "text": "Building a Website for my project in HTML and hosting it on Github Pages"}, {"post_id": 65233, "ts": "2026-09-10T07:07:23Z", "hours": 6.1083, "text": "Im finally ready to ship everything"}, {"post_id": 52585, "ts": "2026-08-22T19:34:19Z", "hours": 7.7164, "text": "I’m building a laser turret with a Raspberry Pi, two servo motors, a laser pointer, and a camera that tracks my hand movement live and steers the laser accordingly. The Pi is already set up (Python/VS Code), but since local MediaPipe tracking overheats the Pi 4 too much, I’ve decided to offload the tracking to my PC with an RTX 5070 — the Pi just streams the camera feed to the PC, which sends back target coordinates for the Pi to steer the servos. I’m also keeping a local website with a live video stream"}]...
|
Title: Hand Tracker by @javin_wittig | Stardance
Title: Hand Tracker by @javin_wittig | Stardance
Devlogs:
I’m building a laser turret with a Raspberry Pi, two servo motors, a laser pointer, and a camera that tracks my hand movement live and steers the laser accordingly. The Pi is already set up (Python/VS Code), but since local MediaPipe tracking overheats the Pi 4 too much, I’ve decided to offload the tracking to my PC with an RTX 5070 — the Pi just streams the camera feed to the PC, which sends back target coordinates for the Pi to steer the servos. I’m also keeping a local website with a live video stream
Im finally ready to ship everything
Building a Website for my project in HTML and hosting it on Github Pages
3D modeling my handtracker
Ships:
I built a real-time Hand Tracker using a Raspberry Pi 4, two servo motors, and MediaPipe! It tracks my hand movement live through a camera and mimics it using a physical paper hand mounted on two servos. The biggest challenge: Running MediaPipe directly on the Pi 4 overheated it fast. To fix this, I now run MediaPipe on my PC. Now, the Pi streams the video feed to my PC, which calculates the coordinates and sends them back to the Rasperry PI,which then controls the two servos to mimic my hands movement. What I’m proud of: Solving the overheating issue using network streaming and seeing the mechanical hand follow my movements live! I also built a website: https://javinwittig.github.io/hand_tracker_website/ I made 3 Github Repos, one for the Rasperry PI, one for the backend on my PC, where MediaPipe is running and another for the website, which I hosted using Github Pages...
|
1793008050.0823977
|
1793094450.0823977
|
|
15486
|
Personal Website by @sapu | Stardance
|
sapu
|
1
|
28.0
|
412
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-23T08:13:40Z", "hours": 28.0, "multiplier": 15.56, "payout": 412, "blessing": "neutral", "text": "It’s a personal also a portfolio website that I’m really proud of that I’m trying to achieve a game-like feel with the design, and the challenging part was making everything responsive and getting the layouts to work on different screen sizes while learning React :p", "repo": "https://github.com/savwicak/savwicak.github.io", "demo": "https://savwicak.github.io"}]...
|
[{"post_id": 72572, "ts": "202 [{"post_id": 72572, "ts": "2026-09-23T08:09:20Z", "hours": 7.5636, "text": "Added more data and made the design responsive! I’m having trouble fixing some elements so they fit properly on mobile, so I also cross-checked it on different phones :p"}, {"post_id": 71739, "ts": "2026-09-21T13:01:19Z", "hours": 8.9267, "text": "FINAL UPDATE My personal web is doneee!!! YYAYAY but I need some changes to the data. I still use dummy data to test things out (so it’s not the real one ok)"}, {"post_id": 69020, "ts": "2026-09-16T07:10:38Z", "hours": 11.0742, "text": "Hello it’s kinda late, anyway i’m posting my progress for my personal website, so i can share my experience in blog and share my favorite project, and i can organize it better, before i use bento.me for all links but suddenly the website is down so i cant acsses no more ;( THATS why i want to make my own website :D It kinda motivated me to build the project lolol. I’m trying to make a game-like UI and layout, and hopefully it looks like one. I really love this kind of UI when there are a lot of borders and outlines, like cartoon u_U, because I love games! And I want to put a lot of animation here. SORRY FOR BAD POST STRUCTURE, REALLY, I don’t know how to post devlog cleanly hehe so there are 6 pages home will appear when you enter the website, like some short introduction, projects, blogs, PHOTOS! yes, I love photography, so I will put my photos here, but I need a website to store my photos so I can use a link in the image tag, but idk which one is better :l, and the last one is a profile for more about me, like certificates and experience, something like that and I’ve done 3 pages for now (I’m really bad at deciding which final design I should use ;) ) in project, blog, and home(I’m not sure abt this one, and I will change some layout later cuz I didn’t like it) my favorite is the navigation that I made, and you need to use the TAB button then it will appear. I think that’s interesting btw, for the blog, I use Markdown. I know it’s not the best practice, but I just want to share my stories, and I use react for this project, and I’m not used to code in react and am trying to learn more thank you really"}]...
|
Title: Personal Website by @sapu | Stardance
Devl Title: Personal Website by @sapu | Stardance
Devlogs:
Hello it’s kinda late, anyway i’m posting my progress for my personal website, so i can share my experience in blog and share my favorite project, and i can organize it better, before i use bento.me for all links but suddenly the website is down so i cant acsses no more ;( THATS why i want to make my own website :D It kinda motivated me to build the project lolol. I’m trying to make a game-like UI and layout, and hopefully it looks like one. I really love this kind of UI when there are a lot of borders and outlines, like cartoon u_U, because I love games! And I want to put a lot of animation here. SORRY FOR BAD POST STRUCTURE, REALLY, I don’t know how to post devlog cleanly hehe so there are 6 pages home will appear when you enter the website, like some short introduction, projects, blogs, PHOTOS! yes, I love photography, so I will put my photos here, but I need a website to store my photos so I can use a link in the image tag, but idk which one is better :l, and the last one is a profile for more about me, like certificates and experience, something like that and I’ve done 3 pages for now (I’m really bad at deciding which final design I should use ;) ) in project, blog, and home(I’m not sure abt this one, and I will change some layout later cuz I didn’t like it) my favorite is the navigation that I made, and you need to use the TAB button then it will appear. I think that’s interesting btw, for the blog, I use Markdown. I know it’s not the best practice, but I just want to share my stories, and I use react for this project, and I’m not used to code in react and am trying to learn more thank you really
FINAL UPDATE My personal web is doneee!!! YYAYAY but I need some changes to the data. I still use dummy data to test things out (so it’s not the real one ok)
Added more data and made the design responsive! I’m having trouble fixing some elements so they fit properly on mobile, so I also cross-checked it on different phones :p
Ships:
It’s a personal also a portfolio website that I’m really proud of that I’m trying to achieve a game-like feel with the design, and the challenging part was making everything responsive and getting the layouts to work on different screen sizes while learning React :p...
|
1793008048.9678998
|
1793094448.9678998
|
|
71446
|
Slack bot by @Borg | Stardance
|
Borg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Slack bot by @Borg | Stardance
|
1793008047.2104125
|
1793612847.2104125
|
|
71445
|
My awesome macropad! by @Borg | Stardance
|
Borg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Borg | Stardance
|
1793008046.346433
|
1793612846.346433
|
|
71444
|
My own site! by @Shaimur | Stardance
|
Shaimur
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @Shaimur | Stardance
|
1793008045.4554312
|
1793612845.4554312
|
|
71443
|
My blog by @Mahmoud_Mohamed | Stardance
|
Mahmoud_Mohamed
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My blog by @Mahmoud_Mohamed | Stardance
|
1793008044.5859203
|
1793612844.5859203
|
|
71442
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1793008043.7593822
|
1793872043.7593822
|
|
71441
|
NixOS config by @zrl | Stardance
|
zrl
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: NixOS config by @zrl | Stardance
|
1793008042.4230385
|
1793612842.4230385
|
|
15016
|
jorm by @jorm | Stardance
|
jorm
|
1
|
11.0
|
178
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-05T09:17:44Z", "hours": 11.0, "multiplier": 15.54, "payout": 178, "blessing": "neutral", "text": "This project was a refresh of the website I made for myself at 14. I had to spend some time refreshing myself with the code I wrote 2 years ago, but having small things/features to add was a really fun experience. During this event I: Refreshed the bento grid with items that better reflect me right now. I replaced 2 cards with one for my MakerWorld account and one showing my music listening stats. Restyled the navbar with a translucent glass theme inspired by liquid glass. It has no background before scrolling and morphs to a blurred rounded bar when content is under it. redid the projects page to feature my 3d printing projects on MakerWorld, each complete with a link to the model itself. Overall, the site features: discord presence at my name through lanyard api (dnd/idle/online/offline) links to my github, makerworld, discord, and email makerworld stats spotify current listening or last played song music listening stats through lastfm, with options to display top albums/songs/artists tools that I use on a regular basis to do things like this haha code and cad projects command menu (cmd + k) that has a buncha actions you can do with just keyboard shortcuts. very convenient! built on nextjs, with tailwindcss and framer motion for styling. do explore the site, and I hope you like it as much as I enjoyed working on it!", "repo": "https://github.com/jormy/website", "demo": "https://jorm.vercel.app"}]...
|
[{"post_id": 76662, "ts": "202 [{"post_id": 76662, "ts": "2026-10-04T09:24:41Z", "hours": 2.1014, "text": "COMPLETELY overhauled projects page Added most of the models that I designed for 3D printing, each with their name, description, image, and MakerWorld link. Added a very cool (if i do say so myself) toggle for both “sections” that smoothly transition with Framer Motion. KNOWN ISSUES: image preview when clicking on project image is kinda broken, and images still need to be optimised by converting to webp. TODO: add model publishing date, and MakerWorld downloads"}, {"post_id": 62015, "ts": "2026-09-05T06:55:24Z", "hours": 2.0031, "text": "added music card! fetches data from my last.fm profile through the api displays top 5 artists/albums/tracks from the past week/month/6 months/year unfortunately last.fm changed their api to not fetch artist and track images, and displays a generic star image intead :( I tried to fetch artwork from MusicBrainz with the MBID from Last.fm instead, and it worked, but it was just too slow for me to be satisfied with it. skeleton loader to prevent abrupt size shifting gradient overflow indicators and buttons for scrolling smooth staggered load-in animations with framer motion i’m almost done with the first page now, next i gotta figure out what to do with the rest of the site… if you have any cool ideas lmk 🤠"}, {"post_id": 58815, "ts": "2026-08-31T12:15:30Z", "hours": 1.0103, "text": "fixed navbar and command palette! ✨ navbar at the top of the page is now sticky! added ‘pills’ behind each link that smoothly transition to each other while hovering the navbar (my fav) navbar has a frosted glass background that appears on scroll, and disappears when at the top of the page command palette now opens with cmd + k, and closes with esc or clicking outside the window new navbar looks pretty clean if i do say so myself"}, {"post_id": 58186, "ts": "2026-08-30T15:20:16Z", "hours": 2.1822, "text": "updated tools card with dynamic variants! ✨ added my phone, laptop, 3d printer, and keyboard since they’re devices i use frequently added ‘on’ and ‘off’ variants of images that change dynamically on hover added size hover effect only got 2 hours logged but i probably spent over 4h finding and editing images in affinity haha"}, {"post_id": 6729, "ts": "2026-06-11T08:26:49Z", "hours": 1.1778, "text": "working tooltips with tippy.js!"}, {"post_id": 6286, "ts": "2026-06-10T15:52:40Z", "hours": 2.9633, "text": "first time working on my old website in 2 years! took me a while to familarise myself with things I wrote at 13 lol Replaced redundant socials panel with one showing my MakerWorld statistics, fetched from a Vercel Blob since there is no official API & Cloudflare is a PITA to bypass. Next up is making some sort of script to automatically send updates to update the storage… future me problem :D"}]...
|
Title: jorm by @jorm | Stardance
Devlogs:
first t Title: jorm by @jorm | Stardance
Devlogs:
first time working on my old website in 2 years! took me a while to familarise myself with things I wrote at 13 lol Replaced redundant socials panel with one showing my MakerWorld statistics, fetched from a Vercel Blob since there is no official API & Cloudflare is a PITA to bypass. Next up is making some sort of script to automatically send updates to update the storage… future me problem :D
working tooltips with tippy.js!
updated tools card with dynamic variants! ✨ added my phone, laptop, 3d printer, and keyboard since they’re devices i use frequently added ‘on’ and ‘off’ variants of images that change dynamically on hover added size hover effect only got 2 hours logged but i probably spent over 4h finding and editing images in affinity haha
fixed navbar and command palette! ✨ navbar at the top of the page is now sticky! added ‘pills’ behind each link that smoothly transition to each other while hovering the navbar (my fav) navbar has a frosted glass background that appears on scroll, and disappears when at the top of the page command palette now opens with cmd + k, and closes with esc or clicking outside the window new navbar looks pretty clean if i do say so myself
added music card! fetches data from my last.fm profile through the api displays top 5 artists/albums/tracks from the past week/month/6 months/year unfortunately last.fm changed their api to not fetch artist and track images, and displays a generic star image intead :( I tried to fetch artwork from MusicBrainz with the MBID from Last.fm instead, and it worked, but it was just too slow for me to be satisfied with it. skeleton loader to prevent abrupt size shifting gradient overflow indicators and buttons for scrolling smooth staggered load-in animations with framer motion i’m almost done with the first page now, next i gotta figure out what to do with the rest of the site… if you have any cool ideas lmk 🤠
COMPLETELY overhauled projects page Added most of the models that I designed for 3D printing, each with their name, description, image, and MakerWorld link. Added a very cool (if i do say so myself) toggle for both “sections” that smoothly transition with Framer Motion. KNOWN ISSUES: image preview when clicking on project image is kinda broken, and images still need to be optimised by converting to webp. TODO: add model publishing date, and MakerWorld downloads
Ships:
This project was a refresh of the website I made for myself at 14. I had to spend some time refreshing myself with the code I wrote 2 years ago, but having small things/features to add was a really fun experience. During this event I: Refreshed the bento grid with items that better reflect me right now. I replaced 2 cards with one for my MakerWorld account and one showing my music listening stats. Restyled the navbar with a translucent glass theme inspired by liquid glass. It has no background before scrolling and morphs to a blurred rounded bar when content is under it. redid the projects page to feature my 3d printing projects on MakerWorld, each complete with a link to the model itself. Overall, the site features: discord presence at my name through lanyard api (dnd/idle/online/offline) links to my github, makerworld, discord, and email makerworld stats spotify current listening or last played song music listening stats through lastfm, with options to display top albums/songs/artists tools that I use on a regular basis to do things like this haha code and cad projects command menu (cmd + k) that has a buncha actions you can do with just keyboard shortcuts. very convenient! built on nextjs, with tailwindcss and framer motion for styling. do explore the site, and I hope you like it as much as I enjoyed working on it!...
|
1793005057.2363794
|
1793091457.2363794
|
|
52996
|
SatelliteTracker by @wal | Stardance
|
wal
|
1
|
25.0
|
384
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-21T19:32:53Z", "hours": 25.0, "multiplier": 15.61, "payout": 384, "blessing": "neutral", "text": "Hi everyone! I made a project called “SatelliteTracker”. So this is a cool app that tracks satellites real time built on JS and Globe.jl The project shows different satellites (not all of them, because otherwise there would be around 10 000 of them), and also can show you visible satellites based on the location you picked. The most challenging part was making it lol. The whole purpose of this project for me was to learn JS, which i for shure did, but anyways it was soo overwhelming. I am really proud of how it turned out, it looks super good, and i am proud that i commited with my idea, because now i get to show everyone this project to get a reaction like: “Yoo thats so cool!”. Apart from the jokes, i am really proud to have learned a new language and to have come out of my comfort zone. Things you should know-Starlink satellites dont always load! And also i made warnings in the console so you could see what works and what doesnt. Also, please dont refresh the page too often, otherwise celestrack will stop accepting yo requests…and you will have a looser window, you dont want that! Thank you everyone, enjoy!", "repo": "https://github.com/walterm4lon-coder/SatelliteTracker", "demo": "https://walterm4lon-coder.github.io/SatelliteTracker/"}]...
|
[{"post_id": 71899, "ts": "202 [{"post_id": 71899, "ts": "2026-09-21T18:48:20Z", "hours": 3.9111, "text": "I IMAGINED, I PROGRAMMED, I CONQUERED. The Satellite tracker might just be done! Changes!! 1. VISUALS holy hell it was harder than i expected but i made it. so i added stars, cool buttons, cool font, and allat. I am really proud of this work, because it looks really cool now 2. Loading Screen now this one is so cool, i really like how it turned out and it was pretty easy to make it. But i was honestly so tired at that point that i just wrote the first stuff that came into my mind. but i still think it turned out cool. 3. A lot of warnings! Now, for debugging, and just for sole purpose of a user, i added warnings, so when celestrack is not fetching because of extended use or its own problems (like with starlink sometimes) it just warns u and skips it. If you have reached your IP request limit to celestrack, then you will just have a longer running of loading screen and a message that you can see on the photo. (i have it because i have refreshed the page too much) AI Declaration Now in this devlog i want to also sum up how i used ai. So the sole purpose of his project was for me to learn JS, and this project was really hard for me, so i used AI of course. Mainly i used it so it gave me the general idea of the code that i should have for my ideas, and then i changed it and shaped it so that it turned out the way it did now. Also it helped me with complex tasks, like visible satellites and all the complex stuff, and, of course, debugging. But i still did it myself, and apart from doing this i was also doing a 12 hour course on JS by BroCode, shoutout to him btw! Final thoughts Well, this project was cool but waaaay harder than i expected, thats why i had to use ai. This will definitely help me in my further projects, and i am really proud of the final version. This taught me a lot, and i shure am happy to continue my journey as an engineer (i wanna be a hardware one, but for stardance its just way easier to star with software for me, so might as well learn programming too.). This is also my final project for stardance, and i am really happy. Thank you to everyone who supported me on this project, 100+ views consistently is crazy! See you somewhere in the world, the real world…"}, {"post_id": 66842, "ts": "2026-09-12T19:19:13Z", "hours": 8.8169, "text": "Stars, Satellites, and all the shiny things… Oh, wait, just satellites here.. anyways This devlog took sooo long, but now the only thing thats left is style. For now, progress: 1. All passes and Visible ones You can now see, which ones you can actually see, and which ones are blocked by earth shadow and allat. All passes ore just 0 degrees above the horizon, and visible ones are: above 10 degrees should be outside the earth shadow for us to see should be pretty dark outside should be from a group, that CelesTrack considers bright enough for us to see 2. Satellites already over u group basically the satellites that u can see already. Since those satellites are already in right time above the horizon, we dont have to wait for them, i just divide all satellites in 2 groups, where one is ones over u, and others are the ones we have to wait for, using arleadyup - true or false 3. When you click on a satellite, it actually shows it DAMNNNN I LOVE THIS FEATURE and also it shows a path. 4. 403 warning error Now, when the server answers with 403 error, for example starlink that i have some problems with, programm just skips it. 5.Camera lock in on both pages Self explainatory Plans The most important one: i might delete the starlink satellites. They just dont appear most of the time because of the server, so better drop tham so i didnt have any problems when i ship the project. Apart from that, i the only thing thats left is to add that cool style i wanted hell yeah. Thank you all if you made it so far! Sya on the next one"}, {"post_id": 62032, "ts": "2026-09-05T07:57:07Z", "hours": 6.7536, "text": "Look out of your window. Are those stars, or just satellites? Well, now you can find out, because i added the tracker page, that allows you to see, what satellites pass your selected location. I wont lie. JS is still pretty hard for me, so for this i had to use AI to help me out. But i still manage to understand almost everything from the code, so i hope its ok :) How the hell does it work? This was really tough for me to understand for the code, so for you i will make it easier. Basically, i have 2 libraries, my satellite.js, that is responsible, you guessed it, for satellites and all the info about it, and d3-geo, which is a 3d earth. When you click on the globe, the programm checks if its land or water, because i wanted it to only check satellites on land. How does it do it? Using world - atlas, that has all the coordinates of the land on the earth. If its land, then the programm for every satellite looks its way for every 30 seconds on a period of 24 hours and looks, when its going to be seen on your horizon (must be 40 degrees because of all the trees and buildings). It memorizes the first and last moment above the 40 degree mark on horizon and then it gives the results seen on the screenshot, sorted with time. Flaws, suggestions, ect. So for now it just spits out the info about sattelites, but maybe you have an idea how to make it more visual? i have no idea for now, because i dont want it to be just 60 red dots and everuthing around the point you selected. One idea i had is if you pick any sattelite of the given ones, it shows its path, but it sounds hard as hell, i may use ai again to help me… IF YOU HAVE ANY SUGGESTIONS ABOUT MY PROJECT PLEASE MENTION THEM! I WILL BE MORE THAN HAPPY TO IMPLIMENT IDEAS I LIKED!!! Of course, mentioning the suggestor. Plans Im planningin the end to add that old 90s nasa computer green/black vibe, i really am stoked to see how it will turn out. Thanks! Sorry for not devlogging earlier, was locked in on finishing the whole page"}, {"post_id": 56598, "ts": "2026-08-28T12:42:50Z", "hours": 3.9256, "text": "Wow thats hard. ##Okay, so for the progress i ve made: 1. I added A LOT of other sattelites. So now its not 1, but around 50 or 60, im not shure really. Now there are different kinds of them: -habitated ones, like ISS, Tiangong and so on, and i didnt make a limit on them because theyre the most valuable and recognisable. -CelesTrak, the brightest ones you can clearly see in the sky -GPS satellites -Starlink, but only around 20 -weather ones, like NOAA and GOES 2. every group that i named has their own color! In the future i want to make it so that you could pick only a specific group. 3. What line the satellite will follow. I believe i didnt do this on my previous devlog, anyway, i just show the line that it follows in the period of 90 mins. It goes +- 1 time around the globe, so you could see lol. yeah!"}, {"post_id": 52558, "ts": "2026-08-22T18:43:46Z", "hours": 1.2072, "text": "Started my Satellite Tracker! This project is basically tracking satellites and their orbits in real time. What have i done for now? ###1 . Connected satellite (ISS) info from celestrak. org This basically grabs the info, like name and coordinates 2. Created our planet 3. Added a dot for satellite 4. When you press on it, it spits out info about it, like speed and altitude. Im only learning JS, so i am currently using Claude to navigate me through the whole process and help me with the code, but i try to understand it very hard and i do learn!"}]...
|
Title: SatelliteTracker by @wal | Stardance
Devlo Title: SatelliteTracker by @wal | Stardance
Devlogs:
Started my Satellite Tracker! This project is basically tracking satellites and their orbits in real time. What have i done for now? ###1 . Connected satellite (ISS) info from celestrak. org This basically grabs the info, like name and coordinates 2. Created our planet 3. Added a dot for satellite 4. When you press on it, it spits out info about it, like speed and altitude. Im only learning JS, so i am currently using Claude to navigate me through the whole process and help me with the code, but i try to understand it very hard and i do learn!
Wow thats hard. ##Okay, so for the progress i ve made: 1. I added A LOT of other sattelites. So now its not 1, but around 50 or 60, im not shure really. Now there are different kinds of them: -habitated ones, like ISS, Tiangong and so on, and i didnt make a limit on them because theyre the most valuable and recognisable. -CelesTrak, the brightest ones you can clearly see in the sky -GPS satellites -Starlink, but only around 20 -weather ones, like NOAA and GOES 2. every group that i named has their own color! In the future i want to make it so that you could pick only a specific group. 3. What line the satellite will follow. I believe i didnt do this on my previous devlog, anyway, i just show the line that it follows in the period of 90 mins. It goes +- 1 time around the globe, so you could see lol. yeah!
Look out of your window. Are those stars, or just satellites? Well, now you can find out, because i added the tracker page, that allows you to see, what satellites pass your selected location. I wont lie. JS is still pretty hard for me, so for this i had to use AI to help me out. But i still manage to understand almost everything from the code, so i hope its ok :) How the hell does it work? This was really tough for me to understand for the code, so for you i will make it easier. Basically, i have 2 libraries, my satellite.js, that is responsible, you guessed it, for satellites and all the info about it, and d3-geo, which is a 3d earth. When you click on the globe, the programm checks if its land or water, because i wanted it to only check satellites on land. How does it do it? Using world - atlas, that has all the coordinates of the land on the earth. If its land, then the programm for every satellite looks its way for every 30 seconds on a period of 24 hours and looks, when its going to be seen on your horizon (must be 40 degrees because of all the trees and buildings). It memorizes the first and last moment above the 40 degree mark on horizon and then it gives the results seen on the screenshot, sorted with time. Flaws, suggestions, ect. So for now it just spits out the info about sattelites, but maybe you have an idea how to make it more visual? i have no idea for now, because i dont want it to be just 60 red dots and everuthing around the point you selected. One idea i had is if you pick any sattelite of the given ones, it shows its path, but it sounds hard as hell, i may use ai again to help me… IF YOU HAVE ANY SUGGESTIONS ABOUT MY PROJECT PLEASE MENTION THEM! I WILL BE MORE THAN HAPPY TO IMPLIMENT IDEAS I LIKED!!! Of course, mentioning the suggestor. Plans Im planningin the end to add that old 90s nasa computer green/black vibe, i really am stoked to see how it will turn out. Thanks! Sorry for not devlogging earlier, was locked in on finishing the whole page
Stars, Satellites, and all the shiny things… Oh, wait, just satellites here.. anyways This devlog took sooo long, but now the only thing thats left is style. For now, progress: 1. All passes and Visible ones You can now see, which ones you can actually see, and which ones are blocked by earth shadow and allat. All passes ore just 0 degrees above the horizon, and visible ones are: above 10 degrees should be outside the earth shadow for us to see should be pretty dark outside should be from a group, that CelesTrack considers bright enough for us to see 2. Satellites already over u group basically the satellites that u can see already. Since those satellites are already in right time above the horizon, we dont have to wait for them, i just divide all satellites in 2 groups, where one is ones over u, and others are the ones we have to wait for, using arleadyup - true or false 3. When you click on a satellite, it actually shows it DAMNNNN I LOVE THIS FEATURE and also it shows a path. 4. 403 warning error Now, when the server answers with 403 error, for example starlink that i have some problems with, programm just skips it. 5.Camera lock in on both pages Self explainatory Plans The most important one: i might delete the starlink satellites. They just dont appear most of the time because of the server, so better drop tham so i didnt have any problems when i ship the project. Apart from that, i the only thing thats left is to add that cool style i wanted hell yeah. Thank you all if you made it so far! Sya on the next one
I IMAGINED, I PROGRAMMED, I CONQUERED. The Satellite tracker might just be done! Changes!! 1. VISUALS holy hell it was harder than i expected but i made it. so i added stars, cool buttons, cool font, and allat. I am really proud of this work, because it looks really cool now 2. Loading Screen now this one is so cool, i really like how it turned out and it was pretty easy to make it. But i was honestly so tired at that point that i just wrote the first stuff that came into my mind. but i still think it turned out cool. 3. A lot of warnings! Now, for debugging, and just for sole purpose of a user, i added warnings, so when celestrack is not fetching because of extended use or its own problems (like with starlink sometimes) it just warns u and skips it. If you have reached your IP request limit to celestrack, then you will just have a longer running of loading screen and a message that you can see on the photo. (i have it because i have refreshed the page too much) AI Declaration Now in this devlog i want to also sum up how i used ai. So the sole purpose of his project was for me to learn JS, and this project was really hard for me, so i used AI of course. Mainly i used it so it gave me the general idea of the code that i should have for my ideas, and then i changed it and shaped it so that it turned out the way it did now. Also it helped me with complex tasks, like visible satellites and all the complex stuff, and, of course, debugging. But i still did it myself, and apart from doing this i was also doing a 12 hour course on JS by BroCode, shoutout to him btw! Final thoughts Well, this project was cool but waaaay harder than i expected, thats why i had to use ai. This will definitely help me in my further projects, and i am really proud of the final version. This taught me a lot, and i shure am happy to continue my journey as an engineer (i wanna be a hardware one, but for stardance its just way easier to star with software for me, so might as well learn programming too.). This is also my final project for stardance, and i am really happy. Thank you to everyone who supported me on this project, 100+ views consistently is crazy! See you somewhere in the world, the real world…
Ships:
Hi everyone! I made a project called “SatelliteTracker”. So this is a cool app that tracks satellites real time built on JS and Globe.jl The project shows different satellites (not all of them, because otherwise there would be around 10 000 of them), and also can show you visible satellites based on the location you picked. The most challenging part was making it lol. The whole purpose of this project for me was to learn JS, which i for shure did, but anyways it was soo overwhelming. I am really proud of how it turned out, it looks super good, and i am proud that i commited with my idea, because now i get to show everyone this project to get a reaction like: “Yoo thats so cool!”. Apart from the jokes, i am really proud to have learned a new language and to have come out of my comfort zone. Things you should know-Starlink satellites dont always load! And also i made warnings in the console so you could see what works and what doesnt. Also, please dont refresh the page too often, otherwise celestrack will stop accepting yo requests…and you will have a looser window, you dont want that! Thank you everyone, enjoy!...
|
1793005056.084455
|
1793091456.084455
|
|
52974
|
B.T.T! Defense by @Overlodegamer | Stardance
|
Overlodegamer
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-23T22:35:31Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I am making a computer vison AI tracking desk turret! hope you like it, this phase is just the AI and computer vison code but I plan on making the hardware soon after submitting for funding!", "repo": "https://github.com/Brocadile7/B.D.T", "demo": "https://github.com/Brocadile7/B.D.T/releases/latest"}]...
|
[{"post_id": 72432, "ts": "202 [{"post_id": 72432, "ts": "2026-09-22T22:50:46Z", "hours": 2.1758, "text": "Computer vision turret prototype that tracks people in real time using YOLOv8. Chest‑aiming, sticky tracking, and red‑hat filtering included (so you can put on a red cap and not be shot!). Just the body tracking right now but i plan on making the full turret soon!"}, {"post_id": 68895, "ts": "2026-09-15T23:55:56Z", "hours": 1.9931, "text": "I’m working on making a body tracking defense turret! (Still coding so no images of it yet!)"}]...
|
Title: B.T.T! Defense by @Overlodegamer | Stardanc Title: B.T.T! Defense by @Overlodegamer | Stardance
Devlogs:
I’m working on making a body tracking defense turret! (Still coding so no images of it yet!)
Computer vision turret prototype that tracks people in real time using YOLOv8. Chest‑aiming, sticky tracking, and red‑hat filtering included (so you can put on a red cap and not be shot!). Just the body tracking right now but i plan on making the full turret soon!
Ships:
I am making a computer vison AI tracking desk turret! hope you like it, this phase is just the AI and computer vison code but I plan on making the hardware soon after submitting for funding!...
|
1793005055.198129
|
1793091455.198129
|
|
57999
|
Guaraná Horizon by @vexith | Stardance
|
vexith
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-30T11:52:46Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a plane simulation game inspired by star fox. it has support for windows and linux", "repo": "https://github.com/Vexith/Guarana-Horizon", "demo": "https://github.com/Vexith/Guarana-Horizon/releases"}]...
|
[{"post_id": 75533, "ts": "202 [{"post_id": 75533, "ts": "2026-09-30T11:51:10Z", "hours": 4.8189, "text": "devlog #7 => added bots and tweaked physics physics of the airplane tweaked due to a bug that kept the plane rising up. added bot AI started to implement the weapons system currently i plan to add multiplayer support and sound"}, {"post_id": 73599, "ts": "2026-09-25T13:22:36Z", "hours": 4.4992, "text": "devlog #6 -> rewritten camera system and 3d model rendering new rewritten camera system without the mouse, based on chase camera method using currently this 3d model . all credits to designer soup added obj mesh rendering of the plane added rendering different plane colors currently i plan to add enemys, projectiles and multiplayer support"}, {"post_id": 72245, "ts": "2026-09-22T14:59:23Z", "hours": 9.6628, "text": "devlog #5 => better physics engine and new rendering method on this devlog, i added better physics more focused in gameplay (still not perfect but better than before) added flat shading with directional light added new physics engine added restriction to not go above floor currently, i plan to add enemys, projectiles for the plane, 3D model of the plane, be able to switch the plane."}, {"post_id": 69176, "ts": "2026-09-16T15:16:32Z", "hours": 5.4231, "text": "devlog #4 => rendering the plane and controlling it in this devlog, i finally got the plane rendering properly and responding clearly the controls without getting the velocity infinite. added green lines on the ground to make it like 3D currently, it has the simple static camera following the plane, but in the future it will be variable, to give the sense of the plane moving and not only the background. i added input ramping for the keyboard controls to give fluidity to the plane (previously it look like that the plane was moving too fast). i switched from the Euler angles to quaternions, because in the euler angles, when pitch reaches +/- 90 degrees yaw and roll become the same degree of freedom and the representation breaks. currently, i plan to add enemys, projectiles for the plane and multiplayer support, maybe custom planes."}, {"post_id": 68056, "ts": "2026-09-14T13:16:38Z", "hours": 2.085, "text": "devlog #3 => rendering now the game has a basic SDL3 window and renderer, i replaced the old keyboard input (get async keystate) with SDL3 events, connecting pitch, yaw, roll and throttle controls. its still just a triangle with controls for now, but finally it’s taking shape now ( https://imgur.com/a/D3RhBLy )"}, {"post_id": 67060, "ts": "2026-09-13T03:20:08Z", "hours": 1.6633, "text": "devlog #2 => from simulation to flight from this devlog, i started turning the flight simulation into something actually controllable, i added a separate input system for pitch, yaw, roll and throttle, keeping the controls independent from the aircraft physics. its still running in the console for now, but the aircraft can finally respond to player input. for the next devlog, i want to implement rendering and camera ( https://imgur.com/a/xCKDbTZ ) for gif"}, {"post_id": 64487, "ts": "2026-09-08T22:22:37Z", "hours": 3.1472, "text": "devlog #1 - starting GuaranaHorizon i’ve started working on Guarana Horizon, a multiplayer flight game inspired by star fox. im making it from scratch in C, without using a game engine. right now im mainly focused on getting the aircraft physics working before moving on to graphics and gameplay. in the beginning, the physics engine kept becoming unstable and eventually getting the values to extraordinay values out of reality but now the aircraft can now accelerate, generate lift, climb and experience drag and gravity without the simulation spitting nonsense. now it only runs tests programs to check if the physics is alright. next i want to add actual flight controls (WASD) and then start working on rendering (probably SDL2)."}]...
|
Title: Guaraná Horizon by @vexith | Stardance
Dev Title: Guaraná Horizon by @vexith | Stardance
Devlogs:
devlog #1 - starting GuaranaHorizon i’ve started working on Guarana Horizon, a multiplayer flight game inspired by star fox. im making it from scratch in C, without using a game engine. right now im mainly focused on getting the aircraft physics working before moving on to graphics and gameplay. in the beginning, the physics engine kept becoming unstable and eventually getting the values to extraordinay values out of reality but now the aircraft can now accelerate, generate lift, climb and experience drag and gravity without the simulation spitting nonsense. now it only runs tests programs to check if the physics is alright. next i want to add actual flight controls (WASD) and then start working on rendering (probably SDL2).
devlog #2 => from simulation to flight from this devlog, i started turning the flight simulation into something actually controllable, i added a separate input system for pitch, yaw, roll and throttle, keeping the controls independent from the aircraft physics. its still running in the console for now, but the aircraft can finally respond to player input. for the next devlog, i want to implement rendering and camera ( https://imgur.com/a/xCKDbTZ ) for gif
devlog #3 => rendering now the game has a basic SDL3 window and renderer, i replaced the old keyboard input (get async keystate) with SDL3 events, connecting pitch, yaw, roll and throttle controls. its still just a triangle with controls for now, but finally it’s taking shape now ( https://imgur.com/a/D3RhBLy )
devlog #4 => rendering the plane and controlling it in this devlog, i finally got the plane rendering properly and responding clearly the controls without getting the velocity infinite. added green lines on the ground to make it like 3D currently, it has the simple static camera following the plane, but in the future it will be variable, to give the sense of the plane moving and not only the background. i added input ramping for the keyboard controls to give fluidity to the plane (previously it look like that the plane was moving too fast). i switched from the Euler angles to quaternions, because in the euler angles, when pitch reaches +/- 90 degrees yaw and roll become the same degree of freedom and the representation breaks. currently, i plan to add enemys, projectiles for the plane and multiplayer support, maybe custom planes.
devlog #5 => better physics engine and new rendering method on this devlog, i added better physics more focused in gameplay (still not perfect but better than before) added flat shading with directional light added new physics engine added restriction to not go above floor currently, i plan to add enemys, projectiles for the plane, 3D model of the plane, be able to switch the plane.
devlog #6 -> rewritten camera system and 3d model rendering new rewritten camera system without the mouse, based on chase camera method using currently this 3d model . all credits to designer soup added obj mesh rendering of the plane added rendering different plane colors currently i plan to add enemys, projectiles and multiplayer support
devlog #7 => added bots and tweaked physics physics of the airplane tweaked due to a bug that kept the plane rising up. added bot AI started to implement the weapons system currently i plan to add multiplayer support and sound
Ships:
i made a plane simulation game inspired by star fox. it has support for windows and linux...
|
1793005054.0438583
|
1793091454.0438583
|
|
57952
|
CodeWare by @tyleruploads | Stardance
|
tyleruploads
|
1
|
51.0
|
1013
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-06T21:03:58Z", "hours": 51.0, "multiplier": 16.45, "payout": 1013, "blessing": "neutral", "text": "I created CodeWare, a WarioWare-style video game where you have to complete various minigames, written in Godot. I originally had it under the WarioWare game mission, but I eventually decided I should detach it from it due to the sheer complexity of this game, which is way above the beginner mission. In the game, players are put through what is currently 12 minigames. Each minigame has a strict timer limit, whether it be losing a life or progressing to the next minigame once it strikes 0. In case you are confused, the way they win a life at the end is if the purpose of the minigame is to survive a certain amount of time against computer-generated obstacles, like arrows or orbs (essentially meteors). The very interesting thing about this game is the two endings: the ending you get when you complete all the minigames with lives to spare, and the one when you lose all of your five lives. These endings, which I will not explain in detail (so it is not spoiled for you!), highlight the eternity of automatically generated code files. The opening scene of the game is the Tyleruploads Mountain Range, which shows many mountains connected via bridges. The suspension for those bridges is the game’s logo turned into a bunch of small links. Metaphysically, the game’s goal is to cross these bridges. Many parts of this project were extremely challenging for me. For one, I had never set foot in Godot at all before embarking on this project. I was also a complete newcomer to any sort of game development. I encountered many errors caused by my being just introduced to GDScript and game development, such as not knowing that scripts continue after changing the scene, the absence of a deferred call causing the game to go completely grey, losing a lot of work in video editing software while making the gameplay trailer video, and many more small and large things. In every ship message for prior Stardance projects, I have said something like “Wow! Before I started, I really didn’t think I could do something this complex. I really just transformed my coding abilities.” But this time, I am not going to repeat that basic fib without any supporting arguments. My previous Stardance projects were nowhere near this length. So, I would like to make a new claim now. That claim is that while I have not become a completely new developer or graphic designer or anything, I have dipped into a new path of development that I will have the choice to either continue to pursue or to reap the benefits of the mindset associated with it as I enter high school. For these reasons, along with the fact that I was able to sit down and write quality code for one project for 51 hours, I am very proud of myself. My viewpoint of “sit down and make a decent project and leave it” has been greatly diminished outside of specific contexts.", "repo": "https://github.com/tyleruploads/code-ware", "demo": "https://tyleruploads.itch.io/codeware"}]...
|
[{"post_id": 77174, "ts": "202 [{"post_id": 77174, "ts": "2026-10-05T22:22:21Z", "hours": 1.2811, "text": "This marks v1.0.0! This is my FINAL devlog for CodeWare (at least the first ship)! It has really been a great project that has significantly pushed what I think about my development capabilities. But I will explain that more in the ship message! The main change made over the time of this devlog was a complete revamp of the README! Here is a summary of the changes made to it: The following shields have been added: Play on GitHub Pages, Made with Godot, GitHub Release (version number), and GitHub Commit Activity The hero image near the top of the README, depicting the title screen, has been replaced with a gameplay video for the game, with a hero of minigame 6 (Unintelligent Arrows) The minigames section has been moved to near the bottom of the README to make the start of the README a better hook. And the minigame descriptions and hero images inside the section have been put inside a spoiler notice, so the game can not be easily spoiled for players. And the hero images in the minigame section have been converted from Markdown tags to HTML tags in order to enforce a specific width."}, {"post_id": 76860, "ts": "2026-10-04T21:10:06Z", "hours": 2.3425, "text": "This will be one of my very last devlogs before I ship CodeWare! I just created the gameplay trailer, which is a huge accomplishment! This is my first time making any sort of video for anything I make in the computer world, and I think it actually turned out very well! The video shows potential players what the game will look like and gives a glimpse of its unexpected win-and-lose endings. I also put the video on the game’s Itch.io page, which will be made public very soon. You can view the video on YouTube here: CodeWare - Official Gameplay Video"}, {"post_id": 75987, "ts": "2026-10-01T21:19:32Z", "hours": 0.7008, "text": "I just created the twelfth mingame of CodeWare, “Catch the Falling Orbs!” In it, you have 45 seconds to catch 35 falling orbs by moving left and right with your keyboard."}, {"post_id": 75387, "ts": "2026-09-29T22:05:18Z", "hours": 1.7511, "text": "In the Newspaper department at my summer sleepaway camp this year, they always said, “If the number is less than 11, spell it out.” CodeWare has officially surpassed this guideline in the number of its minigames. Minigame 11 of CodeWare is titled “Type the Strings,” and players must type 15 five-character strings provided to them in less than one minute. The string is generated from a pool of characters with lookalikes (i.e., Z and 2, S and 5, O and 0, I and l, etc.) removed to ensure it is completely fair for the user. This was definitely one of the easier minigames to code, but it wasn’t the easiest thing ever. I still ran into some issues, like the vertical alignment of a RichTextLabel being a bit too low when dynamically updating its content in GDScript to show a custom notice to the user (I fixed it by changing it to a normal Label, after troubleshooting for way too long)."}, {"post_id": 74691, "ts": "2026-09-28T00:28:50Z", "hours": 3.545, "text": "I just did a lot of asset updating and linting! The part I think would be most interesting to you is obviously the asset updates. I changed the assets in Minigame 1, 3, 4, and 9! I also updated the gallery, accessible in the extras menu, to include new assets I’ve forgotten to put in there for a while now. I’ll just show you how minigame one looks now; no need for a detailed explanation of everything. Now, I have to address the boring part, which took most of the three and a half hours. That would be linting! It’s pretty self-explanatory: I went through and made the scenes and scripts adhere to style guidelines."}, {"post_id": 74561, "ts": "2026-09-27T17:10:27Z", "hours": 2.3617, "text": "I just made the tenth minigame for CodeWare! It is named “RGB Skills.” In the minigame, there are two colors: one generated automatically by the code, and one controlled by manual RGB Sliders. It validates the user’s guess using the GDScript method Vector3.distance_to() . The method uses the 3D Pythagorean theorem to calculate the Euclidean Distance between the RGB values, as if they were plotted in a 3D space. This works because the red value represents the x-axis, the green value represents the y-axis, and the blue value represents the z-axis on a 3D graph. This was very interesting for me to discover, since I only learned the 2D Pythagorean theorem last year (in seventh grade). The game also starts the sliders at the furthest possible points from the target color, which makes the minigame harder. If the player clicks the submit button without making any changes, they will not pass. And yes, I know they could easily invert the colors to find the right one. The only thing is, they probably didn’t read this devlog. So, they’ll have no clue of the fact the sliders were placed at the inversion of the target color."}, {"post_id": 74200, "ts": "2026-09-26T22:13:25Z", "hours": 2.3222, "text": "I just made the ninth minigame for CodeWare, “The Maze!” In the minigame, the user needs to get to the center of the maze in less than 18 seconds! They move a mini tyleruploads texture with arrow keys and WASD to eventually get to the bigger one in the middle! I had a lot of trouble with physics here, hence the 2 hours! And, I’ve never made any sort of maze before, so this is a first!"}, {"post_id": 74111, "ts": "2026-09-26T18:21:01Z", "hours": 1.9775, "text": "I just made version v0.14.0 of CodeWare! In this version, I added the eighth minigame, “Choose the Boxes!” The user has 30 seconds to choose 20 boxes by clicking on the one matching the color of the center box. I also went through and removed unnecessary log statements and unused variables."}, {"post_id": 72912, "ts": "2026-09-24T00:48:33Z", "hours": 2.9286, "text": "I just released version v0.13.0 of CodeWare! In this version, I have completely changed the sound environment of the game! I will explain it with two basic pseudocode (or Python) logic statements! prev_sound = sound in v0.12.0 curr_sound = sound in v0.13.0 print(prev_sound, curr_sound) # False, True What I’m trying to illustrate here is that there was absolutely no sound before, and now there is! There is a background ticking noise playing (forever) through an autoload and sound effects corresponding to in-minigame events. Feel free to test it at https://tyleruploads.itch.io/codeware?secret=CDZUB2MTxYCmNQ70VRagItDLSTg ! Send any feedback in the comments!"}, {"post_id": 71345, "ts": "2026-09-20T17:48:01Z", "hours": 0.7083, "text": "I just made two new assets for CodeWare! They are the players in minigames 4 and 6. Here is a photo of one of them."}, {"post_id": 70807, "ts": "2026-09-19T19:51:11Z", "hours": 0.8956, "text": "After receiving feedback from the Hack Club community, I have made these changes to CodeWare. The icon has been updated to increase contrast and to look better at small resolutions Minigame 6, “Unintelligent Arrows,” has been balanced to be easier for users to complete WASD Movement has been added to all games Support for held jumps has been added to the first minigame, “Orb Collection Platformer” An ambiguity in the README about the objective has been corrected"}, {"post_id": 70237, "ts": "2026-09-18T19:29:20Z", "hours": 0.94, "text": "I just balanced minigame 6, “Unintelligent Arrows,” after feedback from Hack Club members. I made users have more time to react before getting hit by the arrows. I have not released this update yet; once I apply some other suggestions from the community, I will release it as v0.11.0."}, {"post_id": 69877, "ts": "2026-09-17T23:54:31Z", "hours": 2.5408, "text": "I just created the sixth minigame, “Unintelligent Arrows,” in CodeWare! In the minigame, users have to dodge countless arrows that are described as unintelligent purely based on their inability to change paths once shot. If you weren’t already guessing, I am planning on making an intelligent-arrow-themed minigame in the future, possibly inspired by 1948 in some ways. This game is actually getting nice and long, way longer than I thought it would be at the start. When I shared it with people a while ago, it was very short. Now, it’s decently long! Once I add a lot more minigames, I will consider making them go in random order and giving them difficulty tags to determine when they should be shown."}, {"post_id": 69387, "ts": "2026-09-16T23:12:21Z", "hours": 1.0319, "text": "I just completely refactored, everything! I made many new directories in order to organize the entire repository much better! This took an hour because of the debugging and other related changes to the code associated with a complete structural refactor. It definitely was not a calm, easy hour."}, {"post_id": 69337, "ts": "2026-09-16T20:42:37Z", "hours": 2.45, "text": "I just added two minigames to CodeWare! The first minigame I just added, minigame 4, titled “Dodge the Flying Balls,” has users dodge flying balls (referred to as meteors in the code) for 45 seconds. Each hit takes away 10% of the user’s health. It can actually be pretty hard. A good strategy to stay alive is moving from side to side and never stopping, because there are really fast ones that come before you can even react. The second minigame I just added, minigame 5, titled “Click Very Fast,” has the user click on a big circular button in the middle 100 times in less than 20 seconds. I have tested it many times, and it is just the right time (at least for now). You can play the game at https://tyleruploads.github.io/code-ware/"}, {"post_id": 68302, "ts": "2026-09-14T21:48:29Z", "hours": 0.3142, "text": "This is a short one! I just integrated it with the Itch.io Butler API, so it will automatically update its Itch.io game whenever I make a new release! Currently, it is a draft on Itch.io. You can view the draft at https://tyleruploads.itch.io/codeware?secret=CDZUB2MTxYCmNQ70VRagItDLSTg . Sometime before I ship, I will make the Itch.io page public, which may bring in some players."}, {"post_id": 67752, "ts": "2026-09-14T00:02:19Z", "hours": 0.4536, "text": "I just put CodeWare on GitHub pages! You can view it at https://tyleruploads.github.io/code-ware/ ! I also upped the time for a minigame after a web playtest determined the amount of time given was not enough to complete the task at hand."}, {"post_id": 66971, "ts": "2026-09-12T23:32:31Z", "hours": 1.4353, "text": "I just added the third minigame to CodeWare! It is titled “Hit the Circles.” In the minigame, you start with a balance of -15, and each circle you hit, you get +1 balance! It is kindove like Whack-a-Mole (don’t sue me Mattel.) This marks version 0.6.0 of the game!"}, {"post_id": 66187, "ts": "2026-09-11T21:03:31Z", "hours": 1.0183, "text": "I just made some nice changes to CodeWare! I added pause, unpause, and reset functionality. This was in the README as coming soon for a while. I relocated script locations and removed ambiguity from a script named ‘self_timer.gd’ by renaming it ‘minigame_1_timer.gd,’ which makes it not look wrong when next to ‘minigame_2_timer.gd.’ And, I added the version number to the title menu!"}, {"post_id": 65647, "ts": "2026-09-10T22:37:05Z", "hours": 8.2886, "text": "Wow! 8 hours is a lot of time! Here’s what I did! Create all new assets. I made a new icon and background for the title screen and both minigames. The icon features an infinity symbol cut in half but connected with the parts in between them in a bit of a 3D-like arrangement, symbolizing two sides of eternity connected by small paths. The first minigame background and the title scene background contain a mountain range, a sunset, and one or multiple bridges. The second minigame background is two eyes in many perfectly aligned rectangles. Make death scene. Previously, I only had a win screen in the game (a very anticlimactic one at best, in a purposeful way). Now, I added a death scene too! The death scene links with the idea of the two sides of eternity (or infinity) connected by a small path because the user is showed specific text by automatic vertical scrolling, then they click a button to get thrown right back to the first minigame, as if nothing happened. They can do this as many times as they want; the bridges between the two halves of eternity represented by infinity are very strong, the same bridges connecting the mountains. Replace unused settings button with extras. The main menu used to contain a button labeled “Settings,” which would take the user to a blank scene with no way to get back. It has now been replaced with an “Extras” button, which contains an Asset Gallery that allows users to look at the beautiful game assets and obviously, a credits section. Universal back buttons. Now, users can always get back to some point in the game (including the title screen), even if they are in the infinite end scene."}, {"post_id": 63976, "ts": "2026-09-08T02:12:04Z", "hours": 2.1261, "text": "I JUST MADE THE END SCENE! It is very complex. But, I can’t spoil it! Here’s the code. It’s your choice to go line by line and spoil it for yourself."}, {"post_id": 63904, "ts": "2026-09-07T22:50:03Z", "hours": 0.75, "text": "Well, that was very silly. I spent 45 minutes adding automatic cross-compilation via GitHub actions! The main issue was: macOS! I now officially hate macOS. I essentially spent 12 commits trying to fix macOS, and 1 commit removing macOS. The commits mentioning Windows or Linux? They were never the issue. It was only macOS. Heres my commit history for this devlog: Add basic src/export_presets.cfg 1 file changed, 431 insertions(+) Make publishing workflow to compile 1 file changed, 66 insertions(+) Fix Linux export in export_presets.cfg to work with workflow 1 file changed, 2 insertions(+), 2 deletions(-) Set project directory in workflow 1 file changed, 4 insertions(+), 4 deletions(-) Remove export_path for windows in export_presents.cfg to fix CI/CD 1 file changed, 1 insertion(+), 1 deletion(-) Hopefully fixes CI/CD 1 file changed, 6 insertions(+), 9 deletions(-) Make macOS only support x86_64 to fix CI/CD issue 1 file changed, 2 insertions(+), 2 deletions(-) Add bundle identifier for macOS (why does it have to be such a pain?) 1 file changed, 2 insertions(+), 2 deletions(-) The mac strikes back: import ETC2 ASTC compession for macOS 1 file changed, 1 insertion(+) Add initial project import step to CI/CD 1 file changed, 4 insertions(+) Cd into src before initializing godot 2 files changed, 2 insertions(+), 1 deletion(-) Remove cding into src and add export_templates_path 1 file changed, 5 insertions(+), 1 deletion(-) The mac struck back yet again: emancipated 1 file changed, 1 insertion(+), 4 deletions(-) I rebased it to “Add support for every OS; remove support for macOS (it struck back, like starwars)”"}, {"post_id": 63853, "ts": "2026-09-07T20:42:56Z", "hours": 2.5025, "text": "This is going to be my second to last devlog before I ship, assuming everything goes well! In these two and a half hours, I did SO MANY THINGS! The most obvious change has to be how I added the second minigame, the clicker! In the minigame, you have 12 seconds to collect 18 tyleruploads circles! Each circle is randomly placed on the screen, which makes it so you can’t just memorize it! I also added a license to the project. It contains five sections for different types of content. And, I updated the SECURITY.md so it is completed. Another nice thing I added is action and description messages before each minigame. It tells the player what to do, so they aren’t losing any time when it starts! I also fixed the text it shows you when you win, before it takes you to the win screen I am going to make soon. I also revamped the README! It is way better now! Check out the README on GitHub if you want! I also set up and configured GitHub Discussions!"}, {"post_id": 62147, "ts": "2026-09-05T12:25:32Z", "hours": 0.2619, "text": "I just did some play testing, added some comments, and made a basic README! Nothing much!"}, {"post_id": 61866, "ts": "2026-09-05T00:12:04Z", "hours": 6.3597, "text": "I just created the basic blueprint for my very own WarioWare style video game, CodeWare! In CodeWare, you are playing as GitHub, and for the first minigame, you are trying to capture 7 of me (that’s just a nice image I had available—I might consider changing it later). The time constraints are actually pretty balanced, you’ll generally finish right in the nick of time. There is still a lot more remaining. The reason there was so much time in this devlog is because of error correction. This is my first time using Godot—everything’s not meant to be correct the first time around. A lot of the error correction was silly stuff like scaling, timer pixelation, text getting cropped off (without me knowing), and etc. You jump on those little box thingeys to get to the mini-mes in order to collect. In order to get to the one near the big wall barrier, you need to make a big jump from one near it (NOT TO THE RIGHT!!). And, once you go to get the last ones on the very right, there’s no coming out! Hopefully, you got the other ones first!"}]...
|
Title: CodeWare by @tyleruploads | Stardance
Devl Title: CodeWare by @tyleruploads | Stardance
Devlogs:
I just created the basic blueprint for my very own WarioWare style video game, CodeWare! In CodeWare, you are playing as GitHub, and for the first minigame, you are trying to capture 7 of me (that’s just a nice image I had available—I might consider changing it later). The time constraints are actually pretty balanced, you’ll generally finish right in the nick of time. There is still a lot more remaining. The reason there was so much time in this devlog is because of error correction. This is my first time using Godot—everything’s not meant to be correct the first time around. A lot of the error correction was silly stuff like scaling, timer pixelation, text getting cropped off (without me knowing), and etc. You jump on those little box thingeys to get to the mini-mes in order to collect. In order to get to the one near the big wall barrier, you need to make a big jump from one near it (NOT TO THE RIGHT!!). And, once you go to get the last ones on the very right, there’s no coming out! Hopefully, you got the other ones first!
I just did some play testing, added some comments, and made a basic README! Nothing much!
This is going to be my second to last devlog before I ship, assuming everything goes well! In these two and a half hours, I did SO MANY THINGS! The most obvious change has to be how I added the second minigame, the clicker! In the minigame, you have 12 seconds to collect 18 tyleruploads circles! Each circle is randomly placed on the screen, which makes it so you can’t just memorize it! I also added a license to the project. It contains five sections for different types of content. And, I updated the SECURITY.md so it is completed. Another nice thing I added is action and description messages before each minigame. It tells the player what to do, so they aren’t losing any time when it starts! I also fixed the text it shows you when you win, before it takes you to the win screen I am going to make soon. I also revamped the README! It is way better now! Check out the README on GitHub if you want! I also set up and configured GitHub Discussions!
Well, that was very silly. I spent 45 minutes adding automatic cross-compilation via GitHub actions! The main issue was: macOS! I now officially hate macOS. I essentially spent 12 commits trying to fix macOS, and 1 commit removing macOS. The commits mentioning Windows or Linux? They were never the issue. It was only macOS. Heres my commit history for this devlog: Add basic src/export_presets.cfg 1 file changed, 431 insertions(+) Make publishing workflow to compile 1 file changed, 66 insertions(+) Fix Linux export in export_presets.cfg to work with workflow 1 file changed, 2 insertions(+), 2 deletions(-) Set project directory in workflow 1 file changed, 4 insertions(+), 4 deletions(-) Remove export_path for windows in export_presents.cfg to fix CI/CD 1 file changed, 1 insertion(+), 1 deletion(-) Hopefully fixes CI/CD 1 file changed, 6 insertions(+), 9 deletions(-) Make macOS only support x86_64 to fix CI/CD issue 1 file changed, 2 insertions(+), 2 deletions(-) Add bundle identifier for macOS (why does it have to be such a pain?) 1 file changed, 2 insertions(+), 2 deletions(-) The mac strikes back: import ETC2 ASTC compession for macOS 1 file changed, 1 insertion(+) Add initial project import step to CI/CD 1 file changed, 4 insertions(+) Cd into src before initializing godot 2 files changed, 2 insertions(+), 1 deletion(-) Remove cding into src and add export_templates_path 1 file changed, 5 insertions(+), 1 deletion(-) The mac struck back yet again: emancipated 1 file changed, 1 insertion(+), 4 deletions(-) I rebased it to “Add support for every OS; remove support for macOS (it struck back, like starwars)”
I JUST MADE THE END SCENE! It is very complex. But, I can’t spoil it! Here’s the code. It’s your choice to go line by line and spoil it for yourself.
Wow! 8 hours is a lot of time! Here’s what I did! Create all new assets. I made a new icon and background for the title screen and both minigames. The icon features an infinity symbol cut in half but connected with the parts in between them in a bit of a 3D-like arrangement, symbolizing two sides of eternity connected by small paths. The first minigame background and the title scene background contain a mountain range, a sunset, and one or multiple bridges. The second minigame background is two eyes in many perfectly aligned rectangles. Make death scene. Previously, I only had a win screen in the game (a very anticlimactic one at best, in a purposeful way). Now, I added a death scene too! The death scene links with the idea of the two sides of eternity (or infinity) connected by a small path because the user is showed specific text by automatic vertical scrolling, then they click a button to get thrown right back to the first minigame, as if nothing happened. They can do this as many times as they want; the bridges between the two halves of eternity represented by infinity are very strong, the same bridges connecting the mountains. Replace unused settings button with extras. The main menu used to contain a button labeled “Settings,” which would take the user to a blank scene with no way to get back. It has now been replaced with an “Extras” button, which contains an Asset Gallery that allows users to look at the beautiful game assets and obviously, a credits section. Universal back buttons. Now, users can always get back to some point in the game (including the title screen), even if they are in the infinite end scene.
I just made some nice changes to CodeWare! I added pause, unpause, and reset functionality. This was in the README as coming soon for a while. I relocated script locations and removed ambiguity from a script named ‘self_timer.gd’ by renaming it ‘minigame_1_timer.gd,’ which makes it not look wrong when next to ‘minigame_2_timer.gd.’ And, I added the version number to the title menu!
I just added the third minigame to CodeWare! It is titled “Hit the Circles.” In the minigame, you start with a balance of -15, and each circle you hit, you get +1 balance! It is kindove like Whack-a-Mole (don’t sue me Mattel.) This marks version 0.6.0 of the game!
I just put CodeWare on GitHub pages! You can view it at https://tyleruploads.github.io/code-ware/ ! I also upped the time for a minigame after a web playtest determined the amount of time given was not enough to complete the task at hand.
This is a short one! I just integrated it with the Itch.io Butler API, so it will automatically update its Itch.io game whenever I make a new release! Currently, it is a draft on Itch.io. You can view the draft at https://tyleruploads.itch.io/codeware?secret=CDZUB2MTxYCmNQ70VRagItDLSTg . Sometime before I ship, I will make the Itch.io page public, which may bring in some players.
I just added two minigames to CodeWare! The first minigame I just added, minigame 4, titled “Dodge the Flying Balls,” has users dodge flying balls (referred to as meteors in the code) for 45 seconds. Each hit takes away 10% of the user’s health. It can actually be pretty hard. A good strategy to stay alive is moving from side to side and never stopping, because there are really fast ones that come before you can even react. The second minigame I just added, minigame 5, titled “Click Very Fast,” has the user click on a big circular button in the middle 100 times in less than 20 seconds. I have tested it many times, and it is just the right time (at least for now). You can play the game at https://tyleruploads.github.io/code-ware/
I just completely refactored, everything! I made many new directories in order to organize the entire repository much better! This took an hour because of the debugging and other related changes to the code associated with a complete structural refactor. It definitely was not a calm, easy hour.
I just created the sixth minigame, “Unintelligent Arrows,” in CodeWare! In the minigame, users have to dodge countless arrows that are described as unintelligent purely based on their inability to change paths once shot. If you weren’t already guessing, I am planning on making an intelligent-arrow-themed minigame in the future, possibly inspired by 1948 in some ways. This game is actually getting nice and long, way longer than I thought it would be at the start. When I shared it with people a while ago, it was very short. Now, it’s decently long! Once I add a lot more minigames, I will consider making them go in random order and giving them difficulty tags to determine when they should be shown.
I just balanced minigame 6, “Unintelligent Arrows,” after feedback from Hack Club members. I made users have more time to react before getting hit by the arrows. I have not released this update yet; once I apply some other suggestions from the community, I will release it as v0.11.0.
After receiving feedback from the Hack Club community, I have made these changes to CodeWare. The icon has been updated to increase contrast and to look better at small resolutions Minigame 6, “Unintelligent Arrows,” has been balanced to be easier for users to complete WASD Movement has been added to all games Support for held jumps has been added to the first minigame, “Orb Collection Platformer” An ambiguity in the README about the objective has been corrected
I just made two new assets for CodeWare! They are the players in minigames 4 and 6. Here is a photo of one of them.
I just released version v0.13.0 of CodeWare! In this version, I have completely changed the sound environment of the game! I will explain it with two basic pseudocode (or Python) logic statements! prev_sound = sound in v0.12.0 curr_sound = sound in v0.13.0 print(prev_sound, curr_sound) # False, True What I’m trying to illustrate here is that there was absolutely no sound before, and now there is! There is a background ticking noise playing (forever) through an autoload and sound effects corresponding to in-minigame events. Feel free to test it at https://tyleruploads.itch.io/codeware?secret=CDZUB2MTxYCmNQ70VRagItDLSTg ! Send any feedback in the comments!
I just made version v0.14.0 of CodeWare! In this version, I added the eighth minigame, “Choose the Boxes!” The user has 30 seconds to choose 20 boxes by clicking on the one matching the color of the center box. I also went through and removed unnecessary log statements and unused variables.
I just made the ninth minigame for CodeWare, “The Maze!” In the minigame, the user needs to get to the center of the maze in less than 18 seconds! They move a mini tyleruploads texture with arrow keys and WASD to eventually get to the bigger one in the middle! I had a lot of trouble with physics here, hence the 2 hours! And, I’ve never made any sort of maze before, so this is a first!
I just made the tenth minigame for CodeWare! It is named “RGB Skills.” In the minigame, there are two colors: one generated automatically by the code, and one controlled by manual RGB Sliders. It validates the user’s guess using the GDScript method Vector3.distance_to() . The method uses the 3D Pythagorean theorem to calculate the Euclidean Distance between the RGB values, as if they were plotted in a 3D space. This works because the red value represents the x-axis, the green value represents the y-axis, and the blue value represents the z-axis on a 3D graph. This was very interesting for me to discover, since I only learned the 2D Pythagorean theorem last year (in seventh grade). The game also starts the sliders at the furthest possible points from the target color, which makes the minigame harder. If the player clicks the submit button without making any changes, they will not pass. And yes, I know they could easily invert the colors to find the right one. The only thing is, they probably didn’t read this devlog. So, they’ll have no clue of the fact the sliders were placed at the inversion of the target color.
I just did a lot of asset updating and linting! The part I think would be most interesting to you is obviously the asset updates. I changed the assets in Minigame 1, 3, 4, and 9! I also updated the gallery, accessible in the extras menu, to include new assets I’ve forgotten to put in there for a while now. I’ll just show you how minigame one looks now; no need for a detailed explanation of everything. Now, I have to address the boring part, which took most of the three and a half hours. That would be linting! It’s pretty self-explanatory: I went through and made the scenes and scripts adhere to style guidelines.
In the Newspaper department at my summer sleepaway camp this year, they always said, “If the number is less than 11, spell it out.” CodeWare has officially surpassed this guideline in the number of its minigames. Minigame 11 of CodeWare is titled “Type the Strings,” and players must type 15 five-character strings provided to them in less than one minute. The string is generated from a pool of characters with lookalikes (i.e., Z and 2, S and 5, O and 0, I and l, etc.) removed to ensure it is completely fair for the user. This was definitely one of the easier minigames to code, but it wasn’t the easiest thing ever. I still ran into some issues, like the vertical alignment of a RichTextLabel being a bit too low when dynamically updating its content in GDScript to show a custom notice to the user (I fixed it by changing it to a normal Label, after troubleshooting for way too long).
I just created the twelfth mingame of CodeWare, “Catch the Falling Orbs!” In it, you have 45 seconds to catch 35 falling orbs by moving left and right with your keyboard.
This will be one of my very last devlogs before I ship CodeWare! I just created the gameplay trailer, which is a huge accomplishment! This is my first time making any sort of video for anything I make in the computer world, and I think it actually turned out very well! The video shows potential players what the game will look like and gives a glimpse of its unexpected win-and-lose endings. I also put the video on the game’s Itch.io page, which will be made public very soon. You can view the video on YouTube here: CodeWare - Official Gameplay Video
This marks v1.0.0! This is my FINAL devlog for CodeWare (at least the first ship)! It has really been a great project that has significantly pushed what I think about my development capabilities. But I will explain that more in the ship message! The main change made over the time of this devlog was a complete revamp of the README! Here is a summary of the changes made to it: The following shields have been added: Play on GitHub Pages, Made with Godot, GitHub Release (version number), and GitHub Commit Activity The hero image near the top of the README, depicting the title screen, has been replaced with a gameplay video for the game, with a hero of minigame 6 (Unintelligent Arrows) The minigames section has been moved to near the bottom of the README to make the start of the README a better hook. And the minigame descriptions and hero images inside the section have been put inside a spoiler notice, so the game can not be easily spoiled for players. And the hero images in the minigame section have been converted from Markdown tags to HTML tags in order to enforce a specific width.
Ships:
I created CodeWare, a WarioWare-style video game where you have to complete various minigames, written in Godot. I originally had it under the WarioWare game mission, but I eventually decided I should detach it from it due to the sheer complexity of this game, which is way above the beginner mission. In the game, players are put through what is currently 12 minigames. Each minigame has a strict timer limit, whether it be losing a life or progressing to the next minigame once it strikes 0. In case you are confused, the way they win a life at the end is if the purpose of the minigame is to survive a certain amount of time against computer-generated obstacles, like arrows or orbs (essentially meteors). The very interesting thing about this game is the two endings: the ending you get when you complete all the minigames with lives to spare, and the one when you lose all of your five lives. These endings, which I will not explain in detail (so it is not spoiled for you!), highlight the eternity of automatically generated code files. The opening scene of the game is the Tyleruploads Mountain Range, which shows many mountains connected via bridges. The suspension for those bridges is the game’s logo turned into a bunch of small links. Metaphysically, the game’s goal is to cross these bridges. Many parts of this project were extremely challenging for me. For one, I had never set foot in Godot at all before embarking on this project. I was also a complete newcomer to any sort of game development. I encountered many errors caused by my being just introduced to GDScript and game development, such as not knowing that scripts continue after changing the scene, the absence of a deferred call causing the game to go completely grey, losing a lot of work in video editing software while making the gameplay trailer video, and many more small and large things. In every ship message for prior Stardance projects, I have said something like “Wow! Before I started, I really didn’t think I could do something this complex. I really just transformed my coding abilities.” But this time, I am not going to repeat that basic fib without any supporting arguments. My previous Stardance projects were nowhere near this length. So, I would like to make a new claim now. That claim is that while I have not become a completely new developer or graphic designer or anything, I have dipped into a new path of development that I will have the choice to either continue to pursue or to reap the benefits of the mindset associated with it as I enter high school. For these reasons, along with the fact that I was able to sit down and write quality code for one project for 51 hours, I am very proud of myself. My viewpoint of “sit down and make a decent project and leave it” has been greatly diminished outside of specific contexts....
|
1793005052.8004754
|
1793091452.8004754
|
|
29083
|
The Infinite Book by @domst13 | Stardance
|
domst13
|
1
|
18.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-27T21:13:16Z", "hours": 18.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made the infinite book, an e-reader that’s housed inside of an old hollowed out fake book. It has basic e-reader functions, such as loading books from a micro SD card and being able to scroll through them. I had a lot of challenges throughout this project, seeing as it was my first C++ project and maybe biting off a little more than I could chew. I was able to overcome them, however, and now it’s complete. In actuality, I think my total time spent was probably 21-22 hours, because I didn’t lapse a lot of the physical build/assembly process. This was a really fun project, and I learned so many things about hardware as well as C++.", "repo": "https://github.com/dominicstange13/The-Infinite-Book", "demo": ""}]...
|
[{"post_id": 74635, "ts": "202 [{"post_id": 74635, "ts": "2026-09-27T20:28:29Z", "hours": 2.0444, "text": "It’s finished! I’m back guys, I know it’s been like 2 months and I apologize, I really procrastinated on finishing this project. So… where do I begin? I finished wiring the components. For the buttons I designed and printed a panel to house them all. The voltage divider circuit that outputs the battery voltage also got moved inside of the button panel, before the whole thing was sealed off with hot glue. Using a dremel, I hollowed out little pockets of the fake book to make the screen fit and to add a hole to charge. Everything fits snugly inside of the case. The battery is behind the screen, the microcontroller is propped up on a custom 3d printed piece so the FPC cable of the screen isn’t getting bent violently. The microcontroller, buttons, and battery are all held in by velcro, while the screen is held in simply by a tight fit and the micro SD card reader is attached by mere wires so it can move freely and be easily accessed. All this together means that the entire electronic system can be ripped out, which is super helpful in case of future changes. On the software side of things, I didn’t have much to add. The screen now hibernates after five minutes of inactivity to preserve battery life. The book storage system isn’t exactly where I want it to be, but I can’t really work on it because my micro SD card reader died :(. This also means I can’t load books onto it yet, but once I can it will be 100% operational! That’s really all there is to say, see you guys at the ship!"}, {"post_id": 24139, "ts": "2026-07-07T14:43:22Z", "hours": 5.9025, "text": "Guys I have some unfortunate news. I worked for a super long time yesterday but it just isn’t going to be done in time. It’s so close to completion but I’m leaving today the infinite book simply won’t be ready in time. Sorry guys. I’ll be back in three n a half weeks and ill finish the project then. this is some bad news but its okay. the project will eventually get finished."}, {"post_id": 23333, "ts": "2026-07-06T06:59:30Z", "hours": 3.7914, "text": "Hey guys sorry for it being a couple days since the last devlog, I kinda forgot yesterday so this one is a combination of yesterday and today. So yesterday I didn’t do much except I wired the SD card reader with a breadboard and got that started. I had to battle with it a lot for it to work as intended and that battle is far from over as I am still working on the file loading system. Today I worked on fixing up my code for a while and finally got the SD card reader to what I would call a reasonable point, then I fixed an issue I was having with the opening of files off of the card. I’m still not completely sure what the fix was that made it start working all of a sudden, but my two main theories are that A) I was opening the file too early before the card reader could fully initialize or B) The breadboard wiring was just too unreliable to give a steady connection. Either way I started opening the file when it was actually needed instead of on startup and replaced the chunky breadboard wiring with soldered wires. One of the two things fixed the issue for what seems like permanently. I just hope I won’t have to revisit that part of the project later because I’m on a serious time crunch right now (this thing has to be done by Tuesday or else I am absolutely fried because I’m going on a 3 and a half week trip and my parents won’t let me bring my phone for some reason meaning if I don’t get my infinite book working in time it’s over for me). Finally I also got both navigation buttons working as well as the reading light and light switch. All of those things are currently breadboard wired instead of soldered but that’ll get fixed when the code is looking a bit more solid. In terms of inputs I’ll still need a main power switch to keep the battery from draining as well as a home/select button. Theoretically after all that is working I can assemble and decorate this thing and the project will be done but unfortunately that’s easier said than done especially if I only have tomorrow to work but let’s all just pray for the best. See you guys tomorrow, hopefully for the last devlog of this project!"}, {"post_id": 21948, "ts": "2026-07-04T04:39:54Z", "hours": 2.4461, "text": "Today I’m gonna be honest I wasn’t able to get much done since the whole time I was basically just fixing stuff I was able to actually figure out a way to do partial resets which is friggin aura I’m starting work on the SD card reader so yeah see you tomorrow"}, {"post_id": 21336, "ts": "2026-07-03T06:59:22Z", "hours": 1.8586, "text": "Today I fixed the LiPo battery readings by using a LiPo flow chart to match the curved depletion of LiPo batteries. When I finished I checked with a multimeter and the predicted voltages were basically spot-on, matching the multimeter exactly once I added a calibration step to the math to account for the difference. I also found out some bad news, which is that my e-paper display is incompatible with partial refreshes (updating the pixels of the display in the part you are changing specifically rather than the entire display) in the library I am using, and I have not been able to find a replacement library so I am assuming it is just entirely not possible. This does suck but I think the project will be okay and I will still be able to make a good final product. That’s about all for today, I was gonna work more but unfortunately I was busy, my goals for tomorrow are going to be working on making more UI besides the battery, dealing with the no partial refresh issue, and (hopefully) acquiring an SD card and starting to figure out how I’m gonna load text onto the screen. See you guys tomorrow!"}, {"post_id": 20571, "ts": "2026-07-02T05:57:18Z", "hours": 1.0972, "text": "Today I created a system that can detect the battery percentage of the battery, then found out LiPo batteries deplete on a curve so I’m gonna have to rework it so it is actually accurate 😭 On a better note I learned more about the Arduino IDE and was extremely happy when my voltage divider circuit actually worked (I know it’s simple but still I was proud) Tomorrow I aim to fix the battery issue and hopefully find an SD card so I can start making the text display system work See you guys tomorrow! P.S. I didn’t have time to get a picture of the current contraption so here’s a picture of me soldering on pin header from my Lapse recording"}, {"post_id": 19734, "ts": "2026-07-01T03:55:14Z", "hours": 0.5772, "text": "I began coding but I couldn’t progress any further without soldering which my parents won’t let me do until tomorrow (for some reason?) so yeah that’s all for today"}]...
|
Title: The Infinite Book by @domst13 | Stardance
Title: The Infinite Book by @domst13 | Stardance
Devlogs:
I began coding but I couldn’t progress any further without soldering which my parents won’t let me do until tomorrow (for some reason?) so yeah that’s all for today
Today I created a system that can detect the battery percentage of the battery, then found out LiPo batteries deplete on a curve so I’m gonna have to rework it so it is actually accurate 😭 On a better note I learned more about the Arduino IDE and was extremely happy when my voltage divider circuit actually worked (I know it’s simple but still I was proud) Tomorrow I aim to fix the battery issue and hopefully find an SD card so I can start making the text display system work See you guys tomorrow! P.S. I didn’t have time to get a picture of the current contraption so here’s a picture of me soldering on pin header from my Lapse recording
Today I fixed the LiPo battery readings by using a LiPo flow chart to match the curved depletion of LiPo batteries. When I finished I checked with a multimeter and the predicted voltages were basically spot-on, matching the multimeter exactly once I added a calibration step to the math to account for the difference. I also found out some bad news, which is that my e-paper display is incompatible with partial refreshes (updating the pixels of the display in the part you are changing specifically rather than the entire display) in the library I am using, and I have not been able to find a replacement library so I am assuming it is just entirely not possible. This does suck but I think the project will be okay and I will still be able to make a good final product. That’s about all for today, I was gonna work more but unfortunately I was busy, my goals for tomorrow are going to be working on making more UI besides the battery, dealing with the no partial refresh issue, and (hopefully) acquiring an SD card and starting to figure out how I’m gonna load text onto the screen. See you guys tomorrow!
Today I’m gonna be honest I wasn’t able to get much done since the whole time I was basically just fixing stuff I was able to actually figure out a way to do partial resets which is friggin aura I’m starting work on the SD card reader so yeah see you tomorrow
Hey guys sorry for it being a couple days since the last devlog, I kinda forgot yesterday so this one is a combination of yesterday and today. So yesterday I didn’t do much except I wired the SD card reader with a breadboard and got that started. I had to battle with it a lot for it to work as intended and that battle is far from over as I am still working on the file loading system. Today I worked on fixing up my code for a while and finally got the SD card reader to what I would call a reasonable point, then I fixed an issue I was having with the opening of files off of the card. I’m still not completely sure what the fix was that made it start working all of a sudden, but my two main theories are that A) I was opening the file too early before the card reader could fully initialize or B) The breadboard wiring was just too unreliable to give a steady connection. Either way I started opening the file when it was actually needed instead of on startup and replaced the chunky breadboard wiring with soldered wires. One of the two things fixed the issue for what seems like permanently. I just hope I won’t have to revisit that part of the project later because I’m on a serious time crunch right now (this thing has to be done by Tuesday or else I am absolutely fried because I’m going on a 3 and a half week trip and my parents won’t let me bring my phone for some reason meaning if I don’t get my infinite book working in time it’s over for me). Finally I also got both navigation buttons working as well as the reading light and light switch. All of those things are currently breadboard wired instead of soldered but that’ll get fixed when the code is looking a bit more solid. In terms of inputs I’ll still need a main power switch to keep the battery from draining as well as a home/select button. Theoretically after all that is working I can assemble and decorate this thing and the project will be done but unfortunately that’s easier said than done especially if I only have tomorrow to work but let’s all just pray for the best. See you guys tomorrow, hopefully for the last devlog of this project!
Guys I have some unfortunate news. I worked for a super long time yesterday but it just isn’t going to be done in time. It’s so close to completion but I’m leaving today the infinite book simply won’t be ready in time. Sorry guys. I’ll be back in three n a half weeks and ill finish the project then. this is some bad news but its okay. the project will eventually get finished.
It’s finished! I’m back guys, I know it’s been like 2 months and I apologize, I really procrastinated on finishing this project. So… where do I begin? I finished wiring the components. For the buttons I designed and printed a panel to house them all. The voltage divider circuit that outputs the battery voltage also got moved inside of the button panel, before the whole thing was sealed off with hot glue. Using a dremel, I hollowed out little pockets of the fake book to make the screen fit and to add a hole to charge. Everything fits snugly inside of the case. The battery is behind the screen, the microcontroller is propped up on a custom 3d printed piece so the FPC cable of the screen isn’t getting bent violently. The microcontroller, buttons, and battery are all held in by velcro, while the screen is held in simply by a tight fit and the micro SD card reader is attached by mere wires so it can move freely and be easily accessed. All this together means that the entire electronic system can be ripped out, which is super helpful in case of future changes. On the software side of things, I didn’t have much to add. The screen now hibernates after five minutes of inactivity to preserve battery life. The book storage system isn’t exactly where I want it to be, but I can’t really work on it because my micro SD card reader died :(. This also means I can’t load books onto it yet, but once I can it will be 100% operational! That’s really all there is to say, see you guys at the ship!
Ships:
I made the infinite book, an e-reader that’s housed inside of an old hollowed out fake book. It has basic e-reader functions, such as loading books from a micro SD card and being able to scroll through them. I had a lot of challenges throughout this project, seeing as it was my first C++ project and maybe biting off a little more than I could chew. I was able to overcome them, however, and now it’s complete. In actuality, I think my total time spent was probably 21-22 hours, because I didn’t lapse a lot of the physical build/assembly process. This was a really fun project, and I learned so many things about hardware as well as C++....
|
1793005051.672297
|
1793091451.672297
|
|
70368
|
Satellite Tracker Pointer by @ArjunKanu | Stardanc Satellite Tracker Pointer by @ArjunKanu | Stardance...
|
ArjunKanu
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Satellite Tracker Pointer by @ArjunKanu | S Title: Satellite Tracker Pointer by @ArjunKanu | Stardance...
|
1793005050.8318028
|
1793869050.8318028
|
|
70367
|
Rithul Keyboard by @Rithul | Stardance
|
Rithul
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Rithul Keyboard by @Rithul | Stardance
|
1793005049.9725606
|
1793609849.9725606
|