|
12601
|
My first slack bot! by @dom1kus | Stardance
|
dom1kus
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @dom1kus | Stardance
|
1793454709.8253074
|
1794059509.8253074
|
|
12602
|
My first slack bot! by @Haoming | Stardance
|
Haoming
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Haoming | Stardance
|
1793145054.8909624
|
1793749854.8909624
|
|
12603
|
Untitled project by @lallupandey1997 | Stardance
|
lallupandey1997
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @lallupandey1997 | Star Title: Untitled project by @lallupandey1997 | Stardance...
|
1793458147.1612153
|
1794062947.1612153
|
|
12604
|
My first slack bot! by @Abyenbhatti | Stardance
|
Abyenbhatti
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Abyenbhatti | Stard Title: My first slack bot! by @Abyenbhatti | Stardance...
|
1793451181.1734264
|
1794055981.1734264
|
|
12605
|
My first slack bot! by @spec98 | Stardance
|
spec98
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @spec98 | Stardance
|
1793177405.539339
|
1793782205.539339
|
|
12606
|
pibble-bot by @brokenCart | Stardance
|
brokenCart
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: pibble-bot by @brokenCart | Stardance
|
1793375382.1411357
|
1793980182.1411357
|
|
12607
|
Streakify by @Nima | Stardance
|
Nima
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Streakify by @Nima | Stardance
|
1792810326.731273
|
1793415126.731273
|
|
12608
|
Download Extension by @Atharva210 | Stardance
|
Atharva210
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Download Extension by @Atharva210 | Stardan Title: Download Extension by @Atharva210 | Stardance...
|
1793436980.4899144
|
1794041780.4899144
|
|
12609
|
Codeforces by @RohitPant | Stardance
|
RohitPant
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Codeforces by @RohitPant | Stardance
|
1793328531.4182034
|
1793933331.4182034
|
|
12610
|
Oceantype by @teakzc | Stardance
|
teakzc
|
1
|
3.0
|
56
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-12T15:26:47Z", "hours": 3.0, "multiplier": 16.59, "payout": 56, "blessing": "neutral", "text": "I made a website where anyone can express any thoughts and leave it in the ocean for anyone to see. Messages are circulated (when no new messages are sent) frequently just like objects floating around in the ocean current. The challenge of this is to learn supabase and nextjs. I already have experience with react, so just some guidance from ai taught me how it works. For example ‘use client’ on files to mark a clientsided component. It taught me how to communicate from server to public I am proud as alot of messages have been left already, and the fact that a real website I made is actually running and working properly. You can go to https://oceantype.vercel.app for testing. Mobile is supported too", "repo": "https://github.com/Hyperworks-Studio/oceantype", "demo": "https://oceantype.vercel.app/"}]...
|
[{"post_id": 7489, "ts": "2026 [{"post_id": 7489, "ts": "2026-06-12T14:30:02Z", "hours": 1.055, "text": "Bugs fixed I have fixed the counter bar. Previously, It would just accept a initial message count from the server and increment every new message. This is prone is some issues and does not hydrate properly I have now fixed this by just listening to postgresql changes and applying state immediantly on client. Features added Mobile is now more optimized, as it changed the interval to “roll” for recycled messages from 250ms to 1000ms on mobile. Same with the message spawning height, on mobile it would spawn on the visible page which is not very convincing as a effect. I used a new package: react-device-detect to check for mobile. Below is the code for counter, I fetch the initial counter in a promise, and apply. Then we also listen for changes and apply"}, {"post_id": 6236, "ts": "2026-06-10T14:15:06Z", "hours": 1.8453, "text": "New features and fixes: I have added transitions between the main page and the info page, which is needed because it was very awkward without it I also fixed the scrollbar in the text area so that it has no background when hovered. Here is a demonstration video where I test out the websites (message filtering, rate limiting) The messages here are left by real people who I have shared the website with! But, there still is a problem with the counter, as it has stale data that is not hydrated from the database. Thus next devlog I will be fixing that. If you want to drop by and say something: https://oceantype.vercel.app/"}, {"post_id": 5352, "ts": "2026-06-09T02:51:09Z", "hours": 0.5286, "text": "Oceantype, A website where you can leave a message into the ocean where anyone can read it. Old messages are recycled when no one is typing anything. This is a project I made to learn more about web dev, before I discovered the stardance challenge. I have now added text moderation (before this it wasn’t), by using the package obscenity found on npm. Before this, I tried using openai’s moderation which they said was free, but it didn’t work for me. (Error, too many requests when i only sent one message) Now if the message contains any profanities it will be filtered out! Also this is a project I have started before stardance challenge. What I used to make this website: nextjs supabase tailwind css"}]...
|
Title: Oceantype by @teakzc | Stardance
Devlogs:
Title: Oceantype by @teakzc | Stardance
Devlogs:
Oceantype, A website where you can leave a message into the ocean where anyone can read it. Old messages are recycled when no one is typing anything. This is a project I made to learn more about web dev, before I discovered the stardance challenge. I have now added text moderation (before this it wasn’t), by using the package obscenity found on npm. Before this, I tried using openai’s moderation which they said was free, but it didn’t work for me. (Error, too many requests when i only sent one message) Now if the message contains any profanities it will be filtered out! Also this is a project I have started before stardance challenge. What I used to make this website: nextjs supabase tailwind css
New features and fixes: I have added transitions between the main page and the info page, which is needed because it was very awkward without it I also fixed the scrollbar in the text area so that it has no background when hovered. Here is a demonstration video where I test out the websites (message filtering, rate limiting) The messages here are left by real people who I have shared the website with! But, there still is a problem with the counter, as it has stale data that is not hydrated from the database. Thus next devlog I will be fixing that. If you want to drop by and say something: https://oceantype.vercel.app/
Bugs fixed I have fixed the counter bar. Previously, It would just accept a initial message count from the server and increment every new message. This is prone is some issues and does not hydrate properly I have now fixed this by just listening to postgresql changes and applying state immediantly on client. Features added Mobile is now more optimized, as it changed the interval to “roll” for recycled messages from 250ms to 1000ms on mobile. Same with the message spawning height, on mobile it would spawn on the visible page which is not very convincing as a effect. I used a new package: react-device-detect to check for mobile. Below is the code for counter, I fetch the initial counter in a promise, and apply. Then we also listen for changes and apply
Ships:
I made a website where anyone can express any thoughts and leave it in the ocean for anyone to see. Messages are circulated (when no new messages are sent) frequently just like objects floating around in the ocean current. The challenge of this is to learn supabase and nextjs. I already have experience with react, so just some guidance from ai taught me how it works. For example ‘use client’ on files to mark a clientsided component. It taught me how to communicate from server to public I am proud as alot of messages have been left already, and the fact that a real website I made is actually running and working properly. You can go to https://oceantype.vercel.app for testing. Mobile is supported too...
|
1793451375.7682757
|
1793537775.7682757
|
|
12611
|
Smart fan with ESP8266 by @ThatRandomMaker | Stard Smart fan with ESP8266 by @ThatRandomMaker | Stardance...
|
ThatRandomMaker
|
0
|
6.96
|
0
|
[]
|
[{"post_id": 6288, "ts": "2026 [{"post_id": 6288, "ts": "2026-06-10T15:55:26Z", "hours": 0.9678, "text": "The end ULN2003 decided to somehow explode itself and took EVERY. SINGLE. component (except the fan) with it"}, {"post_id": 5586, "ts": "2026-06-09T13:15:00Z", "hours": 5.9964, "text": "2/3rd(s) of the way there! After around 5h and 59m (of coding) in total, the software part of this project is done! There of course, are still things left to do, which are: Building and painting an enclosure (probably out of cardboard) Make a 3D model Fix this very janky wiring seen in the image Write the README And upload the precompiled .bin file to the Github page."}]...
|
Title: Smart fan with ESP8266 by @ThatRandomMaker Title: Smart fan with ESP8266 by @ThatRandomMaker | Stardance
Devlogs:
2/3rd(s) of the way there! After around 5h and 59m (of coding) in total, the software part of this project is done! There of course, are still things left to do, which are: Building and painting an enclosure (probably out of cardboard) Make a 3D model Fix this very janky wiring seen in the image Write the README And upload the precompiled .bin file to the Github page.
The end ULN2003 decided to somehow explode itself and took EVERY. SINGLE. component (except the fan) with it...
|
1793199045.6244464
|
1793803845.6244464
|
|
12612
|
My first slack bot! by @SpeedBlink | Stardance
|
SpeedBlink
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @SpeedBlink | Starda Title: My first slack bot! by @SpeedBlink | Stardance...
|
1793141361.2829475
|
1793746161.2829475
|
|
12613
|
Untitled project by @Ashandev | Stardance
|
Ashandev
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Ashandev | Stardance
|
1793397354.447837
|
1794002154.447837
|
|
12614
|
My first slack bot! by @Nebula | Stardance
|
Nebula
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-11T17:31:50Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple bot for sending your messages as a proxy. I learnt how to use slack API and the hardest thing was to figure out how to send in channel messages after changing the username for a message.", "repo": "https://github.com/NebulaDev09/Plurabot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B9HF17A95"}]...
|
[{"post_id": 6937, "ts": "2026 [{"post_id": 6937, "ts": "2026-06-11T17:02:24Z", "hours": 4.255, "text": "Completed my first slack bot. Basically a utility for people with plurality. You can create proxies and use them to message. Some commands are, /plb-ping - to check status and latency /plb-help - to check all commands and usage /plb-member add <member_name> /plb-member remove <member_name> /plb-member list /plb-proxy <member_name> |"}]...
|
Title: My first slack bot! by @Nebula | Stardance
Title: My first slack bot! by @Nebula | Stardance
Devlogs:
Completed my first slack bot. Basically a utility for people with plurality. You can create proxies and use them to message. Some commands are, /plb-ping - to check status and latency /plb-help - to check all commands and usage /plb-member add <member_name> /plb-member remove <member_name> /plb-member list /plb-proxy <member_name> |
Ships:
I made a simple bot for sending your messages as a proxy. I learnt how to use slack API and the hardest thing was to figure out how to send in channel messages after changing the username for a message....
|
1793440260.741385
|
1793526660.741385
|
|
12615
|
Vocodio by @Achotna | Stardance
|
Achotna
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Vocodio by @Achotna | Stardance
|
1793306865.700751
|
1793911665.700751
|
|
12616
|
Shadowed corpse by @Hesitant | Stardance
|
Hesitant
|
0
|
13.63
|
0
|
[]
|
[{"post_id": 14981, "ts": "202 [{"post_id": 14981, "ts": "2026-06-24T10:17:12Z", "hours": 6.4953, "text": "Yippe Ive been working on the first summon for my game the combat is inspired by the 10 shadows technique for jujutsu Kaisen and heres a recording of it I usually wait before posting devlogs for it too be fully debugged its still a bit buggy but I think its cool you can push 1 to select the ability and left click to summon the centipede creature and right click to draw a path for it Ill prob change its designs later on"}, {"post_id": 12758, "ts": "2026-06-20T21:20:43Z", "hours": 6.5483, "text": "Hi There It’s been a bit since I have had the chance to make a devlog about my game but ive done quiet a bit with my game here is what I did: Added -New main character sprite -Procedural animated grass -Grass player-reaction -Grass scatter field -Y-sorting -Slash attack on left-click (Dismantle) Player self-knockback -Hitstop / impact frames (cause they are awsome) -Impact orbs (aka just the impact frames something like hollow knights) -White hit-flash shader (so that you can tell when you hit an enemy) -First enemy- slime (every self respecting dungeon game has a slime) Added my first summon which is a centipede I have a lot more planned and Ill consider being more active with my devlogs but I doubt ill stop procrastinating them also any tips for art would be appreciated cause I don’t feel like mine are really top notch"}, {"post_id": 6285, "ts": "2026-06-10T15:52:08Z", "hours": 0.5836, "text": "Devlog #1 One of the first games I ever played was Wizards of Legend, and ever since then, I’ve wanted to make a game of my own. This is my first devlog for that project. To be honest, I haven’t come up with a name yet, but I’ve wanted to make it for quite a while. So far, I’ve worked on the character art and added it to the game. I made a goofy-looking tileset and turned it into a small level where you can move around. I also gave the player a static camera and posted the current version on GitHub although it isn’t much yet. This is my first real project and my first time creating assets, so any feedback or tips would be greatly appreciated."}]...
|
Title: Shadowed corpse by @Hesitant | Stardance
D Title: Shadowed corpse by @Hesitant | Stardance
Devlogs:
Devlog #1 One of the first games I ever played was Wizards of Legend, and ever since then, I’ve wanted to make a game of my own. This is my first devlog for that project. To be honest, I haven’t come up with a name yet, but I’ve wanted to make it for quite a while. So far, I’ve worked on the character art and added it to the game. I made a goofy-looking tileset and turned it into a small level where you can move around. I also gave the player a static camera and posted the current version on GitHub although it isn’t much yet. This is my first real project and my first time creating assets, so any feedback or tips would be greatly appreciated.
Hi There It’s been a bit since I have had the chance to make a devlog about my game but ive done quiet a bit with my game here is what I did: Added -New main character sprite -Procedural animated grass -Grass player-reaction -Grass scatter field -Y-sorting -Slash attack on left-click (Dismantle) Player self-knockback -Hitstop / impact frames (cause they are awsome) -Impact orbs (aka just the impact frames something like hollow knights) -White hit-flash shader (so that you can tell when you hit an enemy) -First enemy- slime (every self respecting dungeon game has a slime) Added my first summon which is a centipede I have a lot more planned and Ill consider being more active with my devlogs but I doubt ill stop procrastinating them also any tips for art would be appreciated cause I don’t feel like mine are really top notch
Yippe Ive been working on the first summon for my game the combat is inspired by the 10 shadows technique for jujutsu Kaisen and heres a recording of it I usually wait before posting devlogs for it too be fully debugged its still a bit buggy but I think its cool you can push 1 to select the ability and left click to summon the centipede creature and right click to draw a path for it Ill prob change its designs later on...
|
1793519335.2427447
|
1794124135.2427447
|
|
12617
|
3dMap by @Aras | Stardance
|
Aras
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: 3dMap by @Aras | Stardance
|
1793173804.8142774
|
1793778604.8142774
|
|
12618
|
My awesome macropad! by @juansev | Stardance
|
juansev
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @juansev | Stardanc Title: My awesome macropad! by @juansev | Stardance...
|
1793386294.4085062
|
1793991094.4085062
|
|
12619
|
G-Lens by @urged-st | Stardance
|
urged-st
|
1
|
13.0
|
166
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-27T12:09:23Z", "hours": 13.0, "multiplier": 13.25, "payout": 166, "blessing": "neutral", "text": "I have developed a functioning gravitational lensing simulator, where you can drag a massive object across a real deep field image and watch it warp the light from background galaxies in real time. You can adjust the mass of the lens and switch between presets simulating different object types: a simple lens, black hole, neutron star, and galaxy cluster, each with a distinct visual appearance. The most technically challenging part was the rendering architecture. Rather than handling everything in p5.js, I wrote a custom GLSL fragment shader running in WebGL to perform the actual light deflection, with p5.js running as a separate overlay layer for the UI and lens visuals. This was my first time writing a shader, and getting the aspect ratio correction and UV space deflection maths to work correctly took a long time. I also had to carefully calibrate the p5 lens visual to match the shader’s distortion radius, since they compute size differently. The landing overlay and info cards took a significant amount of time across many iterations because I wanted the design to feel polished and intentional rather than throwaway, and I’m especially happy with how the article view and card animations turned out. If the colour scheme and UI style look familiar, that’s intentional cause I’ve developed a consistent design language across my simulators, using the same typefaces and colour palette to give them a coherent identity. One of the main limitations is having to model everything as a perfect circle as I have never made a shader before this, but too complex and users won’t really enjoy it. Thanks for reading, hope you find this interesting.", "repo": "https://github.com/urged-st/gravi-lens-sim", "demo": "https://g-lens-sim.vercel.app"}]...
|
[{"post_id": 16860, "ts": "202 [{"post_id": 16860, "ts": "2026-06-27T11:21:32Z", "hours": 3.6564, "text": "Massive G-Lens update: Shipping NOW! Ok so I have been polishing this up now, making it look complete and just using trial and error to adjust the values for distortion cause there were quite a few annoying issues with that. Now, I present the finished G-Lens simulator. So, what have I done since my last devlog? I’ll split it into sections for you. UI: Added a dedicated side panel for stats, where there is a low opacity rectangle to create separation from the background image as it was hard to read the stats before. Added labels to everything where needed Changed the style of the “simple” preset from a solid blue circle to a circle with a blue glow, it’s nothing necessary but just looks better than a solid circle. Functionality: Added bg switcher Added auto scaling to each bg - this was necessary as different images had galaxies of different sizes, so the same massive black hole would look disproportionate if you used the same default scaling. So, I changed the scaling based on which image it is (no auto detect or anything but you see the point lol) Added a show/hide button for the lensing - previously this would prevent lens movement but there wasn’t really a reason to restrict this so I reverted it. Of course, we needed a reset button lol. Had to change distortion scaling with trial and error (this was the majority of 2hrs) and also modelling and remodelling the distort to match the scaling of the size of the lens. ^ the above changes aren’t chronological btw, but if you need it like that, my video devlogs on instagram are there. also I added the two new backgrounds as the famous Hubble Ultra Deep Fields from 2004 and 2014"}, {"post_id": 10179, "ts": "2026-06-16T19:51:25Z", "hours": 1.4928, "text": "PRESETS PRESETS PRESETS If you have seen my other sim, you’ll know I wasted no time on adding presets. Well I now have presets for this sim too to replicate lensing from different celestial bodies Also, the distortion was kinda eliptical, so I had to fix this as it would change due to different aspect ratios (now its circular). Added a mass slider, this had some layering issues before but thats not a problem now. I had to fix a bug where the field size and lens size increased at different rates (my stupid ahh used two different equations) so I just rewrote the equations I used for both. Overall a pretty productive 1hr 30mins, will probably add MORE UI features to make it feel more polished, change the bg image etc. Also probably a toggle lensing button. See you in the next one! all video devlogs are at https://instagram.com/urged.st"}, {"post_id": 8175, "ts": "2026-06-13T16:56:27Z", "hours": 4.1161, "text": "I FORGOT TO MAKE A LOG Okay so for the last 4 hours i’ve been fighting with my shader code as it didnt work for a long time, but it finally works. What was the issue? when using shaders on pngs, sometimes the edges and transparent areas render weird I thought my code was wrong, but in reality I just had to switch the image type. issue #2 was that the blue circle, which is the lens (had to make it obvious for debugging) was firstly having inverted movement to the actual distortion field, and secondly sometimes just not showing up. to fix the inverted movement, I just mapped the actual circle’s position to the field’s coords. (btw, the inversion was caused by webgl canvas and p5.js canvas having different coordinate systems) to fix it not showing up, that was just a layering issue. Overall, that 4 hour period was a rollercoaster and i’m glad its over. If you want to see how it broke (I didnt devlog this cause I was too preoccupied) there’s a video devlog on my instagram: https://www.instagram.com/urged.st/"}, {"post_id": 6855, "ts": "2026-06-11T14:42:13Z", "hours": 1.8492, "text": "Been toying around with distortion lately, I’m still torn between making a full on shader or just having distortion to look like lensing. Most of my time spent has been trial and error with different ways of distorting, from basic inward radial distortion to a more complex particle tracing distortion. I am gonna try and perfect this before moving on I think, because if I can’t get this right then in my opinion I have a long way to go before making a shader. added mass slider, larger masses = more gravity, so more lensing/distortion! made the source draggable, but I don’t know how useful this really is lol (maybe easier to centre, to see einstein rings?)"}, {"post_id": 5916, "ts": "2026-06-09T21:52:58Z", "hours": 1.4789, "text": "G-Lens Begins! This is, to say the least, gonna be hard. I have a rough idea of what I’m gonna do, but really i have never made a shader before or used GLSL. Luckily I decided not to do this today as I was already tired and decided to make a prototype which rather than solving the lens equation, simply uses a radial distort to… well distort the space around it. I did initially try distort a point mass (yeah my bad) so obviously had to switch it to a bunch of particles densely packed. This actually shows a distort, even if its not accurate to astrophysics (this isn’t the goal for today) Next steps? think about how i will integrate actual physics into this, and read MORE research papers."}]...
|
Title: G-Lens by @urged-st | Stardance
Devlogs:
G Title: G-Lens by @urged-st | Stardance
Devlogs:
G-Lens Begins! This is, to say the least, gonna be hard. I have a rough idea of what I’m gonna do, but really i have never made a shader before or used GLSL. Luckily I decided not to do this today as I was already tired and decided to make a prototype which rather than solving the lens equation, simply uses a radial distort to… well distort the space around it. I did initially try distort a point mass (yeah my bad) so obviously had to switch it to a bunch of particles densely packed. This actually shows a distort, even if its not accurate to astrophysics (this isn’t the goal for today) Next steps? think about how i will integrate actual physics into this, and read MORE research papers.
Been toying around with distortion lately, I’m still torn between making a full on shader or just having distortion to look like lensing. Most of my time spent has been trial and error with different ways of distorting, from basic inward radial distortion to a more complex particle tracing distortion. I am gonna try and perfect this before moving on I think, because if I can’t get this right then in my opinion I have a long way to go before making a shader. added mass slider, larger masses = more gravity, so more lensing/distortion! made the source draggable, but I don’t know how useful this really is lol (maybe easier to centre, to see einstein rings?)
I FORGOT TO MAKE A LOG Okay so for the last 4 hours i’ve been fighting with my shader code as it didnt work for a long time, but it finally works. What was the issue? when using shaders on pngs, sometimes the edges and transparent areas render weird I thought my code was wrong, but in reality I just had to switch the image type. issue #2 was that the blue circle, which is the lens (had to make it obvious for debugging) was firstly having inverted movement to the actual distortion field, and secondly sometimes just not showing up. to fix the inverted movement, I just mapped the actual circle’s position to the field’s coords. (btw, the inversion was caused by webgl canvas and p5.js canvas having different coordinate systems) to fix it not showing up, that was just a layering issue. Overall, that 4 hour period was a rollercoaster and i’m glad its over. If you want to see how it broke (I didnt devlog this cause I was too preoccupied) there’s a video devlog on my instagram: https://www.instagram.com/urged.st/
PRESETS PRESETS PRESETS If you have seen my other sim, you’ll know I wasted no time on adding presets. Well I now have presets for this sim too to replicate lensing from different celestial bodies Also, the distortion was kinda eliptical, so I had to fix this as it would change due to different aspect ratios (now its circular). Added a mass slider, this had some layering issues before but thats not a problem now. I had to fix a bug where the field size and lens size increased at different rates (my stupid ahh used two different equations) so I just rewrote the equations I used for both. Overall a pretty productive 1hr 30mins, will probably add MORE UI features to make it feel more polished, change the bg image etc. Also probably a toggle lensing button. See you in the next one! all video devlogs are at https://instagram.com/urged.st
Massive G-Lens update: Shipping NOW! Ok so I have been polishing this up now, making it look complete and just using trial and error to adjust the values for distortion cause there were quite a few annoying issues with that. Now, I present the finished G-Lens simulator. So, what have I done since my last devlog? I’ll split it into sections for you. UI: Added a dedicated side panel for stats, where there is a low opacity rectangle to create separation from the background image as it was hard to read the stats before. Added labels to everything where needed Changed the style of the “simple” preset from a solid blue circle to a circle with a blue glow, it’s nothing necessary but just looks better than a solid circle. Functionality: Added bg switcher Added auto scaling to each bg - this was necessary as different images had galaxies of different sizes, so the same massive black hole would look disproportionate if you used the same default scaling. So, I changed the scaling based on which image it is (no auto detect or anything but you see the point lol) Added a show/hide button for the lensing - previously this would prevent lens movement but there wasn’t really a reason to restrict this so I reverted it. Of course, we needed a reset button lol. Had to change distortion scaling with trial and error (this was the majority of 2hrs) and also modelling and remodelling the distort to match the scaling of the size of the lens. ^ the above changes aren’t chronological btw, but if you need it like that, my video devlogs on instagram are there. also I added the two new backgrounds as the famous Hubble Ultra Deep Fields from 2004 and 2014
Ships:
I have developed a functioning gravitational lensing simulator, where you can drag a massive object across a real deep field image and watch it warp the light from background galaxies in real time. You can adjust the mass of the lens and switch between presets simulating different object types: a simple lens, black hole, neutron star, and galaxy cluster, each with a distinct visual appearance. The most technically challenging part was the rendering architecture. Rather than handling everything in p5.js, I wrote a custom GLSL fragment shader running in WebGL to perform the actual light deflection, with p5.js running as a separate overlay layer for the UI and lens visuals. This was my first time writing a shader, and getting the aspect ratio correction and UV space deflection maths to work correctly took a long time. I also had to carefully calibrate the p5 lens visual to match the shader’s distortion radius, since they compute size differently. The landing overlay and info cards took a significant amount of time across many iterations because I wanted the design to feel polished and intentional rather than throwaway, and I’m especially happy with how the article view and card animations turned out. If the colour scheme and UI style look familiar, that’s intentional cause I’ve developed a consistent design language across my simulators, using the same typefaces and colour palette to give them a coherent identity. One of the main limitations is having to model everything as a perfect circle as I have never made a shader before this, but too complex and users won’t really enjoy it. Thanks for reading, hope you find this interesting....
|
1792878741.7895591
|
1793742741.7895591
|
|
12620
|
My awesome macropad! by @jaicharan | Stardance
|
jaicharan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @jaicharan | Starda Title: My awesome macropad! by @jaicharan | Stardance...
|
1793285271.6335268
|
1793890071.6335268
|
|
12621
|
Iron fist by @Solomon_Charles | Stardance
|
Solomon_Charles
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Iron fist by @Solomon_Charles | Stardance
|
1792788706.0469403
|
1793393506.0469403
|
|
12622
|
FGC WeekLog by @Osmosis | Stardance
|
Osmosis
|
1
|
10.34
|
96
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T02:53:01Z", "hours": 5.0, "multiplier": 18.19, "payout": 96, "blessing": "neutral", "text": "What did you make? WeekLog, a meeting compliance tracker for my FIRST Global Challenge robotics team (Team Qatar, ~21 people). Instead of being a file dump like a shared Drive folder, the spine is a calendar that creates obligations: I mark meeting days, each day gets a checklist of required materials, and the whole thing rolls up into a red/amber/green dashboard that tells you at a glance if a meeting is missing something or a deadline is coming up. It also tracks standalone deadlines like our social media challenges, which actually score competition points. What was challenging? Three honest ones. I designed the requirements system assuming every meeting needs the same checklist, then realized a CAD session and a strategy meeting have totally different needs, so I had to add per-meeting editable requirements without breaking the dashboard logic. There was a magic-link auth bug where logins kept bouncing to localhost (turned out to be a stale Supabase config). And building a public demo of an app that needs a backend meant faking the entire backend in the browser. What are you proud of? The architecture, specifically the boring parts that don’t show. Every network call funnels through one tiny choke point, and all the data logic sits in a pure layer the UI can’t touch. That one decision is why a full visual redesign dropped in without touching the math, and why I could replace the whole backend with a browser-based fake for the demo without rewriting a single feature screen. Invisible structure is the kind that saves you later. What should people know to test it? Use the demo link. It’s loaded with realistic sample data, dates are relative to today so you’ll see a mix of healthy and flagged days. Everyone who signs in is an admin, so poke at everything: mark meeting days, edit requirements, set deadlines, watch the dashboard go red/amber/green. There’s a “DEMO · Reset” pill in the corner to wipe it back to clean. Two known shortcuts: uploaded images show a placeholder after refresh (blobs are in-memory), and ZIP export downloads a manifest instead of a real zip.", "repo": "https://github.com/Osmiosis/FGC-2026-WeekLog", "demo": "https://fgc-weeklog-demo.pages.dev/"}]...
|
[{"post_id": 20689, "ts": "202 [{"post_id": 20689, "ts": "2026-07-02T10:56:52Z", "hours": 5.3364, "text": "Devlog 4 - button that did nothing, and a notebook helper Two things this session. One was a bug that taught me the difference between “out of memory” and “out of time,” and a whole new feature for my robotics team. WeekLog has a “Download all media” button that zips up every photo the team’s uploaded. It just… didn’t work. No error, no download, nothing. The worst kind of bug because I had no idea where the problem lied First real clue came from the browser network tab: the request was coming back 503, and the error page was Cloudflare’s, not my app’s. It meant my code wasn’t throwing an error, the platform was killing my worker before it could respond. So the frontend was hiding a failure it should have shown, first I made it actually show me the error instead of just letting it fail Then the real chase. My worker was loading every file fully into memory and building the zip all at once, so I assumed it was running out of memory. I rewrote it to stream the zip instead, pulling one file at a time. Felt good. Still broke. So I tailed the live worker logs and got the actual smoking gun: “outcome”: “exceededCpu”. It wasn’t memory at all. The media set is about 404 MB, and just computing the checksums to zip that much data is more compute than a free-tier worker gets per request. Streaming fixed the memory ceiling and I still hit a completely separate CPU ceiling behind it. You genuinely cannot zip 404 MB inside one free worker call. The fix was to stop trying. Instead of the worker building the zip, it now sends a tiny manifest (just a file list, no actual bytes, comes back in ~2.4 seconds) and the browser pulls each file and builds the zip locally. Worker work stays tiny, it scales to any size, and it stays free. The lesson I’m keeping: don’t assume the first plausible cause is the only cause. “Streaming fixed it” was true and the thing still broke. The Notebook Prep pipeline. The bigger build. FGC has an engineering-documentation award judged on the journey a team took building their robot, and WeekLog already has our whole logged season sitting in it. So I built a pipeline that mines that logged data into notebook-prep material: per-subsystem timelines, a gap analysis that flags where our documentation is weak against what judges actually look for, a decision-log extractor, and a draft scaffold. The rule I built the whole thing around: it is a super-helper, never a ghost-writer. Every output is deliberately un-submittable, it hands you your own logged words as raw material plus [NEEDS: …] prompts where a human has to add the reasoning and the numbers. It never writes notebook prose and never invents a fact. A notebook that reads like an AI wrote it loses that award, because the whole point is proving the humans did the thinking. So the tool audits and prompts, it doesn’t author. The part I’m proud of architecturally: there’s no AI running in the app at all, and no ongoing cost. The deterministic stuff (timelines, coverage counts) is plain worker compute, and the actual reasoning is done by me in Claude Code following a runbook, then published into the app through a secret-gated write-back route. The app just renders whatever got published as red/amber/green cards and checklists. It doesn’t know or care that AI produced a report. Zero runtime AI cost, and the reasoning is grounded in a reference brief on what FGC judges reward so it’s not just generic advice. Shipped and live: the ZIP button works via the browser now, and Notebook Prep has all four tabs (Timeline, Gaps, Decisions, Scaffold) carrying real published content. 41 commits this session. More to come: judge-question rehearsal generated from our actual logged work, tracking notebook health over the season, and tagging photos to subsystems at upload so the timelines get richer."}, {"post_id": 9677, "ts": "2026-06-16T02:47:42Z", "hours": 0.6258, "text": "Devlog 3 A public demo, backend and all, with no backend The problem with showing WeekLog to anyone outside my team: it needs a Cloudflare Worker, a D1 database, and R2 storage to do anything. You can’t just hand someone a link and let them click around. So for a Stardance demo I needed a version that runs entirely in the browser, with realistic data, that nobody can break. Here’s the thing that made it almost free to build: every single data call in the app already went through just four functions in one file (api.ts). I set it up that way months ago so the UI never talks to the network directly. So to fake the entire backend, I didn’t touch a single feature screen. I swapped those four functions to delegate to an in-browser mock instead of fetch, ported the red/amber/green compliance logic verbatim out of the Worker, and seeded sample data into localStorage with dates relative to today so the demo always shows a realistic spread of healthy and flagged days. A little “DEMO · Reset” pill in the corner lets anyone wipe it back to clean. The lesson worth stealing: if every network call in your app funnels through one tiny choke point, you can replace your whole backend with a fake one without rewriting the app. This is the second time that one boring decision has paid off (the first was dropping in a full redesign without touching the logic). It’s honest about its own shortcuts, documented in a DEMO.md: uploaded image blobs live in memory so they show a placeholder after a refresh, and the ZIP export downloads a manifest instead of real zipping. Real Supabase magic-link auth is kept so the sign-in flow is genuine; everyone who logs in is just made an admin over the sample data. 40/40 tests pass, clean production build, tsc clean. Live as a static site on Cloudflare Pages, no Worker behind it. More to come: wiring the real Google Drive connector, a proper compliance summary view, and per-file delete. Next up: wiring the real Google Drive sync, a team-wide compliance summary view, and per-file delete."}, {"post_id": 6349, "ts": "2026-06-10T18:05:56Z", "hours": 1.6925, "text": "Quick one today. I needed multi-file uploads on meeting days, you should be able to attach several photos to a single meeting requirement, not just one. Turns out I’d already solved this exact problem for deadline proof files a while back. So instead of reinventing it, I basically reused the pattern I’d already built: same upload handling, same storage path, same way of listing and attaching multiple files to one thing. Honestly the satisfying part is that this was easy because of how I set things up earlier. Past me put the upload wiring in one shared place instead of copy-pasting it per feature, so extending it from “deadlines can have many files” to “meetings can too” was a small change, not a rewrite. It’s a nice reminder that the boring structural decisions pay off later. The work you do once to make the next change cheap is invisible until the moment it saves you. Onto the next thing. Still want to wire up the real Google Drive connector (the stub’s already in place for when our mentors share a folder), add a proper compliance summary view, and let people delete individual files."}, {"post_id": 5887, "ts": "2026-06-09T21:00:10Z", "hours": 3.0047, "text": "Devlog Went from empty repo to a deployed, working app this session. Here’s what’s actually in it. The core is a calendar. I mark which days are meeting days (with a bulk option so I can set “every Tuesday and Thursday” in one go instead of clicking 40 times). The second I mark a day, it snapshots the current requirement checklist onto that day, things like attendance, robot accomplishments, build needs, performance goals, photos of sketches. I built it as a snapshot on purpose so that editing the requirements later doesn’t reach back and rewrite old meetings. On each meeting day you can take attendance against the full 21-person roster, log accomplishments and build needs and failures (each tagged to a subsystem like drivetrain/shooter/climber), and upload photos and docs. Files go to Cloudflare R2. Then the part that makes it more than a folder: a compliance engine that derives a red/amber/green status for every day and every deadline. Green if all the compulsory stuff is in, amber if it’s recent and still in progress, red if a past meeting is missing something required. All of that rolls up into a dashboard that opens with one big team status plus a “needs attention” list of everything currently red, so you can see in two seconds where the team is behind. It also tracks standalone deadlines separate from meetings (our social media challenges have their own due dates and actually score competition points), and those go red when overdue. There’s a search/browse view across everything logged, an admin area for managing the roster and editing what counts as compulsory, and ZIP export of any day’s media plus a summary. Stack is all Cloudflare free tier: React + Vite frontend on Pages, a TypeScript Hono API on Workers, D1 (SQLite) for data, R2 for files, Supabase magic-link for login. 71 tests on the worker covering the compliance logic. Two things I’m glad I built in. A hard free-tier guard: files cap at 10MB and the worker refuses any upload that’d push total storage past 8GB, so a school project can never surprise me with a bill. And a clean separation between the UI and all the network/auth wiring, which let me drop in the full Team Qatar redesign without touching how anything works. This is v1, there’s a Google Drive connector already stubbed in for when our mentors share a folder, and a lot more I want to add. More to come."}]...
|
Title: FGC WeekLog by @Osmosis | Stardance
Devlog Title: FGC WeekLog by @Osmosis | Stardance
Devlogs:
Devlog Went from empty repo to a deployed, working app this session. Here’s what’s actually in it. The core is a calendar. I mark which days are meeting days (with a bulk option so I can set “every Tuesday and Thursday” in one go instead of clicking 40 times). The second I mark a day, it snapshots the current requirement checklist onto that day, things like attendance, robot accomplishments, build needs, performance goals, photos of sketches. I built it as a snapshot on purpose so that editing the requirements later doesn’t reach back and rewrite old meetings. On each meeting day you can take attendance against the full 21-person roster, log accomplishments and build needs and failures (each tagged to a subsystem like drivetrain/shooter/climber), and upload photos and docs. Files go to Cloudflare R2. Then the part that makes it more than a folder: a compliance engine that derives a red/amber/green status for every day and every deadline. Green if all the compulsory stuff is in, amber if it’s recent and still in progress, red if a past meeting is missing something required. All of that rolls up into a dashboard that opens with one big team status plus a “needs attention” list of everything currently red, so you can see in two seconds where the team is behind. It also tracks standalone deadlines separate from meetings (our social media challenges have their own due dates and actually score competition points), and those go red when overdue. There’s a search/browse view across everything logged, an admin area for managing the roster and editing what counts as compulsory, and ZIP export of any day’s media plus a summary. Stack is all Cloudflare free tier: React + Vite frontend on Pages, a TypeScript Hono API on Workers, D1 (SQLite) for data, R2 for files, Supabase magic-link for login. 71 tests on the worker covering the compliance logic. Two things I’m glad I built in. A hard free-tier guard: files cap at 10MB and the worker refuses any upload that’d push total storage past 8GB, so a school project can never surprise me with a bill. And a clean separation between the UI and all the network/auth wiring, which let me drop in the full Team Qatar redesign without touching how anything works. This is v1, there’s a Google Drive connector already stubbed in for when our mentors share a folder, and a lot more I want to add. More to come.
Quick one today. I needed multi-file uploads on meeting days, you should be able to attach several photos to a single meeting requirement, not just one. Turns out I’d already solved this exact problem for deadline proof files a while back. So instead of reinventing it, I basically reused the pattern I’d already built: same upload handling, same storage path, same way of listing and attaching multiple files to one thing. Honestly the satisfying part is that this was easy because of how I set things up earlier. Past me put the upload wiring in one shared place instead of copy-pasting it per feature, so extending it from “deadlines can have many files” to “meetings can too” was a small change, not a rewrite. It’s a nice reminder that the boring structural decisions pay off later. The work you do once to make the next change cheap is invisible until the moment it saves you. Onto the next thing. Still want to wire up the real Google Drive connector (the stub’s already in place for when our mentors share a folder), add a proper compliance summary view, and let people delete individual files.
Devlog 3 A public demo, backend and all, with no backend The problem with showing WeekLog to anyone outside my team: it needs a Cloudflare Worker, a D1 database, and R2 storage to do anything. You can’t just hand someone a link and let them click around. So for a Stardance demo I needed a version that runs entirely in the browser, with realistic data, that nobody can break. Here’s the thing that made it almost free to build: every single data call in the app already went through just four functions in one file (api.ts). I set it up that way months ago so the UI never talks to the network directly. So to fake the entire backend, I didn’t touch a single feature screen. I swapped those four functions to delegate to an in-browser mock instead of fetch, ported the red/amber/green compliance logic verbatim out of the Worker, and seeded sample data into localStorage with dates relative to today so the demo always shows a realistic spread of healthy and flagged days. A little “DEMO · Reset” pill in the corner lets anyone wipe it back to clean. The lesson worth stealing: if every network call in your app funnels through one tiny choke point, you can replace your whole backend with a fake one without rewriting the app. This is the second time that one boring decision has paid off (the first was dropping in a full redesign without touching the logic). It’s honest about its own shortcuts, documented in a DEMO.md: uploaded image blobs live in memory so they show a placeholder after a refresh, and the ZIP export downloads a manifest instead of real zipping. Real Supabase magic-link auth is kept so the sign-in flow is genuine; everyone who logs in is just made an admin over the sample data. 40/40 tests pass, clean production build, tsc clean. Live as a static site on Cloudflare Pages, no Worker behind it. More to come: wiring the real Google Drive connector, a proper compliance summary view, and per-file delete. Next up: wiring the real Google Drive sync, a team-wide compliance summary view, and per-file delete.
Devlog 4 - button that did nothing, and a notebook helper Two things this session. One was a bug that taught me the difference between “out of memory” and “out of time,” and a whole new feature for my robotics team. WeekLog has a “Download all media” button that zips up every photo the team’s uploaded. It just… didn’t work. No error, no download, nothing. The worst kind of bug because I had no idea where the problem lied First real clue came from the browser network tab: the request was coming back 503, and the error page was Cloudflare’s, not my app’s. It meant my code wasn’t throwing an error, the platform was killing my worker before it could respond. So the frontend was hiding a failure it should have shown, first I made it actually show me the error instead of just letting it fail Then the real chase. My worker was loading every file fully into memory and building the zip all at once, so I assumed it was running out of memory. I rewrote it to stream the zip instead, pulling one file at a time. Felt good. Still broke. So I tailed the live worker logs and got the actual smoking gun: “outcome”: “exceededCpu”. It wasn’t memory at all. The media set is about 404 MB, and just computing the checksums to zip that much data is more compute than a free-tier worker gets per request. Streaming fixed the memory ceiling and I still hit a completely separate CPU ceiling behind it. You genuinely cannot zip 404 MB inside one free worker call. The fix was to stop trying. Instead of the worker building the zip, it now sends a tiny manifest (just a file list, no actual bytes, comes back in ~2.4 seconds) and the browser pulls each file and builds the zip locally. Worker work stays tiny, it scales to any size, and it stays free. The lesson I’m keeping: don’t assume the first plausible cause is the only cause. “Streaming fixed it” was true and the thing still broke. The Notebook Prep pipeline. The bigger build. FGC has an engineering-documentation award judged on the journey a team took building their robot, and WeekLog already has our whole logged season sitting in it. So I built a pipeline that mines that logged data into notebook-prep material: per-subsystem timelines, a gap analysis that flags where our documentation is weak against what judges actually look for, a decision-log extractor, and a draft scaffold. The rule I built the whole thing around: it is a super-helper, never a ghost-writer. Every output is deliberately un-submittable, it hands you your own logged words as raw material plus [NEEDS: …] prompts where a human has to add the reasoning and the numbers. It never writes notebook prose and never invents a fact. A notebook that reads like an AI wrote it loses that award, because the whole point is proving the humans did the thinking. So the tool audits and prompts, it doesn’t author. The part I’m proud of architecturally: there’s no AI running in the app at all, and no ongoing cost. The deterministic stuff (timelines, coverage counts) is plain worker compute, and the actual reasoning is done by me in Claude Code following a runbook, then published into the app through a secret-gated write-back route. The app just renders whatever got published as red/amber/green cards and checklists. It doesn’t know or care that AI produced a report. Zero runtime AI cost, and the reasoning is grounded in a reference brief on what FGC judges reward so it’s not just generic advice. Shipped and live: the ZIP button works via the browser now, and Notebook Prep has all four tabs (Timeline, Gaps, Decisions, Scaffold) carrying real published content. 41 commits this session. More to come: judge-question rehearsal generated from our actual logged work, tracking notebook health over the season, and tagging photos to subsystems at upload so the timelines get richer.
Ships:
What did you make? WeekLog, a meeting compliance tracker for my FIRST Global Challenge robotics team (Team Qatar, ~21 people). Instead of being a file dump like a shared Drive folder, the spine is a calendar that creates obligations: I mark meeting days, each day gets a checklist of required materials, and the whole thing rolls up into a red/amber/green dashboard that tells you at a glance if a meeting is missing something or a deadline is coming up. It also tracks standalone deadlines like our social media challenges, which actually score competition points. What was challenging? Three honest ones. I designed the requirements system assuming every meeting needs the same checklist, then realized a CAD session and a strategy meeting have totally different needs, so I had to add per-meeting editable requirements without breaking the dashboard logic. There was a magic-link auth bug where logins kept bouncing to localhost (turned out to be a stale Supabase config). And building a public demo of an app that needs a backend meant faking the entire backend in the browser. What are you proud of? The architecture, specifically the boring parts that don’t show. Every network call funnels through one tiny choke point, and all the data logic sits in a pure layer the UI can’t touch. That one decision is why a full visual redesign dropped in without touching the math, and why I could replace the whole backend with a browser-based fake for the demo without rewriting a single feature screen. Invisible structure is the kind that saves you later. What should people know to test it? Use the demo link. It’s loaded with realistic sample data, dates are relative to today so you’ll see a mix of healthy and flagged days. Everyone who signs in is an admin, so poke at everything: mark meeting days, edit requirements, set deadlines, watch the dashboard go red/amber/green. There’s a “DEMO · Reset” pill in the corner to wipe it back to clean. Two known shortcuts: uploaded images show a placeholder after refresh (blobs are in-memory), and ZIP export downloads a manifest instead of a real zip....
|
1793508480.834003
|
1793594880.834003
|
|
12623
|
Untitled by @Hesitant | Stardance
|
Hesitant
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Hesitant | Stardance
|
1793292846.99074
|
1793897646.99074
|
|
12624
|
My first slack bot! by @bleakdragon | Stardance
|
bleakdragon
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @bleakdragon | Stard Title: My first slack bot! by @bleakdragon | Stardance...
|
1793469197.7866037
|
1794073997.7866037
|
|
12625
|
My awesome macropad! by @AvaRosealut3195 | Stardan My awesome macropad! by @AvaRosealut3195 | Stardance...
|
AvaRosealut3195
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @AvaRosealut3195 | Title: My awesome macropad! by @AvaRosealut3195 | Stardance...
|
1793505268.8756654
|
1794110068.8756654
|
|
12626
|
Radiation Detection Kit by @claas_duwald | Stardan Radiation Detection Kit by @claas_duwald | Stardance...
|
claas_duwald
|
0
|
12.56
|
0
|
[]
|
[{"post_id": 11479, "ts": "202 [{"post_id": 11479, "ts": "2026-06-18T19:14:00Z", "hours": 2.2242, "text": "A lot of time has flown into trying to debug the Audio amp and trying to get an good circuit for the Ion Chamber, tis more difficult than anticipated."}, {"post_id": 10650, "ts": "2026-06-17T14:44:54Z", "hours": 1.8867, "text": "Today i have started work on the Ion Chamber Dosimeter itself. it is for now just wireing up the scale selector resistors and working out how to desing the amplification circuit. but it is a lot of Fun"}, {"post_id": 10176, "ts": "2026-06-16T19:47:03Z", "hours": 1.4731, "text": "Ok, i started on the scematics for the Ion Chamber, but i also want to build an Audio amp using an LM386 since the headphones and speaker are currently to quiet and or not getting sufficent power."}, {"post_id": 10079, "ts": "2026-06-16T17:37:37Z", "hours": 0.6183, "text": "START OF PHASE 2!!!!!! The first part of theprojeckt radiation detection kit is done. Right now i can detect that somthing is there, but not how strong, i can only read Clics per Minute CPM, but i also want to know the Dose, so how strong in µS,mS or R or cG the radiation energy recived was. In comes the Ion Chamber, this is just an tin can with an Voltage supplyed where the Air (or other Gas) gets ionized by Radiation and these ions make the Air more conductive, you messure how much more conductive the air got and know how strong the radiation recived was. This is the next big, and more difficult part of this Projeckt."}, {"post_id": 9492, "ts": "2026-06-15T20:50:43Z", "hours": 0.2533, "text": "A handle? Now I can handle it! https://lapse.hackclub.com/timelapse/h14OERQ0aDhW"}, {"post_id": 9421, "ts": "2026-06-15T19:42:14Z", "hours": 1.1861, "text": "After 7h of 3D printing, i finaly got an case for my counter, the only thing missing for Version 1.0 is a carry handle, wich is currently being printed. in this version i updated the code to give more Data when analyzing. The metre is now compensated for different supply voltages."}, {"post_id": 8871, "ts": "2026-06-14T19:30:09Z", "hours": 0.4947, "text": "A couple of solid updates on the DIY Geiger counter build today. First, I adjusted the output voltage to properly drive the analog needle, which will now allow me to measure and cross-check everything for any power source deviations. I also wrapped up the final part of the probe assembly by adding the beta radiation shield (Shield Open in the Image). Testing is up next."}, {"post_id": 8743, "ts": "2026-06-14T15:23:49Z", "hours": 0.7783, "text": "Now i added an external power switch to be able to turn the Counter on and of. https://lapse.hackclub.com/timelapse/N8hBy7ZCzNz8"}, {"post_id": 8708, "ts": "2026-06-14T13:52:52Z", "hours": 0.6689, "text": "I just Printed and build the first half of the Probe https://lapse.hackclub.com/timelapse/suE76RFdoy59"}, {"post_id": 8668, "ts": "2026-06-14T12:21:15Z", "hours": 0.3894, "text": "i did some more CAD work, i made an Holder to be screwed on to the top plate of the actual indicator device. you can clip the GM tube into this holder as an Carry handle, this is inspired by the CDV-700 Geigercounter from the 1950-80 US Civil defense Radiation survey meters."}, {"post_id": 8655, "ts": "2026-06-14T11:38:51Z", "hours": 0.6025, "text": "i did some more soldering, and had an failed print :( https://lapse.hackclub.com/timelapse/wUGFuboVGjvS"}, {"post_id": 8599, "ts": "2026-06-14T09:28:49Z", "hours": 0.5917, "text": "Today I worked on the code for the Geiger counter analog meter display to get the needle moving smoothly. I also did some remodeling on the top of the Geiger counter box in CAD to improve the fit and look. Finally, I started 3D printing the very first iteration of the physical casing."}, {"post_id": 8412, "ts": "2026-06-13T23:46:40Z", "hours": 1.0061, "text": "Some modeling of an Test Case to see if all components Fit together https://lapse.hackclub.com/timelapse/eH2FPrrwa3ME"}, {"post_id": 8378, "ts": "2026-06-13T22:39:41Z", "hours": 0.3833, "text": "I am working on an Radiation Messuring Station, it is using a GM tube and an home made Ionisation Chamber. its an early point in development right now. I also let ChatGPT code me the driver for the Voltmeter."}]...
|
Title: Radiation Detection Kit by @claas_duwald | Title: Radiation Detection Kit by @claas_duwald | Stardance
Devlogs:
I am working on an Radiation Messuring Station, it is using a GM tube and an home made Ionisation Chamber. its an early point in development right now. I also let ChatGPT code me the driver for the Voltmeter.
Some modeling of an Test Case to see if all components Fit together https://lapse.hackclub.com/timelapse/eH2FPrrwa3ME
Today I worked on the code for the Geiger counter analog meter display to get the needle moving smoothly. I also did some remodeling on the top of the Geiger counter box in CAD to improve the fit and look. Finally, I started 3D printing the very first iteration of the physical casing.
i did some more soldering, and had an failed print :( https://lapse.hackclub.com/timelapse/wUGFuboVGjvS
i did some more CAD work, i made an Holder to be screwed on to the top plate of the actual indicator device. you can clip the GM tube into this holder as an Carry handle, this is inspired by the CDV-700 Geigercounter from the 1950-80 US Civil defense Radiation survey meters.
I just Printed and build the first half of the Probe https://lapse.hackclub.com/timelapse/suE76RFdoy59
Now i added an external power switch to be able to turn the Counter on and of. https://lapse.hackclub.com/timelapse/N8hBy7ZCzNz8
A couple of solid updates on the DIY Geiger counter build today. First, I adjusted the output voltage to properly drive the analog needle, which will now allow me to measure and cross-check everything for any power source deviations. I also wrapped up the final part of the probe assembly by adding the beta radiation shield (Shield Open in the Image). Testing is up next.
After 7h of 3D printing, i finaly got an case for my counter, the only thing missing for Version 1.0 is a carry handle, wich is currently being printed. in this version i updated the code to give more Data when analyzing. The metre is now compensated for different supply voltages.
A handle? Now I can handle it! https://lapse.hackclub.com/timelapse/h14OERQ0aDhW
START OF PHASE 2!!!!!! The first part of theprojeckt radiation detection kit is done. Right now i can detect that somthing is there, but not how strong, i can only read Clics per Minute CPM, but i also want to know the Dose, so how strong in µS,mS or R or cG the radiation energy recived was. In comes the Ion Chamber, this is just an tin can with an Voltage supplyed where the Air (or other Gas) gets ionized by Radiation and these ions make the Air more conductive, you messure how much more conductive the air got and know how strong the radiation recived was. This is the next big, and more difficult part of this Projeckt.
Ok, i started on the scematics for the Ion Chamber, but i also want to build an Audio amp using an LM386 since the headphones and speaker are currently to quiet and or not getting sufficent power.
Today i have started work on the Ion Chamber Dosimeter itself. it is for now just wireing up the scale selector resistors and working out how to desing the amplification circuit. but it is a lot of Fun
A lot of time has flown into trying to debug the Audio amp and trying to get an good circuit for the Ion Chamber, tis more difficult than anticipated....
|
1793504980.710169
|
1794109780.710169
|
|
12627
|
Untitled by @cybdo | Stardance
|
cybdo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @cybdo | Stardance
|
1792806758.3209395
|
1793411558.3209395
|
|
12628
|
ConstructX by @Elvo | Stardance
|
Elvo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ConstructX by @Elvo | Stardance
|
1793386141.4294088
|
1793990941.4294088
|
|
12629
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792950474.4310172
|
1793814474.4310172
|
|
12630
|
Omnia by @Parthiv | Stardance
|
Parthiv
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Omnia by @Parthiv | Stardance
|
1793170324.3332906
|
1793775124.3332906
|
|
12631
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792954158.4266343
|
1793818158.4266343
|
|
12632
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792925362.3740113
|
1793789362.3740113
|
|
12633
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792882229.212547
|
1793746229.212547
|
|
12634
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792939914.4077165
|
1793803914.4077165
|
|
12635
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792928924.808893
|
1793792924.808893
|
|
12636
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792893122.4565415
|
1793757122.4565415
|
|
12637
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792943565.0373828
|
1793807565.0373828
|
|
12638
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792950881.3627431
|
1793814881.3627431
|
|
12639
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792921926.9553986
|
1793785926.9553986
|
|
12640
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792950642.556524
|
1793814642.556524
|
|
12641
|
My awesome macropad! by @aroravaibhav249 | Stardan My awesome macropad! by @aroravaibhav249 | Stardance...
|
aroravaibhav249
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @aroravaibhav249 | Title: My awesome macropad! by @aroravaibhav249 | Stardance...
|
1793318212.2954102
|
1793923012.2954102
|
|
12642
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792889621.617656
|
1793753621.617656
|
|
12643
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792947071.297275
|
1793811071.297275
|
|
12644
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792936108.3368003
|
1793800108.3368003
|
|
12645
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792932644.7453249
|
1793796644.7453249
|
|
12646
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792947249.6611083
|
1793811249.6611083
|
|
12647
|
Portfolio by @sarveshwaran_k2008 | Stardance
|
sarveshwaran_k2008
|
0
|
0.62
|
0
|
[]
|
[{"post_id": 4860, "ts": "2026 [{"post_id": 4860, "ts": "2026-06-08T12:06:05Z", "hours": 0.6217, "text": "Changed the way the landing homepage looks, making it more refined, neat, and clean. Yet to add my official data in it"}]...
|
Title: Portfolio by @sarveshwaran_k2008 | Stardanc Title: Portfolio by @sarveshwaran_k2008 | Stardance
Devlogs:
Changed the way the landing homepage looks, making it more refined, neat, and clean. Yet to add my official data in it...
|
1793134341.001781
|
1793739141.001781
|
|
12648
|
My awesome macropad! by @tiyan | Stardance
|
tiyan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @tiyan | Stardance
|
1793162890.374301
|
1793767690.374301
|
|
12649
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792893196.6370635
|
1793757196.6370635
|
|
12650
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792936078.7866383
|
1793800078.7866383
|