|
52844
|
3 LED Arduino by @ejr | Stardance
|
ejr
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-24T16:10:14Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Just another simple enough project, a blinking 3 LED breadboard project. Nothing special and took me 5 minutes to set up and 2 mins to code", "repo": "https://github.com/realejr/3-LED-ARDUINO-BLINKER-CODE", "demo": ""}]...
|
[{"post_id": 52306, "ts": "202 [{"post_id": 52306, "ts": "2026-08-22T12:47:32Z", "hours": 0.35, "text": "Hey guys so I couldn’t figure out how to use lapse so the stuff I recorded is a bit doodoo.😔😔Anyways now that I can post a devlog on this project I can attach some proper pics and I got the kit today btw so I’m a bit new but I’m so glad I have something to push me to code again because I am very rusty."}]...
|
Title: 3 LED Arduino by @ejr | Stardance
Devlogs: Title: 3 LED Arduino by @ejr | Stardance
Devlogs:
Hey guys so I couldn’t figure out how to use lapse so the stuff I recorded is a bit doodoo.😔😔Anyways now that I can post a devlog on this project I can attach some proper pics and I got the kit today btw so I’m a bit new but I’m so glad I have something to push me to code again because I am very rusty.
Ships:
Just another simple enough project, a blinking 3 LED breadboard project. Nothing special and took me 5 minutes to set up and 2 mins to code...
|
1793714301.5792382
|
1793800701.5792382
|
|
52839
|
HimalOS by @gravityonmars | Stardance
|
gravityonmars
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T14:28:08Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "So I made HimalOS for WebOS1 mission, I tried to meet every criteria of the project and yeah I published it using github pages for a interactive demo.", "repo": "https://github.com/gravityonmars/HimalOS", "demo": "https://gravityonmars.github.io/HimalOS/"}]...
|
[{"post_id": 52365, "ts": "202 [{"post_id": 52365, "ts": "2026-08-22T14:05:24Z", "hours": 1.0525, "text": "So I completed the JS, and added apps like eight peaks which shows the 8 peaks of Nepal, field notes with note, and Parva that shows Nepal’s main festivals and Samaya that means time in Nepali which shows the time and setting where user can change theme of the webapp"}, {"post_id": 52303, "ts": "2026-08-22T12:45:32Z", "hours": 0.4639, "text": "added some styling to the OS"}, {"post_id": 52285, "ts": "2026-08-22T12:17:25Z", "hours": 0.3831, "text": "So I completed the HTML Structure of the HimalOS"}]...
|
Title: HimalOS by @gravityonmars | Stardance
Devl Title: HimalOS by @gravityonmars | Stardance
Devlogs:
So I completed the HTML Structure of the HimalOS
added some styling to the OS
So I completed the JS, and added apps like eight peaks which shows the 8 peaks of Nepal, field notes with note, and Parva that shows Nepal’s main festivals and Samaya that means time in Nepali which shows the time and setting where user can change theme of the webapp
Ships:
So I made HimalOS for WebOS1 mission, I tried to meet every criteria of the project and yeah I published it using github pages for a interactive demo....
|
1793714299.7509542
|
1793800699.7509542
|
|
66258
|
My awesome macropad! by @idhan-k28 | Stardance
|
idhan-k28
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @idhan-k28 | Starda Title: My awesome macropad! by @idhan-k28 | Stardance...
|
1793714295.8135073
|
1794319095.8135073
|
|
66256
|
PyArcade by @niyattt | Stardance
|
niyattt
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: PyArcade by @niyattt | Stardance
|
1793714294.9358377
|
1794319094.9358377
|
|
52828
|
Real-time precision age calculator by @mohamed_mub Real-time precision age calculator by @mohamed_mubeel_s | Stardance...
|
mohamed_mubeel_s
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T13:50:57Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a precision age calculator that breaks down your exact lifetime across multiple units—years, months, weeks, days, hours, and seconds. The trickiest part was getting the real-time time conversions and leap-year math to stay accurate down to the exact second. I designed the interface using Google Stitch for a clean Material 3 layout and styled it with Tailwind CSS, while using Google Antigravity to structure the code and ChatGPT to help debug edge cases in the date-calculation logic. To test it out, just enter your birth date and watch all the lifetime breakdown metrics update in real time!", "repo": "https://github.com/mohamedmubeels/age", "demo": "https://age-mubeel.vercel.app/"}]...
|
[{"post_id": 52341, "ts": "202 [{"post_id": 52341, "ts": "2026-08-22T13:33:57Z", "hours": 1.9692, "text": "Real-time precision age calculator & lifetime metrics comparator built with Vanilla JS, Tailwind CSS, and Material 3D"}]...
|
Title: Real-time precision age calculator by @moha Title: Real-time precision age calculator by @mohamed_mubeel_s | Stardance
Devlogs:
Real-time precision age calculator & lifetime metrics comparator built with Vanilla JS, Tailwind CSS, and Material 3D
Ships:
I built a precision age calculator that breaks down your exact lifetime across multiple units—years, months, weeks, days, hours, and seconds. The trickiest part was getting the real-time time conversions and leap-year math to stay accurate down to the exact second. I designed the interface using Google Stitch for a clean Material 3 layout and styled it with Tailwind CSS, while using Google Antigravity to structure the code and ChatGPT to help debug edge cases in the date-calculation logic. To test it out, just enter your birth date and watch all the lifetime breakdown metrics update in real time!...
|
1793714293.8017192
|
1793800693.8017192
|
|
66254
|
Instagram Blocker by @louisevincent289 | Stardance
|
louisevincent289
|
0
|
2.76
|
0
|
[]
|
[{"post_id": 74408, "ts": "202 [{"post_id": 74408, "ts": "2026-09-27T10:25:14Z", "hours": 2.7633, "text": "I have successfully updated all the XPATH’s so that the program works with instagram’s current html setup, unfortunatley they regularly change it so I had to seperate the variables so that it can easily be changed in the future."}]...
|
Title: Instagram Blocker by @louisevincent289 | St Title: Instagram Blocker by @louisevincent289 | Stardance
Devlogs:
I have successfully updated all the XPATH’s so that the program works with instagram’s current html setup, unfortunatley they regularly change it so I had to seperate the variables so that it can easily be changed in the future....
|
1793714292.920392
|
1794319092.920392
|
|
66253
|
My own site! by @stvrr_luvvrr | Stardance
|
stvrr_luvvrr
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @stvrr_luvvrr | Stardance
|
1793714292.0262558
|
1794319092.0262558
|
|
66252
|
Glacex by @artem | Stardance
|
artem
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Glacex by @artem | Stardance
|
1793714290.5426428
|
1794319090.5426428
|
|
66251
|
BlokaCARE by @bloka_blesson | Stardance
|
bloka_blesson
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: BlokaCARE by @bloka_blesson | Stardance
|
1793714289.6310985
|
1794319089.6310985
|
|
57497
|
Ronaldo by @neetyan | Stardance
|
neetyan
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-03T15:01:18Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What I Made I built a custom WebOS web page with multiple working draggable windows, giving it a unique visual style so it doesn’t look like a copy of the guide. What Was Challenging Getting the dragging physics and window layering to feel smooth was definitely the hardest part, especially making sure windows didn’t glitch out or overlap weirdly while moving them around. What I’m Proud Of I’m super happy with how clean the multi-window layout turned out and that I got my extra custom feature running without breaking the rest of the site. Testing Instructions No password required! Just open up the project link, click and drag any window to move it around, and test out the interactive features directly in your browser.", "repo": "https://www.github.com/neetyan56-gif/Ronaldo", "demo": "https://8j4fs036-5500.use.devtunnels.ms/"}]...
|
[{"post_id": 60873, "ts": "202 [{"post_id": 60873, "ts": "2026-09-03T14:57:19Z", "hours": 0.2653, "text": "Finished the apps also this thing is broken i have been working for 3 hours and it says 1 :( any way its not the best but its for web os 1"}, {"post_id": 60838, "ts": "2026-09-03T13:47:14Z", "hours": 0.4897, "text": "Added some draggable images and app icons will probably add a few more apps and some playable games."}, {"post_id": 60401, "ts": "2026-09-02T18:19:17Z", "hours": 0.3406, "text": "Ronaldo OS still needs lot of work but looking for suggestions"}]...
|
Title: Ronaldo by @neetyan | Stardance
Devlogs:
R Title: Ronaldo by @neetyan | Stardance
Devlogs:
Ronaldo OS still needs lot of work but looking for suggestions
Added some draggable images and app icons will probably add a few more apps and some playable games.
Finished the apps also this thing is broken i have been working for 3 hours and it says 1 :( any way its not the best but its for web os 1
Ships:
What I Made I built a custom WebOS web page with multiple working draggable windows, giving it a unique visual style so it doesn’t look like a copy of the guide. What Was Challenging Getting the dragging physics and window layering to feel smooth was definitely the hardest part, especially making sure windows didn’t glitch out or overlap weirdly while moving them around. What I’m Proud Of I’m super happy with how clean the multi-window layout turned out and that I got my extra custom feature running without breaking the rest of the site. Testing Instructions No password required! Just open up the project link, click and drag any window to move it around, and test out the interactive features directly in your browser....
|
1793714288.36011
|
1793800688.36011
|
|
66250
|
My first slack bot! by @guyjustchill121 | Stardanc My first slack bot! by @guyjustchill121 | Stardance...
|
guyjustchill121
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @guyjustchill121 | S Title: My first slack bot! by @guyjustchill121 | Stardance...
|
1793714287.4717646
|
1794319087.4717646
|
|
13082
|
SimpleOS by @Abrowny2944 | Stardance
|
Abrowny2944
|
2
|
5.0
|
5
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-30T21:04:39Z", "hours": 1.0, "multiplier": 4.8, "payout": 5, "blessing": "neutral", "text": "I added an OS info page to settings, made a calculator app and a turbowarp packager app", "repo": "https://github.com/Abrowny2944/SimpleOS", "demo": "https://abrowny2944.neocities.org/SimpleOS"}, {"ship_num": 2, "ts": "2026-06-18T12:51:38Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a WebOS called SimpleOS. There are four apps currently: *Info app *Document editor app *Weather app *Settings app You can change your wallpaper in the settings app or just select a solid color using the color picker. There is a working time and date display, a launcher menu that is currently empty except for the SimpleOS text that opens the info app. The wallpapers were made using a simulated environment.", "repo": "https://github.com/Abrowny2944/SimpleOS", "demo": "https://abrowny2944.neocities.org/SimpleOS"}]...
|
[{"post_id": 19519, "ts": "202 [{"post_id": 19519, "ts": "2026-06-30T20:56:14Z", "hours": 0.305, "text": "Added calculator app and turbowarp packager app"}, {"post_id": 18699, "ts": "2026-06-29T21:44:14Z", "hours": 0.7119, "text": "Added About page to settings app and update to settings app to allow multiple pages. Also an update to style of buttons inside of the settings app"}, {"post_id": 9525, "ts": "2026-06-15T21:57:39Z", "hours": 0.5111, "text": "I have added a settings app with 3 wallpaper options and a solid color option"}, {"post_id": 9403, "ts": "2026-06-15T19:06:20Z", "hours": 1.8269, "text": "Added 3 apps *Info app *Document editor app *Weather app Also a date and time display has been added to the taskbar"}, {"post_id": 5945, "ts": "2026-06-09T23:01:57Z", "hours": 1.5506, "text": "I have added a working launcher menu, a taskbar and a background image also I have added css styles to improve how the UI looks and for animations."}]...
|
Title: SimpleOS by @Abrowny2944 | Stardance
Devlo Title: SimpleOS by @Abrowny2944 | Stardance
Devlogs:
I have added a working launcher menu, a taskbar and a background image also I have added css styles to improve how the UI looks and for animations.
Added 3 apps *Info app *Document editor app *Weather app Also a date and time display has been added to the taskbar
I have added a settings app with 3 wallpaper options and a solid color option
Added About page to settings app and update to settings app to allow multiple pages. Also an update to style of buttons inside of the settings app
Added calculator app and turbowarp packager app
Ships:
I made a WebOS called SimpleOS. There are four apps currently: *Info app *Document editor app *Weather app *Settings app You can change your wallpaper in the settings app or just select a solid color using the color picker. There is a working time and date display, a launcher menu that is currently empty except for the SimpleOS text that opens the info app. The wallpapers were made using a simulated environment.
I added an OS info page to settings, made a calculator app and a turbowarp packager app...
|
1793714286.2949848
|
1793800686.2949848
|
|
70564
|
Orbit by @amirmzte13 | Stardance
|
amirmzte13
|
0
|
10.31
|
0
|
[]
|
[{"post_id": 81137, "ts": "202 [{"post_id": 81137, "ts": "2026-10-20T01:04:53Z", "hours": 10.3089, "text": "Currently working on organizing the folders and linking this to vercel."}]...
|
Title: Orbit by @amirmzte13 | Stardance
Devlogs:
Title: Orbit by @amirmzte13 | Stardance
Devlogs:
Currently working on organizing the folders and linking this to vercel....
|
1793714285.4216568
|
1794319085.4216568
|
|
70563
|
game by @wchia333 | Stardance
|
wchia333
|
0
|
3.67
|
0
|
[]
|
[{"post_id": 82883, "ts": "202 [{"post_id": 82883, "ts": "2026-10-26T04:41:19Z", "hours": 0.8186, "text": "Started Platformer!"}, {"post_id": 82763, "ts": "2026-10-25T19:23:20Z", "hours": 0.3514, "text": "Made some rad assets"}, {"post_id": 82751, "ts": "2026-10-25T18:54:35Z", "hours": 1.6969, "text": "Almost finished with level select screen, timer code is giving me some trouble. Overall pretty fun project!"}, {"post_id": 82489, "ts": "2026-10-24T23:48:42Z", "hours": 0.8019, "text": "Made Title Screen!"}]...
|
Title: game by @wchia333 | Stardance
Devlogs:
Mad Title: game by @wchia333 | Stardance
Devlogs:
Made Title Screen!
Almost finished with level select screen, timer code is giving me some trouble. Overall pretty fun project!
Made some rad assets
Started Platformer!...
|
1793714284.4980392
|
1794319084.4980392
|
|
55317
|
sensor encoder project by @smrethi_shun | Stardanc sensor encoder project by @smrethi_shun | Stardance...
|
smrethi_shun
|
1
|
9.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-28T06:02:46Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is my shot at Human Computer Lab’s ML challenge! It’s a compare and contrast between two data classification methods, a direct classifier and a small language model. Basically, both models read sensor data from UCI’s Human Activity Recognition Using Smartphones dataset, and learn to classify actions from the data (walking, standing, sitting, etc). The language model has to create embeddings directly from data, not turn it to language first. Then, we compare the macro-F1 scores of the direct classifier, the language model, and a trick test for the language model, purposefully switching embeddings so that way you know that the model is reliant on the embeddings only. VERY IMPORTANT!!!! The link to try this project is fake. You have to clone the project and run it in your terminal! Instructions are on the readme!!", "repo": "https://github.com/smoothieee33/sensor-encoder-challenge", "demo": "https://github.com/smoothieee33/sensor-encoder-challenge/releases/tag/v1.0.0"}]...
|
[{"post_id": 56417, "ts": "202 [{"post_id": 56417, "ts": "2026-08-28T05:46:04Z", "hours": 8.8908, "text": "Whoaaa Ive been MIA for a hawt minute lol. Anyway surprise! Brand new project popped out of nowhere! For context, I applied to an internship which had an optional project/challenge to do. Basically, I had to test a new form of data processing. I had to classify sensor data data into categories using a small language model rather than a traditional direct classifier. So thats what I did. I compared and contrasted the two methods in terms of macro F1 score, runtime, etc. Everything is kinda one fall swoop, heres the completed project lol."}]...
|
Title: sensor encoder project by @smrethi_shun | S Title: sensor encoder project by @smrethi_shun | Stardance
Devlogs:
Whoaaa Ive been MIA for a hawt minute lol. Anyway surprise! Brand new project popped out of nowhere! For context, I applied to an internship which had an optional project/challenge to do. Basically, I had to test a new form of data processing. I had to classify sensor data data into categories using a small language model rather than a traditional direct classifier. So thats what I did. I compared and contrasted the two methods in terms of macro F1 score, runtime, etc. Everything is kinda one fall swoop, heres the completed project lol.
Ships:
This is my shot at Human Computer Lab’s ML challenge! It’s a compare and contrast between two data classification methods, a direct classifier and a small language model. Basically, both models read sensor data from UCI’s Human Activity Recognition Using Smartphones dataset, and learn to classify actions from the data (walking, standing, sitting, etc). The language model has to create embeddings directly from data, not turn it to language first. Then, we compare the macro-F1 scores of the direct classifier, the language model, and a trick test for the language model, purposefully switching embeddings so that way you know that the model is reliant on the embeddings only. VERY IMPORTANT!!!! The link to try this project is fake. You have to clone the project and run it in your terminal! Instructions are on the readme!!...
|
1793714283.3894415
|
1793800683.3894415
|
|
28552
|
Stock Analyzer by @Ditto | Stardance
|
Ditto
|
1
|
2.27
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-30T14:57:28Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a Python-based website that retrieves data using the TwelveData API and draws graphs and tables using Pandas.", "repo": "https://github.com/d08835149-prog/Stock-Analyzer", "demo": "https://stock-analyzer-snowy.vercel.app/"}]...
|
[{"post_id": 54576, "ts": "202 [{"post_id": 54576, "ts": "2026-08-25T16:30:24Z", "hours": 1.2692, "text": "Stock Analyzer I am currently overhauling all the files to deploy from a cold-starting Streamlet to Velcel. I have finished the UI so far and am now converting the features to work with Velcel…I"}, {"post_id": 18916, "ts": "2026-06-30T03:07:27Z", "hours": 0.9533, "text": "This is the first website I created. It is a stock analysis website. …..I am looking for someone to give me some feedback (language, adding features, anything is fine)………There is one problem, though. The time period selection is a bit strange, so I would appreciate it if you could recommend a way to fix it."}]...
|
Title: Stock Analyzer by @Ditto | Stardance
Devlo Title: Stock Analyzer by @Ditto | Stardance
Devlogs:
This is the first website I created. It is a stock analysis website. …..I am looking for someone to give me some feedback (language, adding features, anything is fine)………There is one problem, though. The time period selection is a bit strange, so I would appreciate it if you could recommend a way to fix it.
Stock Analyzer I am currently overhauling all the files to deploy from a cold-starting Streamlet to Velcel. I have finished the UI so far and am now converting the features to work with Velcel…I
Ships:
This is a Python-based website that retrieves data using the TwelveData API and draws graphs and tables using Pandas....
|
1793714282.1661325
|
1793800682.1661325
|
|
70562
|
My awesome macropad! by @Jeremiah13 | Stardance
|
Jeremiah13
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Jeremiah13 | Stard Title: My awesome macropad! by @Jeremiah13 | Stardance...
|
1793714281.2650065
|
1794319081.2650065
|
|
16651
|
TheWindArcanumOS by @TheWindArcanum | Stardance
|
TheWindArcanum
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-05T15:50:35Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my first webOS It was very..new; it’s my first time even touching code, so it took me a while to even be able to comprehend what was happening", "repo": "https://github.com/TheWindArcanum/TheWindArcanum.OS", "demo": "https://thewindarcanum.github.io/TheWindArcanum.OS/"}]...
|
[{"post_id": 22910, "ts": "202 [{"post_id": 22910, "ts": "2026-07-05T15:31:33Z", "hours": 0.7964, "text": "Made the UI in CSS, over 150 lines of code just for this aesthetic, completely worth it, I love video games, so I’m gonna show that to the world, GOOD NEWS, THE BUTTONS WORK! I made the clock look better and bigger and shoved it into timeout(the corner), AND THE FONT I WENT THROUGH 5 DIFFERENT FONTS JUST TO COME BACK TO THIS ONE LOL, i changed up the color scheme too, well that’s my last devlog for this project for a while, i have a lot more planned for webOS 2 though SO PLS GIVE ME YOUR SUPPORT(i want a camera to get better shots of clouds- I’m a amateur photographer)"}, {"post_id": 22824, "ts": "2026-07-05T12:56:40Z", "hours": 4.4739, "text": "I started working on the CSS and JS, and it’s starting to look… good? Idk, but I’ve spent hours trying to GET THESE UNCOOPERATIVE BUTTONS TO WORK! Oh, and I’ve also been learning a lot about coding; for example, the memes were not kidding. This is painful. More next time"}, {"post_id": 8083, "ts": "2026-06-13T14:31:13Z", "hours": 0.6461, "text": "Started working on the html bit of it, basically just laying the foundation for it, i just stuck to the guide(i had no clue what i was doing pls send help)"}]...
|
Title: TheWindArcanumOS by @TheWindArcanum | Stard Title: TheWindArcanumOS by @TheWindArcanum | Stardance
Devlogs:
Started working on the html bit of it, basically just laying the foundation for it, i just stuck to the guide(i had no clue what i was doing pls send help)
I started working on the CSS and JS, and it’s starting to look… good? Idk, but I’ve spent hours trying to GET THESE UNCOOPERATIVE BUTTONS TO WORK! Oh, and I’ve also been learning a lot about coding; for example, the memes were not kidding. This is painful. More next time
Made the UI in CSS, over 150 lines of code just for this aesthetic, completely worth it, I love video games, so I’m gonna show that to the world, GOOD NEWS, THE BUTTONS WORK! I made the clock look better and bigger and shoved it into timeout(the corner), AND THE FONT I WENT THROUGH 5 DIFFERENT FONTS JUST TO COME BACK TO THIS ONE LOL, i changed up the color scheme too, well that’s my last devlog for this project for a while, i have a lot more planned for webOS 2 though SO PLS GIVE ME YOUR SUPPORT(i want a camera to get better shots of clouds- I’m a amateur photographer)
Ships:
I made my first webOS It was very..new; it’s my first time even touching code, so it took me a while to even be able to comprehend what was happening...
|
1793714280.0967224
|
1793800680.0967224
|
|
30152
|
Ice Cream Website by @Kailey | Stardance
|
Kailey
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-03T03:18:48Z", "hours": 0.0, "multiplier": 1.01, "payout": 0, "blessing": "neutral", "text": "I made a simple website about ice cream using HTML and CSS", "repo": "https://github.com/KaileyLiou/Ice-Cream", "demo": "https://kaileyliou.github.io/Ice-Cream/"}]...
|
[{"post_id": 21269, "ts": "202 [{"post_id": 21269, "ts": "2026-07-03T03:18:17Z", "hours": 0.3378, "text": "Finished css, added borders to images, center-aligned everything, changed font"}]...
|
Title: Ice Cream Website by @Kailey | Stardance
D Title: Ice Cream Website by @Kailey | Stardance
Devlogs:
Finished css, added borders to images, center-aligned everything, changed font
Ships:
I made a simple website about ice cream using HTML and CSS...
|
1793714278.9188426
|
1793800678.9188426
|
|
338
|
Weather tracker by @FabulousHippoOfOrangeLake | St Weather tracker by @FabulousHippoOfOrangeLake | Stardance...
|
FabulousHippoOfOrangeLake
|
2
|
8.0
|
49
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-03T08:25:49Z", "hours": 0.0, "multiplier": 2.95, "payout": 1, "blessing": "neutral", "text": "This was my first ever project that had an actual gui, using pyqt6 was a task because the video i was taking inspiration and assistance from was a tutorial for pyqt5☠️. Along with that this was actually my first ever project for stardance and hackclub so i am proud of it, but in the future i will probably be even more proud of what i had done in this project and how it heped me develop my upcoming projects..", "repo": "https://github.com/sharmashashwat27-source/Weather_Application", "demo": "https://github.com/sharmashashwat27-source/Weather_Application/releases/tag/v1.0.0"}, {"ship_num": 2, "ts": "2026-06-06T13:24:18Z", "hours": 8.0, "multiplier": 6.29, "payout": 48, "blessing": "neutral", "text": "I created a desktop weather application using Python, PyQt6, and the OpenWeatherMap API that allows users to search for cities and view real-time weather information. The application displays details such as temperature, weather conditions, and weather icons through a simple and user-friendly graphical interface. Some of the biggest challenges were integrating the API and ensuring that the application could correctly handle errors such as invalid city names, missing data, or connection issues and the fact that this was my first PyQt6 project. I am proud of finally creating a GUI project in python that is fully functional I am also proud of how this project combines programming, API integration, and GUI design into a practical tool that people can use every day. To test the project, users simply need to run the application, enter the name of a city, and the latest weather information will be retrieved and displayed instantly.", "repo": "https://github.com/sharmashashwat27-source/Weather_Application", "demo": "https://github.com/sharmashashwat27-source/Weather_Application/releases/tag/v1.0.0"}]...
|
[{"post_id": 3492, "ts": "2026 [{"post_id": 3492, "ts": "2026-06-06T13:36:12Z", "hours": 0.25, "text": "DEVLOG #4 Not going to lie this devlog was not necessary because I didn’t really code today I just made minor changes, i made this devlog just because the platform asked me to post another one before shipping but here’s a summary of my project: This project involved developing a weather application that provides users with quick access to current weather conditions for cities around the world .Developing this weather application was a valuable learning experience that improved my skills in Python programming, API integration, and GUI design. Throughout the project, I overcame challenges related to data retrieval and error handling while creating a functional and user-friendly application. The project strengthened both my technical and problem-solving abilities"}, {"post_id": 2784, "ts": "2026-06-05T16:18:29Z", "hours": 2.0767, "text": "DEVLOG#3 Today I was worked up fixing all the small details like how when you enter a city and you get the weather and then after that when you enter an invalid city you still see the previous emoji and weather description; this ended up being an easy fix but the demo url version is a previous model so is the release on the github page, updating these things are the first thing im going to do tomorrow ,I’m also considering working on a popup bar for when you start typing a city’s name and according to the limited amount of letters entered it gives you suggestion; like the google search bar. So yeah that’s today’s summary, but most probably I’m not gonna do that since this is just my first project and i want to keep it light and simple ,instead what i will do is that I’ll start working on a more time consuming one and put more efforts into that . Anyways I hope to submit this project by tomorrow and this is probably me signing off from this project"}, {"post_id": 2176, "ts": "2026-06-04T15:04:39Z", "hours": 3.3097, "text": "DEVLOG #2 This was my second day of working on this project and somehow i finished it! (kind of).Using the API keys to display the weather conditions of different places was vey easy. What took me 5 hours was me making stupid mistakes and taking a shit ton of time to correct them, and it was also my first time making a GUI project in python using PyQt6.I also realized that this was a very light, less time consuming project and I hope to keep on going to make harder, more complex and more time consuming projects. Wonderful Experience! Btw: The reason I said “kind of” was because the moment at which I’m writing this I haven’t made the final touches like using fitting emojis, completing the project information (i hope i can by the end of day)."}, {"post_id": 869, "ts": "2026-06-02T16:17:49Z", "hours": 2.2728, "text": "DEVLOG #1 This was my first day of working on this project (a weather tracker application). This was also my first time making a GUI using python ,I used PyQt6, though the tutorial I was following used PyQt5, converting was the easy part ,but I kept making simple mistakes! :like forgetting to call the self.initUI method, wrong indentation, and similar stupid ahh mistakes. But overall, I found the project very interesting to work on as I learnt alot more about python than I previously new. I hope that I can keep posting updates about the project every day, without breaks and I also hope to learn even more things!"}]...
|
Title: Weather tracker by @FabulousHippoOfOrangeLa Title: Weather tracker by @FabulousHippoOfOrangeLake | Stardance
Devlogs:
DEVLOG #1 This was my first day of working on this project (a weather tracker application). This was also my first time making a GUI using python ,I used PyQt6, though the tutorial I was following used PyQt5, converting was the easy part ,but I kept making simple mistakes! :like forgetting to call the self.initUI method, wrong indentation, and similar stupid ahh mistakes. But overall, I found the project very interesting to work on as I learnt alot more about python than I previously new. I hope that I can keep posting updates about the project every day, without breaks and I also hope to learn even more things!
DEVLOG #2 This was my second day of working on this project and somehow i finished it! (kind of).Using the API keys to display the weather conditions of different places was vey easy. What took me 5 hours was me making stupid mistakes and taking a shit ton of time to correct them, and it was also my first time making a GUI project in python using PyQt6.I also realized that this was a very light, less time consuming project and I hope to keep on going to make harder, more complex and more time consuming projects. Wonderful Experience! Btw: The reason I said “kind of” was because the moment at which I’m writing this I haven’t made the final touches like using fitting emojis, completing the project information (i hope i can by the end of day).
DEVLOG#3 Today I was worked up fixing all the small details like how when you enter a city and you get the weather and then after that when you enter an invalid city you still see the previous emoji and weather description; this ended up being an easy fix but the demo url version is a previous model so is the release on the github page, updating these things are the first thing im going to do tomorrow ,I’m also considering working on a popup bar for when you start typing a city’s name and according to the limited amount of letters entered it gives you suggestion; like the google search bar. So yeah that’s today’s summary, but most probably I’m not gonna do that since this is just my first project and i want to keep it light and simple ,instead what i will do is that I’ll start working on a more time consuming one and put more efforts into that . Anyways I hope to submit this project by tomorrow and this is probably me signing off from this project
DEVLOG #4 Not going to lie this devlog was not necessary because I didn’t really code today I just made minor changes, i made this devlog just because the platform asked me to post another one before shipping but here’s a summary of my project: This project involved developing a weather application that provides users with quick access to current weather conditions for cities around the world .Developing this weather application was a valuable learning experience that improved my skills in Python programming, API integration, and GUI design. Throughout the project, I overcame challenges related to data retrieval and error handling while creating a functional and user-friendly application. The project strengthened both my technical and problem-solving abilities
Ships:
I created a desktop weather application using Python, PyQt6, and the OpenWeatherMap API that allows users to search for cities and view real-time weather information. The application displays details such as temperature, weather conditions, and weather icons through a simple and user-friendly graphical interface. Some of the biggest challenges were integrating the API and ensuring that the application could correctly handle errors such as invalid city names, missing data, or connection issues and the fact that this was my first PyQt6 project. I am proud of finally creating a GUI project in python that is fully functional I am also proud of how this project combines programming, API integration, and GUI design into a practical tool that people can use every day. To test the project, users simply need to run the application, enter the name of a city, and the latest weather information will be retrieved and displayed instantly.
This was my first ever project that had an actual gui, using pyqt6 was a task because the video i was taking inspiration and assistance from was a tutorial for pyqt5☠️. Along with that this was actually my first ever project for stardance and hackclub so i am proud of it, but in the future i will probably be even more proud of what i had done in this project and how it heped me develop my upcoming projects.....
|
1793714277.7457387
|
1793800677.7457387
|
|
38004
|
Asteroid Radar by @akshaj_nagamalli | Stardance
|
akshaj_nagamalli
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-21T16:10:18Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Asteroid Radar is a Streamlit web app that pulls a week of NASA near-Earth-object data and ranks asteroids by a weighted danger score (0.4 size / 0.3 speed / 0.3 distance). It shows a sorted table, a top-10 danger chart, and a dropdown to inspect any asteroid. Most challenging part: Streamlit re-runs the whole script on every click, so I had to cache the NASA fetch with @st .cache_data to keep it fast. Proud of designing the danger model myself and getting it deployed live. To test: open the demo link, browse the table, check the chart, and pick asteroids from the dropdown.", "repo": "https://github.com/akshajnagamalli-dev/Stardance-Challenge-submission", "demo": "https://stardance-challenge-submission-3xltz4kyxkumfq7jf22mmk.streamlit.app/"}]...
|
[{"post_id": 32376, "ts": "202 [{"post_id": 32376, "ts": "2026-07-21T14:46:31Z", "hours": 4.165, "text": "Asteroid Radar is now a working web app Turned my asteroid danger-ranking model into a live Streamlit app today. Recap of what it does: it pulls a week of NASA near-Earth-object data, normalizes size, speed, and miss-distance onto a 0–1 scale, and combines them into a weighted danger score. I weighted it size-heavy on purpose (0.4 size / 0.3 speed / 0.3 distance) — my reasoning is that a large impactor is the bigger threat even from farther out, so the biggest rock should outrank the closest one. The app has three pieces: A full table of all asteroids, sorted by danger. A top-10 horizontal bar chart. Ran into a fun bug here — Plotly draws bars bottom-up, so my “most dangerous” chart rendered upside down with the scariest asteroid at the bottom. Reversed the data feeding the chart to flip it right. A dropdown to pick any asteroid and see its full stats. Biggest thing I learned: Streamlit re-runs your entire script on every interaction, so the NASA API call was firing on every click. Wrapped it in @st .cache_data so it fetches once and reuses the result — now the dropdown updates instantly instead of re-hitting the API every time. Also cleaned up for shipping: moved my API key into Streamlit secrets (out of the committed code) and pushed a clean repo to GitHub."}]...
|
Title: Asteroid Radar by @akshaj_nagamalli | Stard Title: Asteroid Radar by @akshaj_nagamalli | Stardance
Devlogs:
Asteroid Radar is now a working web app Turned my asteroid danger-ranking model into a live Streamlit app today. Recap of what it does: it pulls a week of NASA near-Earth-object data, normalizes size, speed, and miss-distance onto a 0–1 scale, and combines them into a weighted danger score. I weighted it size-heavy on purpose (0.4 size / 0.3 speed / 0.3 distance) — my reasoning is that a large impactor is the bigger threat even from farther out, so the biggest rock should outrank the closest one. The app has three pieces: A full table of all asteroids, sorted by danger. A top-10 horizontal bar chart. Ran into a fun bug here — Plotly draws bars bottom-up, so my “most dangerous” chart rendered upside down with the scariest asteroid at the bottom. Reversed the data feeding the chart to flip it right. A dropdown to pick any asteroid and see its full stats. Biggest thing I learned: Streamlit re-runs your entire script on every interaction, so the NASA API call was firing on every click. Wrapped it in @st .cache_data so it fetches once and reuses the result — now the dropdown updates instantly instead of re-hitting the API every time. Also cleaned up for shipping: moved my API key into Streamlit secrets (out of the committed code) and pushed a clean repo to GitHub.
Ships:
Asteroid Radar is a Streamlit web app that pulls a week of NASA near-Earth-object data and ranks asteroids by a weighted danger score (0.4 size / 0.3 speed / 0.3 distance). It shows a sorted table, a top-10 danger chart, and a dropdown to inspect any asteroid. Most challenging part: Streamlit re-runs the whole script on every click, so I had to cache the NASA fetch with @st .cache_data to keep it fast. Proud of designing the danger model myself and getting it deployed live. To test: open the demo link, browse the table, check the chart, and pick asteroids from the dropdown....
|
1793714276.6041472
|
1793800676.6041472
|
|
21583
|
Basic snake game by @Coolguy | Stardance
|
Coolguy
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-14T18:16:30Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a very basic snake game in godot which pretty much has nothin gto it besides moving, eating, and growing. I know im supposed to have a playable link but i kind of lost the game file. so the code is there in github but it cant really get set up. i dont expect anything from this project because its failed but i just wanna finish it so i can start a new project. Sorry about that.", "repo": "https://github.com/CoolGuy259/Snake-copy", "demo": "https://docs.google.com/document/d/1MdggeiX1E7M01wkhg94ArMpKlyN-cHCLn6hq3hU9TOE/edit?tab=t.0"}]...
|
[{"post_id": 13805, "ts": "202 [{"post_id": 13805, "ts": "2026-06-22T16:59:34Z", "hours": 1.0561, "text": "Ive finally gotten the game working but there’s no textures or anything interesting to the game. It’s just infinite snake😭 I will probably add more but i might not be able to because I’m gonna be out of school. And my snake project is signed into my school computer. but hopefully I will be able to recover it to work on it a bit for the summer"}, {"post_id": 11391, "ts": "2026-06-18T17:15:32Z", "hours": 0.5403, "text": "I had to redo lots of the code and add a ton more code but I’ve finally got it all into Godot. Now i just gotta make it work😭😭"}, {"post_id": 11314, "ts": "2026-06-18T14:40:41Z", "hours": 0.5333, "text": "Ive added the code for movement and ive designed the actual snake tiles. Not sure if the code actually wroks but we will figure it out along the way He looks so friggin derpy 😭😭😭😭"}]...
|
Title: Basic snake game by @Coolguy | Stardance
D Title: Basic snake game by @Coolguy | Stardance
Devlogs:
Ive added the code for movement and ive designed the actual snake tiles. Not sure if the code actually wroks but we will figure it out along the way He looks so friggin derpy 😭😭😭😭
I had to redo lots of the code and add a ton more code but I’ve finally got it all into Godot. Now i just gotta make it work😭😭
Ive finally gotten the game working but there’s no textures or anything interesting to the game. It’s just infinite snake😭 I will probably add more but i might not be able to because I’m gonna be out of school. And my snake project is signed into my school computer. but hopefully I will be able to recover it to work on it a bit for the summer
Ships:
I made a very basic snake game in godot which pretty much has nothin gto it besides moving, eating, and growing. I know im supposed to have a playable link but i kind of lost the game file. so the code is there in github but it cant really get set up. i dont expect anything from this project because its failed but i just wanna finish it so i can start a new project. Sorry about that....
|
1793714274.456055
|
1793800674.456055
|
|
11617
|
Music Controller Macropad by @I_Winters | Stardanc Music Controller Macropad by @I_Winters | Stardance...
|
I_Winters
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-18T14:14:16Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I designed a three-button macropad for controlling music! It also has a rotary encoder (for controlling volume) and an OLED screen (for showing a “now playing” view).", "repo": "https://github.com/imhwinters/MusicController", "demo": ""}]...
|
[{"post_id": 7646, "ts": "2026 [{"post_id": 7646, "ts": "2026-06-12T19:39:14Z", "hours": 1.1992, "text": "I cadded the case and wrote the firmware (I decided not to code my own firmware instead of using ZMK because I want my project to use the Xiao esp32c3 for its bluetooth functionality)."}, {"post_id": 5370, "ts": "2026-06-09T03:39:02Z", "hours": 0.8817, "text": "So far I’ve made the case, the schematic + PCB, and the firmware. Before I finish up the project design, I’m going to make sure the case is accurate and write a readme. I also want to make the case a little more interesting-looking :)"}, {"post_id": 4446, "ts": "2026-06-07T19:28:21Z", "hours": 3.1853, "text": "I’ve created the schematic, the PCB, and cadded the case so far."}]...
|
Title: Music Controller Macropad by @I_Winters | S Title: Music Controller Macropad by @I_Winters | Stardance
Devlogs:
I’ve created the schematic, the PCB, and cadded the case so far.
So far I’ve made the case, the schematic + PCB, and the firmware. Before I finish up the project design, I’m going to make sure the case is accurate and write a readme. I also want to make the case a little more interesting-looking :)
I cadded the case and wrote the firmware (I decided not to code my own firmware instead of using ZMK because I want my project to use the Xiao esp32c3 for its bluetooth functionality).
Ships:
I designed a three-button macropad for controlling music! It also has a rotary encoder (for controlling volume) and an OLED screen (for showing a “now playing” view)....
|
1793714273.5195038
|
1793800673.5195038
|
|
36470
|
Fred-Bot by @Gabl | Stardance
|
Gabl
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-17T21:25:30Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Fred-Bot Fred-Bot is a really simple slack-bot that got me to know the basics of bot-creation with javascript. Managed to finally get the bot to work. Had quite the difficulties managing nest, and making sure the bot would run 24/7. Command List | Command | Description | | /fred-bot-ping | Check bot latency | | /fred-bot-help | Get a list of all available commands | | /fred-bot-catfact | Get a random cat fact | | /fred-bot-joke | Get a random joke | | /fred-bot-cipher | Decodes/Encodes text with the Ceasar Cipher 3 |", "repo": "https://github.com/gabl18/Slack-Bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C0P5NE354?skip_today=1"}]...
|
[{"post_id": 30202, "ts": "202 [{"post_id": 30202, "ts": "2026-07-17T16:21:34Z", "hours": 0.7056, "text": "Continued working on the bot and added a new command: /fred-bot-cipher a ceasar cipher that encodes/decodes your text with the shift of 3. Made a detection to see if the correct text was provided for it to work. Example: /fred-bot-cipher decode Hello"}, {"post_id": 30181, "ts": "2026-07-17T15:26:04Z", "hours": 0.4147, "text": "Made good progress on the guide, implemented all provided commands from the guide and changed the profile-picture for the bot. Fred-Bot Fred-Bot is a really simple slack-bot that got me to know the basics of bot-creation with javascript. Available Commands: /fred-bot-ping - Check bot latency /fred-bot-help - Get a list of all commands /fred-bot-catfact - Get a random cat fact /fred-bot-joke - Get a random joke"}]...
|
Title: Fred-Bot by @Gabl | Stardance
Devlogs:
Mad Title: Fred-Bot by @Gabl | Stardance
Devlogs:
Made good progress on the guide, implemented all provided commands from the guide and changed the profile-picture for the bot. Fred-Bot Fred-Bot is a really simple slack-bot that got me to know the basics of bot-creation with javascript. Available Commands: /fred-bot-ping - Check bot latency /fred-bot-help - Get a list of all commands /fred-bot-catfact - Get a random cat fact /fred-bot-joke - Get a random joke
Continued working on the bot and added a new command: /fred-bot-cipher a ceasar cipher that encodes/decodes your text with the shift of 3. Made a detection to see if the correct text was provided for it to work. Example: /fred-bot-cipher decode Hello
Ships:
Fred-Bot Fred-Bot is a really simple slack-bot that got me to know the basics of bot-creation with javascript. Managed to finally get the bot to work. Had quite the difficulties managing nest, and making sure the bot would run 24/7. Command List | Command | Description | | /fred-bot-ping | Check bot latency | | /fred-bot-help | Get a list of all available commands | | /fred-bot-catfact | Get a random cat fact | | /fred-bot-joke | Get a random joke | | /fred-bot-cipher | Decodes/Encodes text with the Ceasar Cipher 3 |...
|
1793714272.3263803
|
1793800672.3263803
|
|
25337
|
Music Macropad by @Fearless_0x | Stardance
|
Fearless_0x
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-26T21:29:52Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A macropad that connects to you computer to control media. Buttons and rotary encoders are used to control the media, and you can see what is playing with the built-in OLED display. This project was relatively simple as i wanted to try out some things that i have never done before: creating PCBs. This was a very cool skill to learn and i can see it being very useful in future projects. I haven’t currently got the components to create it myself, but please have a look through and see what you think. Any feedback would be wonderful! FYI: This project is based off the hackpad guide.", "repo": "https://github.com/Fearless0x/MusicPad", "demo": ""}]...
|
[{"post_id": 16221, "ts": "202 [{"post_id": 16221, "ts": "2026-06-26T11:00:39Z", "hours": 0.4886, "text": "Just finished making the code for the actual MusicPad! As code is not my forte, i have to acquire some assistance from AI. But my hackpad will now control a computers media. Next i will have to make the code so the computer can read the hackpad."}, {"post_id": 15713, "ts": "2026-06-25T15:50:51Z", "hours": 0.5856, "text": "Case Finished! I have created a quite simple base to hold the macropad in, with a hole cut out for the usb port. I also created a PCB mockup based on the dimensions from KiCad. The lid was the hardest part, as i had to find all of the measurements. But it’s done now. Next, I’ll be working on the firmware."}, {"post_id": 15610, "ts": "2026-06-25T11:50:31Z", "hours": 0.7667, "text": "PCB for macropad"}]...
|
Title: Music Macropad by @Fearless_0x | Stardance
Title: Music Macropad by @Fearless_0x | Stardance
Devlogs:
PCB for macropad
Case Finished! I have created a quite simple base to hold the macropad in, with a hole cut out for the usb port. I also created a PCB mockup based on the dimensions from KiCad. The lid was the hardest part, as i had to find all of the measurements. But it’s done now. Next, I’ll be working on the firmware.
Just finished making the code for the actual MusicPad! As code is not my forte, i have to acquire some assistance from AI. But my hackpad will now control a computers media. Next i will have to make the code so the computer can read the hackpad.
Ships:
A macropad that connects to you computer to control media. Buttons and rotary encoders are used to control the media, and you can see what is playing with the built-in OLED display. This project was relatively simple as i wanted to try out some things that i have never done before: creating PCBs. This was a very cool skill to learn and i can see it being very useful in future projects. I haven’t currently got the components to create it myself, but please have a look through and see what you think. Any feedback would be wonderful! FYI: This project is based off the hackpad guide....
|
1793714271.1472785
|
1793800671.1472785
|
|
10125
|
Chamber's Card by @RishuKamboj | Stardance
|
RishuKamboj
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-15T19:44:23Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 3D model of the ability card of Chamber from Valorant. Made this to get better at designing in Fusion360, im really happy with how it turned out.", "repo": "https://github.com/rydei/Chamber-Card", "demo": ""}]...
|
[{"post_id": 9422, "ts": "2026 [{"post_id": 9422, "ts": "2026-06-15T19:42:38Z", "hours": 0.2958, "text": "Final Product! Here are my Printer Settings: - (0.4 mm nozzle) -Layer Height: 0.12mm Fine -Build Plate: Textured PEI Plate (you can use any) -Wall Generator: Arachne -Order of walls: Outer/Inner -Ironing: Topmost Surfaces only -Only one wall on top surfaces: Enabled -Outer Wall Speed: 50 mm/s -Top Surface Speed: 50 mm/s -No Brim"}, {"post_id": 4287, "ts": "2026-06-07T15:23:29Z", "hours": 1.9464, "text": "Finished with Modelling the designs , will post Printed Version soon."}]...
|
Title: Chamber's Card by @RishuKamboj | Starda Title: Chamber's Card by @RishuKamboj | Stardance
Devlogs:
Finished with Modelling the designs , will post Printed Version soon.
Final Product! Here are my Printer Settings: - (0.4 mm nozzle) -Layer Height: 0.12mm Fine -Build Plate: Textured PEI Plate (you can use any) -Wall Generator: Arachne -Order of walls: Outer/Inner -Ironing: Topmost Surfaces only -Only one wall on top surfaces: Enabled -Outer Wall Speed: 50 mm/s -Top Surface Speed: 50 mm/s -No Brim
Ships:
I made a 3D model of the ability card of Chamber from Valorant. Made this to get better at designing in Fusion360, im really happy with how it turned out....
|
1793714269.99799
|
1793800669.99799
|
|
57478
|
Artonian by @PrakstheBruce | Stardance
|
PrakstheBruce
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-03T15:04:52Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I have made a Simple yet functional Website named - Artonian, which is a website which displays the Cosmic updates of NASA, for any date, and allows you to make a small collection/archive of your favorite updates! I followed the Hackclub Guide for the code base and I am really proud of learning the integration of Github Actions to automate the git commits and processes, which also was my most challenging part, were I encountered a few errors in the console of my web app. I finally found out the source and resolved the bug. I learned a lot about CSS and HTML basics coupled with Javascript development prerquisites! A whole lot thanks to my friends on reddit and GeeksForGeeks Reference codes that helped me a lot with the modifications!!", "repo": "https://github.com/praksthebruce/artoinan", "demo": "https://artonian.netlify.app"}]...
|
[{"post_id": 60290, "ts": "202 [{"post_id": 60290, "ts": "2026-09-02T15:47:34Z", "hours": 1.7894, "text": "😊Helloo people!! I just wrapped up with my Nasa website modifications of my Own!!….Artonian is a simple Nasa website that shows/updates you with the Photo of the day and fact of any date that you want, and has a custom archive for you to just save you fav archive…."}]...
|
Title: Artonian by @PrakstheBruce | Stardance
Dev Title: Artonian by @PrakstheBruce | Stardance
Devlogs:
😊Helloo people!! I just wrapped up with my Nasa website modifications of my Own!!….Artonian is a simple Nasa website that shows/updates you with the Photo of the day and fact of any date that you want, and has a custom archive for you to just save you fav archive….
Ships:
I have made a Simple yet functional Website named - Artonian, which is a website which displays the Cosmic updates of NASA, for any date, and allows you to make a small collection/archive of your favorite updates! I followed the Hackclub Guide for the code base and I am really proud of learning the integration of Github Actions to automate the git commits and processes, which also was my most challenging part, were I encountered a few errors in the console of my web app. I finally found out the source and resolved the bug. I learned a lot about CSS and HTML basics coupled with Javascript development prerquisites! A whole lot thanks to my friends on reddit and GeeksForGeeks Reference codes that helped me a lot with the modifications!!...
|
1793714267.658447
|
1793800667.658447
|
|
2369
|
Snaky boy by @Lol123rl | Stardance
|
Lol123rl
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-02T17:04:13Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 3d google snake game. In Godot, I challenged myself to make it all in one node, it was a lot of fun playing with the Camera. I can’t what to see what people think.", "repo": "https://github.com/Lol123rl/snake_game", "demo": "https://papaya-pithivier-456916.netlify.app/"}]...
|
[{"post_id": 422, "ts": "2026- [{"post_id": 422, "ts": "2026-06-01T20:29:49Z", "hours": 0.565, "text": "Updadted the code to you play on the outside and is much smother"}, {"post_id": 363, "ts": "2026-06-01T18:12:47Z", "hours": 0.4933, "text": "a 3d google snake game"}]...
|
Title: Snaky boy by @Lol123rl | Stardance
Devlogs Title: Snaky boy by @Lol123rl | Stardance
Devlogs:
a 3d google snake game
Updadted the code to you play on the outside and is much smother
Ships:
I made a 3d google snake game. In Godot, I challenged myself to make it all in one node, it was a lot of fun playing with the Camera. I can’t what to see what people think....
|
1793714266.5472572
|
1793800666.5472572
|
|
10853
|
RoFind by @KERNL | Stardance
|
KERNL
|
2
|
30.71
|
381
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T10:42:53Z", "hours": 15.0, "multiplier": 16.85, "payout": 260, "blessing": "neutral", "text": "I have finally implemented a basic login feature! From the past submission this version a slight change has been merged: Game Submission now requires logging in! This due to a problem where anyone can spam submission. Some elements/redundancy has been removed in the code and the pages This login feature has been the hardest part yet since i haven’t tried login techniques before. I almost gave up on the project but decided to pivot into a more simplified login form first then secure it later!", "repo": "https://github.com/rofind-main/RoFind-Site", "demo": "https://ro-find.vercel.app/"}, {"ship_num": 2, "ts": "2026-06-18T15:03:34Z", "hours": 14.0, "multiplier": 8.56, "payout": 121, "blessing": "neutral", "text": "RoFind is a community driven game discovery. RoFind features a game submission system so everyone can suggest any game they want everyone to experience too! Submitted games will be reviewed before making into the public list. Made with vanilla HTML, CSS, and JavaScript.", "repo": "https://github.com/rofind-main/RoFind-Site", "demo": "https://ro-find.vercel.app/"}]...
|
[{"post_id": 58208, "ts": "202 [{"post_id": 58208, "ts": "2026-08-30T15:49:43Z", "hours": 0.6919, "text": "8/30/26 - Game Card From a user review suggestion, I am now working on implementing the description when opening/clicking a game popup. Experimentation is my main process here since I am not a good UI designer and still looking for my style. Here is the preview of what is currently being developed. The idea here is that, in order to reduce screen clutter and make it a little more modern I have placed the game image behind the texts (inspired from other platforms, apps, designs). This should be done in just a week :). I can’t focus on this project i am addicted to osu!"}, {"post_id": 57221, "ts": "2026-08-29T10:07:28Z", "hours": 1.0158, "text": "8/29/26 - Submission fix & Future plans Thank you for all the generous comments about RoFind and the people who have tried my project! I have more plans to this project but in the mean time i will be focusing on life and taking a break a little bit from this project and expect it to be better in the future. I have fixed the ability to spam rate a game. I am also aware of other vulnerability on the project and i do have planned fixes and changes to it so stay tuned!"}, {"post_id": 52244, "ts": "2026-08-22T10:38:57Z", "hours": 3.0933, "text": "8/22/26 - User Profile I have finally found a way to implement user profiles by using OAuth (not really) but the idea is simple i only request the username and the user id and be saved locally since i don’t have much experience handling OAuth and security. I do plan on fixing that to be more secure and faster. !! Rating Collection & Comments will be implemented soon they are currently place holder to give you an idea what will be the user page hold !! Over all the plan is going okay(ish) in the roadmap. More features will be implemented!"}, {"post_id": 41255, "ts": "2026-08-05T11:08:33Z", "hours": 1.6106, "text": "8/6/26 - Login Feature I have been taking a break for a while (playing games) since this project is pretty heavy on my little brain to handle. Anyways, thanks to AI i have found a way how to handle Roblox OAuth and the login feature to be slowly worked on! I will also be reworking some things such us the popup system since i have multiple occurrences of popup tags on pages that totally sucks to find but also maintain when expanding the platform. I am currently aiming to earn a little more stardance currency (i forgot what its called) so i can buy a little more useful stuff :)"}, {"post_id": 20755, "ts": "2026-07-02T13:28:59Z", "hours": 1.4014, "text": "7/2/26 - Major Revamp I have decided to port the project into Next.js since scaling the project in the future is a pain. Further fixes will be pushed in the current Web version while also working on the revamped one!"}, {"post_id": 15618, "ts": "2026-06-25T12:23:10Z", "hours": 3.0064, "text": "6/25/26 - Users Login Update I have been having trouble on how user login would work where i wont really have much trouble maintaining the backend that much when the platform grows. Things i have been doing: Updating the homepage Updating the README credits User login OAuth and Redirects"}, {"post_id": 13648, "ts": "2026-06-22T12:20:25Z", "hours": 1.3939, "text": "6/22/26 - Submission Adjustments Thanks to @arma for finding a very confusing bug where the user would not see a “successful” message and if it failed. Things being currently worked on: User Login Backend and Frontend Performance Discord Webhook optimization (It is kinda just a spam at this point on my webhook)"}, {"post_id": 13057, "ts": "2026-06-21T11:09:55Z", "hours": 1.9503, "text": "6/21/26 - Adjustments I have made a few adjustments regarding the landing page and updated the information there. Also added some notes and updated some values on the demo page Review System Server Side IP and local based checking Custom popup added (from feedback thanks to thestarviper and Some1) (big thanks to people (especially reviewers) who commented on improving my project and my mistakes the goats)"}, {"post_id": 12962, "ts": "2026-06-21T06:46:15Z", "hours": 2.5372, "text": "6/21/26 - Review system It’s now working in the most barebone way possible Adjusted some styling to fit the overall aesthetic a little bit more More features will be worked on I am about to explode internally with this project"}, {"post_id": 12482, "ts": "2026-06-20T11:49:03Z", "hours": 0.4156, "text": "6/20/26 - Review system Got some start on review feature Still figuring out how ill take this one since i have never made/thought about a review thing Probably will take some days as i am quite busy at the moment:) Icons from LucideIcons"}, {"post_id": 11319, "ts": "2026-06-18T15:01:09Z", "hours": 1.1581, "text": "Web version is now functional (just missing searching and filtering and rate system) im working on it :)"}, {"post_id": 10588, "ts": "2026-06-17T12:25:50Z", "hours": 0.6583, "text": "I had some problems with the API im working on but ill get this done within a couple of days. my eyes got tired but i got the buttons working in the webhook"}, {"post_id": 10557, "ts": "2026-06-17T10:50:40Z", "hours": 3.415, "text": "Website Version - Submissions now implemented! Sent submissions is connected to a Discord webhook. I don’t know any other way to store the submitted tickets soooo i used Discord:)"}, {"post_id": 6234, "ts": "2026-06-10T14:12:26Z", "hours": 6.5742, "text": "Web Demo now available!"}, {"post_id": 4782, "ts": "2026-06-08T08:37:34Z", "hours": 2.0956, "text": "Changing card design"}, {"post_id": 4155, "ts": "2026-06-07T11:22:27Z", "hours": 0.3336, "text": "RoFind - Electron based Roblox community curated games list (Old Project)"}]...
|
Title: RoFind by @KERNL | Stardance
Devlogs:
RoFi Title: RoFind by @KERNL | Stardance
Devlogs:
RoFind - Electron based Roblox community curated games list (Old Project)
Changing card design
Web Demo now available!
Website Version - Submissions now implemented! Sent submissions is connected to a Discord webhook. I don’t know any other way to store the submitted tickets soooo i used Discord:)
I had some problems with the API im working on but ill get this done within a couple of days. my eyes got tired but i got the buttons working in the webhook
Web version is now functional (just missing searching and filtering and rate system) im working on it :)
6/20/26 - Review system Got some start on review feature Still figuring out how ill take this one since i have never made/thought about a review thing Probably will take some days as i am quite busy at the moment:) Icons from LucideIcons
6/21/26 - Review system It’s now working in the most barebone way possible Adjusted some styling to fit the overall aesthetic a little bit more More features will be worked on I am about to explode internally with this project
6/21/26 - Adjustments I have made a few adjustments regarding the landing page and updated the information there. Also added some notes and updated some values on the demo page Review System Server Side IP and local based checking Custom popup added (from feedback thanks to thestarviper and Some1) (big thanks to people (especially reviewers) who commented on improving my project and my mistakes the goats)
6/22/26 - Submission Adjustments Thanks to @arma for finding a very confusing bug where the user would not see a “successful” message and if it failed. Things being currently worked on: User Login Backend and Frontend Performance Discord Webhook optimization (It is kinda just a spam at this point on my webhook)
6/25/26 - Users Login Update I have been having trouble on how user login would work where i wont really have much trouble maintaining the backend that much when the platform grows. Things i have been doing: Updating the homepage Updating the README credits User login OAuth and Redirects
7/2/26 - Major Revamp I have decided to port the project into Next.js since scaling the project in the future is a pain. Further fixes will be pushed in the current Web version while also working on the revamped one!
8/6/26 - Login Feature I have been taking a break for a while (playing games) since this project is pretty heavy on my little brain to handle. Anyways, thanks to AI i have found a way how to handle Roblox OAuth and the login feature to be slowly worked on! I will also be reworking some things such us the popup system since i have multiple occurrences of popup tags on pages that totally sucks to find but also maintain when expanding the platform. I am currently aiming to earn a little more stardance currency (i forgot what its called) so i can buy a little more useful stuff :)
8/22/26 - User Profile I have finally found a way to implement user profiles by using OAuth (not really) but the idea is simple i only request the username and the user id and be saved locally since i don’t have much experience handling OAuth and security. I do plan on fixing that to be more secure and faster. !! Rating Collection & Comments will be implemented soon they are currently place holder to give you an idea what will be the user page hold !! Over all the plan is going okay(ish) in the roadmap. More features will be implemented!
8/29/26 - Submission fix & Future plans Thank you for all the generous comments about RoFind and the people who have tried my project! I have more plans to this project but in the mean time i will be focusing on life and taking a break a little bit from this project and expect it to be better in the future. I have fixed the ability to spam rate a game. I am also aware of other vulnerability on the project and i do have planned fixes and changes to it so stay tuned!
8/30/26 - Game Card From a user review suggestion, I am now working on implementing the description when opening/clicking a game popup. Experimentation is my main process here since I am not a good UI designer and still looking for my style. Here is the preview of what is currently being developed. The idea here is that, in order to reduce screen clutter and make it a little more modern I have placed the game image behind the texts (inspired from other platforms, apps, designs). This should be done in just a week :). I can’t focus on this project i am addicted to osu!
Ships:
RoFind is a community driven game discovery. RoFind features a game submission system so everyone can suggest any game they want everyone to experience too! Submitted games will be reviewed before making into the public list. Made with vanilla HTML, CSS, and JavaScript.
I have finally implemented a basic login feature! From the past submission this version a slight change has been merged: Game Submission now requires logging in! This due to a problem where anyone can spam submission. Some elements/redundancy has been removed in the code and the pages This login feature has been the hardest part yet since i haven’t tried login techniques before. I almost gave up on the project but decided to pivot into a more simplified login form first then secure it later!...
|
1793714265.295144
|
1793800665.295144
|
|
11161
|
My weather slack bot by @andrea_dezzo08 | Stardanc My weather slack bot by @andrea_dezzo08 | Stardance...
|
andrea_dezzo08
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-18T15:58:09Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Make sure you to have a location setted on your slack account if you want to use the slacklocation mode", "repo": "https://github.com/Dezzo2000/slack-bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BBP74J3PE"}]...
|
[{"post_id": 11267, "ts": "202 [{"post_id": 11267, "ts": "2026-06-18T12:57:35Z", "hours": 1.0728, "text": "I’ve implemented two new commands: -”/weather_bot-slackLocation”: this command take your profile location and respond with a image of the meteo in that place using the site wttr.in -”/weather_bot-location”: this command needs to be given a location and respond with an image of the meteo in that place using the site wttr.in That the two examples:"}]...
|
Title: My weather slack bot by @andrea_dezzo08 | S Title: My weather slack bot by @andrea_dezzo08 | Stardance
Devlogs:
I’ve implemented two new commands: -”/weather_bot-slackLocation”: this command take your profile location and respond with a image of the meteo in that place using the site wttr.in -”/weather_bot-location”: this command needs to be given a location and respond with an image of the meteo in that place using the site wttr.in That the two examples:
Ships:
Make sure you to have a location setted on your slack account if you want to use the slacklocation mode...
|
1793714264.136789
|
1793800664.136789
|
|
33134
|
Frictionless by @akshith_paluru | Stardance
|
akshith_paluru
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-10T05:34:21Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Built ClipStack, a clipboard history manager that fixes something everyone deals with: you copy something new and the old thing is just gone. It keeps a searchable, persistent history of everything you’ve copied — no account, no backend, everything stored locally in your own browser. The trickiest part was the core constraint: browsers won’t let a webpage listen to your clipboard in the background for security reasons. Instead of trying to fake that, I designed around it — a persistent input box at the top logs anything you paste into it, so “paste here” becomes the natural workflow rather than a limitation you have to work against. Three things I focused on making genuinely useful rather than just checkboxes: Instant fuzzy search across your whole history, filterable by content type (try typing “url”) One-click actions on every entry — copy back, pin, delete, open links directly, live color swatch preview for hex codes Smart auto-cleanup that expires old unpinned entries automatically, but with an undo toast so nothing’s ever really gone I’m most proud of the auto-cleanup + undo system — it’s the kind of small detail that’s easy to skip but makes the whole thing feel trustworthy instead of like something that’ll randomly eat your clipboard history. To test it: open the link, paste a few different things (a URL, some code, a hex color like #3b82f6, plain text) into the box at the top, and try searching, pinning, and letting something auto-expire to see the undo toast. It’s fully client-side, so your data stays local to your browser only.", "repo": "https://github.com/akshithpaluru-a11y/clipstack", "demo": "https://akshithpaluru-a11y.github.io/clipstack/"}]...
|
[{"post_id": 25739, "ts": "202 [{"post_id": 25739, "ts": "2026-07-10T05:32:47Z", "hours": 0.4739, "text": "Shipped ClipStack — a clipboard history manager that fixes something everyone deals with: you copy something new and the old thing you copied is just gone. ClipStack keeps a running, searchable history of everything you paste in, entirely in your browser, no account, no backend. The core problem with building this honestly: browsers don’t let a webpage listen to your clipboard in the background for security reasons. Instead of faking that, I designed around it — a persistent input box at the top logs anything you paste, so “paste here” becomes the natural workflow instead of a limitation you have to fight. Three QoL improvements I focused on: Instant fuzzy search — filter your whole history in real time as you type, including by type (“url” surfaces just links) One-click actions on every entry — copy back, pin, delete, open (for links), with a live color swatch preview for hex codes Smart auto-cleanup with undo — unpinned entries expire after a configurable window so history doesn’t turn into clutter, but nothing’s ever really gone thanks to a short undo buffer Built with Vite, React, TypeScript, Tailwind, and IndexedDB for local persistent storage. Fully keyboard-driven too — Cmd/Ctrl+K to search, arrow keys to navigate, Enter to copy, Delete to remove. It’s fully client-side, so every visitor gets their own private, independent instance — nothing syncs or uploads between users. Live: https://akshithpaluru-a11y.github.io/clipstack/ Code: https://github.com/akshithpaluru-a11y/clipstack"}]...
|
Title: Frictionless by @akshith_paluru | Stardance Title: Frictionless by @akshith_paluru | Stardance
Devlogs:
Shipped ClipStack — a clipboard history manager that fixes something everyone deals with: you copy something new and the old thing you copied is just gone. ClipStack keeps a running, searchable history of everything you paste in, entirely in your browser, no account, no backend. The core problem with building this honestly: browsers don’t let a webpage listen to your clipboard in the background for security reasons. Instead of faking that, I designed around it — a persistent input box at the top logs anything you paste, so “paste here” becomes the natural workflow instead of a limitation you have to fight. Three QoL improvements I focused on: Instant fuzzy search — filter your whole history in real time as you type, including by type (“url” surfaces just links) One-click actions on every entry — copy back, pin, delete, open (for links), with a live color swatch preview for hex codes Smart auto-cleanup with undo — unpinned entries expire after a configurable window so history doesn’t turn into clutter, but nothing’s ever really gone thanks to a short undo buffer Built with Vite, React, TypeScript, Tailwind, and IndexedDB for local persistent storage. Fully keyboard-driven too — Cmd/Ctrl+K to search, arrow keys to navigate, Enter to copy, Delete to remove. It’s fully client-side, so every visitor gets their own private, independent instance — nothing syncs or uploads between users. Live: https://akshithpaluru-a11y.github.io/clipstack/ Code: https://github.com/akshithpaluru-a11y/clipstack
Ships:
Built ClipStack, a clipboard history manager that fixes something everyone deals with: you copy something new and the old thing is just gone. It keeps a searchable, persistent history of everything you’ve copied — no account, no backend, everything stored locally in your own browser. The trickiest part was the core constraint: browsers won’t let a webpage listen to your clipboard in the background for security reasons. Instead of trying to fake that, I designed around it — a persistent input box at the top logs anything you paste into it, so “paste here” becomes the natural workflow rather than a limitation you have to work against. Three things I focused on making genuinely useful rather than just checkboxes: Instant fuzzy search across your whole history, filterable by content type (try typing “url”) One-click actions on every entry — copy back, pin, delete, open links directly, live color swatch preview for hex codes Smart auto-cleanup that expires old unpinned entries automatically, but with an undo toast so nothing’s ever really gone I’m most proud of the auto-cleanup + undo system — it’s the kind of small detail that’s easy to skip but makes the whole thing feel trustworthy instead of like something that’ll randomly eat your clipboard history. To test it: open the link, paste a few different things (a URL, some code, a hex color like #3b82f6, plain text) into the box at the top, and try searching, pinning, and letting something auto-expire to see the undo toast. It’s fully client-side, so your data stays local to your browser only....
|
1793714260.4243627
|
1793800660.4243627
|
|
57462
|
Image to ASCII by @reaue | Stardance
|
reaue
|
3
|
26.0
|
376
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-10T17:02:20Z", "hours": 11.0, "multiplier": 18.12, "payout": 205, "blessing": "neutral", "text": "What did you make? I finalized my website which convert image and now text and video into ASCII art. For this ship, I added the video (including GIF) and text convertor. I also added new way to export your art such as in PNG, JPG, MP4 and GIF. I also try to design the website to be more undestandable (for example you don’t have acces to the download button when nothing it’s ready to be download). What was challenging? There were the challenging part. First find the good API for the text to ASCII convertor. I easily tested 5 different APIs for this features. The second challenge was to find a way to convert GIF to MP4 and the opposite. I first tried with a librairie, it didn’t work I had an error messag. So, I switched to FFmpeg and it was very complicated to find a workable way to do the conversion. What are you proud of? I’m proud of presenting you a finished Website where you can created easily ASCII art. With the implementation of features requested by raters. What should people know so they can test your project? The project is available at this url : https://reaue.github.io/ImgToASCII/ . So come test it and send your best ASCII art to your friends.", "repo": "https://github.com/reaue/ImgToASCII", "demo": "https://reaue.github.io/ImgToASCII/"}, {"ship_num": 2, "ts": "2026-09-08T17:30:09Z", "hours": 5.0, "multiplier": 16.78, "payout": 80, "blessing": "neutral", "text": "What did you make? ImgToASCII is a web-based tool which converts image to ASCII art. This is the V.2 of this website. I mostly added features requested by raters such as a drag and drop zone, an invert button, optimization on the algorithm and progress notification when your computer calculate the render. I fanilly made the pyhton proof of concept more user-friendly. What was challenging? The most challenging part was the algorithm optimization. It took me time and reflection and I have a good and a bad news, the first one is that for the black and white version there is almost no waiting time no matter the size. But for the color version it was harder. I succeed on reducing the time but no like for the the no color version. What are you proud of? I’m proud of how much time I earn between before and now for the calculation time. I thought it was impossible to optimize it but after some reflection time I found solution. I’m also proud of succeed all features that people want to get. What should people know so they can test your project? The project is available online here : https://reaue.github.io/ImgToASCII/ .", "repo": "https://github.com/reaue/ImgToASCII", "demo": "https://reaue.github.io/ImgToASCII/"}, {"ship_num": 3, "ts": "2026-09-03T18:41:21Z", "hours": 10.0, "multiplier": 9.07, "payout": 91, "blessing": "neutral", "text": "What did you make? I created a web-based tool that converts images into ASCII art directly in your browser. I started with a proof of concept in python because it’s the programming langage I know best. You can find it on GitHub (poc/main.py). What was challenging? I had never built a website apart from a local one with Flask in python. I had never work with HTML, CSS or even JS before. Fortunately, JS looks quite similar to C, so it was not the most challenging to learn. HTML is quite simple and CSS was an nightmare, and the most difficult part for me. What are you proud of? I’m proud if the design, the website follows a paper style and for the dark mod a terminal-inspired style. I’m also happy with the final result and all I learned. What should people know so they can test your project? The website can be very funny, you can convert memes or other images to ASCII art and then share it as text or as a png.", "repo": "https://github.com/reaue/ImgToASCII", "demo": "https://reaue.github.io/ImgToASCII/"}]...
|
[{"post_id": 65467, "ts": "202 [{"post_id": 65467, "ts": "2026-09-10T16:44:47Z", "hours": 1.9567, "text": "The last devlog (10) - I think I finally have finished this webiste. I added more way to export your ASCII art such as PNG, JPG, GIF and MP4. I also tried to optimize the design to be more user-friendly. Now I think I have finished this site (maybe if someone propose me a big feature I will come back to my decision). Time to ship the final version. Thanks for all your feedback it was very useful."}, {"post_id": 65274, "ts": "2026-09-10T08:46:02Z", "hours": 1.975, "text": "Devlog 9 - Adding Gif to the video format. I thought it would be easier but I spent 2 hours of finding a good way to convert Gif to video format (such as MP4). I started with a librarie but I had an error, so I switched for FFmpeg and this has led to a lot of bugs. I coorected them and added a better preview of what your video would like. Now everything works well so try it by converting your best meme."}, {"post_id": 65003, "ts": "2026-09-09T19:43:07Z", "hours": 3.8242, "text": "Devlog 8 - Finally the video option ! After hours of development I added the video to ASCII convertor. If you tested it you will see a notification informing you about estimated pourcentage and it can take time so don’t try big video (a big video it’s already a 30 secondes one) or decrease other options. How it’s work. Basically, it cut video into frame, uses the image to ASCII converter and then recreates a video."}, {"post_id": 64766, "ts": "2026-09-09T12:45:42Z", "hours": 3.5339, "text": "Devlog 7 - Adding a text to ASCII converter ! It was such a really challenging idea to implement. My first idea was to call a google API, make the search and take the first image proposed by google. But the API I was looking for was disable for new people. So I try an API with AI generation but it wasn’t free. After that I looked for the reserp API a google scraper. But I needed to stock a private API key on a server and after one hour of trying, testing and fixing bugs. I said to myself that the best way was maybe the wikimedia API, it’s maybe less accurate than other API but at least it was free and no API_KEY needed. So I started devloped this idea and now it’s online. Don’t hesitate to test it and give me feedback or other features you want to see."}, {"post_id": 64334, "ts": "2026-09-08T17:10:51Z", "hours": 1.2358, "text": "Devlog 6 - Updating the README and make main.py user-friendly. I updated the README.md to list new features for the upcoming ship, I also made the proof of concept in python more user-friendly with commands in the terminal."}, {"post_id": 64271, "ts": "2026-09-08T15:27:01Z", "hours": 2.7508, "text": "Devlog 5 - I had added all requested features ! Firstly, I added the invert button and the drag and drop zone, it was quite simple. After that, I added the progress notification and tried to optimize the algorithm. It was not simple, I changed it to read only one time the image and not read for brightness and then another time for the drawing… I, also for the black and white version, drew not each character one by one but only after a line. It speed up the calculation time a lot."}, {"post_id": 64163, "ts": "2026-09-08T11:43:02Z", "hours": 0.7614, "text": "Devlog 4 - Think about raters ideas. I add a section in the README with every features request. I think the first two are excelent ideas, for the third one I have no idea how to make it and then the last one can be a good feature. If you have any ideas I’m taker and if you know how to optimize the algorithm let me know."}, {"post_id": 61007, "ts": "2026-09-03T18:21:33Z", "hours": 1.7447, "text": "Devlog 3 - the final one ! I added a switch between a light and a dark mod, the design of the dark one is inspire by a terminal/ the movie Matrix. I also fix some small positioning bugs. And that’s all. I wil ship it now."}, {"post_id": 60905, "ts": "2026-09-03T15:40:34Z", "hours": 6.7278, "text": "Devlog 2 - the website is online ! Come test it, it’s a web-based tool that converts images into ASCII art directly in your browser. You can convert memes, family photos and even more. I’m very happy with the design, because I learned HTML, JS and CSS for this project (CSS is the worst and least fun) and I like the result. I would be very grateful if you report any bugs, because I test it only in Firefox and Microsoft Edge. The next step is to add a dark mode."}, {"post_id": 60423, "ts": "2026-09-02T18:45:57Z", "hours": 1.5622, "text": "Devlog 1 - New project ! I started a new project, the main goal is to build a website that lets you choose an image or a video and transform it into ASCII art. I quickly built a proof of concept in Python. But the problem is that I have literally no knowledge of web programming. So, I’m going to spend next hours learning JavaScrypt and try to implement all my ideas."}]...
|
Title: Image to ASCII by @reaue | Stardance
Devlo Title: Image to ASCII by @reaue | Stardance
Devlogs:
Devlog 1 - New project ! I started a new project, the main goal is to build a website that lets you choose an image or a video and transform it into ASCII art. I quickly built a proof of concept in Python. But the problem is that I have literally no knowledge of web programming. So, I’m going to spend next hours learning JavaScrypt and try to implement all my ideas.
Devlog 2 - the website is online ! Come test it, it’s a web-based tool that converts images into ASCII art directly in your browser. You can convert memes, family photos and even more. I’m very happy with the design, because I learned HTML, JS and CSS for this project (CSS is the worst and least fun) and I like the result. I would be very grateful if you report any bugs, because I test it only in Firefox and Microsoft Edge. The next step is to add a dark mode.
Devlog 3 - the final one ! I added a switch between a light and a dark mod, the design of the dark one is inspire by a terminal/ the movie Matrix. I also fix some small positioning bugs. And that’s all. I wil ship it now.
Devlog 4 - Think about raters ideas. I add a section in the README with every features request. I think the first two are excelent ideas, for the third one I have no idea how to make it and then the last one can be a good feature. If you have any ideas I’m taker and if you know how to optimize the algorithm let me know.
Devlog 5 - I had added all requested features ! Firstly, I added the invert button and the drag and drop zone, it was quite simple. After that, I added the progress notification and tried to optimize the algorithm. It was not simple, I changed it to read only one time the image and not read for brightness and then another time for the drawing… I, also for the black and white version, drew not each character one by one but only after a line. It speed up the calculation time a lot.
Devlog 6 - Updating the README and make main.py user-friendly. I updated the README.md to list new features for the upcoming ship, I also made the proof of concept in python more user-friendly with commands in the terminal.
Devlog 7 - Adding a text to ASCII converter ! It was such a really challenging idea to implement. My first idea was to call a google API, make the search and take the first image proposed by google. But the API I was looking for was disable for new people. So I try an API with AI generation but it wasn’t free. After that I looked for the reserp API a google scraper. But I needed to stock a private API key on a server and after one hour of trying, testing and fixing bugs. I said to myself that the best way was maybe the wikimedia API, it’s maybe less accurate than other API but at least it was free and no API_KEY needed. So I started devloped this idea and now it’s online. Don’t hesitate to test it and give me feedback or other features you want to see.
Devlog 8 - Finally the video option ! After hours of development I added the video to ASCII convertor. If you tested it you will see a notification informing you about estimated pourcentage and it can take time so don’t try big video (a big video it’s already a 30 secondes one) or decrease other options. How it’s work. Basically, it cut video into frame, uses the image to ASCII converter and then recreates a video.
Devlog 9 - Adding Gif to the video format. I thought it would be easier but I spent 2 hours of finding a good way to convert Gif to video format (such as MP4). I started with a librarie but I had an error, so I switched for FFmpeg and this has led to a lot of bugs. I coorected them and added a better preview of what your video would like. Now everything works well so try it by converting your best meme.
The last devlog (10) - I think I finally have finished this webiste. I added more way to export your ASCII art such as PNG, JPG, GIF and MP4. I also tried to optimize the design to be more user-friendly. Now I think I have finished this site (maybe if someone propose me a big feature I will come back to my decision). Time to ship the final version. Thanks for all your feedback it was very useful.
Ships:
What did you make? I created a web-based tool that converts images into ASCII art directly in your browser. I started with a proof of concept in python because it’s the programming langage I know best. You can find it on GitHub (poc/main.py). What was challenging? I had never built a website apart from a local one with Flask in python. I had never work with HTML, CSS or even JS before. Fortunately, JS looks quite similar to C, so it was not the most challenging to learn. HTML is quite simple and CSS was an nightmare, and the most difficult part for me. What are you proud of? I’m proud if the design, the website follows a paper style and for the dark mod a terminal-inspired style. I’m also happy with the final result and all I learned. What should people know so they can test your project? The website can be very funny, you can convert memes or other images to ASCII art and then share it as text or as a png.
What did you make? ImgToASCII is a web-based tool which converts image to ASCII art. This is the V.2 of this website. I mostly added features requested by raters such as a drag and drop zone, an invert button, optimization on the algorithm and progress notification when your computer calculate the render. I fanilly made the pyhton proof of concept more user-friendly. What was challenging? The most challenging part was the algorithm optimization. It took me time and reflection and I have a good and a bad news, the first one is that for the black and white version there is almost no waiting time no matter the size. But for the color version it was harder. I succeed on reducing the time but no like for the the no color version. What are you proud of? I’m proud of how much time I earn between before and now for the calculation time. I thought it was impossible to optimize it but after some reflection time I found solution. I’m also proud of succeed all features that people want to get. What should people know so they can test your project? The project is available online here : https://reaue.github.io/ImgToASCII/ .
What did you make? I finalized my website which convert image and now text and video into ASCII art. For this ship, I added the video (including GIF) and text convertor. I also added new way to export your art such as in PNG, JPG, MP4 and GIF. I also try to design the website to be more undestandable (for example you don’t have acces to the download button when nothing it’s ready to be download). What was challenging? There were the challenging part. First find the good API for the text to ASCII convertor. I easily tested 5 different APIs for this features. The second challenge was to find a way to convert GIF to MP4 and the opposite. I first tried with a librairie, it didn’t work I had an error messag. So, I switched to FFmpeg and it was very complicated to find a workable way to do the conversion. What are you proud of? I’m proud of presenting you a finished Website where you can created easily ASCII art. With the implementation of features requested by raters. What should people know so they can test your project? The project is available at this url : https://reaue.github.io/ImgToASCII/ . So come test it and send your best ASCII art to your friends....
|
1793714259.2172644
|
1793800659.2172644
|
|
7276
|
LiteStyle by @JyotP | Stardance
|
JyotP
|
1
|
2.0
|
26
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-04T23:17:58Z", "hours": 2.0, "multiplier": 12.05, "payout": 26, "blessing": "neutral", "text": "I made a lightweight, highly customizable CSS library. It took me around 3 hours to put together, and it was honestly a fun thing to build. The whole point is that you can customize pretty much every single detail of a UI element and just drop the final .css file straight into your project. Node.js was definitely a bigger pain than I expected to get working right. But the workflow is pretty neat now: you just run the server locally, open up the dashboard, edit your components, hit save, and your CSS is ready to go in your HTML. Definitely going to be using this for my upcoming portfolio project.", "repo": "https://github.com/JHPate1/LiteStyle/", "demo": "http://Litestyle-demo.42web.io"}]...
|
[{"post_id": 2458, "ts": "2026 [{"post_id": 2458, "ts": "2026-06-04T23:12:31Z", "hours": 1.2106, "text": "Devlog 2- People said my last devlog sounded like AI, so I’m just gonna type this like a normal person. Anyway, I got a huge part of this project finished and I’m basically ready to ship it. I added a ton of new elements: badges, buttons, inputs, and all that stuff you’d expect from something like Bootstrap, and made it so you can actually edit every little detail. The main thing though was the debugging. Node.js and Vite were being a total nightmare. Vite kept crashing because it couldn’t find my files, and then the whole server refused to start just because of some dumb syntax errors I made while setting up the automatic code. It was a massive pain to get it all talking to each other, but I finally got it working. Also did I mention how stupid JS syntax errors can be? Like it throws errors that aren’t even errors. This project is basically finished now, if you want to use it go to my GitHub and follow the instructions. Still sad on how I lost 50 minutes of log time because of stupid HackaTime. (PS: I love intellisense now, saved me 30 minutes. Big W.)"}, {"post_id": 2397, "ts": "2026-06-04T21:07:56Z", "hours": 0.9622, "text": "Devlog 1: Building LiteStyle Okay so I made a CSS library. This is my first devlog and honestly I have no idea what I’m doing with the format, but here we go (no yap). Here’s the thing about existing libraries. Bootstrap? Fine. Works. But you hit a wall eventually where you’re fighting it more than using it. Tailwind? Incredibly powerful. Also incredibly easy to turn your HTML into unreadable alphabet soup if you don’t already know what you’re doing. I watched a friend who’s genuinely smart spend twenty minutes trying to center a div with Tailwind and I thought, there has to be a middle ground. So LiteStyle. Modular, lightweight, actually makes sense if you’re new to this. The idea is you grab pre-built CSS blocks, plug them in, tweak what you need. No config files. No memorizing forty utility classes to make a button. Just clean, readable code that does what you expect. What I actually built in 90 minutes: Repo’s up. File structure’s mapped out. Built a rough dashboard for customizing builds. The dashboard looks like garbage right now. Also I built it with Bootstrap and Tailwind which is obviously absurd. I’m building a CSS library to replace those and I used them to build the tool. You have to start somewhere I guess. It’ll get ripped out soon enough. HackaTime decided initializing my repo meant I started an entirely new project so my time tracking is completely broken. Small tragedy. Code’s committed at least. What’s next: Write the actual utility classes. Get the dashboard running on LiteStyle instead of the competition. Then we’ll see if this whole thing actually holds together or if I just wasted days."}]...
|
Title: LiteStyle by @JyotP | Stardance
Devlogs:
D Title: LiteStyle by @JyotP | Stardance
Devlogs:
Devlog 1: Building LiteStyle Okay so I made a CSS library. This is my first devlog and honestly I have no idea what I’m doing with the format, but here we go (no yap). Here’s the thing about existing libraries. Bootstrap? Fine. Works. But you hit a wall eventually where you’re fighting it more than using it. Tailwind? Incredibly powerful. Also incredibly easy to turn your HTML into unreadable alphabet soup if you don’t already know what you’re doing. I watched a friend who’s genuinely smart spend twenty minutes trying to center a div with Tailwind and I thought, there has to be a middle ground. So LiteStyle. Modular, lightweight, actually makes sense if you’re new to this. The idea is you grab pre-built CSS blocks, plug them in, tweak what you need. No config files. No memorizing forty utility classes to make a button. Just clean, readable code that does what you expect. What I actually built in 90 minutes: Repo’s up. File structure’s mapped out. Built a rough dashboard for customizing builds. The dashboard looks like garbage right now. Also I built it with Bootstrap and Tailwind which is obviously absurd. I’m building a CSS library to replace those and I used them to build the tool. You have to start somewhere I guess. It’ll get ripped out soon enough. HackaTime decided initializing my repo meant I started an entirely new project so my time tracking is completely broken. Small tragedy. Code’s committed at least. What’s next: Write the actual utility classes. Get the dashboard running on LiteStyle instead of the competition. Then we’ll see if this whole thing actually holds together or if I just wasted days.
Devlog 2- People said my last devlog sounded like AI, so I’m just gonna type this like a normal person. Anyway, I got a huge part of this project finished and I’m basically ready to ship it. I added a ton of new elements: badges, buttons, inputs, and all that stuff you’d expect from something like Bootstrap, and made it so you can actually edit every little detail. The main thing though was the debugging. Node.js and Vite were being a total nightmare. Vite kept crashing because it couldn’t find my files, and then the whole server refused to start just because of some dumb syntax errors I made while setting up the automatic code. It was a massive pain to get it all talking to each other, but I finally got it working. Also did I mention how stupid JS syntax errors can be? Like it throws errors that aren’t even errors. This project is basically finished now, if you want to use it go to my GitHub and follow the instructions. Still sad on how I lost 50 minutes of log time because of stupid HackaTime. (PS: I love intellisense now, saved me 30 minutes. Big W.)
Ships:
I made a lightweight, highly customizable CSS library. It took me around 3 hours to put together, and it was honestly a fun thing to build. The whole point is that you can customize pretty much every single detail of a UI element and just drop the final .css file straight into your project. Node.js was definitely a bigger pain than I expected to get working right. But the workflow is pretty neat now: you just run the server locally, open up the dashboard, edit your components, hit save, and your CSS is ready to go in your HTML. Definitely going to be using this for my upcoming portfolio project....
|
1793714258.2691593
|
1794578258.2691593
|
|
57458
|
Personal-Site by @theodora | Stardance
|
theodora
|
1
|
22.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-05T15:54:39Z", "hours": 22.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Introduction: This is a personal website that is designed to feel like a live desktop rather than a static page. It has lots of different features to make it accessible and convenient to use. Features: Clock: It has both a world clock and a local clock feature; it will show how long the other country is ahead of or behind you. This also gives UTC offset info. Weather: It will use your location API to see where you are. It will tell you what the weather is like in your area; it also tells you the wind speed in your area. To Do List: This is where you add your tasks. Local storage will store your tasks, and it separates them into low, medium, and high categories; it will help you prioritise the urgency. Playlist: I orginally tried to build a custom YouTube playlist, but it got blocked by the party. Instead, I switched to a Spotify playlist, which is embedded into the site, is more reliable, and also comes with a polished player UI for free. Projects: This is a window showcasing my projects, each attached with a short description, tags and a link back to the repo. Calculator: This started as a basic four-function calculator, and it expanded to show the running expression live above the main display. Added a history panel that saves the last 10 calculations, so past results are there to review or reuse even after a page reload, like what the phone does. Pomodoro Timer: Focus on short breaks, with 2 different countdown lengths, plus it has an animated progress ring so the user can see the remaining time. It also adds daily focus tracking, where you can track back how long you have done in each section via History. Unit Converter: Covers length, weight and temperature conversions with a swap button between units. Mascot: A small character sit on bottom-right corner; after 15 seconds of no activity, it starts a little wiggle instead of just sitting still. Click it, and it pops up a random speech-bubble tip. It also alternates between 2 different characters every 30 seconds. Draggable window: When you click the app, you can grab any title bar and move it anywhere on the screen Resize and Minimise screen: You can drag the bottom-right corner to make a window bigger or smaller. You can also click to collapse a window down to a small chip in the taskbar. Command Palette: Press Ctrl+K on Windows to bring up a searchable list of every app on the site; type to filter, arrow keys to move through results. Wallpaper Switch: There are 5 different gradient backgrounds; change them via the right-click menu, with a smooth crossfade between them. Quick Links Adding a matching set of icon links to GitHub and LinkedIn Sticky Notes This is just a quick coloured note people can jot down and delete; it is saved locally so you can still see your note next time. Serial Monitor: It has 4 metrics (CPU, memory, network latency, temperature); it will update constantly, mixed with occasional system events logged at different severity levels. It also includes pause/resume, clear and export to TXT. QR Code Generator: You can type any URL, and it will generate a QR code instantly. It includes a download button that allows you to download the QR code as a PNG file. AI Usage: I have used Claude AI to debug the code, including both syntax and logic errors. The whole website is made from personal experience. The website layout, idea, and main coding come from my idea.", "repo": "https://github.com/theodora-sin/Personal_website", "demo": "https://theodora-sin.github.io/Personal_website"}]...
|
[{"post_id": 62274, "ts": "202 [{"post_id": 62274, "ts": "2026-09-05T15:51:16Z", "hours": 2.8081, "text": "Devlog 4: I have added 2 more features: Serial Monitor: It has 4 metrics (CPU, memory, network latency, temperature). It updates constantly; it is mixed with occasional system events logged at different severity levels. It also includes pause/resume, clear and export to TXT. QR Code Generator: You can type any URL, and it will generate a QR code instantly. It includes a download button that allows you to download the QR code as a PNG file. Shipping: I have just finished modifying the README and testing all the function ensure it is working."}, {"post_id": 62058, "ts": "2026-09-05T09:10:46Z", "hours": 3.4086, "text": "Devlog 3: Hi, welcome to another devlog. In this devlog, I am focusing on improving the apps and making this website look like an actual desktop environment. Window feature : Draggable window: When you click the app, you can grab any title bar and move it anywhere on the screen Resize and Minimise screen: You can drag the bottom-right corner to make a window bigger or smaller. You can also click to collapse a window down to a small chip in the taskbar. Command Palette: Press Ctrl+K on Windows to bring up a searchable list of every app on the site; type to filter, arrow keys to move through results. Wallpaper Switch: There are 5 different gradient backgrounds; change them via the right-click menu, with a smooth crossfade between them. Quick Links Adding a matching set of icon links to GitHub and LinkedIn Sticky Notes This is just a quick coloured note people can jot down and delete; it is saved locally so you can still see your note next time."}, {"post_id": 61521, "ts": "2026-09-04T14:00:10Z", "hours": 6.7817, "text": "Devlog 2: Hi, welcome to this devlog. My personal site keeps growing- this update adds six different features to the site. Playlist: I orginally tried to build a custom YouTube playlist, but it got blocked by the party. Instead, I switched to a Spotify playlist, which is embedded into the site, which is more reliable, and it also comes with a polished player UI for free. Projects: This is a window showcasing my projects, each attached with a short description, tags and a link back to the repo Calculator: This started as a basic four-function calculator, and it expanded to show the running expression live above the main display. Added a history panel that saves the last 10 calculations, so past results are there to review or reuse even after a page reload, like what the phone does. Pomodoro Timer: Focus on short breaks, with 2 different countdown lengths, plus it has an animated progress ring so the user can see the remaining time. Unit Converter: Covers length, weight and temperature conversions with a swap button between units. Mascot: A small character sit on bottom-right corner; after 15 seconds of no activity, it starts a little wiggle instead of just sitting still. Click it, and it pops up a random speech-bubble tip."}, {"post_id": 60260, "ts": "2026-09-02T14:56:03Z", "hours": 9.1247, "text": "Devlog 1:Hi, welocome to this devlog. I want to pause on pantry scanner for a bit, as I am figuring out how to link hardware coding program to the software site. So, I decide to make my own personal Website.This personal website current have 3 features:## Clock:It has both world clock and local clock feature, it will show how long the other country are ahead or behind you.## Weather:It will use your location API to see where you are, it will tell you what the weather is like in your area, it also tell you the wind speed in your area## TO Do List:This is where you add your task in here, the local storage will store your task, and it seperate into low, medium ,high catogeries, it will help you proitize the urgentness."}]...
|
Title: Personal-Site by @theodora | Stardance
Dev Title: Personal-Site by @theodora | Stardance
Devlogs:
Devlog 1:Hi, welocome to this devlog. I want to pause on pantry scanner for a bit, as I am figuring out how to link hardware coding program to the software site. So, I decide to make my own personal Website.This personal website current have 3 features:## Clock:It has both world clock and local clock feature, it will show how long the other country are ahead or behind you.## Weather:It will use your location API to see where you are, it will tell you what the weather is like in your area, it also tell you the wind speed in your area## TO Do List:This is where you add your task in here, the local storage will store your task, and it seperate into low, medium ,high catogeries, it will help you proitize the urgentness.
Devlog 2: Hi, welcome to this devlog. My personal site keeps growing- this update adds six different features to the site. Playlist: I orginally tried to build a custom YouTube playlist, but it got blocked by the party. Instead, I switched to a Spotify playlist, which is embedded into the site, which is more reliable, and it also comes with a polished player UI for free. Projects: This is a window showcasing my projects, each attached with a short description, tags and a link back to the repo Calculator: This started as a basic four-function calculator, and it expanded to show the running expression live above the main display. Added a history panel that saves the last 10 calculations, so past results are there to review or reuse even after a page reload, like what the phone does. Pomodoro Timer: Focus on short breaks, with 2 different countdown lengths, plus it has an animated progress ring so the user can see the remaining time. Unit Converter: Covers length, weight and temperature conversions with a swap button between units. Mascot: A small character sit on bottom-right corner; after 15 seconds of no activity, it starts a little wiggle instead of just sitting still. Click it, and it pops up a random speech-bubble tip.
Devlog 3: Hi, welcome to another devlog. In this devlog, I am focusing on improving the apps and making this website look like an actual desktop environment. Window feature : Draggable window: When you click the app, you can grab any title bar and move it anywhere on the screen Resize and Minimise screen: You can drag the bottom-right corner to make a window bigger or smaller. You can also click to collapse a window down to a small chip in the taskbar. Command Palette: Press Ctrl+K on Windows to bring up a searchable list of every app on the site; type to filter, arrow keys to move through results. Wallpaper Switch: There are 5 different gradient backgrounds; change them via the right-click menu, with a smooth crossfade between them. Quick Links Adding a matching set of icon links to GitHub and LinkedIn Sticky Notes This is just a quick coloured note people can jot down and delete; it is saved locally so you can still see your note next time.
Devlog 4: I have added 2 more features: Serial Monitor: It has 4 metrics (CPU, memory, network latency, temperature). It updates constantly; it is mixed with occasional system events logged at different severity levels. It also includes pause/resume, clear and export to TXT. QR Code Generator: You can type any URL, and it will generate a QR code instantly. It includes a download button that allows you to download the QR code as a PNG file. Shipping: I have just finished modifying the README and testing all the function ensure it is working.
Ships:
Introduction: This is a personal website that is designed to feel like a live desktop rather than a static page. It has lots of different features to make it accessible and convenient to use. Features: Clock: It has both a world clock and a local clock feature; it will show how long the other country is ahead of or behind you. This also gives UTC offset info. Weather: It will use your location API to see where you are. It will tell you what the weather is like in your area; it also tells you the wind speed in your area. To Do List: This is where you add your tasks. Local storage will store your tasks, and it separates them into low, medium, and high categories; it will help you prioritise the urgency. Playlist: I orginally tried to build a custom YouTube playlist, but it got blocked by the party. Instead, I switched to a Spotify playlist, which is embedded into the site, is more reliable, and also comes with a polished player UI for free. Projects: This is a window showcasing my projects, each attached with a short description, tags and a link back to the repo. Calculator: This started as a basic four-function calculator, and it expanded to show the running expression live above the main display. Added a history panel that saves the last 10 calculations, so past results are there to review or reuse even after a page reload, like what the phone does. Pomodoro Timer: Focus on short breaks, with 2 different countdown lengths, plus it has an animated progress ring so the user can see the remaining time. It also adds daily focus tracking, where you can track back how long you have done in each section via History. Unit Converter: Covers length, weight and temperature conversions with a swap button between units. Mascot: A small character sit on bottom-right corner; after 15 seconds of no activity, it starts a little wiggle instead of just sitting still. Click it, and it pops up a random speech-bubble tip. It also alternates between 2 different characters every 30 seconds. Draggable window: When you click the app, you can grab any title bar and move it anywhere on the screen Resize and Minimise screen: You can drag the bottom-right corner to make a window bigger or smaller. You can also click to collapse a window down to a small chip in the taskbar. Command Palette: Press Ctrl+K on Windows to bring up a searchable list of every app on the site; type to filter, arrow keys to move through results. Wallpaper Switch: There are 5 different gradient backgrounds; change them via the right-click menu, with a smooth crossfade between them. Quick Links Adding a matching set of icon links to GitHub and LinkedIn Sticky Notes This is just a quick coloured note people can jot down and delete; it is saved locally so you can still see your note next time. Serial Monitor: It has 4 metrics (CPU, memory, network latency, temperature); it will update constantly, mixed with occasional system events logged at different severity levels. It also includes pause/resume, clear and export to TXT. QR Code Generator: You can type any URL, and it will generate a QR code instantly. It includes a download button that allows you to download the QR code as a PNG file. AI Usage: I have used Claude AI to debug the code, including both syntax and logic errors. The whole website is made from personal experience. The website layout, idea, and main coding come from my idea....
|
1793714257.0660381
|
1793800657.0660381
|
|
32651
|
Personal by @phattar4phan | Stardance
|
phattar4phan
|
2
|
1.31
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-18T06:37:20Z", "hours": 0.0, "multiplier": 5.37, "payout": 2, "blessing": "neutral", "text": "Created my website, I use AI for designing and some coding as am not really experienced wiyh .tsx and designing. This portfolio includes about section, skills section, projects, experiences and contact. the tech stack for this site are Vite, Tailwindcss, React, Lucide-react, and TypeScript. Also I’m proud that I can finally have a stunning portfolio website after stardance encouraging missions (this project was part of the mission Personal Site)", "repo": "https://github.com/phattar4phan/personal", "demo": "https://personal.phattar4phan.workers.dev/"}, {"ship_num": 2, "ts": "2026-07-17T17:03:23Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Created my personal website, I personally used AI for designing and some coding formatting, as am not much experienced with .tsx and not an expert in professional designing. This site is deployed on personal.phattar4phan.workers.dev (hosted on cloudflare), I’m proud that with stardance.hackclub, I can finally create a personal portfolio with their encouraging mission. you all could also be copying this design whenever you want, this is the best I’ve done. Thank you.", "repo": "https://github.com/phattar4phan/personal", "demo": "https://personal.phattar4phan.workers.dev/"}]...
|
[{"post_id": 30579, "ts": "202 [{"post_id": 30579, "ts": "2026-07-18T08:41:53Z", "hours": 0.3069, "text": "Rewrite .tsx to plain html, css, js to fit the mission scope"}, {"post_id": 30533, "ts": "2026-07-18T05:47:57Z", "hours": 0.4086, "text": "Modified README.md, added about, sections, quick start, tech stacks and how I made it"}, {"post_id": 30212, "ts": "2026-07-17T16:50:15Z", "hours": 0.765, "text": "Created a full web portfolio, with contacts, skills, techs, projects"}]...
|
Title: Personal by @phattar4phan | Stardance
Devl Title: Personal by @phattar4phan | Stardance
Devlogs:
Created a full web portfolio, with contacts, skills, techs, projects
Modified README.md, added about, sections, quick start, tech stacks and how I made it
Rewrite .tsx to plain html, css, js to fit the mission scope
Ships:
Created my personal website, I personally used AI for designing and some coding formatting, as am not much experienced with .tsx and not an expert in professional designing. This site is deployed on personal.phattar4phan.workers.dev (hosted on cloudflare), I’m proud that with stardance.hackclub, I can finally create a personal portfolio with their encouraging mission. you all could also be copying this design whenever you want, this is the best I’ve done. Thank you.
Created my website, I use AI for designing and some coding as am not really experienced wiyh .tsx and designing. This portfolio includes about section, skills section, projects, experiences and contact. the tech stack for this site are Vite, Tailwindcss, React, Lucide-react, and TypeScript. Also I’m proud that I can finally have a stunning portfolio website after stardance encouraging missions (this project was part of the mission Personal Site)...
|
1793714255.9150102
|
1793800655.9150102
|
|
10467
|
My first slack bot! by @lakkey | Stardance
|
lakkey
|
1
|
2.0
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-07T17:18:11Z", "hours": 2.0, "multiplier": 1.3, "payout": 2, "blessing": "neutral", "text": "What I made: SlackSpace is a feature-rich Slack bot running 24/7 on Hack Club’s Nest servers. It has 13 commands spanning utility, fun, knowledge, and a full conversational AI assistant powered by Llama 3.3 70B via Groq — including /sp-ask, /sp-ping, /sp-joke, /sp-define, /sp-dice, and more. The AI remembers your last 20 messages and you can DM it directly without any command. How to test it: The bot is live and hosted on Hack Club Nest — it runs 24/7 via systemd and auto-restarts on crash. You can test it right now in the Hack Club Slack by typing any /sp- command (e.g. /sp-ping, /sp-joke, /sp-ask what is a black hole). No setup needed — just type and it responds. This project was built as part of the Hack Club Stardance “Make a Slack Bot” beginner mission. I chose it to understand how Slack bots, APIs, and hosting on Nest work — as a learning exercise before pursuing my own original idea. Cline (an AI coding assistant) did most of the actual coding. My contribution was following through, deploying it, and using it as a hands-on way to learn the stack.", "repo": "https://github.com/lakkeychoudhary/SlackSpace", "demo": "https://lakkeychoudhary.github.io/SlackSpace/"}]...
|
[{"post_id": 4340, "ts": "2026 [{"post_id": 4340, "ts": "2026-06-07T16:57:59Z", "hours": 0.7839, "text": "Thought to add AI API for DM chat replies by slackbot (slackspace) - use LPUs of groqcloud, and now its a wrap"}, {"post_id": 4179, "ts": "2026-06-07T12:20:01Z", "hours": 1.4969, "text": "working to make bot more genuine human like"}]...
|
Title: My first slack bot! by @lakkey | Stardance
Title: My first slack bot! by @lakkey | Stardance
Devlogs:
working to make bot more genuine human like
Thought to add AI API for DM chat replies by slackbot (slackspace) - use LPUs of groqcloud, and now its a wrap
Ships:
What I made: SlackSpace is a feature-rich Slack bot running 24/7 on Hack Club’s Nest servers. It has 13 commands spanning utility, fun, knowledge, and a full conversational AI assistant powered by Llama 3.3 70B via Groq — including /sp-ask, /sp-ping, /sp-joke, /sp-define, /sp-dice, and more. The AI remembers your last 20 messages and you can DM it directly without any command. How to test it: The bot is live and hosted on Hack Club Nest — it runs 24/7 via systemd and auto-restarts on crash. You can test it right now in the Hack Club Slack by typing any /sp- command (e.g. /sp-ping, /sp-joke, /sp-ask what is a black hole). No setup needed — just type and it responds. This project was built as part of the Hack Club Stardance “Make a Slack Bot” beginner mission. I chose it to understand how Slack bots, APIs, and hosting on Nest work — as a learning exercise before pursuing my own original idea. Cline (an AI coding assistant) did most of the actual coding. My contribution was following through, deploying it, and using it as a hands-on way to learn the stack....
|
1793714254.756132
|
1793800654.756132
|
|
27260
|
AIMRoyale by @Uxyamo | Stardance
|
Uxyamo
|
2
|
3.41
|
30
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-19T06:56:10Z", "hours": 2.0, "multiplier": 5.21, "payout": 15, "blessing": "neutral", "text": "I’m proud about the modifications that I did. I wanted to say that I worker more than 10 hours in this project, but they say that I only worked for 2 hours. I worked in separated projects for securiy.", "repo": "https://github.com/mbbs-iam/AIMRoyale", "demo": "https://aimroyale-production.up.railway.app/"}, {"ship_num": 2, "ts": "2026-07-12T15:21:51Z", "hours": 0.0, "multiplier": 6.51, "payout": 15, "blessing": "neutral", "text": "What it does AIMRoyale is a free, gamified space-math arena that aligns directly with actual school curricula and science chapters (such as Universal Gravitation or Quadratic Functions). Powered by Alibaba Cloud’s Qwen-Max model, it dynamically generates 100% custom problems tailored to the user’s grade, class, and skill level. Instead of generic quizzes, students navigate through high-stakes space scenarios. The platform features an intelligent, privacy-first memory agent that tracks specific academic weaknesses cross-session. It turns studying into an interactive video game where players actively learn from their mistakes. Accomplishments that we’re proud of As a 16-year-old solo developer, I am incredibly proud of executing a full-stack, production-ready architecture in just a week of summer vacation. I managed to build an advanced, context-aware AI coach that adapts to user mistakes without needing a massive, expensive server-side database. Successfully packaging the engine as a functional PWA that runs perfectly on mobile is a massive milestone for my coding journey. What’s next for AIMRoyale This is just the baseline infrastructure for a global educational platform: Rich Media: Automatically generating and attaching tailored meme images to every single problem created by the engine. Gamification: Implementing a ful", "repo": "https://github.com/mbbs-iam/AIMRoyale", "demo": "https://aimroyale-production.up.railway.app/"}]...
|
[{"post_id": 41801, "ts": "202 [{"post_id": 41801, "ts": "2026-08-06T07:15:51Z", "hours": 1.4142, "text": "Hi"}, {"post_id": 31080, "ts": "2026-07-19T05:57:52Z", "hours": 2.0483, "text": "I’m working a lot in this project, I really worker for +30 hours but I forget configurating Hackclub. ☆ : .。. o(≧▽≦)o .。.: ☆ They say that I only worked for +10 hours in this project"}, {"post_id": 18327, "ts": "2026-06-29T13:09:21Z", "hours": 0.0, "text": "I finally got a working version up and running! I worked more than 50 hours on it It’s not perfect yet . I still need to polish a few things and add a feature so everyone can use it with their own API key (right now it’s running on mine). I’m sharing the link here, it’s completely free and could really help you study for a math test or exam. All I’m asking is 1 minute of your time to try it out. It generates personalized math problems across different levels and difficulty settings, so there’s something for everyone. Give it a shot, I think you’ll enjoy it! 👉 https://serveurmaths-190k.onrender.com"}, {"post_id": 17181, "ts": "2026-06-27T21:45:46Z", "hours": 0.0, "text": "What is AIMRoyale? AIMRoyale is a free online game that makes math fun by mixing school topics with cool space themes. It uses a free AI to generate custom questions for different difficulty levels, and it even helps you learn from your mistakes as you play! 👋 About Me & The Code I’m 16. This summer, I spent 5 hours a day coding this instead of just chilling. I used AI to help me out, but I gained a ton of real professional experience building a safe backend and a smart AI math coach! Why is it special? Private tutors are way too expensive, so I made this 100% free for everyone. The AI instantly creates custom problems based on your exact grade, making it feel like playing a video game instead of doing boring homework. What’s Next? 📸 Funny memes for every single math problem. 🏆 Leaderboards and trophies to compete with friends. 🔓 Keeping it 100% open-source and free for kids everywhere. I would love to know what you guys think about this project! Check out my screenshots below!"}]...
|
Title: AIMRoyale by @Uxyamo | Stardance
Devlogs:
Title: AIMRoyale by @Uxyamo | Stardance
Devlogs:
What is AIMRoyale? AIMRoyale is a free online game that makes math fun by mixing school topics with cool space themes. It uses a free AI to generate custom questions for different difficulty levels, and it even helps you learn from your mistakes as you play! 👋 About Me & The Code I’m 16. This summer, I spent 5 hours a day coding this instead of just chilling. I used AI to help me out, but I gained a ton of real professional experience building a safe backend and a smart AI math coach! Why is it special? Private tutors are way too expensive, so I made this 100% free for everyone. The AI instantly creates custom problems based on your exact grade, making it feel like playing a video game instead of doing boring homework. What’s Next? 📸 Funny memes for every single math problem. 🏆 Leaderboards and trophies to compete with friends. 🔓 Keeping it 100% open-source and free for kids everywhere. I would love to know what you guys think about this project! Check out my screenshots below!
I finally got a working version up and running! I worked more than 50 hours on it It’s not perfect yet . I still need to polish a few things and add a feature so everyone can use it with their own API key (right now it’s running on mine). I’m sharing the link here, it’s completely free and could really help you study for a math test or exam. All I’m asking is 1 minute of your time to try it out. It generates personalized math problems across different levels and difficulty settings, so there’s something for everyone. Give it a shot, I think you’ll enjoy it! 👉 https://serveurmaths-190k.onrender.com
I’m working a lot in this project, I really worker for +30 hours but I forget configurating Hackclub. ☆ : .。. o(≧▽≦)o .。.: ☆ They say that I only worked for +10 hours in this project
Hi
Ships:
What it does AIMRoyale is a free, gamified space-math arena that aligns directly with actual school curricula and science chapters (such as Universal Gravitation or Quadratic Functions). Powered by Alibaba Cloud’s Qwen-Max model, it dynamically generates 100% custom problems tailored to the user’s grade, class, and skill level. Instead of generic quizzes, students navigate through high-stakes space scenarios. The platform features an intelligent, privacy-first memory agent that tracks specific academic weaknesses cross-session. It turns studying into an interactive video game where players actively learn from their mistakes. Accomplishments that we’re proud of As a 16-year-old solo developer, I am incredibly proud of executing a full-stack, production-ready architecture in just a week of summer vacation. I managed to build an advanced, context-aware AI coach that adapts to user mistakes without needing a massive, expensive server-side database. Successfully packaging the engine as a functional PWA that runs perfectly on mobile is a massive milestone for my coding journey. What’s next for AIMRoyale This is just the baseline infrastructure for a global educational platform: Rich Media: Automatically generating and attaching tailored meme images to every single problem created by the engine. Gamification: Implementing a ful
I’m proud about the modifications that I did. I wanted to say that I worker more than 10 hours in this project, but they say that I only worked for 2 hours. I worked in separated projects for securiy....
|
1793714253.541416
|
1793800653.541416
|
|
19448
|
melOS by @MC | Stardance
|
MC
|
2
|
21.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-31T15:07:33Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a WebOS design, with no real theme other than being based on my random quirks and a lot of blue and green (that rhymes). I am proud of the fact that I was able to make something and it forced me to ask myself – what is my actual personality (for reasons this is a joke). All humor aside, while certain things were a challenge and I am glad I had tutorials and helpers along the way (who needs chat-gpt when you have a sister who is a more experienced coder), I am glad that my hours were put into somethings silly that people can mess around with. While there’s not many things you can do, there are many apps, some of which are interactive and some of which are just ways you can glimpse into who I am. I hope that whoever can come across this can enjoy. Technically I only added two new full features (quotes and canvas) because I ran out of ideas and time and was too much of an overachiever in WebOS 1, but I did my best to add to other sections such as Melbot (it’s been a while so don’t quote me on this one), Thinks and Snippet (although you can tell I abandoned this project at many points). Anywho, I hope you enjoy!", "repo": "https://github.com/mel-cruz/melOS", "demo": "https://mel-cruz.github.io/melOS/"}, {"ship_num": 2, "ts": "2026-06-25T20:51:18Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a webOS that essentially shows a lot about myself through the different apps (whether it be my own ideas or random creations). Initially it was challenging to figure out what i wanted to do without being too similar to the tutorial. Also I didn’t really know what I was doing. Over time I found my groove and made melOS the mildly personal thing that it is.", "repo": "https://github.com/mel-cruz/melOS", "demo": "https://mel-cruz.github.io/melOS/"}]...
|
[{"post_id": 85585, "ts": "202 [{"post_id": 85585, "ts": "2026-10-31T14:59:59Z", "hours": 0.2858, "text": "Less so debugging, more so me doing stuff in Snippets because certain formatting things were bothering me. I also added another snippet because that’s what it’s for. I believe I’m finally going to ship"}, {"post_id": 85560, "ts": "2026-10-31T14:27:44Z", "hours": 4.2875, "text": "Hi I’ve been busy with other things and can’t believe I forgot about this until the very last minute but I don’t know that I’ve met the requirements fully for webOS but at least I can share the last app i’ve made, a quotes site with random quotes. I think I did other things in those total four hours but I’m afraid it’s been so long that I don’t fully recall. I think I did a lot of debugging."}, {"post_id": 35954, "ts": "2026-07-27T18:49:01Z", "hours": 6.2731, "text": "I haven’t done a devlog in a while, but I’ve started working on the webOS 2 mission. I’ve updated part of the topbar to go to the homepage of my overarching website (I also have a custom domain now). I’ve also mostly completed my first new app, Canvas, which is an open canvas where the user can draw whatever they like. It started with a simple download/clear button and brush tool, but now also has buttons to fill the background and erase."}, {"post_id": 15896, "ts": "2026-06-25T20:46:54Z", "hours": 0.8933, "text": "I added one final app (for now) and finally deployed it with github!"}, {"post_id": 15725, "ts": "2026-06-25T16:20:46Z", "hours": 1.0525, "text": "I rediscovered (and edited for colors) a snake clone i made a while back and added it in as another app. I also implemented custom hidden messages that only show up with certain keywords"}, {"post_id": 15291, "ts": "2026-06-24T20:41:46Z", "hours": 1.9931, "text": "Kind of gave up on following the tutorial by now. Added two more apps: Melbot, which is a fake AI that responds with a bunch of pre-written sarcastic replies no matter what. And “Thinks”, which is essentially where I can put random questions/thoughts/deep sentences that come to mind (if I choose to)."}, {"post_id": 12824, "ts": "2026-06-21T00:07:17Z", "hours": 1.9814, "text": "Got my first app running. Finally got to declunk my css code. Almost done with part 4 of the tutorial. Never really sure what to share here."}, {"post_id": 12650, "ts": "2026-06-20T17:43:51Z", "hours": 1.54, "text": "finished part 3 of the tutorial. currently struggling to move the styles to css (that’s what you get for choosing to use a million different fonts). Working behind the scenes on some other artwork to make it more personal"}, {"post_id": 12238, "ts": "2026-06-19T23:54:15Z", "hours": 2.3117, "text": "Realized that I haven’t done one of these yet. I’ve mostly completed up to part 2 of the tutorial. Tried my best to deviate from the tutorial but I’ll make it even more personal once I’ve finished the basics"}]...
|
Title: melOS by @MC | Stardance
Devlogs:
Realized Title: melOS by @MC | Stardance
Devlogs:
Realized that I haven’t done one of these yet. I’ve mostly completed up to part 2 of the tutorial. Tried my best to deviate from the tutorial but I’ll make it even more personal once I’ve finished the basics
finished part 3 of the tutorial. currently struggling to move the styles to css (that’s what you get for choosing to use a million different fonts). Working behind the scenes on some other artwork to make it more personal
Got my first app running. Finally got to declunk my css code. Almost done with part 4 of the tutorial. Never really sure what to share here.
Kind of gave up on following the tutorial by now. Added two more apps: Melbot, which is a fake AI that responds with a bunch of pre-written sarcastic replies no matter what. And “Thinks”, which is essentially where I can put random questions/thoughts/deep sentences that come to mind (if I choose to).
I rediscovered (and edited for colors) a snake clone i made a while back and added it in as another app. I also implemented custom hidden messages that only show up with certain keywords
I added one final app (for now) and finally deployed it with github!
I haven’t done a devlog in a while, but I’ve started working on the webOS 2 mission. I’ve updated part of the topbar to go to the homepage of my overarching website (I also have a custom domain now). I’ve also mostly completed my first new app, Canvas, which is an open canvas where the user can draw whatever they like. It started with a simple download/clear button and brush tool, but now also has buttons to fill the background and erase.
Hi I’ve been busy with other things and can’t believe I forgot about this until the very last minute but I don’t know that I’ve met the requirements fully for webOS but at least I can share the last app i’ve made, a quotes site with random quotes. I think I did other things in those total four hours but I’m afraid it’s been so long that I don’t fully recall. I think I did a lot of debugging.
Less so debugging, more so me doing stuff in Snippets because certain formatting things were bothering me. I also added another snippet because that’s what it’s for. I believe I’m finally going to ship
Ships:
I made a webOS that essentially shows a lot about myself through the different apps (whether it be my own ideas or random creations). Initially it was challenging to figure out what i wanted to do without being too similar to the tutorial. Also I didn’t really know what I was doing. Over time I found my groove and made melOS the mildly personal thing that it is.
I made a WebOS design, with no real theme other than being based on my random quirks and a lot of blue and green (that rhymes). I am proud of the fact that I was able to make something and it forced me to ask myself – what is my actual personality (for reasons this is a joke). All humor aside, while certain things were a challenge and I am glad I had tutorials and helpers along the way (who needs chat-gpt when you have a sister who is a more experienced coder), I am glad that my hours were put into somethings silly that people can mess around with. While there’s not many things you can do, there are many apps, some of which are interactive and some of which are just ways you can glimpse into who I am. I hope that whoever can come across this can enjoy. Technically I only added two new full features (quotes and canvas) because I ran out of ideas and time and was too much of an overachiever in WebOS 1, but I did my best to add to other sections such as Melbot (it’s been a while so don’t quote me on this one), Thinks and Snippet (although you can tell I abandoned this project at many points). Anywho, I hope you enjoy!...
|
1793714252.3284655
|
1793800652.3284655
|
|
41961
|
new tab by @ele-na | Stardance
|
ele-na
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T19:03:08Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i made a new tab page (somewhat) that contains a clock, tiny search bar, and dynamic images from NASA’s APOD api key! features: dynamic wallpaper (on good days) search bar clock future updates: app icons links newsfeed interactive stuff possible video and gif bugs", "repo": "https://github.com/ele-na2011/space-api-practice", "demo": "https://ele-na2011.github.io/space-api-practice/"}]...
|
[{"post_id": 52563, "ts": "202 [{"post_id": 52563, "ts": "2026-08-22T18:55:55Z", "hours": 0.9947, "text": "after uh ghosting this project for a couple weeks (stuff happened lol), i came back today and did quite a bit. firstly, i fixed the time element and made it only display the date and hours/minutes i also figured out how to make the background the NASA APOD i also added a google search bar so its on its way to actually becoming a new tab"}, {"post_id": 39818, "ts": "2026-08-03T02:02:37Z", "hours": 0.9369, "text": "today i finally got the vite and everything set up, got a new api and created my site!! this is my first time using vite and other interesting file types such as gitignore and related stuff! i pretty much just followed the guide, but i started a bit differently by initially just creating a github repo instead of importing the files afterwards right now the website shows some really interesting clouds! i also edited the css a bit (finally getting the hang of css after losing it for 4 years!!) to give it a cooler vibe and stuff – i really like the monospace fonts idk why but yeah!!"}]...
|
Title: new tab by @ele-na | Stardance
Devlogs:
to Title: new tab by @ele-na | Stardance
Devlogs:
today i finally got the vite and everything set up, got a new api and created my site!! this is my first time using vite and other interesting file types such as gitignore and related stuff! i pretty much just followed the guide, but i started a bit differently by initially just creating a github repo instead of importing the files afterwards right now the website shows some really interesting clouds! i also edited the css a bit (finally getting the hang of css after losing it for 4 years!!) to give it a cooler vibe and stuff – i really like the monospace fonts idk why but yeah!!
after uh ghosting this project for a couple weeks (stuff happened lol), i came back today and did quite a bit. firstly, i fixed the time element and made it only display the date and hours/minutes i also figured out how to make the background the NASA APOD i also added a google search bar so its on its way to actually becoming a new tab
Ships:
i made a new tab page (somewhat) that contains a clock, tiny search bar, and dynamic images from NASA’s APOD api key! features: dynamic wallpaper (on good days) search bar clock future updates: app icons links newsfeed interactive stuff possible video and gif bugs...
|
1793714251.1761377
|
1793800651.1761377
|
|
50246
|
QueueClear by @Aaravkatiyar | Stardance
|
Aaravkatiyar
|
2
|
4.0
|
8
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-26T17:00:57Z", "hours": 3.0, "multiplier": 1.19, "payout": 4, "blessing": "neutral", "text": "Now its the way you wanted to be i mean atleast i tried", "repo": "https://github.com/aaravkatiyar55-gif/queueclear", "demo": "https://aaravkatiyar55-gif.github.io/queueclear/"}, {"ship_num": 2, "ts": "2026-08-17T21:31:30Z", "hours": 1.0, "multiplier": 6.86, "payout": 4, "blessing": "neutral", "text": "QueueClear is a local-first task tool that helps students choose one small task to start. It includes energy- and time-aware suggestions, snooze/wake, a 10-minute focus timer, and private JSON backup/restore. I tested the main task flow, persistence, responsive layout, keyboard controls, and recovery behaviour. The tracker is currently showing 1 hour but orignally i have been doing this for more than 6 hours i don’t its glitch or bug but it is what it is", "repo": "https://github.com/aaravkatiyar55-gif/queueclear", "demo": "https://aaravkatiyar55-gif.github.io/queueclear/"}]...
|
[{"post_id": 52241, "ts": "202 [{"post_id": 52241, "ts": "2026-08-22T10:30:43Z", "hours": 0.5156, "text": "QueueClear now has a more deliberate study-desk flow instead of treating every task as the same kind of thing.This update adds three ways to reduce the “what do I do next?” problem:- Today’s plan keeps a small set of realistic tasks separate from the rest of the queue.- Waiting lets me park a blocked task with a reason and a revisit date.- Resume after a break keeps a short handoff so a paused focus session does not become a fresh decision.I also reworked the interface around a graph-notebook layout: a ruled-paper surface, notebook section tabs, compact controls, and paper/calm themes. The goal was to make the screen feel like a study tool rather than a generic dashboard.Under the UI, QueueClear’s local task storage, plan/suggestion logic, and timer/date helpers are now in focused modules. I added repeatable Node tests for the workflows. One bug found during this pass: the plan builder could ignore time already used by tasks in Today’s plan; it now subtracts existing planned estimates before adding anything else.Verification completed:- 29/29 Node tests passed- syntax checks passed for the app modules- fresh deployed demo loaded with zero console errors- desktop and 360px mobile layouts were checked with no horizontal overflowLive demo: https://aaravkatiyar55-gif.github.io/queueclear/Source:https://github.com/aaravkatiyar55-gif/queueclearQueueClear is still browser-local: it has no account or device sync."}, {"post_id": 51019, "ts": "2026-08-20T14:39:17Z", "hours": 1.3006, "text": "QueueClear time-sync noteHackatime is currently filtered to project queueclear and shows 3h 25m total. The Stardance project page still displays 2 Total hours. I am attaching screenshots of both pages so the project-time link can be checked.The current public demo and source are here: https://aaravkatiyar55-gif.github.io/queueclear/https://github.com/aaravkatiyar55-gif/queueclearThis note documents the visible time mismatch only. It does not claim that previous review feedback has already been resolved."}, {"post_id": 50819, "ts": "2026-08-20T07:48:26Z", "hours": 1.4578, "text": "Hey pls check out this i have done some more changes according to some of your requests pls give your feedbacks"}, {"post_id": 48862, "ts": "2026-08-17T12:52:09Z", "hours": 0.6372, "text": "I simplified QueueClear into a local-first task tool for students who get stuck choosing what to start. It now captures a task, checks the student’s current energy level, and shows one explainable next action. I added optional estimated-time and first-step fields, snooze-until-tomorrow with wake, task completion/deletion, browser persistence, paper/calm themes, and a small 10-minute focus timer. The timer can start, pause, resume, and reset; it intentionally resets after refresh. While testing, I removed the more complicated sorting and priority rules because they made the choice less clear. The remaining rule matches energy first, then uses the shorter estimate and queue order. I tested validation, persistence after refresh, suggestions, snooze/wake, completion, timer controls, keyboard focus, mobile layout, and a fresh deployed page with no console errors. Source: https://github.com/aaravkatiyar55-gif/queueclear Live demo: https://aaravkatiyar55-gif.github.io/queueclear/ The mission still needs more genuinely tracked QueueClear time before I can ship."}]...
|
Title: QueueClear by @Aaravkatiyar | Stardance
De Title: QueueClear by @Aaravkatiyar | Stardance
Devlogs:
I simplified QueueClear into a local-first task tool for students who get stuck choosing what to start. It now captures a task, checks the student’s current energy level, and shows one explainable next action. I added optional estimated-time and first-step fields, snooze-until-tomorrow with wake, task completion/deletion, browser persistence, paper/calm themes, and a small 10-minute focus timer. The timer can start, pause, resume, and reset; it intentionally resets after refresh. While testing, I removed the more complicated sorting and priority rules because they made the choice less clear. The remaining rule matches energy first, then uses the shorter estimate and queue order. I tested validation, persistence after refresh, suggestions, snooze/wake, completion, timer controls, keyboard focus, mobile layout, and a fresh deployed page with no console errors. Source: https://github.com/aaravkatiyar55-gif/queueclear Live demo: https://aaravkatiyar55-gif.github.io/queueclear/ The mission still needs more genuinely tracked QueueClear time before I can ship.
Hey pls check out this i have done some more changes according to some of your requests pls give your feedbacks
QueueClear time-sync noteHackatime is currently filtered to project queueclear and shows 3h 25m total. The Stardance project page still displays 2 Total hours. I am attaching screenshots of both pages so the project-time link can be checked.The current public demo and source are here: https://aaravkatiyar55-gif.github.io/queueclear/https://github.com/aaravkatiyar55-gif/queueclearThis note documents the visible time mismatch only. It does not claim that previous review feedback has already been resolved.
QueueClear now has a more deliberate study-desk flow instead of treating every task as the same kind of thing.This update adds three ways to reduce the “what do I do next?” problem:- Today’s plan keeps a small set of realistic tasks separate from the rest of the queue.- Waiting lets me park a blocked task with a reason and a revisit date.- Resume after a break keeps a short handoff so a paused focus session does not become a fresh decision.I also reworked the interface around a graph-notebook layout: a ruled-paper surface, notebook section tabs, compact controls, and paper/calm themes. The goal was to make the screen feel like a study tool rather than a generic dashboard.Under the UI, QueueClear’s local task storage, plan/suggestion logic, and timer/date helpers are now in focused modules. I added repeatable Node tests for the workflows. One bug found during this pass: the plan builder could ignore time already used by tasks in Today’s plan; it now subtracts existing planned estimates before adding anything else.Verification completed:- 29/29 Node tests passed- syntax checks passed for the app modules- fresh deployed demo loaded with zero console errors- desktop and 360px mobile layouts were checked with no horizontal overflowLive demo: https://aaravkatiyar55-gif.github.io/queueclear/Source:https://github.com/aaravkatiyar55-gif/queueclearQueueClear is still browser-local: it has no account or device sync.
Ships:
QueueClear is a local-first task tool that helps students choose one small task to start. It includes energy- and time-aware suggestions, snooze/wake, a 10-minute focus timer, and private JSON backup/restore. I tested the main task flow, persistence, responsive layout, keyboard controls, and recovery behaviour. The tracker is currently showing 1 hour but orignally i have been doing this for more than 6 hours i don’t its glitch or bug but it is what it is
Now its the way you wanted to be i mean atleast i tried...
|
1793714249.6299472
|
1793800649.6299472
|
|
30355
|
Pew Pew by @Venkatesh | Stardance
|
Venkatesh
|
2
|
8.0
|
40
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-28T00:37:04Z", "hours": 7.0, "multiplier": 5.5, "payout": 38, "blessing": "neutral", "text": "Finally added in some bosses now the players are encouraged to always be moving and avoiding shots fired by the boss. The boss is more passive in the sense that it does not actively seek the player out but puts on pressure in the background. The player now has to dodge the bosses attacks, destroy immediate threats like the red and purple enemies and then focus on reducing the bosses health. The boss gives a huge amount of money so that the players are truly incentivised to destroy it. playing further, i realise i can improve further by adding: durability to the weapons so that the player has to be in a cycle of buying more weapons with increasing prices there can be more movement options and movement mechanics that can affect the gameplay like how Ultrakill feels There can be more points of interest to encourage travelling longer distances. Maybe some loot boxes, destroyed freighters or like lore exposition like in No Man’s Sky", "repo": "https://github.com/vensah-dev/pew-pew", "demo": "https://github.com/vensah-dev/pew-pew/releases/"}, {"ship_num": 2, "ts": "2026-07-03T16:30:07Z", "hours": 1.0, "multiplier": 2.71, "payout": 2, "blessing": "neutral", "text": "can be downloaded at https://github.com/vensah-dev/pew-pew/releases/tag/v1.1.0 I am working on a game called Pew Pew. The concept is a wave based arcade style 3D space shooter. Some of the controls are inspired by No Man’s Sky. The game aims to fill the void of 3D space games that aren’t arcade style combat oriented with quick rounds and meta progression. Eventually, i aim to be able to have a campaign mode for the game! Currently the game has: better starship handling taking inspiration from No Man’s Sky unique enemy AI behaviour for three different unique enemies with different styles wave based game loop death screen purchase store in space station for 2 other guns and health repair kits/boosters or shield boosters/repairs currently the shooting and can feel hard or buggy, i would be adding in an auto aim assist for long range targets on the machine gun so that early game can be more enjoyable and easier to play before the target seeking weapons are available i started this game a few months ago but had some struggles with motivation and so am now updating it again to reignite my passion for it and eventually release a full version.", "repo": "https://github.com/vensah-dev/pew-pew", "demo": "https://github.com/vensah-dev/pew-pew/releases/"}]...
|
[{"post_id": 55566, "ts": "202 [{"post_id": 55566, "ts": "2026-08-27T14:33:20Z", "hours": 5.8481, "text": "BOSSES: i have finally added bosses! unlike a traditional boss fight where theres an isolated focus on the boss and its attacks, i have chosen to make the boss a much larger enemy that spawns in with the rest of enemy wave. Only one boss can spawn at a time with 5 other normal enemies. The player would be aiming toward eventually destroying the boss for a huge bonus but until they deplete the massive amount of health it has they have to kill normal enemies and dodge attacks. Personally, i think it has upped the stakes of the gameplay and made it so much more fun!"}, {"post_id": 26538, "ts": "2026-07-11T12:36:50Z", "hours": 1.195, "text": "Made the controls better and made the combat more fast paced the combat frankly felt aweful and even the controls were super buggy and not at all intuitive after i played No Man’s Sky for the first time. Taking what i learnt from that game, i made it so that the enemies move around closer to the player so that its easier to aim at the enemy and also ensure that the combat is not slow and boring, with a significant amount of time spent on waiting for the enemies to come to you or chasing them. Additionally I changed the controls to make sure the reticle is confined within a larger circle in the middle to ensure that the player has a visual understanding of how far they can move their mouse and a feel for if they are at max turning speed. More features that i though of include: making the space station more accessible and polished ensuring that the there is some form of aim assist for the machine guns a tutorial or better guidance toward progression and interaction, like locking onto targets, entering the space station, purchasing new weapons etc…"}, {"post_id": 21569, "ts": "2026-07-03T16:24:02Z", "hours": 1.2039, "text": "can be downloaded at https://github.com/vensah-dev/pew-pew/releases/tag/v1.1.0 I am working on a game called Pew Pew. The concept is a wave based arcade style 3D space shooter. Some of the controls are inspired by No Man’s Sky. The game aims to fill the void of 3D space games that aren’t arcade style combat oriented with quick rounds and meta progression. Eventually, i aim to be able to have a campaign mode for the game! i started this game a few months ago and am now updating it again to reignite my passion for it and eventually release a full version."}]...
|
Title: Pew Pew by @Venkatesh | Stardance
Devlogs: Title: Pew Pew by @Venkatesh | Stardance
Devlogs:
can be downloaded at https://github.com/vensah-dev/pew-pew/releases/tag/v1.1.0 I am working on a game called Pew Pew. The concept is a wave based arcade style 3D space shooter. Some of the controls are inspired by No Man’s Sky. The game aims to fill the void of 3D space games that aren’t arcade style combat oriented with quick rounds and meta progression. Eventually, i aim to be able to have a campaign mode for the game! i started this game a few months ago and am now updating it again to reignite my passion for it and eventually release a full version.
Made the controls better and made the combat more fast paced the combat frankly felt aweful and even the controls were super buggy and not at all intuitive after i played No Man’s Sky for the first time. Taking what i learnt from that game, i made it so that the enemies move around closer to the player so that its easier to aim at the enemy and also ensure that the combat is not slow and boring, with a significant amount of time spent on waiting for the enemies to come to you or chasing them. Additionally I changed the controls to make sure the reticle is confined within a larger circle in the middle to ensure that the player has a visual understanding of how far they can move their mouse and a feel for if they are at max turning speed. More features that i though of include: making the space station more accessible and polished ensuring that the there is some form of aim assist for the machine guns a tutorial or better guidance toward progression and interaction, like locking onto targets, entering the space station, purchasing new weapons etc…
BOSSES: i have finally added bosses! unlike a traditional boss fight where theres an isolated focus on the boss and its attacks, i have chosen to make the boss a much larger enemy that spawns in with the rest of enemy wave. Only one boss can spawn at a time with 5 other normal enemies. The player would be aiming toward eventually destroying the boss for a huge bonus but until they deplete the massive amount of health it has they have to kill normal enemies and dodge attacks. Personally, i think it has upped the stakes of the gameplay and made it so much more fun!
Ships:
can be downloaded at https://github.com/vensah-dev/pew-pew/releases/tag/v1.1.0 I am working on a game called Pew Pew. The concept is a wave based arcade style 3D space shooter. Some of the controls are inspired by No Man’s Sky. The game aims to fill the void of 3D space games that aren’t arcade style combat oriented with quick rounds and meta progression. Eventually, i aim to be able to have a campaign mode for the game! Currently the game has: better starship handling taking inspiration from No Man’s Sky unique enemy AI behaviour for three different unique enemies with different styles wave based game loop death screen purchase store in space station for 2 other guns and health repair kits/boosters or shield boosters/repairs currently the shooting and can feel hard or buggy, i would be adding in an auto aim assist for long range targets on the machine gun so that early game can be more enjoyable and easier to play before the target seeking weapons are available i started this game a few months ago but had some struggles with motivation and so am now updating it again to reignite my passion for it and eventually release a full version.
Finally added in some bosses now the players are encouraged to always be moving and avoiding shots fired by the boss. The boss is more passive in the sense that it does not actively seek the player out but puts on pressure in the background. The player now has to dodge the bosses attacks, destroy immediate threats like the red and purple enemies and then focus on reducing the bosses health. The boss gives a huge amount of money so that the players are truly incentivised to destroy it. playing further, i realise i can improve further by adding: durability to the weapons so that the player has to be in a cycle of buying more weapons with increasing prices there can be more movement options and movement mechanics that can affect the gameplay like how Ultrakill feels There can be more points of interest to encourage travelling longer distances. Maybe some loot boxes, destroyed freighters or like lore exposition like in No Man’s Sky...
|
1793714248.371851
|
1793800648.371851
|
|
14731
|
Twinx - OS by @twinx | Stardance
|
twinx
|
2
|
5.0
|
4
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-17T09:10:40Z", "hours": 2.0, "multiplier": 4.44, "payout": 4, "blessing": "neutral", "text": "So few changes i think i added i don’t remember but were good unfortunately i switched to different desktop environment and me dumb i didn’t even pushed it to github.Leave that what’s new i added ? A dock at bottom for apps. A snake game which includes a snake and apple , i think everyone knows it :). A music player using my personal API", "repo": "https://github.com/Philast-015/OS/", "demo": "https://twinx-os.pages.dev/"}, {"ship_num": 2, "ts": "2026-06-16T04:18:12Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hey i made a web OS , it include features such as code editor , note saver , pixel editor and a terminal with a menu bar that appears when clicking the windows key or super key.The challenging part was to make the pixel editor.", "repo": "https://github.com/Philast-015/OS/", "demo": "https://twinx-os.pages.dev/"}]...
|
[{"post_id": 29880, "ts": "202 [{"post_id": 29880, "ts": "2026-07-17T01:26:38Z", "hours": 0.8308, "text": "Made this music player app using API from my site i.e. teenapi so i made a music player around it also it is not in picture but i made a dock for app."}, {"post_id": 16092, "ts": "2026-06-26T05:00:05Z", "hours": 0.4986, "text": "Added a user menu which includes two user : root guest i haven’t added the password for testing of course."}, {"post_id": 16080, "ts": "2026-06-26T04:20:38Z", "hours": 0.485, "text": "Added a snake game with score board and restart option"}, {"post_id": 7528, "ts": "2026-06-12T16:01:10Z", "hours": 0.8583, "text": "added menu and a pixel editor. Where you can make a pixel art and export."}, {"post_id": 7294, "ts": "2026-06-12T04:56:08Z", "hours": 0.4719, "text": "made the terminal and code editor.Just the editor doesn’t support highlights."}, {"post_id": 6035, "ts": "2026-06-10T04:02:05Z", "hours": 1.4633, "text": "Made the basic thing which was listed on guide.With apps like terminal and text editor will add the func to open them later."}]...
|
Title: Twinx - OS by @twinx | Stardance
Devlogs:
Title: Twinx - OS by @twinx | Stardance
Devlogs:
Made the basic thing which was listed on guide.With apps like terminal and text editor will add the func to open them later.
made the terminal and code editor.Just the editor doesn’t support highlights.
added menu and a pixel editor. Where you can make a pixel art and export.
Added a snake game with score board and restart option
Added a user menu which includes two user : root guest i haven’t added the password for testing of course.
Made this music player app using API from my site i.e. teenapi so i made a music player around it also it is not in picture but i made a dock for app.
Ships:
Hey i made a web OS , it include features such as code editor , note saver , pixel editor and a terminal with a menu bar that appears when clicking the windows key or super key.The challenging part was to make the pixel editor.
So few changes i think i added i don’t remember but were good unfortunately i switched to different desktop environment and me dumb i didn’t even pushed it to github.Leave that what’s new i added ? A dock at bottom for apps. A snake game which includes a snake and apple , i think everyone knows it :). A music player using my personal API...
|
1793714247.1987102
|
1793800647.1987102
|
|
4175
|
Cloudiee RC plane by @naadix_ind | Stardance
|
naadix_ind
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-09T01:51:40Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Cloudiee is a Rc plane made for fun and learning. It was created by customized hardware and materials like depron sheets etc.", "repo": "https://github.com/harshitpandey-lang/Cloudiee-RC-Plane", "demo": ""}]...
|
[{"post_id": 5317, "ts": "2026 [{"post_id": 5317, "ts": "2026-06-09T01:43:12Z", "hours": 1.1811, "text": "the plane is completed and ready to be shipped"}, {"post_id": 798, "ts": "2026-06-02T13:56:20Z", "hours": 1.9103, "text": "This is an rc plane made by me which id DIY"}]...
|
Title: Cloudiee RC plane by @naadix_ind | Stardanc Title: Cloudiee RC plane by @naadix_ind | Stardance
Devlogs:
This is an rc plane made by me which id DIY
the plane is completed and ready to be shipped
Ships:
Cloudiee is a Rc plane made for fun and learning. It was created by customized hardware and materials like depron sheets etc....
|
1793714245.2652931
|
1793800645.2652931
|
|
12066
|
ComputeMarket by @Toaster496 | Stardance
|
Toaster496
|
1
|
1.0
|
10
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T11:41:52Z", "hours": 1.0, "multiplier": 7.94, "payout": 10, "blessing": "neutral", "text": "I’ve been building ComputeMarket, a permissionless GPU marketplace on BSC Testnet that lets anyone rent or provide compute using just an EVM wallet and no KYC. The system uses Solidity smart contracts for non-custodial escrow and a 25% protocol fee, a React web app for job management, and an Electron desktop client that spawns isolated Docker containers with GPU passthrough. I also deployed a live demo to GitHub Pages with stubbed demo accounts so people can test the UI flow instantly without installing Node, Docker, or MetaMask. The hardest part was getting cross-stack integration right without a centralized backend. Ethers v6 human-readable ABIs don’t support memory keywords, causing silent selector mismatches until I switched to standard JSON ABIs, and Docker GPU passthrough required exact NVIDIA Container Toolkit configuration that isn’t obvious from generic docs. I’m most proud of shipping a fully functional end-to-end flow where payments only release after verified results, all while keeping everything MIT licensed and verifiable on BSCScan Testnet. To test the real system, you’ll need Node.js 18+, Docker, and MetaMask configured for BSC Testnet (Chain ID 97); grab tBNB from the official faucet, clone the repo, deploy contracts with npm run deploy:testnet , and copy the output addresses into both the web app and desktop client .env files. For a quick look without setup, just visit the GitHub Pages demo to click through job creation and host registration flows immediately.", "repo": "https://github.com/Toaster496/Inavative-solutions", "demo": "https://toaster496.github.io/Inavative-solutions/"}]...
|
[{"post_id": 10572, "ts": "202 [{"post_id": 10572, "ts": "2026-06-17T11:39:17Z", "hours": 0.4886, "text": "I’ve been heads-down building ComputeMarket, a permissionless GPU marketplace on BSC Testnet that lets anyone rent or provide compute without KYC. The core stack is live: Solidity contracts handle escrow and a 25% protocol fee, a React web app connects to MetaMask, and an Electron desktop client spawns Docker containers with GPU passthrough for hosts. Most of the recent work has been ironing out integration quirks, like fixing ethers v6 ABI parsing issues and documenting the exact NVIDIA Container Toolkit setup required for GPU jobs to actually see the hardware.The system is now functional end-to-end on testnet, with verified contracts on BSCScan and deterministic local dev addresses so contributors don’t have to reconfigure environments after every restart. I’ve also been refining the host staking and dispute flow to balance security with usability, since non-custodial escrow means there’s no undo button for user errors. Next up is mainnet migration prep and improving the onboarding docs so new hosts can get running without digging through source code."}, {"post_id": 4629, "ts": "2026-06-08T00:46:02Z", "hours": 0.9706, "text": "Added quick default config’s for LLM’s"}]...
|
Title: ComputeMarket by @Toaster496 | Stardance
D Title: ComputeMarket by @Toaster496 | Stardance
Devlogs:
Added quick default config’s for LLM’s
I’ve been heads-down building ComputeMarket, a permissionless GPU marketplace on BSC Testnet that lets anyone rent or provide compute without KYC. The core stack is live: Solidity contracts handle escrow and a 25% protocol fee, a React web app connects to MetaMask, and an Electron desktop client spawns Docker containers with GPU passthrough for hosts. Most of the recent work has been ironing out integration quirks, like fixing ethers v6 ABI parsing issues and documenting the exact NVIDIA Container Toolkit setup required for GPU jobs to actually see the hardware.The system is now functional end-to-end on testnet, with verified contracts on BSCScan and deterministic local dev addresses so contributors don’t have to reconfigure environments after every restart. I’ve also been refining the host staking and dispute flow to balance security with usability, since non-custodial escrow means there’s no undo button for user errors. Next up is mainnet migration prep and improving the onboarding docs so new hosts can get running without digging through source code.
Ships:
I’ve been building ComputeMarket, a permissionless GPU marketplace on BSC Testnet that lets anyone rent or provide compute using just an EVM wallet and no KYC. The system uses Solidity smart contracts for non-custodial escrow and a 25% protocol fee, a React web app for job management, and an Electron desktop client that spawns isolated Docker containers with GPU passthrough. I also deployed a live demo to GitHub Pages with stubbed demo accounts so people can test the UI flow instantly without installing Node, Docker, or MetaMask. The hardest part was getting cross-stack integration right without a centralized backend. Ethers v6 human-readable ABIs don’t support memory keywords, causing silent selector mismatches until I switched to standard JSON ABIs, and Docker GPU passthrough required exact NVIDIA Container Toolkit configuration that isn’t obvious from generic docs. I’m most proud of shipping a fully functional end-to-end flow where payments only release after verified results, all while keeping everything MIT licensed and verifiable on BSCScan Testnet. To test the real system, you’ll need Node.js 18+, Docker, and MetaMask configured for BSC Testnet (Chain ID 97); grab tBNB from the official faucet, clone the repo, deploy contracts with npm run deploy:testnet , and copy the output addresses into both the web app and desktop client .env files. For a quick look without setup, just visit the GitHub Pages demo to click through job creation and host registration flows immediately....
|
1793714243.9815986
|
1793800643.9815986
|
|
50232
|
format-fixer by @harshitkataria20 | Stardance
|
harshitkataria20
|
1
|
1.06
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-17T12:03:48Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a privacy focused format fixer web that allows the user to change the images format from png to jpg, webp and vice versa and also to pdf’s it also allows user to type text and it will remove extra spacing, markdowns etc to make the text easily readable and because the images and text never leave your browser you dont have to worry about getting your info stolen the next time you change your png to pdf", "repo": "https://github.com/hshit2010/Format-fixer", "demo": "https://aboutharshit.info/Format-fixer/"}]...
|
[{"post_id": 50216, "ts": "202 [{"post_id": 50216, "ts": "2026-08-19T11:01:00Z", "hours": 0.5542, "text": "I wrote the ui again to make it less AI generated"}, {"post_id": 49616, "ts": "2026-08-18T14:34:05Z", "hours": 0.5042, "text": "made some changes on the website to make it look less AI generated and added a vector convertor so you can convert your image into a vector one and let it adapt to the screen instead of stretching awkwardly and added a landing page that allows the user to sort between image and text so it is easy to use"}, {"post_id": 48839, "ts": "2026-08-17T11:59:10Z", "hours": 0.2619, "text": "a privacy focused format changer, I used to run into issues like while changing png to pdf there was no safe option for private stuff so i created a website that is fully focused on privacy and functionability , your data never leaves your browser so you can work without a worry in the world and also added a feature called text sanitizer that removes the extra spacing , etc and make the text beautifull . I made it in such a way that it only has work content and no distractions and annoying stuff."}]...
|
Title: format-fixer by @harshitkataria20 | Stardan Title: format-fixer by @harshitkataria20 | Stardance
Devlogs:
a privacy focused format changer, I used to run into issues like while changing png to pdf there was no safe option for private stuff so i created a website that is fully focused on privacy and functionability , your data never leaves your browser so you can work without a worry in the world and also added a feature called text sanitizer that removes the extra spacing , etc and make the text beautifull . I made it in such a way that it only has work content and no distractions and annoying stuff.
made some changes on the website to make it look less AI generated and added a vector convertor so you can convert your image into a vector one and let it adapt to the screen instead of stretching awkwardly and added a landing page that allows the user to sort between image and text so it is easy to use
I wrote the ui again to make it less AI generated
Ships:
I made a privacy focused format fixer web that allows the user to change the images format from png to jpg, webp and vice versa and also to pdf’s it also allows user to type text and it will remove extra spacing, markdowns etc to make the text easily readable and because the images and text never leave your browser you dont have to worry about getting your info stolen the next time you change your png to pdf...
|
1793714242.8205223
|
1793800642.8205223
|
|
38277
|
personal website v4 by @lilyy | Stardance
|
lilyy
|
2
|
22.0
|
252
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-03T08:36:00Z", "hours": 6.0, "multiplier": 7.57, "payout": 47, "blessing": "neutral", "text": "i made my website! it looks soo cute aaa,, in this ship i did the following: added captcha to messaging added ratelimiting to messaging put the cute custom cursors :3 commented the code a bit added dark mode", "repo": "https://github.com/itzmetanjim/itzmetanjim.github.io", "demo": "https://pages.tanjim.org/"}, {"ship_num": 2, "ts": "2026-08-04T16:57:22Z", "hours": 16.0, "multiplier": 12.47, "payout": 205, "blessing": "neutral", "text": "i made my website yay!", "repo": "https://github.com/itzmetanjim/itzmetanjim.github.io", "demo": "https://pages.tanjim.org/"}]...
|
[{"post_id": 60711, "ts": "202 [{"post_id": 60711, "ts": "2026-09-03T08:33:23Z", "hours": 0.6447, "text": "minor fixes and comments make the code easier to read! and also fix a slight bug in the captcha where it didnt reset when i sent a message so i needed to reload to send 2 messages commits since the last devlog 631e93b comment backend.py 01a280d comment notifier-macos.sh 5016741 comment lilyterm.sh ec83a24 make captcha reset on msg send"}, {"post_id": 60699, "ts": "2026-09-03T07:47:47Z", "hours": 0.8411, "text": "add captcha now bots can’t spam my messages commits since the last devlog 0c9c468 make it a little taller d6a262a fix transition colors da01c9a fix height of hrrect d2685a4 document captcha and make api key bypass ratelimit 9ebb297 add captcha"}, {"post_id": 60676, "ts": "2026-09-03T06:08:51Z", "hours": 0.6397, "text": "add ratelimits this prevents spamming messages, its a server side limit of 6 messages per 2 minutes. and you also can’t send an empty message anymore (both client-side and server-side restriction). commits since last devlog 5a74570 make it reject empty messages 207b3a6 add ratelimiting"}, {"post_id": 59607, "ts": "2026-09-01T14:55:52Z", "hours": 0.7311, "text": "add dark mode! you can click this button in the corner for dark mode now! yayayay commits since last devlog 3044340 uhh weird css specificity fix ee4291e finish dark mode! 3a2ea3d add dark mode colors"}, {"post_id": 59389, "ts": "2026-09-01T05:26:29Z", "hours": 0.7094, "text": "made the custom cursor logic better it used to sometimes show the text cursor when it was not supposed to and it did not show the hand cursor on the projects link buttons commits since last devlog 13c5a44 make custom cursors work better 29cd012 make readme use the jpg; jpg is faster than png b329790 new preview 2d56412 add backend shebang a985bc5 fix readme bb65dca fix custom cursor a bit 39561cb document licensing stuf"}, {"post_id": 52977, "ts": "2026-08-23T11:00:19Z", "hours": 2.2378, "text": "add a custom pink scrollbar and cursor!! they look so cuteeeee commits since last devlog ffea3e3 inline custom cursor SVGs 4549d01 add pink custom cursors!! 0bc7f83 add cute pink scrollbars :3 1d03792 Revert “comment notifier-macos.sh, sob its trash code” 3abd8da comment notifier-macos.sh, sob its trash code e9ab376 aa 756f09e seo 321727f WHO IS SPAMMING MY API"}, {"post_id": 41731, "ts": "2026-08-06T04:00:41Z", "hours": 0.4597, "text": "add a readme and fix it in india i added the README and then a friend from india told me that apparently the website doesnt work in india so i actually travelled all the way to the border and managed to connect to an indian cell tower and verified that it did not work then i fixed it, i proxied the messages API through nest and added pages.tanjim.org which doesnt go through VPS now its all good."}, {"post_id": 40681, "ts": "2026-08-04T11:28:12Z", "hours": 0.6206, "text": "completed the message feature by implementing email now its done! i used agentmail for this (“coolton” is what i named the agentmail inbox, i reused an inbox i used for an older project), it works now! now when someone sends a message, all of these happen: i recieve an email (immediately) i recieve a notification on my macbook with a sound(if its locked/sleeping then i recieve the notification when i come back and unlock), i recieve an alert on my terminal when i open it commits since the last devlog c536541 fix mobile responsiveness issue 16ecb20 make it email me when a message is sent"}, {"post_id": 40608, "ts": "2026-08-04T08:20:43Z", "hours": 0.7086, "text": "made the notifier now it will also notify me with a sound when any message comes! if my mac is locked/i am away then it will wait until it unlocks then notify me for my messages automatically, it will also show the priority. one limitation, it uses a flag on the server to store if it has already notified for a given message so it will not notify me twice, but because nothing is stored in the client (my macbook) it will cause problems if i make it notify on multiple devices. if i do that i have to either make the notified flag be an array for each client or i can make each client store its own flag but regardless it works now, all that’s left is email commits since the last devlog d16aca6 make the notifier script b4b7089 Make it only alert on interactive shells"}, {"post_id": 40536, "ts": "2026-08-04T05:04:30Z", "hours": 1.8658, "text": "made the terminal integration! it notifies me on my terminal when i have messages and implements a lily cli command that i can use to manage the messages. it supports these commands lily messages [filter] : [filter] is optional, it can be one of read unread notified unnotified or something like .id==5 or .id>=2 . shows the messages matching the filter. lily mark <type> <value> <start> [end] : <type> is read or notified , <value> is a boolean, it changes the read or notified value of a message. when [end] isn’t given it defaults to <start> . lily read <start> [end] : aliases to lily mark read true <start> [end] lily readall : marks everything as read lily delete <start> [end] deletes messages based on IDs. commits since the last devlog ed99296 add lilyterm.sh terminal integration edcb0f8 timestamp! a696a4a forwarding stuff 99cecd5 increase hrrect blur radius"}, {"post_id": 39268, "ts": "2026-08-02T04:10:28Z", "hours": 0.5681, "text": "integrated the website to the API! now it works! go to tanjim.org and send me a message! i still need to set up the notifier and terminal stuff and email etc etc but it now works and is deployed! commits since the last devlog i made these commits in the last 3 devlogs but i wasnt able to put it then because it hadn’t been pushed (if i pushed then the site would be in a nonfunctional intermediary state) ac5925b gitignore memory json 07657ec add the X-Forwarded-For header on the IP field 6872d5a integrate it 98b4cd8 cors stuff"}, {"post_id": 38896, "ts": "2026-08-01T14:02:46Z", "hours": 3.0544, "text": "made the rest API for this and a web UI for me to manage the messages this API will be called when someone sends a message. remaining: use js magic to integrate this into the website so message sending works the rest of the stuff, mail,terminal integration,and notifier"}, {"post_id": 38249, "ts": "2026-07-31T15:29:43Z", "hours": 2.2378, "text": "made the ui for the new message button i made a message button and added some smoooooooth transitions for it like the email button and made the ui stuff for it, next things left to do in this api: make a rest API for this that will be called and will store all the messages mail: use the gmail/agentmail/smth else api to email the msg to me terminal integration: something to source in my bashrc that alerts me when i open the terminal notif service: notifies me in my macbook when a message comes maybe a captcha?"}, {"post_id": 32918, "ts": "2026-07-22T11:48:33Z", "hours": 7.3533, "text": "Made the basic parts of the site i made the frontend part of the site, here is what i did first i made the template indext.html (see 2nd screenshot) , the template has blocks like this <!--!BEGIN AWARD--> <div class= \"award\" > <h3> [[result]] </h3> <p> [[event]] </p> <p class= \"faded\" > [[details]] </p> </div> <!--!END AWARD--> ... ... <!--!BEGIN PROJECT--> <div class= \"project\" > <h3> [[title]] </h3> <p> [[description]] </h3> <div class= \"links\" > <!--!BEGIN LINKS--> <a href= \"[[url]]\" target= \"_blank\" > [[label]] </a> <!--!END LINKS--> </div> </div> <!--!END PROJECT--> then i made a script run.py that takes in indext.html awards.json projects.json then repeats and substitutes the AWARD , PROJECT , LINKS blocks and removes the content of the TEMPLATE NOTICE block to generate index.html (its a custom handrolled script no frameworks) then i made a fastapi script serve.py to preview any template changes live, it hosts a webserver on port 8000 and generates index.html on the fly using run.py whenever i request it so i don’t have to type the command 1000 times. i added some logic to run.py that inlines all CSS, JS and fonts to reduce everything to one request, then minifies it into an optimized bundle, so it’s now larping vite/webpack i made a GH action that automatically deploys the GitHub Pages site by running run.py on GitHub servers FINALLY now its deployed yippee!!!!"}]...
|
Title: personal website v4 by @lilyy | Stardance
Title: personal website v4 by @lilyy | Stardance
Devlogs:
Made the basic parts of the site i made the frontend part of the site, here is what i did first i made the template indext.html (see 2nd screenshot) , the template has blocks like this <!--!BEGIN AWARD--> <div class= "award" > <h3> [[result]] </h3> <p> [[event]] </p> <p class= "faded" > [[details]] </p> </div> <!--!END AWARD--> ... ... <!--!BEGIN PROJECT--> <div class= "project" > <h3> [[title]] </h3> <p> [[description]] </h3> <div class= "links" > <!--!BEGIN LINKS--> <a href= "[[url]]" target= "_blank" > [[label]] </a> <!--!END LINKS--> </div> </div> <!--!END PROJECT--> then i made a script run.py that takes in indext.html awards.json projects.json then repeats and substitutes the AWARD , PROJECT , LINKS blocks and removes the content of the TEMPLATE NOTICE block to generate index.html (its a custom handrolled script no frameworks) then i made a fastapi script serve.py to preview any template changes live, it hosts a webserver on port 8000 and generates index.html on the fly using run.py whenever i request it so i don’t have to type the command 1000 times. i added some logic to run.py that inlines all CSS, JS and fonts to reduce everything to one request, then minifies it into an optimized bundle, so it’s now larping vite/webpack i made a GH action that automatically deploys the GitHub Pages site by running run.py on GitHub servers FINALLY now its deployed yippee!!!!
made the ui for the new message button i made a message button and added some smoooooooth transitions for it like the email button and made the ui stuff for it, next things left to do in this api: make a rest API for this that will be called and will store all the messages mail: use the gmail/agentmail/smth else api to email the msg to me terminal integration: something to source in my bashrc that alerts me when i open the terminal notif service: notifies me in my macbook when a message comes maybe a captcha?
made the rest API for this and a web UI for me to manage the messages this API will be called when someone sends a message. remaining: use js magic to integrate this into the website so message sending works the rest of the stuff, mail,terminal integration,and notifier
integrated the website to the API! now it works! go to tanjim.org and send me a message! i still need to set up the notifier and terminal stuff and email etc etc but it now works and is deployed! commits since the last devlog i made these commits in the last 3 devlogs but i wasnt able to put it then because it hadn’t been pushed (if i pushed then the site would be in a nonfunctional intermediary state) ac5925b gitignore memory json 07657ec add the X-Forwarded-For header on the IP field 6872d5a integrate it 98b4cd8 cors stuff
made the terminal integration! it notifies me on my terminal when i have messages and implements a lily cli command that i can use to manage the messages. it supports these commands lily messages [filter] : [filter] is optional, it can be one of read unread notified unnotified or something like .id==5 or .id>=2 . shows the messages matching the filter. lily mark <type> <value> <start> [end] : <type> is read or notified , <value> is a boolean, it changes the read or notified value of a message. when [end] isn’t given it defaults to <start> . lily read <start> [end] : aliases to lily mark read true <start> [end] lily readall : marks everything as read lily delete <start> [end] deletes messages based on IDs. commits since the last devlog ed99296 add lilyterm.sh terminal integration edcb0f8 timestamp! a696a4a forwarding stuff 99cecd5 increase hrrect blur radius
made the notifier now it will also notify me with a sound when any message comes! if my mac is locked/i am away then it will wait until it unlocks then notify me for my messages automatically, it will also show the priority. one limitation, it uses a flag on the server to store if it has already notified for a given message so it will not notify me twice, but because nothing is stored in the client (my macbook) it will cause problems if i make it notify on multiple devices. if i do that i have to either make the notified flag be an array for each client or i can make each client store its own flag but regardless it works now, all that’s left is email commits since the last devlog d16aca6 make the notifier script b4b7089 Make it only alert on interactive shells
completed the message feature by implementing email now its done! i used agentmail for this (“coolton” is what i named the agentmail inbox, i reused an inbox i used for an older project), it works now! now when someone sends a message, all of these happen: i recieve an email (immediately) i recieve a notification on my macbook with a sound(if its locked/sleeping then i recieve the notification when i come back and unlock), i recieve an alert on my terminal when i open it commits since the last devlog c536541 fix mobile responsiveness issue 16ecb20 make it email me when a message is sent
add a readme and fix it in india i added the README and then a friend from india told me that apparently the website doesnt work in india so i actually travelled all the way to the border and managed to connect to an indian cell tower and verified that it did not work then i fixed it, i proxied the messages API through nest and added pages.tanjim.org which doesnt go through VPS now its all good.
add a custom pink scrollbar and cursor!! they look so cuteeeee commits since last devlog ffea3e3 inline custom cursor SVGs 4549d01 add pink custom cursors!! 0bc7f83 add cute pink scrollbars :3 1d03792 Revert “comment notifier-macos.sh, sob its trash code” 3abd8da comment notifier-macos.sh, sob its trash code e9ab376 aa 756f09e seo 321727f WHO IS SPAMMING MY API
made the custom cursor logic better it used to sometimes show the text cursor when it was not supposed to and it did not show the hand cursor on the projects link buttons commits since last devlog 13c5a44 make custom cursors work better 29cd012 make readme use the jpg; jpg is faster than png b329790 new preview 2d56412 add backend shebang a985bc5 fix readme bb65dca fix custom cursor a bit 39561cb document licensing stuf
add dark mode! you can click this button in the corner for dark mode now! yayayay commits since last devlog 3044340 uhh weird css specificity fix ee4291e finish dark mode! 3a2ea3d add dark mode colors
add ratelimits this prevents spamming messages, its a server side limit of 6 messages per 2 minutes. and you also can’t send an empty message anymore (both client-side and server-side restriction). commits since last devlog 5a74570 make it reject empty messages 207b3a6 add ratelimiting
add captcha now bots can’t spam my messages commits since the last devlog 0c9c468 make it a little taller d6a262a fix transition colors da01c9a fix height of hrrect d2685a4 document captcha and make api key bypass ratelimit 9ebb297 add captcha
minor fixes and comments make the code easier to read! and also fix a slight bug in the captcha where it didnt reset when i sent a message so i needed to reload to send 2 messages commits since the last devlog 631e93b comment backend.py 01a280d comment notifier-macos.sh 5016741 comment lilyterm.sh ec83a24 make captcha reset on msg send
Ships:
i made my website yay!
i made my website! it looks soo cute aaa,, in this ship i did the following: added captcha to messaging added ratelimiting to messaging put the cute custom cursors :3 commented the code a bit added dark mode...
|
1793714241.5756512
|
1793800641.5756512
|
|
20070
|
Action Bar by @Joseph-T | Stardance
|
Joseph-T
|
2
|
69.6
|
970
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-18T19:12:56Z", "hours": 21.0, "multiplier": 13.84, "payout": 279, "blessing": "neutral", "text": "Version 2. What changed in Version 2: Safer extension marketplace Far better DDG search and app opening functionality Improved calculator Aliases Fixed a lot of small bugs Added the icon of the app you are opening ====================================== What is it? Action bar an application that more easily allows for quick actions and allows for users to open apps very easily. Challenges: I have never coded anything that people other than me actually use, so there is more pressure to sort out the small bugs and improve the UX How To Use: In order to open the application you can press Alt + Z a shortcut that can be configured. Or press the Icon in the bottom right corner. More information in the read me file.", "repo": "https://github.com/joseph-tighe/Action-Bar", "demo": "https://github.com/joseph-tighe/Action-Bar/releases"}, {"ship_num": 2, "ts": "2026-07-04T23:51:22Z", "hours": 43.0, "multiplier": 16.45, "payout": 691, "blessing": "neutral", "text": "What is it? Action bar an application that more easily allows for quick actions and allows for users to open apps very easily. Challenges: One of the hardest challenges was allowing the user to make their own extensions and to allow for them to share it with others in the end I managed to make an extension “marketplace” (a bit empty but it works). How To Use: In order to open the application you can press Alt + Z a shortcut that can be configured. Or press the Icon in the bottom right corner. More information in the read me file. Features: This application lets you: quickly open apps Run custom extensions Pipe extensions together.", "repo": "https://github.com/joseph-tighe/Action-Bar", "demo": "https://github.com/joseph-tighe/Action-Bar/releases"}]...
|
[{"post_id": 57679, "ts": "202 [{"post_id": 57679, "ts": "2026-08-29T22:15:28Z", "hours": 1.4392, "text": "Changes Made Added a confirmation modal for the extension marketplace, hid the users home path, and Fixed a bunch of bugs. Confirmation Modal I added a modal that warns users against downloading extensions that could be harmful. Hiding the users home directory In the scenario that the user is recording a video or something where they use this app their user name on their computer could have been revealed, which is not good to say the least. Now that is no longer an issue, because we obfuscate the home directory, replacing it with a tilde Bugs The Cancel button on the modal wouldn’t close it. Stuck in the download state when downloading an extension Extension marketplace still showed previously downloaded extensions"}, {"post_id": 44825, "ts": "2026-08-10T21:01:41Z", "hours": 1.2183, "text": "Changes Made I worked on fixing some bugs for linux, so it should now have support for Wayland. Wayland bug fixes Wayland is an API for accessing the user layer of a linux machine. Quite a few distro’s use Wayland for this however my code was not the most compatible with this so I needed to write a bunch of code so some components work with it. The biggest bug was that the global shortcuts were not registering. Sorry about the lack of video"}, {"post_id": 42007, "ts": "2026-08-06T15:29:30Z", "hours": 0.6931, "text": "Changes Made The app now allows for the user to select what extension they want to call using the mouse, it also has a better GitHub action yml, and finally npm tests Mouse selection Before the app was entirely keyboard driven their was nothing for the mouse to even interact with. I prefer it like this but their is now the option to select extensions with the mouse instead. GitHub actions yml The way I publish the app executable is with GitHub actions I will call an action that compiles the app and publishes the compiled app. But now it will also automatically update the version number so I don’t have to Tests I forgot to make tests for the longest time for this app and I finally realized it so I added them"}, {"post_id": 41621, "ts": "2026-08-05T22:49:42Z", "hours": 2.2536, "text": "Changes Made: I added a linux version, it should work on most distros. I also cleaned up the codebase. The linux version It may not work on all distros I only tested Fedora KDE, but from that test it looks like it functions almost fully however I still need to get the code for global shortcuts updated so that also works on linux. The file should download on most distro’s its an AppImage (the executable), not a .deb file I had one but switched to purely AppImage, soon afterwards, it should not affect the user. Cleaned up codebase All functions and classes now have docstrings, this way I can tell what I wrote the function to do later. I also removed some redundant checks."}, {"post_id": 30820, "ts": "2026-07-18T19:02:39Z", "hours": 5.6219, "text": "Changes Made Added an Icon to the app, fixed a hundred different bugs, added a fallback for the duckduckgo extension, and added the extension descriptions to the help menu The icon I added an icon its very simple, and definitely subject to change, but now it does not have the default electron icon in the task bar. Bugs Fixed Changed the codebase to made up of several modules instead of a few giant files (Should have done it a long time ago) Fixed the time formatter for the timer Changed the commit hash of the GitHub extension Changed Priority order Improved Duck duck go extension The duckduckgo extension uses their quick search API, which returns a JSON, in which the answer sometimes is in JSON.abstract and sometimes JSON.relatedTopics[0].text Now the extension looks in both places and returns the most relevant answer. Extension descriptions I recently added descriptions of the extensions in their metadata so now on the help tab you can get small descriptions of each one. Sorry about how their have been no videos but it has all been fixing a lot of small bugs most of which don’t even make it into the dev-log."}, {"post_id": 28479, "ts": "2026-07-14T18:56:43Z", "hours": 1.8217, "text": "Changes Made Added start on boot and safer extension marketplace. Start on boot The app will now set itself up so if in settings you enabled start on boot the app will automatically start itself when you boot up your computer. Safer extension marketplace The way extensions work is all the extensions listed have a GitHub repository linked so when the user downloads the extension they download it off the repository, but the developer can change the GitHub repo so after it is accepted as safe the developer can change that without any warning. So now we grab from a specific point on the git tree. However even still the Dev can change the history so we check that the commit hash matches the stored hash meaning the developer cannot change their extension after approval Sorry for the lack of videos again its really a backend change"}, {"post_id": 28098, "ts": "2026-07-14T04:26:24Z", "hours": 1.9806, "text": "Changes Made I added an auto update code and added metadata to extensions Auto update code Before I added this code a user would have to delete the current code, and reinstall the application from GitHub. However this code will automatically detect and update the app on the users machine. Added metadata to extensions This allows for extensions to give data about them to the extension marketplace giving users a better idea of what they are downloading. Sorry for the lack of videos, it was really a backend change"}, {"post_id": 27800, "ts": "2026-07-13T17:52:46Z", "hours": 2.0631, "text": "Changes Made I added aliases and Improved the search. Aliases Aliases are a user configurable feature that allows the user to type /<Shorthand> which will immediately be turned into some text. For example instead of writing “Google chrome” I can type /google which will be converted to Google Chrome Users can configure as many of these as they want. Improved search On the first ship I got complaints that the search did not always return an answer when asked questions. For example Where is Canada would return an invalid answer whilst Canada returned a valid answer. I added a fallback to make these scenarios less common."}, {"post_id": 26958, "ts": "2026-07-12T01:42:47Z", "hours": 4.9442, "text": "Changes Made Improved fonts and spacing, improved opening apps, shows the icon of the app. I also improved the calculator Improved fonts I was just using the default fonts earlier because I am not very creative, but I decided to change it to Inter and Consolas. Improved app opening Earlier to determine the apps the user has installed as a temporary solution I just scrapped their desktop. But that did not return everything, and I finally fixed it I tried a bunch but the that worked for me was using some commands through power shell. That gets all the apps that windows knows about. The icons Now the program will show the user the icon of the app they want to open. there are three different kinds of app Id’s in windows and I have to assess their photos differently for each, which added alot of complexity and is the whole reason this devlog took so long. Better calculator The calculator has a few improvements the first being it now has the constants pi and e baked into it. It can also now do square roots and trigonometric functions. The trigonometric functions are interesting because they can be done with radians or degrees if the user types sin(90deg) . It will use 90 degrees instead of the default being radians."}, {"post_id": 25475, "ts": "2026-07-09T19:28:27Z", "hours": 2.4711, "text": "Changes Made I added a list extensions feature, added extension specific settings, and removed a few nasty bugs. List all extensions feature All it does is when you press ? it will list all the extensions and you can just select the one you want from there. Extension Specific settings The settings page used to just have settings for the app now under the extensions tab will have extension specific settings that the dev of the extension can use. Bugs The implementation for removing the previous answers did not always remove all of the answers and sometimes left the user with answers that shouldn’t be there. I did a small rewrite which fixed the issue. The autocomplete feature did not like the list all expansions feature because the program will refuse to give answer past a certain amount of them to prevent 20 answers being given at once. But because the list all feature could expand to that point, the autocomplete feature thought there wasn’t enough room for it. But now I delete the previous answers before creating new ones for autocomplete."}, {"post_id": 25056, "ts": "2026-07-09T00:38:11Z", "hours": 1.5983, "text": "Changes made I made a far better readme.md file, and I added documentation for making your own extensions and pipelines Documentation I added very specific documentation for making your own extensions and pipelines. I don’t recommend making your own pipeline, because that is still in early development, but if you don’t have a stardance project yet I would absolutely recommend trying to make your own extension. It is difficult the first time but pretty easy afterwards."}, {"post_id": 22476, "ts": "2026-07-04T23:07:25Z", "hours": 0.8775, "text": "Changes Made I finalized details for easy install and using it for the first time. Simple things like improving the functionality with the tray (the bottom right icons). How to use Whenever you want to open it you can either press Alt + Z or open the tray and press the icon see the image below for an example."}, {"post_id": 21895, "ts": "2026-07-04T02:17:22Z", "hours": 11.1725, "text": "Changes Made I did a lot and forgot to make Dev logs. I allow for the user to download extensions made by anyone to add to the website. And added a feature called pipelines. Downloading Extensions Anyone can make an extension and post it on Github, following the correct format if their extension is not listed you can put the username/extension_name in the text box above. When you restart the app the extension should be downloaded. Pipelines Pipelines let users without any code pipe extensions together so If I have a google translate and a search extension I can pipe them together. so that the result of the search is then translated."}, {"post_id": 15281, "ts": "2026-06-24T20:27:38Z", "hours": 5.7508, "text": "Changes Made: Improved several answers a lot. Added selector for which answer the user wants to interact with. And added a simple settings screen. Settings screen: The settings screen is temporary, but allows users to quickly change and save app settings. Selector: When multiple answers are present one of the answers will be highlighted the user can change which one is highlighted simply using the arrow keys. And when pressing Enter or Tab. They will call that extension. Better multiple answers: The new implementations allows for extensions to better manipulate their specific answer. And gives users a better amount of control through settings over the apps functionality."}, {"post_id": 14421, "ts": "2026-06-23T15:24:46Z", "hours": 4.8994, "text": "Changes Made: I added a color picker and allowed for several tools to output at once. Color Picker Can use an eyedropper of the screen behind the interface or select from the color wheel. You can also just write out hex codes or RGB Multiple answers The main process can now handle and may call several extensions at once. The output order is determined by the order the main process calls the extensions, with an exception for asynchronous functions which get resolved upon completion. Still fixing small errors here and there in the system and may make a more intelligent main process"}, {"post_id": 12726, "ts": "2026-06-20T19:59:54Z", "hours": 3.3439, "text": "Changes Made: Added an image viewer into the file explorer, added a copy button and improved file explorer functionality File explorer The file explorer now will show a preview image if it the target file is an image. The file explorer can also now take in a folder in which the target file is in and uses a search that allows for skipping folder in case the user forgets a folder inbetween. Copy Btn It just copies the result text into the users clipboard"}, {"post_id": 12246, "ts": "2026-06-20T00:24:54Z", "hours": 0.9597, "text": "Changes Made Added autocomplete for which action should be completed and added a music player. All extensions are now properly formatted, and no exceptions are given out. Autocomplete I found it a little difficult to quickly remember and spell out the extensions names but now I only have to type the first few letters and the app will give options for what the extension could be. Music Player Just opens the requested song in YouTube music."}, {"post_id": 12097, "ts": "2026-06-19T18:59:07Z", "hours": 2.0411, "text": "Added a GitHub and Duckduckgo extension so search does not have to be based on Wikipedia. The GitHub extension is made to quickly search for repos and users, however the API used has somewhat strict rate limits, but for occasional searches it should work fine. The DuckDuckGo or the dgg extention is just a search feature"}, {"post_id": 11515, "ts": "2026-06-18T20:09:16Z", "hours": 5.0231, "text": "Added more settings, added an app opener and added a file explorer. The file explorer and app opener used to be separate but I made them the same to simplify the users experience because I think that is what the application will be used for the most. They both work pretty well the file explorer can only fetch files a limited range of files it can use files in downloads, desktop, documents, music, videos, etc, can’t look for system level files and whatnot though. Added way more settings so you can change what the default tool it should use is if it can’t find a good one to use. Updated the readme for proper credit, and a bunch of other small things. I also made it compatible with several screens."}, {"post_id": 10713, "ts": "2026-06-17T16:01:36Z", "hours": 1.6603, "text": "I switched to an extension based thing. So anyone can make their own extensions for the app. The picture is of a JSON that has the data for all the extensions at the moment. I tried making the frosted glass look by adding random noise but I was not able to make it work."}, {"post_id": 10368, "ts": "2026-06-17T01:32:39Z", "hours": 1.7442, "text": "Added settings.json, the ability to open apps, and continued to attempt a frosted glass look. Settings.json will now allow for more customization. The ability to open apps is kind of the whole point its to avoid windows weird search bar thing that’s slow and not great to use. And after doing more looking into the blur effect it looks like the only way to do it is to have some js take screenshots of whats behind the page and then save that png and load it under the transparent thing than use the blur filter but, it seems slow, complicated, and not great for cross platform, so I am still looking for other solutions"}, {"post_id": 10287, "ts": "2026-06-16T22:32:40Z", "hours": 0.8639, "text": "Added a search feature. The feature just looks up what is currently in the search bar. Unfortunately the search feature uses Wikipedia’s API, which does make it much faster, than a bot crawling through google. But is susceptible to misinformation. I don’t think this is a massive problem because I am only taking the first sentence of the article. But I may look into alternatives in the future."}, {"post_id": 10236, "ts": "2026-06-16T21:20:33Z", "hours": 0.7111, "text": "added a timer to the thing, you also can instead of relying on autodetect to figure out what action you want to take you can say @tool_name instead where tool_name is the tool you are calling"}, {"post_id": 10203, "ts": "2026-06-16T20:26:53Z", "hours": 1.2817, "text": "added conversions to the app and a global shortcut to open the app I decided on Alt+Z for the shortcut because I don’t have that mapped to anything right now and the two keys are physically close to each other. The conversion thing was interesting because there are a lot of different units for the same stuff, miles, inches, cm, km, etc. all measure length. I really did not want to make a table for every possible conversion, so I wrote a function that takes a table with enough conversions and uses that to fill out the blanks. For example if I know the conversion between ft and in and in and cm. I can solve for the conversion between ft and cm."}, {"post_id": 10134, "ts": "2026-06-16T18:55:13Z", "hours": 0.8756, "text": "I improved the looks slightly improved the functionality of the calculator. I tried for more than half this time to make the blur working unfortunately it does not appear to be possible maybe doing something with JS canvases. But if I have to use something like that the amount of compute time won’t be worth it. So I decided against doing it until there is an easy way to do that."}, {"post_id": 10092, "ts": "2026-06-16T17:55:54Z", "hours": 1.1422, "text": "Added glassy look and made a calculator app for the program. In the end I want an app that is completely transparent except for the results and search bar. Those should be tinted and blurred, but in electron the app I am using it is impossible to make a single element transparent through the apps behind it and blurred. I can do that for elements in my own app. Or the background for the entire app. So the search bar and results bar’s backgrounds are not blurred, which makes them hard to read over text."}, {"post_id": 10041, "ts": "2026-06-16T16:38:17Z", "hours": 0.9781, "text": "Made a basic looking search bar that opens when you click a little icon in the corner of the screen, doesn’t do anything besides sit there yet. I am using electron and node JS for it."}]...
|
Title: Action Bar by @Joseph-T | Stardance
Devlog Title: Action Bar by @Joseph-T | Stardance
Devlogs:
Made a basic looking search bar that opens when you click a little icon in the corner of the screen, doesn’t do anything besides sit there yet. I am using electron and node JS for it.
Added glassy look and made a calculator app for the program. In the end I want an app that is completely transparent except for the results and search bar. Those should be tinted and blurred, but in electron the app I am using it is impossible to make a single element transparent through the apps behind it and blurred. I can do that for elements in my own app. Or the background for the entire app. So the search bar and results bar’s backgrounds are not blurred, which makes them hard to read over text.
I improved the looks slightly improved the functionality of the calculator. I tried for more than half this time to make the blur working unfortunately it does not appear to be possible maybe doing something with JS canvases. But if I have to use something like that the amount of compute time won’t be worth it. So I decided against doing it until there is an easy way to do that.
added conversions to the app and a global shortcut to open the app I decided on Alt+Z for the shortcut because I don’t have that mapped to anything right now and the two keys are physically close to each other. The conversion thing was interesting because there are a lot of different units for the same stuff, miles, inches, cm, km, etc. all measure length. I really did not want to make a table for every possible conversion, so I wrote a function that takes a table with enough conversions and uses that to fill out the blanks. For example if I know the conversion between ft and in and in and cm. I can solve for the conversion between ft and cm.
added a timer to the thing, you also can instead of relying on autodetect to figure out what action you want to take you can say @tool_name instead where tool_name is the tool you are calling
Added a search feature. The feature just looks up what is currently in the search bar. Unfortunately the search feature uses Wikipedia’s API, which does make it much faster, than a bot crawling through google. But is susceptible to misinformation. I don’t think this is a massive problem because I am only taking the first sentence of the article. But I may look into alternatives in the future.
Added settings.json, the ability to open apps, and continued to attempt a frosted glass look. Settings.json will now allow for more customization. The ability to open apps is kind of the whole point its to avoid windows weird search bar thing that’s slow and not great to use. And after doing more looking into the blur effect it looks like the only way to do it is to have some js take screenshots of whats behind the page and then save that png and load it under the transparent thing than use the blur filter but, it seems slow, complicated, and not great for cross platform, so I am still looking for other solutions
I switched to an extension based thing. So anyone can make their own extensions for the app. The picture is of a JSON that has the data for all the extensions at the moment. I tried making the frosted glass look by adding random noise but I was not able to make it work.
Added more settings, added an app opener and added a file explorer. The file explorer and app opener used to be separate but I made them the same to simplify the users experience because I think that is what the application will be used for the most. They both work pretty well the file explorer can only fetch files a limited range of files it can use files in downloads, desktop, documents, music, videos, etc, can’t look for system level files and whatnot though. Added way more settings so you can change what the default tool it should use is if it can’t find a good one to use. Updated the readme for proper credit, and a bunch of other small things. I also made it compatible with several screens.
Added a GitHub and Duckduckgo extension so search does not have to be based on Wikipedia. The GitHub extension is made to quickly search for repos and users, however the API used has somewhat strict rate limits, but for occasional searches it should work fine. The DuckDuckGo or the dgg extention is just a search feature
Changes Made Added autocomplete for which action should be completed and added a music player. All extensions are now properly formatted, and no exceptions are given out. Autocomplete I found it a little difficult to quickly remember and spell out the extensions names but now I only have to type the first few letters and the app will give options for what the extension could be. Music Player Just opens the requested song in YouTube music.
Changes Made: Added an image viewer into the file explorer, added a copy button and improved file explorer functionality File explorer The file explorer now will show a preview image if it the target file is an image. The file explorer can also now take in a folder in which the target file is in and uses a search that allows for skipping folder in case the user forgets a folder inbetween. Copy Btn It just copies the result text into the users clipboard
Changes Made: I added a color picker and allowed for several tools to output at once. Color Picker Can use an eyedropper of the screen behind the interface or select from the color wheel. You can also just write out hex codes or RGB Multiple answers The main process can now handle and may call several extensions at once. The output order is determined by the order the main process calls the extensions, with an exception for asynchronous functions which get resolved upon completion. Still fixing small errors here and there in the system and may make a more intelligent main process
Changes Made: Improved several answers a lot. Added selector for which answer the user wants to interact with. And added a simple settings screen. Settings screen: The settings screen is temporary, but allows users to quickly change and save app settings. Selector: When multiple answers are present one of the answers will be highlighted the user can change which one is highlighted simply using the arrow keys. And when pressing Enter or Tab. They will call that extension. Better multiple answers: The new implementations allows for extensions to better manipulate their specific answer. And gives users a better amount of control through settings over the apps functionality.
Changes Made I did a lot and forgot to make Dev logs. I allow for the user to download extensions made by anyone to add to the website. And added a feature called pipelines. Downloading Extensions Anyone can make an extension and post it on Github, following the correct format if their extension is not listed you can put the username/extension_name in the text box above. When you restart the app the extension should be downloaded. Pipelines Pipelines let users without any code pipe extensions together so If I have a google translate and a search extension I can pipe them together. so that the result of the search is then translated.
Changes Made I finalized details for easy install and using it for the first time. Simple things like improving the functionality with the tray (the bottom right icons). How to use Whenever you want to open it you can either press Alt + Z or open the tray and press the icon see the image below for an example.
Changes made I made a far better readme.md file, and I added documentation for making your own extensions and pipelines Documentation I added very specific documentation for making your own extensions and pipelines. I don’t recommend making your own pipeline, because that is still in early development, but if you don’t have a stardance project yet I would absolutely recommend trying to make your own extension. It is difficult the first time but pretty easy afterwards.
Changes Made I added a list extensions feature, added extension specific settings, and removed a few nasty bugs. List all extensions feature All it does is when you press ? it will list all the extensions and you can just select the one you want from there. Extension Specific settings The settings page used to just have settings for the app now under the extensions tab will have extension specific settings that the dev of the extension can use. Bugs The implementation for removing the previous answers did not always remove all of the answers and sometimes left the user with answers that shouldn’t be there. I did a small rewrite which fixed the issue. The autocomplete feature did not like the list all expansions feature because the program will refuse to give answer past a certain amount of them to prevent 20 answers being given at once. But because the list all feature could expand to that point, the autocomplete feature thought there wasn’t enough room for it. But now I delete the previous answers before creating new ones for autocomplete.
Changes Made Improved fonts and spacing, improved opening apps, shows the icon of the app. I also improved the calculator Improved fonts I was just using the default fonts earlier because I am not very creative, but I decided to change it to Inter and Consolas. Improved app opening Earlier to determine the apps the user has installed as a temporary solution I just scrapped their desktop. But that did not return everything, and I finally fixed it I tried a bunch but the that worked for me was using some commands through power shell. That gets all the apps that windows knows about. The icons Now the program will show the user the icon of the app they want to open. there are three different kinds of app Id’s in windows and I have to assess their photos differently for each, which added alot of complexity and is the whole reason this devlog took so long. Better calculator The calculator has a few improvements the first being it now has the constants pi and e baked into it. It can also now do square roots and trigonometric functions. The trigonometric functions are interesting because they can be done with radians or degrees if the user types sin(90deg) . It will use 90 degrees instead of the default being radians.
Changes Made I added aliases and Improved the search. Aliases Aliases are a user configurable feature that allows the user to type /<Shorthand> which will immediately be turned into some text. For example instead of writing “Google chrome” I can type /google which will be converted to Google Chrome Users can configure as many of these as they want. Improved search On the first ship I got complaints that the search did not always return an answer when asked questions. For example Where is Canada would return an invalid answer whilst Canada returned a valid answer. I added a fallback to make these scenarios less common.
Changes Made I added an auto update code and added metadata to extensions Auto update code Before I added this code a user would have to delete the current code, and reinstall the application from GitHub. However this code will automatically detect and update the app on the users machine. Added metadata to extensions This allows for extensions to give data about them to the extension marketplace giving users a better idea of what they are downloading. Sorry for the lack of videos, it was really a backend change
Changes Made Added start on boot and safer extension marketplace. Start on boot The app will now set itself up so if in settings you enabled start on boot the app will automatically start itself when you boot up your computer. Safer extension marketplace The way extensions work is all the extensions listed have a GitHub repository linked so when the user downloads the extension they download it off the repository, but the developer can change the GitHub repo so after it is accepted as safe the developer can change that without any warning. So now we grab from a specific point on the git tree. However even still the Dev can change the history so we check that the commit hash matches the stored hash meaning the developer cannot change their extension after approval Sorry for the lack of videos again its really a backend change
Changes Made Added an Icon to the app, fixed a hundred different bugs, added a fallback for the duckduckgo extension, and added the extension descriptions to the help menu The icon I added an icon its very simple, and definitely subject to change, but now it does not have the default electron icon in the task bar. Bugs Fixed Changed the codebase to made up of several modules instead of a few giant files (Should have done it a long time ago) Fixed the time formatter for the timer Changed the commit hash of the GitHub extension Changed Priority order Improved Duck duck go extension The duckduckgo extension uses their quick search API, which returns a JSON, in which the answer sometimes is in JSON.abstract and sometimes JSON.relatedTopics[0].text Now the extension looks in both places and returns the most relevant answer. Extension descriptions I recently added descriptions of the extensions in their metadata so now on the help tab you can get small descriptions of each one. Sorry about how their have been no videos but it has all been fixing a lot of small bugs most of which don’t even make it into the dev-log.
Changes Made: I added a linux version, it should work on most distros. I also cleaned up the codebase. The linux version It may not work on all distros I only tested Fedora KDE, but from that test it looks like it functions almost fully however I still need to get the code for global shortcuts updated so that also works on linux. The file should download on most distro’s its an AppImage (the executable), not a .deb file I had one but switched to purely AppImage, soon afterwards, it should not affect the user. Cleaned up codebase All functions and classes now have docstrings, this way I can tell what I wrote the function to do later. I also removed some redundant checks.
Changes Made The app now allows for the user to select what extension they want to call using the mouse, it also has a better GitHub action yml, and finally npm tests Mouse selection Before the app was entirely keyboard driven their was nothing for the mouse to even interact with. I prefer it like this but their is now the option to select extensions with the mouse instead. GitHub actions yml The way I publish the app executable is with GitHub actions I will call an action that compiles the app and publishes the compiled app. But now it will also automatically update the version number so I don’t have to Tests I forgot to make tests for the longest time for this app and I finally realized it so I added them
Changes Made I worked on fixing some bugs for linux, so it should now have support for Wayland. Wayland bug fixes Wayland is an API for accessing the user layer of a linux machine. Quite a few distro’s use Wayland for this however my code was not the most compatible with this so I needed to write a bunch of code so some components work with it. The biggest bug was that the global shortcuts were not registering. Sorry about the lack of video
Changes Made Added a confirmation modal for the extension marketplace, hid the users home path, and Fixed a bunch of bugs. Confirmation Modal I added a modal that warns users against downloading extensions that could be harmful. Hiding the users home directory In the scenario that the user is recording a video or something where they use this app their user name on their computer could have been revealed, which is not good to say the least. Now that is no longer an issue, because we obfuscate the home directory, replacing it with a tilde Bugs The Cancel button on the modal wouldn’t close it. Stuck in the download state when downloading an extension Extension marketplace still showed previously downloaded extensions
Ships:
What is it? Action bar an application that more easily allows for quick actions and allows for users to open apps very easily. Challenges: One of the hardest challenges was allowing the user to make their own extensions and to allow for them to share it with others in the end I managed to make an extension “marketplace” (a bit empty but it works). How To Use: In order to open the application you can press Alt + Z a shortcut that can be configured. Or press the Icon in the bottom right corner. More information in the read me file. Features: This application lets you: quickly open apps Run custom extensions Pipe extensions together.
Version 2. What changed in Version 2: Safer extension marketplace Far better DDG search and app opening functionality Improved calculator Aliases Fixed a lot of small bugs Added the icon of the app you are opening ====================================== What is it? Action bar an application that more easily allows for quick actions and allows for users to open apps very easily. Challenges: I have never coded anything that people other than me actually use, so there is more pressure to sort out the small bugs and improve the UX How To Use: In order to open the application you can press Alt + Z a shortcut that can be configured. Or press the Icon in the bottom right corner. More information in the read me file....
|
1793714237.6336834
|
1793800637.6336834
|
|
4783
|
pandaBot by @panda | Stardance
|
panda
|
1
|
1.29
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-02T19:21:28Z", "hours": 1.0, "multiplier": 1.04, "payout": 1, "blessing": "neutral", "text": "Just followed the tutorial :D", "repo": "https://github.com/mail2adnanyazik-bit/pandaBot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B7ULL3WKW"}]...
|
[{"post_id": 6136, "ts": "2026 [{"post_id": 6136, "ts": "2026-06-10T10:11:45Z", "hours": 0.2933, "text": "Fixed demo link to be correct"}, {"post_id": 864, "ts": "2026-06-02T16:04:39Z", "hours": 0.5214, "text": "Just finished setting up a Slack bot and running it on my homeserver !"}]...
|
Title: pandaBot by @panda | Stardance
Devlogs:
Ju Title: pandaBot by @panda | Stardance
Devlogs:
Just finished setting up a Slack bot and running it on my homeserver !
Fixed demo link to be correct
Ships:
Just followed the tutorial :D...
|
1793714236.4336884
|
1793800636.4336884
|
|
50227
|
Dice Roller by @Avmovito | Stardance
|
Avmovito
|
1
|
18.0
|
11
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-17T10:16:04Z", "hours": 18.0, "multiplier": 1.09, "payout": 11, "blessing": "neutral", "text": "It was a simple dice roller project that was a web application; it contained so many types of dice .i was provide that i created the exact website as the refarence img given and i only used It was a simple dice roller project that was a web application; it contained so many types of dice .i was provide that i create the website as i wish with all the features i wish to add and only used to creat the referance img", "repo": "https://github.com/Adwaith-AR/Dice-Roller", "demo": "https://dice-roller-pink-chi.vercel.app/"}]...
|
[{"post_id": 48780, "ts": "202 [{"post_id": 48780, "ts": "2026-08-17T09:58:09Z", "hours": 18.2344, "text": "i created this project after june 1 but i was adding this to sardust just now but have been saving my devlog as a doc 1. ui completed (The past two days were spent creating the ui, icon, and logo for the dice roll website. It was not that smooth, I had to change the image of the dice 2 times) 2.big update( from yesterday and today i completed the coding for the dice roll for the d6 dice and also the img creation for the d8 and the starting of the d10 dice img creation has done and i also completed the theme switcher to the website) 3.last update( I have finished the project, which includes the remaining dice, the theme switcher, dice selector, roll history, and new functions) 4.d12 added(as part of improving the website i was adding more dice so today i added d12 dice i was planing to add up to d50)"}]...
|
Title: Dice Roller by @Avmovito | Stardance
Devlo Title: Dice Roller by @Avmovito | Stardance
Devlogs:
i created this project after june 1 but i was adding this to sardust just now but have been saving my devlog as a doc 1. ui completed (The past two days were spent creating the ui, icon, and logo for the dice roll website. It was not that smooth, I had to change the image of the dice 2 times) 2.big update( from yesterday and today i completed the coding for the dice roll for the d6 dice and also the img creation for the d8 and the starting of the d10 dice img creation has done and i also completed the theme switcher to the website) 3.last update( I have finished the project, which includes the remaining dice, the theme switcher, dice selector, roll history, and new functions) 4.d12 added(as part of improving the website i was adding more dice so today i added d12 dice i was planing to add up to d50)
Ships:
It was a simple dice roller project that was a web application; it contained so many types of dice .i was provide that i created the exact website as the refarence img given and i only used It was a simple dice roller project that was a web application; it contained so many types of dice .i was provide that i create the website as i wish with all the features i wish to add and only used to creat the referance img...
|
1793714235.297062
|
1793800635.297062
|
|
7574
|
Kolori by @nikooo | Stardance
|
nikooo
|
1
|
142.69
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-19T21:34:34Z", "hours": 100.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Kolori is a desktop application that lets you create beautiful pieces of art from mathematical expressions. Kolori features a custom hand-written recursive descent parser to parse mathematical expressions–which it then uses to transpile your input down to low-level shader instructions to render images to the screen on the GPU. Kolori also supports rendering not only images, but animations using the “ t ” variable in the input expression, which grows linearly with time elapsed–the speed at which is adjustable. Kolori offers four coloring modes that can generate different images based on your input: HSL : Uses the HSL color space to generate pixel colors HSLuv : Uses the HSLuv color space, a perceptually uniform alternative to HSL, to generate pixel colors Custom Palette Generation : Input 4 colors of your choosing so Kolori can generate a custom color palette based on them, to determine pixel colors Use an Image : Select an image using your file manager, or just drag and drop one onto the window for Kolori to sample pixel colors from the input image to determine pixel colors. Making this project was a bit of an adventure, as I had never worked with libraries such as ImGui, SDL, and OpenGL before. The biggest challenge when creating the program was managing memory correctly–which makes me appreciate languages like Nim even more–and code organization.", "repo": "https://github.com/neroist/kolori", "demo": "https://github.com/neroist/kolori/releases/latest"}]...
|
[{"post_id": 18957, "ts": "202 [{"post_id": 18957, "ts": "2026-06-30T04:15:45Z", "hours": 3.4697, "text": "Managed to get everything working <3 The main issue was not assigning texture units to the sampler uniforms whenever the shaders were rebuilt 🤦. Either way, the feature works fully now. The rest that’s left before making a release is chasing some bugs that are left: e.g. crashes on Windows on startup and access violation errors when making a screenshot on fullscreen (also specifically on Windows). Below is the Joukowski function, as I briefly mentioned before in the prior devlog."}, {"post_id": 18224, "ts": "2026-06-29T09:17:52Z", "hours": 16.4414, "text": "After much, much longer than I’d like to admit, I finally got “sliced” coloring to work! Naturally we need a better name, but that can wait. A bit on implementation So, for Kolori, we use OpenGL to render scenes on the GPU. Specifically, we target at minimum desktop OpenGL 3.3, and the GLSL shaders are written for GL ES 3.0 (we plan to target WebGL in the future, maybe moving to WebGPU later. Maybe.). We implement the “slices” coloring mode as follows: The user inputs a list of colors We store these colors as a variable-length array (VLA) which can grow dynamically but, instead of giving these values to the GPU as an array, we instead upload the color data onto the GPU as a one-dimensional texture , since GLSL doesnt support VLAs (and I didn’t want to limit the amount of colors one can add). Though, I did still do that inadvertently. Slice colors are managed by color edit widgets. Each widget’s ID (which must be unique) is generated using the index of the slice color it controls, casted to a byte. Thus, the number of colors cannot exceed 256. Something I hope to fix in the future. Also, an interesting note: GLSL for GLES 3.0 doesn’t support the sampler1D type (which literally represents a 1D texture), so one would have to use the type that represents a 2D texture, but set the height of the texture to 1, to emulate the same behavior and structure. This means that there are now two textures we handle in the shaders: the image texture that holds a user-uploaded image for the “Use an Image” coloring mode, and the slices texture that holds the selected colors for the “(Pizza) Slices” coloring mode. OK, but why’d you take so long? The major obstacle that was ran into was texture data mix-up: the data for the image texture would always overwrite the data for the slices texture, and it would even seem that the two textures were pointing to the same data, even though I assigned separate texture units to each one, and made sure to set the active texture each time before binding textures. OK, can I see it? See the demo below :) They don’t really start to look like “pizza slices” until you have 5+ slices. There are some really interesting graphs you can create using this, such as the graph of the Joukowski function , defined as: f(z)=(z+1/z)/2 (unfortunately not pictured below)."}, {"post_id": 16041, "ts": "2026-06-26T02:00:22Z", "hours": 22.7831, "text": "Progress on 0.4.0 Mainly, two new features/fixes: AppImage builds for Linux (we may add .deb files in releases in the future aswell) Image aspect ratio persistence AppImage builds In past releases, only an executable was published for Linux platforms. This is not a proper solution for distribution–different Linux systems may differ in ABI, available shared libraries, and packages. For instance, on WSL in my Windows machine, SDL3 is not available in the default repository, leaving me unable to build or even run the application. AppImage builds bundle the executable and everything needed for running the application into one file–perfect for distributing. “One app = one file”, or whatever those nerds say. To run on a Linux system, users will only need to do the following: Give the .AppImage file executable permissions Run the app! Its that easy. Image aspect ratio persistence Before, when you put in an image, it would be squished down into a square, distorting the image along its longest dimension. For images with a 1:1 aspect ratio, this is fine. For other images? Not so fine. We now apply proper scaling in the vertex shader pass to textures so that image aspect ratio is preserved in the canvas. Future changes Expect a new coloring mode: “Slices” . This will split the canvas into a number of “slices”–similar to how the four quadrants of the cartesian plane split it up into four slices itself"}, {"post_id": 11476, "ts": "2026-06-18T19:13:22Z", "hours": 5.6697, "text": "I’ve finally added image coloring to Kolori! Kolori can now take an image as input, by either selecting a image file using a native file dialog or dragging and dropping a image onto the window! The image below was created using the feature–using one of the gallery images as the input image. The hard part about this was, not actually loading the image file, reading the pixel data, uploading that into the GPU, and rendering it, but instead managing the file dialog by which a user can upload an image into the application. We use SDL3 for windowing and make use of the SDL_ShowOpenFileDialog function to, well, show an open file dialog. I initially put all of the image loading and OpenGL calls into the dialog callback, but something strange happened then. All of my OpenGL calls were triggering an GL_INVALID_OPERATION error–and specifically on Windows–but why? All of my OpenGL calls were fine, no invalid arguments passed in (or in the wrong order), so everything should’ve been fine. The answer lies in the SDL_ShowOpenFileDialog and how OpenGL works with multiple threads. SDL_ShowOpenFileDialog is an asynchronous function–it will return immediately, and the result of the dialog will be passed on to the callback. However, the callback function may be called on a different thread depending on the operating system, which explains the difference in effect on Windows, and the GL_INVALID_OPERATION errors were caused by the absence of an active OpenGL context on the new thread. SDL3 does not provide an API for setting the current thread’s OpenGL context, so I had to cope. I moved most of the business logic out of the callback function, only keeping the image loading logic, and instead performed the texture uploading into the UI rendering logic, where we check if there is any new image data that happened to be uploaded, upload the data onto the GPU as a texture and show it on screen."}, {"post_id": 11058, "ts": "2026-06-18T02:57:25Z", "hours": 13.5519, "text": "Bumped version from 0.1.0 to 0.2.0! See it here: https://github.com/neroist/kolori/releases/tag/0.2.0 . Some interesting changes are that there is now a VSync toggle + a frame rate slider with support for unlimited frame rate (as much as your GPU can handle), build system improvements–so that Kolori is one make release away on all platforms that have make , and the UI is now DPI-aware and will scale based on the monitor’s DPI (we do not change scaling however if the monitor were to change–something to fix in a future release). We also changed our color input sliders to display RGB colors in their integral components from 0 to 255–what you would expect, rather than a decimal display. See it below!"}, {"post_id": 10217, "ts": "2026-06-16T20:45:34Z", "hours": 5.3461, "text": "Wrote a full-length devlog about a core feature of Kolori and its implementation, but it got deleted for being “too long”. Lets try again then, with a piece that only demands a bit of your time. Kolori offers users three (at the moment) coloring modes: HSL, HSLuv, and custom palette generation. How do these work? Custom palette generation Unlike HSL and HSLuv, using a custom palette to color the complex plane is much more simple. Kolori lets the user input four arbitrary RGB colors. We then use Inigo Quilez’s cosine-based formula for procedural palette generation to determine the color of a pixel. An article of his that describes it is here: https://iquilezles.org/articles/palettes/ . The shader code that does it all: // From https://iquilezles.org/articles/palettes/ vec4 palette ( float t , vec3 a , vec3 b , vec3 c , vec3 d ) { return vec4 ( a + b * cos ( TAU * ( c * t + d )), 1 ); } Our a , b , c , and d are the colors the user has selected, and t is an input variable to vary. However, one would notice that t is a scalar, while we work in the complex numbers. How would we map the plane onto the real line in order to get a valid t to input into palette ? The answer we chose is simple: we take the projection onto the real axis–i.e. just taking the real part of the complex number This is an answer that a user would expect and is pointed out in the user guide. Furthermore, by not choosing ahead of time for the user, we allow the user to exert more control over what they wish to generate."}, {"post_id": 9714, "ts": "2026-06-16T04:10:17Z", "hours": 12.3725, "text": "Was preparing for first our ship, but then discovered that my application was leaking memory–badly. Memory usage would climb by a gigabyte in <2 minutes. Worse than any browser you’ve ever seen. To start, I use Odin, which has a tracking allocator that lets you see where you didn’t free up memory, or perhaps made bad frees. On program exit, it prints out how many bytes you leaked, and where you made the allocations. I had been using this allocator, and it had not reported anything . Furthermore, upon, admittedly, a very cursory look into my code, I couldn’t find anything that would’ve caused any leaks either–all allocations were eventually freed: whether that be manually or via Odin’s temporary allocator (a really nice feature of the language). LSan hadn’t pointed out anything, and Valgrind didn’t report anything scary, only ~200KiB of memory usage. I had even patched myself a custom allocator, which would print to stdout whenever an allocation was made with it, and I saw nothing concerning at all . Only small allocations were made which were, again, eventually freed. My application uses SDL3 for windowing and ImGui for GUI, so perhaps one of those has a memory leak in it? I’m not sure. For such a large library, I doubt that’s the case. Though, when running valgrind with --leak-check=full --show-leak-kinds=all I did keep seeing SDL pop up, but it didn’t report any outright leaks. Upon researching potential external sources for this memory leak, I found https://github.com/libsdl-org/SDL/issues/15192 , which describes my issue exactly. It seems that there is no memory leak in SDL, ImGui, or whatever I’m doing, but instead a driver issue, which is interesting. The example that was given to reproduce the leak is quite minimal, so I wonder how that got past their testing. Furthermore, if this is indeed a driver-level issue, why is it that no other applications running on this device leak memory this egregiously? In any case, the leak is not my fault, and out of my hands."}, {"post_id": 8767, "ts": "2026-06-14T16:04:51Z", "hours": 3.8556, "text": "Learned how cool rubberducking is. I was having a problem fixing a bug with the parser (as described below), and I went to write a devlog about it. As I was describing the bug, I immediately had an idea about how to fix it, and lo and behold, it worked. The original post was going to be as follows: Fixed a bug where trailing input after the parser successfully completes is not disallowed. This most commonly occurs, as I’ve found, after the use of a comma character. The parser simply does not see it, and instead only parses the expression it sees before it. Internally, a comma character is used to delimit function arguments, so this kind of behavior is not totally useless. However, for situations like picrel, it just seems strange. doesn’t it? This usually would be an easy bug to fix. We currently use a recursive descent parser (considering moving to a pratt parser) for parsing mathematical expression. All that honestly would’ve needed to be done was adding a check at the procedure that parses the top level grammar rule: “OK, are we at the end of our input? We should be. If not, return an error.” (Here, I realized that if we literally call this procedure while parsing function calls, it really isn’t too wise to immediately ask “are we done yet?” if we very much aren’t done yet. I then added the check into a procedure that isn’t called by the parser and we should definitely be done by the time that check is ran.)"}, {"post_id": 7892, "ts": "2026-06-13T05:13:05Z", "hours": 13.1858, "text": "(excuse the amount of time, i’m doing general refactors + debugging as well as working on other features) Implemented adjusting the gamma correction amount. Normally, with the gamma correction, areas close to zero would appear black, and areas that have large magnitudes would appear white. However, you might not always want this, and instead would prefer only pure hue . Set the gamma correction amount to zero to reduce the amount that colors’ lightness values are altered. An example is shown where we use this feature to produce a colorful, moving spiral. Note that when gamma correction is not zero, as demonstrated, the effect does not work as well."}, {"post_id": 7005, "ts": "2026-06-11T19:13:46Z", "hours": 32.8386, "text": "The project has come a long way (see the 30 hours of work that went into this). We now support: arbitrary function input on-the-fly graphing and error checking a “t” time variable, allowing you to animate graphs being able to speed up, slow down, and pause animations screenshots (not imaged below) zoom in/out panning As well as being multiplatform for both Linux and Windows (you can go build and run this, right now ). What to expect: the ability to change coloring method (hsl, hsluv, palette generation) the ability to use an image for coloring WASM web builds coordinate inspector to see where exactly in the complex plane you are Check it out on github: https://github.com/neroist/kolori"}, {"post_id": 3571, "ts": "2026-06-06T15:51:37Z", "hours": 12.8247, "text": "Finally! SDL3 & the GPU shaders are working. FWIW – this is the graph of f(z)=z, the identity transformation. I will make a devlog on how these images are generated later."}]...
|
Title: Kolori by @nikooo | Stardance
Devlogs:
Fin Title: Kolori by @nikooo | Stardance
Devlogs:
Finally! SDL3 & the GPU shaders are working. FWIW – this is the graph of f(z)=z, the identity transformation. I will make a devlog on how these images are generated later.
The project has come a long way (see the 30 hours of work that went into this). We now support: arbitrary function input on-the-fly graphing and error checking a “t” time variable, allowing you to animate graphs being able to speed up, slow down, and pause animations screenshots (not imaged below) zoom in/out panning As well as being multiplatform for both Linux and Windows (you can go build and run this, right now ). What to expect: the ability to change coloring method (hsl, hsluv, palette generation) the ability to use an image for coloring WASM web builds coordinate inspector to see where exactly in the complex plane you are Check it out on github: https://github.com/neroist/kolori
(excuse the amount of time, i’m doing general refactors + debugging as well as working on other features) Implemented adjusting the gamma correction amount. Normally, with the gamma correction, areas close to zero would appear black, and areas that have large magnitudes would appear white. However, you might not always want this, and instead would prefer only pure hue . Set the gamma correction amount to zero to reduce the amount that colors’ lightness values are altered. An example is shown where we use this feature to produce a colorful, moving spiral. Note that when gamma correction is not zero, as demonstrated, the effect does not work as well.
Learned how cool rubberducking is. I was having a problem fixing a bug with the parser (as described below), and I went to write a devlog about it. As I was describing the bug, I immediately had an idea about how to fix it, and lo and behold, it worked. The original post was going to be as follows: Fixed a bug where trailing input after the parser successfully completes is not disallowed. This most commonly occurs, as I’ve found, after the use of a comma character. The parser simply does not see it, and instead only parses the expression it sees before it. Internally, a comma character is used to delimit function arguments, so this kind of behavior is not totally useless. However, for situations like picrel, it just seems strange. doesn’t it? This usually would be an easy bug to fix. We currently use a recursive descent parser (considering moving to a pratt parser) for parsing mathematical expression. All that honestly would’ve needed to be done was adding a check at the procedure that parses the top level grammar rule: “OK, are we at the end of our input? We should be. If not, return an error.” (Here, I realized that if we literally call this procedure while parsing function calls, it really isn’t too wise to immediately ask “are we done yet?” if we very much aren’t done yet. I then added the check into a procedure that isn’t called by the parser and we should definitely be done by the time that check is ran.)
Was preparing for first our ship, but then discovered that my application was leaking memory–badly. Memory usage would climb by a gigabyte in <2 minutes. Worse than any browser you’ve ever seen. To start, I use Odin, which has a tracking allocator that lets you see where you didn’t free up memory, or perhaps made bad frees. On program exit, it prints out how many bytes you leaked, and where you made the allocations. I had been using this allocator, and it had not reported anything . Furthermore, upon, admittedly, a very cursory look into my code, I couldn’t find anything that would’ve caused any leaks either–all allocations were eventually freed: whether that be manually or via Odin’s temporary allocator (a really nice feature of the language). LSan hadn’t pointed out anything, and Valgrind didn’t report anything scary, only ~200KiB of memory usage. I had even patched myself a custom allocator, which would print to stdout whenever an allocation was made with it, and I saw nothing concerning at all . Only small allocations were made which were, again, eventually freed. My application uses SDL3 for windowing and ImGui for GUI, so perhaps one of those has a memory leak in it? I’m not sure. For such a large library, I doubt that’s the case. Though, when running valgrind with --leak-check=full --show-leak-kinds=all I did keep seeing SDL pop up, but it didn’t report any outright leaks. Upon researching potential external sources for this memory leak, I found https://github.com/libsdl-org/SDL/issues/15192 , which describes my issue exactly. It seems that there is no memory leak in SDL, ImGui, or whatever I’m doing, but instead a driver issue, which is interesting. The example that was given to reproduce the leak is quite minimal, so I wonder how that got past their testing. Furthermore, if this is indeed a driver-level issue, why is it that no other applications running on this device leak memory this egregiously? In any case, the leak is not my fault, and out of my hands.
Wrote a full-length devlog about a core feature of Kolori and its implementation, but it got deleted for being “too long”. Lets try again then, with a piece that only demands a bit of your time. Kolori offers users three (at the moment) coloring modes: HSL, HSLuv, and custom palette generation. How do these work? Custom palette generation Unlike HSL and HSLuv, using a custom palette to color the complex plane is much more simple. Kolori lets the user input four arbitrary RGB colors. We then use Inigo Quilez’s cosine-based formula for procedural palette generation to determine the color of a pixel. An article of his that describes it is here: https://iquilezles.org/articles/palettes/ . The shader code that does it all: // From https://iquilezles.org/articles/palettes/ vec4 palette ( float t , vec3 a , vec3 b , vec3 c , vec3 d ) { return vec4 ( a + b * cos ( TAU * ( c * t + d )), 1 ); } Our a , b , c , and d are the colors the user has selected, and t is an input variable to vary. However, one would notice that t is a scalar, while we work in the complex numbers. How would we map the plane onto the real line in order to get a valid t to input into palette ? The answer we chose is simple: we take the projection onto the real axis–i.e. just taking the real part of the complex number This is an answer that a user would expect and is pointed out in the user guide. Furthermore, by not choosing ahead of time for the user, we allow the user to exert more control over what they wish to generate.
Bumped version from 0.1.0 to 0.2.0! See it here: https://github.com/neroist/kolori/releases/tag/0.2.0 . Some interesting changes are that there is now a VSync toggle + a frame rate slider with support for unlimited frame rate (as much as your GPU can handle), build system improvements–so that Kolori is one make release away on all platforms that have make , and the UI is now DPI-aware and will scale based on the monitor’s DPI (we do not change scaling however if the monitor were to change–something to fix in a future release). We also changed our color input sliders to display RGB colors in their integral components from 0 to 255–what you would expect, rather than a decimal display. See it below!
I’ve finally added image coloring to Kolori! Kolori can now take an image as input, by either selecting a image file using a native file dialog or dragging and dropping a image onto the window! The image below was created using the feature–using one of the gallery images as the input image. The hard part about this was, not actually loading the image file, reading the pixel data, uploading that into the GPU, and rendering it, but instead managing the file dialog by which a user can upload an image into the application. We use SDL3 for windowing and make use of the SDL_ShowOpenFileDialog function to, well, show an open file dialog. I initially put all of the image loading and OpenGL calls into the dialog callback, but something strange happened then. All of my OpenGL calls were triggering an GL_INVALID_OPERATION error–and specifically on Windows–but why? All of my OpenGL calls were fine, no invalid arguments passed in (or in the wrong order), so everything should’ve been fine. The answer lies in the SDL_ShowOpenFileDialog and how OpenGL works with multiple threads. SDL_ShowOpenFileDialog is an asynchronous function–it will return immediately, and the result of the dialog will be passed on to the callback. However, the callback function may be called on a different thread depending on the operating system, which explains the difference in effect on Windows, and the GL_INVALID_OPERATION errors were caused by the absence of an active OpenGL context on the new thread. SDL3 does not provide an API for setting the current thread’s OpenGL context, so I had to cope. I moved most of the business logic out of the callback function, only keeping the image loading logic, and instead performed the texture uploading into the UI rendering logic, where we check if there is any new image data that happened to be uploaded, upload the data onto the GPU as a texture and show it on screen.
Progress on 0.4.0 Mainly, two new features/fixes: AppImage builds for Linux (we may add .deb files in releases in the future aswell) Image aspect ratio persistence AppImage builds In past releases, only an executable was published for Linux platforms. This is not a proper solution for distribution–different Linux systems may differ in ABI, available shared libraries, and packages. For instance, on WSL in my Windows machine, SDL3 is not available in the default repository, leaving me unable to build or even run the application. AppImage builds bundle the executable and everything needed for running the application into one file–perfect for distributing. “One app = one file”, or whatever those nerds say. To run on a Linux system, users will only need to do the following: Give the .AppImage file executable permissions Run the app! Its that easy. Image aspect ratio persistence Before, when you put in an image, it would be squished down into a square, distorting the image along its longest dimension. For images with a 1:1 aspect ratio, this is fine. For other images? Not so fine. We now apply proper scaling in the vertex shader pass to textures so that image aspect ratio is preserved in the canvas. Future changes Expect a new coloring mode: “Slices” . This will split the canvas into a number of “slices”–similar to how the four quadrants of the cartesian plane split it up into four slices itself
After much, much longer than I’d like to admit, I finally got “sliced” coloring to work! Naturally we need a better name, but that can wait. A bit on implementation So, for Kolori, we use OpenGL to render scenes on the GPU. Specifically, we target at minimum desktop OpenGL 3.3, and the GLSL shaders are written for GL ES 3.0 (we plan to target WebGL in the future, maybe moving to WebGPU later. Maybe.). We implement the “slices” coloring mode as follows: The user inputs a list of colors We store these colors as a variable-length array (VLA) which can grow dynamically but, instead of giving these values to the GPU as an array, we instead upload the color data onto the GPU as a one-dimensional texture , since GLSL doesnt support VLAs (and I didn’t want to limit the amount of colors one can add). Though, I did still do that inadvertently. Slice colors are managed by color edit widgets. Each widget’s ID (which must be unique) is generated using the index of the slice color it controls, casted to a byte. Thus, the number of colors cannot exceed 256. Something I hope to fix in the future. Also, an interesting note: GLSL for GLES 3.0 doesn’t support the sampler1D type (which literally represents a 1D texture), so one would have to use the type that represents a 2D texture, but set the height of the texture to 1, to emulate the same behavior and structure. This means that there are now two textures we handle in the shaders: the image texture that holds a user-uploaded image for the “Use an Image” coloring mode, and the slices texture that holds the selected colors for the “(Pizza) Slices” coloring mode. OK, but why’d you take so long? The major obstacle that was ran into was texture data mix-up: the data for the image texture would always overwrite the data for the slices texture, and it would even seem that the two textures were pointing to the same data, even though I assigned separate texture units to each one, and made sure to set the active texture each time before binding textures. OK, can I see it? See the demo below :) They don’t really start to look like “pizza slices” until you have 5+ slices. There are some really interesting graphs you can create using this, such as the graph of the Joukowski function , defined as: f(z)=(z+1/z)/2 (unfortunately not pictured below).
Managed to get everything working <3 The main issue was not assigning texture units to the sampler uniforms whenever the shaders were rebuilt 🤦. Either way, the feature works fully now. The rest that’s left before making a release is chasing some bugs that are left: e.g. crashes on Windows on startup and access violation errors when making a screenshot on fullscreen (also specifically on Windows). Below is the Joukowski function, as I briefly mentioned before in the prior devlog.
Ships:
Kolori is a desktop application that lets you create beautiful pieces of art from mathematical expressions. Kolori features a custom hand-written recursive descent parser to parse mathematical expressions–which it then uses to transpile your input down to low-level shader instructions to render images to the screen on the GPU. Kolori also supports rendering not only images, but animations using the “ t ” variable in the input expression, which grows linearly with time elapsed–the speed at which is adjustable. Kolori offers four coloring modes that can generate different images based on your input: HSL : Uses the HSL color space to generate pixel colors HSLuv : Uses the HSLuv color space, a perceptually uniform alternative to HSL, to generate pixel colors Custom Palette Generation : Input 4 colors of your choosing so Kolori can generate a custom color palette based on them, to determine pixel colors Use an Image : Select an image using your file manager, or just drag and drop one onto the window for Kolori to sample pixel colors from the input image to determine pixel colors. Making this project was a bit of an adventure, as I had never worked with libraries such as ImGui, SDL, and OpenGL before. The biggest challenge when creating the program was managing memory correctly–which makes me appreciate languages like Nim even more–and code organization....
|
1793714233.9672034
|
1793800633.9672034
|