|
9801
|
eggooo by @matikda | Stardance
|
matikda
|
0
|
21.01
|
0
|
[]
|
[{"post_id": 7894, "ts": "2026 [{"post_id": 7894, "ts": "2026-06-13T05:21:10Z", "hours": 6.6747, "text": "I added the shop menu. I was confused why the hover and click functions were not working, but I realized that the text was completely covering the actuall button. That was a pretty easy fix. I used arrays with all the sprites, so I can iterate over all the buttons at once, which made my code much easier to follow. I might go back and add arrays to more parts, but it will not be as neat as this was. Lastly, I use graphics to create my text, so it is easily manipulatable, but it is making the game crash, so I will ned to go in and use real text next. Not looking forward to that."}, {"post_id": 5440, "ts": "2026-06-09T06:39:30Z", "hours": 4.6447, "text": "I finished the settings page sans a small volume bug. It now has the ability to skip and replay songs, turn music on and off, adjust the volume, and open an info page. I had a lot of trouble getting the text to update, as graphic updates are banned to prevent crashing. I just made a function to create brand new graphics as needed. I also added a favicon. I am realizing that I have barely touched the actual game part, though… next time."}, {"post_id": 5170, "ts": "2026-06-08T21:04:41Z", "hours": 2.6842, "text": "I added a settings menu with some text and buttons. I took a call for an hour and I then spent ~2 hours wondering why all my text suddenly wasn’t aligned. I finally realized that I had zoomed in to 110% and the code was fine🤦. Massive waste of time haha! I’m a bit worried that this could cause an issue on devices that have varying pixel densities but I am not going to worry about that for now."}, {"post_id": 4743, "ts": "2026-06-08T06:08:53Z", "hours": 7.0036, "text": "I am making a clicker game called eggooo! (I just realized I like the lowercase E better…). Today I worked on getting the starting screen working. I wanted the buttons to go down slightly when pressed to match the animation, but I had a lot of trouble, as I also had it dip when the mouse was hovering. When the mouse hovered above the dip but below the up limit, the button would freak out and rapidly switch between up and down. It looked like it was having a seizure. I fixed it by lowering just the image, not the hitbox, although now the hitbox is a bit off when the button is being hovered over. Oh well."}]...
|
Title: eggooo by @matikda | Stardance
Devlogs:
I Title: eggooo by @matikda | Stardance
Devlogs:
I am making a clicker game called eggooo! (I just realized I like the lowercase E better…). Today I worked on getting the starting screen working. I wanted the buttons to go down slightly when pressed to match the animation, but I had a lot of trouble, as I also had it dip when the mouse was hovering. When the mouse hovered above the dip but below the up limit, the button would freak out and rapidly switch between up and down. It looked like it was having a seizure. I fixed it by lowering just the image, not the hitbox, although now the hitbox is a bit off when the button is being hovered over. Oh well.
I added a settings menu with some text and buttons. I took a call for an hour and I then spent ~2 hours wondering why all my text suddenly wasn’t aligned. I finally realized that I had zoomed in to 110% and the code was fine🤦. Massive waste of time haha! I’m a bit worried that this could cause an issue on devices that have varying pixel densities but I am not going to worry about that for now.
I finished the settings page sans a small volume bug. It now has the ability to skip and replay songs, turn music on and off, adjust the volume, and open an info page. I had a lot of trouble getting the text to update, as graphic updates are banned to prevent crashing. I just made a function to create brand new graphics as needed. I also added a favicon. I am realizing that I have barely touched the actual game part, though… next time.
I added the shop menu. I was confused why the hover and click functions were not working, but I realized that the text was completely covering the actuall button. That was a pretty easy fix. I used arrays with all the sprites, so I can iterate over all the buttons at once, which made my code much easier to follow. I might go back and add arrays to more parts, but it will not be as neat as this was. Lastly, I use graphics to create my text, so it is easily manipulatable, but it is making the game crash, so I will ned to go in and use real text next. Not looking forward to that....
|
1793357736.8505628
|
1793962536.8505628
|
|
9802
|
My awesome macropad! by @Fongdong | Stardance
|
Fongdong
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Fongdong | Stardan Title: My awesome macropad! by @Fongdong | Stardance...
|
1793307547.4480689
|
1793912347.4480689
|
|
9803
|
My awesome macropad! by @Miguel44 | Stardance
|
Miguel44
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Miguel44 | Stardan Title: My awesome macropad! by @Miguel44 | Stardance...
|
1793159394.7539139
|
1793764194.7539139
|
|
9804
|
Untitled project by @Rajkaran | Stardance
|
Rajkaran
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Rajkaran | Stardance
|
1793440623.7303374
|
1794045423.7303374
|
|
9805
|
My awesome macropad! by @SuperEvilLuke | Stardance
|
SuperEvilLuke
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @SuperEvilLuke | St Title: My awesome macropad! by @SuperEvilLuke | Stardance...
|
1793354133.234523
|
1793958933.234523
|
|
9806
|
My awesome macropad! by @barseghian_daniel | Stard My awesome macropad! by @barseghian_daniel | Stardance...
|
barseghian_daniel
|
0
|
0.73
|
0
|
[]
|
[{"post_id": 4303, "ts": "2026 [{"post_id": 4303, "ts": "2026-06-07T15:47:21Z", "hours": 0.7314, "text": "Finshed designing micropad it took 10h+ but i wasnt recording with hackatime/lapse. it was very fun and refreshing since i was only coding for almost 6 months. I’m very exsited to get the parts to build it!"}]...
|
Title: My awesome macropad! by @barseghian_daniel Title: My awesome macropad! by @barseghian_daniel | Stardance
Devlogs:
Finshed designing micropad it took 10h+ but i wasnt recording with hackatime/lapse. it was very fun and refreshing since i was only coding for almost 6 months. I’m very exsited to get the parts to build it!...
|
1793314455.024302
|
1793919255.024302
|
|
9807
|
My awesome macropad! by @shanmukha_pothukuchi | St My awesome macropad! by @shanmukha_pothukuchi | Stardance...
|
shanmukha_pothukuchi
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @shanmukha_pothukuc Title: My awesome macropad! by @shanmukha_pothukuchi | Stardance...
|
1793447534.3674917
|
1794052334.3674917
|
|
9808
|
aero-deuce by @zemu | Stardance
|
zemu
|
1
|
10.0
|
174
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-08T02:18:32Z", "hours": 10.0, "multiplier": 17.74, "payout": 174, "blessing": "neutral", "text": "I made Aero-Deuce, a 12-billion parameter AI language model that runs locally on consumer hardware. It’s an instruction-following chatbot fine-tuned and post-trained from Google’s Gemma 4 12B using a technique called QLoRA with the Muon optimizer. It’s a relatively new approach that applies matrix orthogonalization to keep the training efficient. The whole model was trained on 30,000 instruction-following examples across 2,000 steps, going from a loss of 3.82 down to 0.57. The final model is exported in three formats: a GGUF file (~7GB) that works with anything supporting llama.cpp (LM Studio, Ollama, GPT4All), an MLX version optimized for Apple Silicon, and the raw LoRA adapter for anyone who wants to merge it or fine-tune further. I also built a live API endpoint on Modal with streaming support, so anyone can chat with it through a web interface. It's named \"Aero-Deuce\" because deuce means two, and this is my second attempt at LLMs, my first being a 300m custom model with some weird architecture, and I didn't have the funds to get that one off the ground. The most challenging part was the training pipeline itself. I started on Modal with spot GPUs, which meant my training kept getting preempted. I had to build robust checkpoint resumption just to survive it. Then I switched to Lightning AI for the second half. The base model uses a \"unified\" architecture (gemma4_unified) that most tooling didn't support — PEFT didn't recognize it, MLX couldn't run it, so I had to manually strip multimodal weights, rename parameter keys, and patch configs to make it work everywhere. Exporting to GGUF required building llama.cpp from source. The HuggingFace uploads stalled repeatedly. There were a lot of nights where nothing worked and I had to dig through error logs at 2am. I'm proud that it actually works end to end. A 12B model that you can download as a single 7GB file and run on a MacBook Air — that's real. The training converged well, the model follows instructions properly, it identifies itself as Aero-Deuce instead of claiming to be Gemma. I built the entire pipeline from scratch: data loading with loss masking, the Muon optimizer implementation, dual-optimizer parameter partitioning, checkpoint resumption, the export pipeline, and the inference API. It's not a notebook tutorial — it's a real system. To test it: go to the live demo at https://aero-deuce-lander.vercel.app, or download the GGUF from huggingface.co/ZeZZm/aero-deuce-GGUF and open it in LM Studio or GPT4All. If you're on a Mac, you can run pip install mlx-lm and use python -m mlx_lm.generate --model ZeZZm/aero-deuce-MLX --prompt \"anything\". The code is at github.com/Ryz3nPlayZ/aero-deuce. Everything is Apache 2.0. Thanks!", "repo": "https://github.com/Ryz3nPlayZ/aero-deuce", "demo": "https://aero-deuce-lander.vercel.app/"}]...
|
[{"post_id": 4671, "ts": "2026 [{"post_id": 4671, "ts": "2026-06-08T02:15:16Z", "hours": 0.3186, "text": "finished landing page"}, {"post_id": 4650, "ts": "2026-06-08T01:48:45Z", "hours": 2.0606, "text": "adapter, gguf, and mlx (q4) all on huggingface I made a simple landing page hosted custom inference endpoint (might not work very well because im broke) should be able to run through services like Ollama and llama.cpp locally"}, {"post_id": 4501, "ts": "2026-06-07T20:43:42Z", "hours": 3.5564, "text": "I made a custom AI model called Aero-Deuce. it’s based on Google’s Gemma 4 12B, but we fine-tuned/post-trained it using a technique called QLoRA with a custom optimizer called Muon. the idea was to make a small, efficient instruction-following model that runs locally on consumer hardware. we trained it on 30,000 instruction-following examples for 2,000 steps. the training loss dropped from 3.82 to 0.57. it runs at about 14-16 tokens per second on a MacBook Air M5. the model is exported in three formats: a raw LoRA adapter (for merging with the base model), a GGUF file (runs in llama.cpp, LM Studio, Ollama, etc.), and an MLX version (optimized for Apple Silicon). all three will be on HuggingFace soon. the code is on GitHub. still need to benchmark it against the base model and submit it to the HuggingFace leaderboard. code: github.com/Ryz3nPlayZ/aero-deuce adapter: huggingface.co/ZeZZm/aero-deuce gguf: huggingface.co/ZeZZm/aero-deuce-GGUF mlx: huggingface.co/ZeZZm/aero-deuce-MLX"}, {"post_id": 3750, "ts": "2026-06-06T19:59:48Z", "hours": 3.9292, "text": "45% of the way done with test post training run but im already broke"}]...
|
Title: aero-deuce by @zemu | Stardance
Devlogs:
4 Title: aero-deuce by @zemu | Stardance
Devlogs:
45% of the way done with test post training run but im already broke
I made a custom AI model called Aero-Deuce. it’s based on Google’s Gemma 4 12B, but we fine-tuned/post-trained it using a technique called QLoRA with a custom optimizer called Muon. the idea was to make a small, efficient instruction-following model that runs locally on consumer hardware. we trained it on 30,000 instruction-following examples for 2,000 steps. the training loss dropped from 3.82 to 0.57. it runs at about 14-16 tokens per second on a MacBook Air M5. the model is exported in three formats: a raw LoRA adapter (for merging with the base model), a GGUF file (runs in llama.cpp, LM Studio, Ollama, etc.), and an MLX version (optimized for Apple Silicon). all three will be on HuggingFace soon. the code is on GitHub. still need to benchmark it against the base model and submit it to the HuggingFace leaderboard. code: github.com/Ryz3nPlayZ/aero-deuce adapter: huggingface.co/ZeZZm/aero-deuce gguf: huggingface.co/ZeZZm/aero-deuce-GGUF mlx: huggingface.co/ZeZZm/aero-deuce-MLX
adapter, gguf, and mlx (q4) all on huggingface I made a simple landing page hosted custom inference endpoint (might not work very well because im broke) should be able to run through services like Ollama and llama.cpp locally
finished landing page
Ships:
I made Aero-Deuce, a 12-billion parameter AI language model that runs locally on consumer hardware. It’s an instruction-following chatbot fine-tuned and post-trained from Google’s Gemma 4 12B using a technique called QLoRA with the Muon optimizer. It’s a relatively new approach that applies matrix orthogonalization to keep the training efficient. The whole model was trained on 30,000 instruction-following examples across 2,000 steps, going from a loss of 3.82 down to 0.57. The final model is exported in three formats: a GGUF file (~7GB) that works with anything supporting llama.cpp (LM Studio, Ollama, GPT4All), an MLX version optimized for Apple Silicon, and the raw LoRA adapter for anyone who wants to merge it or fine-tune further. I also built a live API endpoint on Modal with streaming support, so anyone can chat with it through a web interface. It's named "Aero-Deuce" because deuce means two, and this is my second attempt at LLMs, my first being a 300m custom model with some weird architecture, and I didn't have the funds to get that one off the ground. The most challenging part was the training pipeline itself. I started on Modal with spot GPUs, which meant my training kept getting preempted. I had to build robust checkpoint resumption just to survive it. Then I switched to Lightning AI for the second half. The base model uses a "unified" architecture (gemma4_unified) that most tooling didn't support — PEFT didn't recognize it, MLX couldn't run it, so I had to manually strip multimodal weights, rename parameter keys, and patch configs to make it work everywhere. Exporting to GGUF required building llama.cpp from source. The HuggingFace uploads stalled repeatedly. There were a lot of nights where nothing worked and I had to dig through error logs at 2am. I'm proud that it actually works end to end. A 12B model that you can download as a single 7GB file and run on a MacBook Air — that's real. The training converged well, the model follows instructions properly, it identifies itself as Aero-Deuce instead of claiming to be Gemma. I built the entire pipeline from scratch: data loading with loss masking, the Muon optimizer implementation, dual-optimizer parameter partitioning, checkpoint resumption, the export pipeline, and the inference API. It's not a notebook tutorial — it's a real system. To test it: go to the live demo at https://aero-deuce-lander.vercel.app, or download the GGUF from huggingface.co/ZeZZm/aero-deuce-GGUF and open it in LM Studio or GPT4All. If you're on a Mac, you can run pip install mlx-lm and use python -m mlx_lm.generate --model ZeZZm/aero-deuce-MLX --prompt "anything". The code is at github.com/Ryz3nPlayZ/aero-deuce. Everything is Apache 2.0. Thanks!...
|
1793296426.1307542
|
1793382826.1307542
|
|
9809
|
MotorCAN by @Chairles | Stardance
|
Chairles
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: MotorCAN by @Chairles | Stardance
|
1793029786.2148077
|
1793634586.2148077
|
|
9810
|
Website Project by @samuel_suchard | Stardance
|
samuel_suchard
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Website Project by @samuel_suchard | Starda Title: Website Project by @samuel_suchard | Stardance...
|
1793461905.6524022
|
1794066705.6524022
|
|
9811
|
My first slack bot! by @anand | Stardance
|
anand
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @anand | Stardance
|
1793454738.3855283
|
1794059538.3855283
|
|
9812
|
Untitled project by @Libertas | Stardance
|
Libertas
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Libertas | Stardance
|
1793310916.5671406
|
1793915716.5671406
|
|
9813
|
Web site about Space by @tamerlaniskenderli13 | St Web site about Space by @tamerlaniskenderli13 | Stardance...
|
tamerlaniskenderli13
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Web site about Space by @tamerlaniskenderli Title: Web site about Space by @tamerlaniskenderli13 | Stardance...
|
1793281888.9579508
|
1793886688.9579508
|
|
9814
|
Macropad! by @Ember2819 | Stardance
|
Ember2819
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Macropad! by @Ember2819 | Stardance
|
1792749031.506933
|
1793353831.506933
|
|
9815
|
Automated Propelled Water Dispenser by @WyattB | S Automated Propelled Water Dispenser by @WyattB | Stardance...
|
WyattB
|
0
|
1.36
|
0
|
[]
|
[{"post_id": 3579, "ts": "2026 [{"post_id": 3579, "ts": "2026-06-06T16:08:35Z", "hours": 1.3639, "text": "Initial Work Ok so I got the basic program laid out. Once im done with the entire program, I will work on hardware. What did I do? Made some functions, and worked on the screen splitting logic."}]...
|
Title: Automated Propelled Water Dispenser by @Wya Title: Automated Propelled Water Dispenser by @WyattB | Stardance
Devlogs:
Initial Work Ok so I got the basic program laid out. Once im done with the entire program, I will work on hardware. What did I do? Made some functions, and worked on the screen splitting logic....
|
1793469273.06088
|
1794074073.06088
|
|
9816
|
My awesome macropad! by @Bhuma | Stardance
|
Bhuma
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Bhuma | Stardance
|
1793407954.1312344
|
1794012754.1312344
|
|
9817
|
Untitled project by @walsoup | Stardance
|
walsoup
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @walsoup | Stardance
|
1793332160.2427738
|
1793936960.2427738
|
|
9818
|
My awesome macropad! by @mrinmoybhattacharjee145 | My awesome macropad! by @mrinmoybhattacharjee145 | Stardance...
|
mrinmoybhattacharjee145
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @mrinmoybhattacharj Title: My awesome macropad! by @mrinmoybhattacharjee145 | Stardance...
|
1793134172.6675327
|
1793738972.6675327
|
|
9819
|
My first slack bot! by @prabbb | Stardance
|
prabbb
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @prabbb | Stardance
|
1792781481.056469
|
1793386281.056469
|
|
9820
|
My first slack bot! by @YohannG | Stardance
|
YohannG
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @YohannG | Stardance
|
1793447468.783437
|
1794052268.783437
|
|
9821
|
savora by @tanushree | Stardance
|
tanushree
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-01T16:02:49Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Savora, an AI-powered pantry management web app that helps users organize ingredients, reduce food waste, and discover recipes based on what they already have. The app includes pantry tracking, recipe generation pages, ingredient management, and recipe saving features with a clean, responsive interface. The most challenging part was connecting all the pages together, managing the data flow, and preparing the project for deployment on GitHub Pages. I also learned about project structure, GitHub, hosting, and why API keys should never be exposed in frontend code. I’m proud that this is one of my largest web projects so far. I designed and built the interface myself and learned a lot while debugging and improving the user experience. To test the project: open the homepage, navigate between the Pantry, Ingredients, and Recipes pages, add ingredients, and explore the interface. The AI recipe generation is currently a placeholder because the API key has been removed before publishing for security reasons.", "repo": "https://github.com/tanushree-99/savora", "demo": "https://tanushree-99.github.io/savora/savora/"}]...
|
[{"post_id": 38031, "ts": "202 [{"post_id": 38031, "ts": "2026-07-31T05:50:58Z", "hours": 2.2194, "text": "Today I worked on improving the Savora AI Pantry app. I redesigned the UI, added recipe saving functionality, improved the pantry and recipe pages, fixed several layout issues, and connected the different pages together. I also worked on integrating AI recipe generation and spent time debugging API issues and refining the overall user experience. The app is becoming more polished and easier to use."}]...
|
Title: savora by @tanushree | Stardance
Devlogs:
Title: savora by @tanushree | Stardance
Devlogs:
Today I worked on improving the Savora AI Pantry app. I redesigned the UI, added recipe saving functionality, improved the pantry and recipe pages, fixed several layout issues, and connected the different pages together. I also worked on integrating AI recipe generation and spent time debugging API issues and refining the overall user experience. The app is becoming more polished and easier to use.
Ships:
I built Savora, an AI-powered pantry management web app that helps users organize ingredients, reduce food waste, and discover recipes based on what they already have. The app includes pantry tracking, recipe generation pages, ingredient management, and recipe saving features with a clean, responsive interface. The most challenging part was connecting all the pages together, managing the data flow, and preparing the project for deployment on GitHub Pages. I also learned about project structure, GitHub, hosting, and why API keys should never be exposed in frontend code. I’m proud that this is one of my largest web projects so far. I designed and built the interface myself and learned a lot while debugging and improving the user experience. To test the project: open the homepage, navigate between the Pantry, Ingredients, and Recipes pages, add ingredients, and explore the interface. The AI recipe generation is currently a placeholder because the API key has been removed before publishing for security reasons....
|
1793332534.2728279
|
1793418934.2728279
|
|
9822
|
Among Us Bot by @nish24 | Stardance
|
nish24
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-07T06:28:15Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an Among Use Style Multiplayer Slack Bot game. Where the host can start game with /fn-imposter than players who wanna play clicks join game button to join the game. Only host can start the game if there are less than 4 player the remaining space will be filled by bots. As host starts the game you get your role and tasks in DM than you have to submit the report. Than discussion based on all players submissions that who can be imposter than voting. If you are imposter you have to try to convince other player you are crewmate and accuse other crewmate and vote him out. If you are crewmate you have to find the imposter. The major difficulty I got is in reducing the spamminess and learning the slack api. It’s a facinating journey.", "repo": "https://github.com/KingNish24/gameBot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B9KNUSD7S"}]...
|
[{"post_id": 3614, "ts": "2026 [{"post_id": 3614, "ts": "2026-06-06T16:46:42Z", "hours": 0.8008, "text": "Devlog 2 of my Among US game Thanks to Nayte and keerthi for Feedback. Yeah, So, people have complained that its too much spammy. So, i added threads and editing previous messages to make it less spammy and do not fill any channel with just bot spam. Feedback and suggestions welcome. Changelog reduced spam ( 0775387 ) Added rule and less spammy ( cf5735e ) added threading ( 560a532 ) added joined people mention ( 6a21fd4 )"}, {"post_id": 3526, "ts": "2026-06-06T14:39:13Z", "hours": 3.2653, "text": "Hey, Everyone So, I am working on an Among Us style game played entirely inside Slack. Players join a lobby in a channel, get assigned roles (crewmate/impostor), receive mission scenarios via DM, submit observations, discuss and vote to eject the impostor. Bot players (AI) fill empty slots when fewer than 4 humans join. You can try it in slack using command /fn-imposter Please try and Give review. So, currently I have created a basic bot. In next version I want to make game more interesting by adding more roles, more better tasks, way to identify the imposter and more variant of games."}]...
|
Title: Among Us Bot by @nish24 | Stardance
Devlog Title: Among Us Bot by @nish24 | Stardance
Devlogs:
Hey, Everyone So, I am working on an Among Us style game played entirely inside Slack. Players join a lobby in a channel, get assigned roles (crewmate/impostor), receive mission scenarios via DM, submit observations, discuss and vote to eject the impostor. Bot players (AI) fill empty slots when fewer than 4 humans join. You can try it in slack using command /fn-imposter Please try and Give review. So, currently I have created a basic bot. In next version I want to make game more interesting by adding more roles, more better tasks, way to identify the imposter and more variant of games.
Devlog 2 of my Among US game Thanks to Nayte and keerthi for Feedback. Yeah, So, people have complained that its too much spammy. So, i added threads and editing previous messages to make it less spammy and do not fill any channel with just bot spam. Feedback and suggestions welcome. Changelog reduced spam ( 0775387 ) Added rule and less spammy ( cf5735e ) added threading ( 560a532 ) added joined people mention ( 6a21fd4 )
Ships:
I made an Among Use Style Multiplayer Slack Bot game. Where the host can start game with /fn-imposter than players who wanna play clicks join game button to join the game. Only host can start the game if there are less than 4 player the remaining space will be filled by bots. As host starts the game you get your role and tasks in DM than you have to submit the report. Than discussion based on all players submissions that who can be imposter than voting. If you are imposter you have to try to convince other player you are crewmate and accuse other crewmate and vote him out. If you are crewmate you have to find the imposter. The major difficulty I got is in reducing the spamminess and learning the slack api. It’s a facinating journey....
|
1793328646.4502716
|
1793415046.4502716
|
|
9823
|
My first slack bot! by @bobormrkva | Stardance
|
bobormrkva
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @bobormrkva | Starda Title: My first slack bot! by @bobormrkva | Stardance...
|
1793234949.8299265
|
1793839749.8299265
|
|
9824
|
ARCHITEX by @ke_1_lysh | Stardance
|
ke_1_lysh
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ARCHITEX by @ke_1_lysh | Stardance
|
1793289418.4779172
|
1793894218.4779172
|
|
9825
|
Untitled project by @ural | Stardance
|
ural
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @ural | Stardance
|
1792745516.3840253
|
1793350316.3840253
|
|
9826
|
Anything AI by @THEbluefirestudios | Stardance
|
THEbluefirestudios
|
1
|
5.0
|
46
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-11T13:39:14Z", "hours": 5.0, "multiplier": 9.67, "payout": 46, "blessing": "neutral", "text": "An LLM wrapper that uses multiple open source AIs to make something that is as good as big AI like Claude, and ChatGPT", "repo": "https://github.com/THEbluefirestudios/anything-ai", "demo": "https://github.com/THEbluefirestudios/anything-ai/releases"}]...
|
[{"post_id": 6166, "ts": "2026 [{"post_id": 6166, "ts": "2026-06-10T11:30:10Z", "hours": 1.5317, "text": "Damn man…. so much for adding chat history and long term memory…. Today I spent 1 and a half hours adding them, the memory is stored in Anything AI\\memory and chats are stored in Anything AI\\chats . I also switched the sorter AI to deepseek-ai/DeepSeek-R1-Distill-Llama-70B coz llama was hallucinating a LOT, ill be releasing another beta soon….."}, {"post_id": 5522, "ts": "2026-06-09T10:24:06Z", "hours": 1.0064, "text": "I’m regretting making a TUI instead of a GUI. I made it so because i wanted to save time and focus on the important stuff, and cause i was lazy, but it turned out to be a mistake. Today I spent nearly an hour trying to fix terminal formatting issues like shown in the attached screenshot (sorry for low resolution) , it got so bad that I just ended making my own input() function instead. Truly an experience, anyways, Anything has entered beta! The full proper official ship will come soon!"}, {"post_id": 4827, "ts": "2026-06-08T10:42:23Z", "hours": 0.6256, "text": "Now I have created the logo for Anything AI, so it will be definitely out soon! I hope this project gets high ratings! Lapse: https://lapse.hackclub.com/timelapse/kOucepr-Hpub"}, {"post_id": 4808, "ts": "2026-06-08T09:52:08Z", "hours": 0.4364, "text": "YESS, attach file works! It currently supports .txt, .csv, .docx, .pptx, .xlsx and code files like .py, .kt, .java, .cpp and, obviously image files, the ones supported by PIL :). Anything AI will be finished soon!"}, {"post_id": 4792, "ts": "2026-06-08T09:00:53Z", "hours": 0.6258, "text": "Today I’m working on adding more modalities to my AI, more specifically, giving it the ability to read text, documents and code files alongside the already implemented image file. To do this I’m migrating from pick_image_file() to just pick_file() As of now, the pick_file() function is done and i need to add functions for parsing the returned filepath to data the AI can read. I also ran out of free credits on Hugging Face so i created an extra account. :("}, {"post_id": 4139, "ts": "2026-06-07T10:35:45Z", "hours": 0.3117, "text": "OK, so terminal commands work! I also fixed the jank bug that caused issues with displaying text after addingf an image to a prompt. Things seem to be going well! I’m gonna make myself a bowl of maggi now >. <"}, {"post_id": 4122, "ts": "2026-06-07T09:55:20Z", "hours": 0.3342, "text": "Ok so, I know this is a project I started before Stardance on May 25 2026 and have worked for hours on this, and its almost ship ready, I’ve added everything I want like multimodal input, file generation, etc. As of now, I’m giving it the ability to run terminal commands and do some bugfixing before shipping it as an .exe"}]...
|
Title: Anything AI by @THEbluefirestudios | Starda Title: Anything AI by @THEbluefirestudios | Stardance
Devlogs:
Ok so, I know this is a project I started before Stardance on May 25 2026 and have worked for hours on this, and its almost ship ready, I’ve added everything I want like multimodal input, file generation, etc. As of now, I’m giving it the ability to run terminal commands and do some bugfixing before shipping it as an .exe
OK, so terminal commands work! I also fixed the jank bug that caused issues with displaying text after addingf an image to a prompt. Things seem to be going well! I’m gonna make myself a bowl of maggi now >. <
Today I’m working on adding more modalities to my AI, more specifically, giving it the ability to read text, documents and code files alongside the already implemented image file. To do this I’m migrating from pick_image_file() to just pick_file() As of now, the pick_file() function is done and i need to add functions for parsing the returned filepath to data the AI can read. I also ran out of free credits on Hugging Face so i created an extra account. :(
YESS, attach file works! It currently supports .txt, .csv, .docx, .pptx, .xlsx and code files like .py, .kt, .java, .cpp and, obviously image files, the ones supported by PIL :). Anything AI will be finished soon!
Now I have created the logo for Anything AI, so it will be definitely out soon! I hope this project gets high ratings! Lapse: https://lapse.hackclub.com/timelapse/kOucepr-Hpub
I’m regretting making a TUI instead of a GUI. I made it so because i wanted to save time and focus on the important stuff, and cause i was lazy, but it turned out to be a mistake. Today I spent nearly an hour trying to fix terminal formatting issues like shown in the attached screenshot (sorry for low resolution) , it got so bad that I just ended making my own input() function instead. Truly an experience, anyways, Anything has entered beta! The full proper official ship will come soon!
Damn man…. so much for adding chat history and long term memory…. Today I spent 1 and a half hours adding them, the memory is stored in Anything AI\memory and chats are stored in Anything AI\chats . I also switched the sorter AI to deepseek-ai/DeepSeek-R1-Distill-Llama-70B coz llama was hallucinating a LOT, ill be releasing another beta soon…..
Ships:
An LLM wrapper that uses multiple open source AIs to make something that is as good as big AI like Claude, and ChatGPT...
|
1793278368.3681328
|
1793364768.3681328
|
|
9827
|
My first slack bot! by @badNam3 | Stardance
|
badNam3
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @badNam3 | Stardance
|
1793382894.8552837
|
1793987694.8552837
|
|
9828
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792925601.220439
|
1793789601.220439
|
|
9829
|
Untitled by @Bhuma | Stardance
|
Bhuma
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @Bhuma | Stardance
|
1793393267.6795497
|
1793998067.6795497
|
|
9830
|
Brian2 Simulator of Mozart Effect by @jihoon2010c Brian2 Simulator of Mozart Effect by @jihoon2010c | Stardance...
|
jihoon2010c
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Brian2 Simulator of Mozart Effect by @jihoo Title: Brian2 Simulator of Mozart Effect by @jihoon2010c | Stardance...
|
1792803282.960311
|
1793408082.960311
|
|
9831
|
Tuff Top by @Spaagz | Stardance
|
Spaagz
|
1
|
26.21
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T18:54:56Z", "hours": 16.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Watch this video to get a better idea of what it does, my description doesnt do it justice: https://www.youtube.com/watch?v=HbPldsK_V3k I made TuffTop which is a python program for linux that turns anything TUFF by mimicking those phonk edits that were popular ~8 months ago, and have since then long died in the mud. I made sure it is very customisable, you can change fonts, music, icons and the various phrases on screen. You can also turn things off in the handy config. Built with PyQt6 for drawing the overlay windows, PIL for image grayscaling effects and screenshot support on Wayland. I also use mpg123 for music and Evdev for input capturing This is my first real python project, please share any constructive criticism you may have as I want to improve!", "repo": "https://github.com/Spaagz/tuff-top", "demo": "https://github.com/Spaagz/tuff-top/releases/latest"}]...
|
[{"post_id": 17774, "ts": "202 [{"post_id": 17774, "ts": "2026-06-28T18:25:02Z", "hours": 3.2769, "text": "4 BLUE SQUARES UPDATE COMPLETE! This means that windows support is a thing now! Defender didn’t flag the exe yet , I can only hope and pray that it stays this way since pyinstaller builds are notorious for being flagged by defender Currently this just uses the same py file as on linux as the script itself is cross compatible, only the binaries have to be made per system which saves me time at the expense of the program being ever so slightly larger. Overlays and background bounces are also included in the new builds Full changelog and downloads here wait… I’m going to have to make another showcase video ament I?"}, {"post_id": 12783, "ts": "2026-06-20T22:04:59Z", "hours": 2.2578, "text": "I may have gone overboard on the svg overlay idea… Absolutely everything is randomized: The channel icon, the background gradient FOR the icon, like and dislike amount, channel name - heck I even made the progress bar random. (Im not going to animate it though). It will be in the next build once I have polished it up a bit more. Also, I have one question to you people: should I make a random video title appear as well? This will require another txt config file which might overwhelm new users so I dont know if its worth it. Aaaaand if you dont care for it you can also turn it off. also now I know how to use markdown formatting in my devlogs… Could you tell?"}, {"post_id": 12660, "ts": "2026-06-20T18:03:56Z", "hours": 0.6064, "text": "Added an experimental youtube shorts style overlay Its off by default because I want to figure out how to randomize like numbers, channel username and profile picture, however currently it just uses a hardcoded png"}, {"post_id": 12523, "ts": "2026-06-20T13:25:10Z", "hours": 4.0731, "text": "I have created a new release of the program that doesnt depend on mpg123 and doesnt create and destroy a qt app every single trigger. I have also added a couple new config options and QoL improvements: This means that compatibility should be greatly improved and performance should be better. I have managed to run the script in a vm and it seems to work out of the box on the latest version of KDE plasma."}, {"post_id": 10122, "ts": "2026-06-16T18:42:27Z", "hours": 0.7589, "text": "Most people dont use linux, so I made a showcase so people can preview the project easier! https://youtu.be/HbPldsK_V3k I know, the video is quite shoddy, I was kinda doing my homework at the same time ¯ _ (ツ)_/¯ In the 45 min tracked I setup paths relative to the script so now it works as a compiled pyinstaller binary. If you want to, you can click and run now instead of messing with python stuff. https://github.com/Spaagz/tuff-top"}, {"post_id": 8972, "ts": "2026-06-14T22:44:36Z", "hours": 1.8533, "text": "Added random phrases to the top of the screen using a randomised selection of fonts from a folder"}, {"post_id": 8403, "ts": "2026-06-13T23:34:00Z", "hours": 0.6964, "text": "Icons now scale according to aspect ratio instead of being squished into a uniform box. Heres a preview of the whole abomination in action:"}, {"post_id": 8351, "ts": "2026-06-13T21:34:29Z", "hours": 5.0408, "text": "The Youtube Shorts™ experience 🔥 Black bars can now be added to the sides to mimic a phone aspect ratio, this is configurable. More music and icons have been added as well. Ive also setup a github for this at: github.com/Spaagz/tuff-top Plans: a fake likes and comments overlay random text to accompany the icon Figure out a way to release this as a linux executable"}, {"post_id": 5047, "ts": "2026-06-08T18:24:34Z", "hours": 4.9244, "text": "Progress update! The project is Linux only now. Pynput doesnt work on wayland and while I could have it detect your platform and use a different input capturing method based on that, It’s not one of my priorities Anyways, I have finished some things up: Input detection works using evdev, I listen for mouse clicks and decide if it is “tuff” based on a % value set in the config, you can also configure how many seconds the icon stays on screen for. Icons are automatically selected from an icons directory and shuffled randomly - They do repeat sometimes but I feel that makes it funnier. This works for the phonk music too. I don’t know if this is optimal (please do say so if there are any better ways), Currently it spawns a mpg123 subprocess and then terminates it after the interval so you don’t have to cut your clips to length. The icon also now bounces randomly as if it were audio reactive but it actually isn’t Next: Make the screen grayscale. It makes it MUCH more funny but I don’t know how to do this in pyqt6, and also if it will work on wayland (Please tell me someone) Add black bars to mimic the aspect ratio of a vertical phone screen I want to setup a github for this but since I’m stupid I have actually never used it."}, {"post_id": 4170, "ts": "2026-06-07T12:03:06Z", "hours": 0.4686, "text": "Got the bounce animation working. So far I am just using the nerd emoji for my icon Trigger logic is the next thing to be done, but I’m unsure of how to go about it as I’m on Wayland which I heard doesn’t like capturing input if an app isn’t in focus. I didn’t put this in my first devlog, the goal is to interrupt gameplay at notable moments to cause an annoying fullscreen animation that works in any game or application. This is inspired by the Minecraft mod “Tuffcraft” and the one in gd that does the same thing yes I know this meme genre is long dead but idrc"}, {"post_id": 4146, "ts": "2026-06-07T11:01:09Z", "hours": 2.2386, "text": "Got transparent overlays working!"}]...
|
Title: Tuff Top by @Spaagz | Stardance
Devlogs:
G Title: Tuff Top by @Spaagz | Stardance
Devlogs:
Got transparent overlays working!
Got the bounce animation working. So far I am just using the nerd emoji for my icon Trigger logic is the next thing to be done, but I’m unsure of how to go about it as I’m on Wayland which I heard doesn’t like capturing input if an app isn’t in focus. I didn’t put this in my first devlog, the goal is to interrupt gameplay at notable moments to cause an annoying fullscreen animation that works in any game or application. This is inspired by the Minecraft mod “Tuffcraft” and the one in gd that does the same thing yes I know this meme genre is long dead but idrc
Progress update! The project is Linux only now. Pynput doesnt work on wayland and while I could have it detect your platform and use a different input capturing method based on that, It’s not one of my priorities Anyways, I have finished some things up: Input detection works using evdev, I listen for mouse clicks and decide if it is “tuff” based on a % value set in the config, you can also configure how many seconds the icon stays on screen for. Icons are automatically selected from an icons directory and shuffled randomly - They do repeat sometimes but I feel that makes it funnier. This works for the phonk music too. I don’t know if this is optimal (please do say so if there are any better ways), Currently it spawns a mpg123 subprocess and then terminates it after the interval so you don’t have to cut your clips to length. The icon also now bounces randomly as if it were audio reactive but it actually isn’t Next: Make the screen grayscale. It makes it MUCH more funny but I don’t know how to do this in pyqt6, and also if it will work on wayland (Please tell me someone) Add black bars to mimic the aspect ratio of a vertical phone screen I want to setup a github for this but since I’m stupid I have actually never used it.
The Youtube Shorts™ experience 🔥 Black bars can now be added to the sides to mimic a phone aspect ratio, this is configurable. More music and icons have been added as well. Ive also setup a github for this at: github.com/Spaagz/tuff-top Plans: a fake likes and comments overlay random text to accompany the icon Figure out a way to release this as a linux executable
Icons now scale according to aspect ratio instead of being squished into a uniform box. Heres a preview of the whole abomination in action:
Added random phrases to the top of the screen using a randomised selection of fonts from a folder
Most people dont use linux, so I made a showcase so people can preview the project easier! https://youtu.be/HbPldsK_V3k I know, the video is quite shoddy, I was kinda doing my homework at the same time ¯ _ (ツ)_/¯ In the 45 min tracked I setup paths relative to the script so now it works as a compiled pyinstaller binary. If you want to, you can click and run now instead of messing with python stuff. https://github.com/Spaagz/tuff-top
I have created a new release of the program that doesnt depend on mpg123 and doesnt create and destroy a qt app every single trigger. I have also added a couple new config options and QoL improvements: This means that compatibility should be greatly improved and performance should be better. I have managed to run the script in a vm and it seems to work out of the box on the latest version of KDE plasma.
Added an experimental youtube shorts style overlay Its off by default because I want to figure out how to randomize like numbers, channel username and profile picture, however currently it just uses a hardcoded png
I may have gone overboard on the svg overlay idea… Absolutely everything is randomized: The channel icon, the background gradient FOR the icon, like and dislike amount, channel name - heck I even made the progress bar random. (Im not going to animate it though). It will be in the next build once I have polished it up a bit more. Also, I have one question to you people: should I make a random video title appear as well? This will require another txt config file which might overwhelm new users so I dont know if its worth it. Aaaaand if you dont care for it you can also turn it off. also now I know how to use markdown formatting in my devlogs… Could you tell?
4 BLUE SQUARES UPDATE COMPLETE! This means that windows support is a thing now! Defender didn’t flag the exe yet , I can only hope and pray that it stays this way since pyinstaller builds are notorious for being flagged by defender Currently this just uses the same py file as on linux as the script itself is cross compatible, only the binaries have to be made per system which saves me time at the expense of the program being ever so slightly larger. Overlays and background bounces are also included in the new builds Full changelog and downloads here wait… I’m going to have to make another showcase video ament I?
Ships:
Watch this video to get a better idea of what it does, my description doesnt do it justice: https://www.youtube.com/watch?v=HbPldsK_V3k I made TuffTop which is a python program for linux that turns anything TUFF by mimicking those phonk edits that were popular ~8 months ago, and have since then long died in the mud. I made sure it is very customisable, you can change fonts, music, icons and the various phrases on screen. You can also turn things off in the handy config. Built with PyQt6 for drawing the overlay windows, PIL for image grayscaling effects and screenshot support on Wayland. I also use mpg123 for music and Evdev for input capturing This is my first real python project, please share any constructive criticism you may have as I want to improve!...
|
1793288939.0786724
|
1793375339.0786724
|
|
9832
|
(Dis/U)topia by @Archotype | Stardance
|
Archotype
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: (Dis/U)topia by @Archotype | Stardance
|
1793386400.0347908
|
1793991200.0347908
|
|
9833
|
My awesome macropad! by @henry_agerson | Stardance
|
henry_agerson
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @henry_agerson | St Title: My awesome macropad! by @henry_agerson | Stardance...
|
1792795814.6976018
|
1793400614.6976018
|
|
9834
|
macropad! by @badNam3 | Stardance
|
badNam3
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: macropad! by @badNam3 | Stardance
|
1793145063.647033
|
1793749863.647033
|
|
9835
|
micro_os by @wilrakov | Stardance
|
wilrakov
|
1
|
15.76
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T18:33:06Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "🚀 Shipped PicoOS! A minimalist, retro-styled OS for the Raspberry Pi Pico 2 (RP2350) written in MicroPython. Key elements: Combines MS-DOS simplicity with Unix-like control (CLI). True KISS/Suckless architecture: New commands are just modular scripts added to /bin . Implements custom piping ( | ) and redirections ( > , >> ) by elegantly overriding native print() and input() in RAM. 👉 Test it online with the Wokwi simulator! (Note: The simulator is a bit slow due to the RP2350 emulation, but it runs blazing fast on real hardware!)", "repo": "https://github.com/wilrak0v/PicoOS", "demo": "https://wokwi.com/projects/467100122244304897"}]...
|
[{"post_id": 17146, "ts": "202 [{"post_id": 17146, "ts": "2026-06-27T20:42:27Z", "hours": 2.1261, "text": "Abandoning LVGL After extensive testing aimed at achieving a smooth user experience, I unfortunately didn’t succeed. I believe the main issue stems from the fact that LVGL relies on significant abstraction layers designed to simplify and optimize UI creation. However, it isn’t optimized for a full-fledged graphical OS capable of handling video games. So, I decided to change my approach. WilUI After much thought, I decided to create my own graphics library: WilUI (yes, I’m a megalomaniac 😂). It uses double buffering in PSRAM (the ESP32’s external RAM, ranging from a few MBs to more, depending on the configuration). It then renders the screen using one or two internal RAM buffers; each of these buffers holds 48 lines of the display. Thanks to this, I managed to jump from under 10 fps to around 26 fps. I achieve this speed using full refreshes, so in theory, the actual performance should be smoother; I won’t be doing a full refresh every time, but rather partial refreshes on the areas that have changed. The library isn’t really fully underway yet—I’ve mostly handled the framebuffer management so far, while the UI components and other features still need to be built… But I wanted to say I’d created a UI library anyway 😅 The new TODO list dirty rects basic UI components text rendering basic window manager (SOWM) -> desktops + status bar + simple windows wilra0v, btw"}, {"post_id": 16201, "ts": "2026-06-26T10:15:22Z", "hours": 3.1658, "text": "A functional multitasking system!!! I coded the micro_os base, including FreeRTOS and LVGL to handle multitasking and provide a nice display. Everything went smoothly at first, adding LVGL and esp-idf to good tools for using a screen. The beginning of the problems Once the LVGL task was able to display text, I thought everything was ready to start the window manager and desktop for this OS. But… in the end, I had synchronization issues since the tasks run in parallel. Fortunately, I found the problem fairly quickly and was able to fix it. So, in the end, the base works without any problems. What’s already there For now, there’s almost nothing, just a status bar and 3 virtual workspaces with custom themes for the windows, etc. You can also switch between light and dark themes. What I’m going to do now I’m going to continue working on the basic display by dynamically showing and hiding the status bar. Next, I’d like to add a small dock like on macOS. Finally, I’d like to make the status bar dynamic so that it displays the name of the application in focus and also allows me to add and remove icons on the fly. Thanks for reading, wilrak0v, btw"}, {"post_id": 14494, "ts": "2026-06-23T17:06:54Z", "hours": 0.4694, "text": "🚀 Major Pivot: From PicoOS to micro_os I’m officially moving away from MicroPython for my OS development. While it was a great way to prototype, it’s time to get closer to the metal. Say hello to micro_os — a complete, lightweight, and graphical operating system built from scratch. To kick things off, I have just initialized the project entirely in C using the ESP-IDF framework. The goal is to build a fast, minimalist, and efficient system, focusing on the ESP32 first, with plans to port it to the Raspberry Pi Pico later on. Time to write some real firmware. Stay tuned for updates! 💻🛠️"}, {"post_id": 10799, "ts": "2026-06-17T18:29:35Z", "hours": 0.3575, "text": "Prepare to the first ship So I created the github repo, and I made a small test with wokwi simulator but it doesn´t work very well, I have to find a better way to run my OS on the Internet."}, {"post_id": 8041, "ts": "2026-06-13T12:33:20Z", "hours": 2.7528, "text": "Devlog PicoOS #3: Colors, SDK, and an Alternative C Kernel What is New Application Library (SDK) To stop rewriting core system code for every new feature, PicoOS now features a minimalist SDK. This application library standardizes how programs interface with the OS for rendering and input handling, making the codebase modular. ANSI Color Support PicoOS now supports standard ANSI color escape sequences. This brings color to the terminal interface without bloating the system, allowing for better visual hierarchy and cleaner error reporting. Technical Friction: Refactoring the ls Command Integrating older, hardcoded features into the new standardized SDK proved to be a real headache. The biggest friction happened while adapting the ls command to the new library. Originally, the file listing system was deeply intertwined with the main loop and bypassed any formal API. Forcing it to fit into the new application structure broke the output formatting and data piping. It took a lot of tedious refactoring to abstract the file system calls into the SDK so that ls could run as a standard, isolated application while maintaining its output format. Future Roadmap Text Editor: poe The next native tool will be poe (PicoOS Editor). This minimalist text editor will run directly on top of the SDK, allowing basic file editing on the go. Parallel Track: A C Version The MicroPython version is not going anywhere and will remain active. However, as a C developer who loves low-level programming, a parallel version of PicoOS written entirely in C will start soon. This alternative kernel will run closer to the metal, offering absolute memory control, optimal performance on the RP2350, and a pure bare-metal experience."}, {"post_id": 5699, "ts": "2026-06-09T16:16:34Z", "hours": 0.5569, "text": "Storage unlocked! Added SD card memory support for PicoOS today. The craziest part? It took me barely 20 minutes. The implementation was surprisingly straightforward, and the OS now effortlessly handles multiple SD cards simultaneously without any conflicts. Next on the roadmap: building a library to make custom command development easier, and adding a “Clippy”-style assistant right inside the terminal."}, {"post_id": 5004, "ts": "2026-06-08T17:31:43Z", "hours": 2.0094, "text": "PicoOS Devlog #2: Rounding Up Essential Commands Welcome to the second devlog! I’ve spent the last two days expanding the shell’s toolkit to make the environment much more usable. I am happy to announce that the core lineup of indispensable Unix utilities and I/O features is now complete! New Features & Commands Added echo : Prints text to the terminal—essential for verifying variables, scripting, and testing streams. clear : Clears the terminal screen (super satisfying when working over UART!). cat : Outputs the content of a file directly to the terminal. less : A lightweight pager to view content page by page. It dynamically handles input either directly from a specified file or piped on the fly from another command using the shell pipeline ( | ). help : Displays the description and usage of available commands. Stream Redirections are Live! I have successfully implemented basic I/O redirection operators into the shell parser: > : Redirects a command’s standard output to a file, overwriting its existing content. >> : Redirects standard output to a file, but appends the data to the end of the file instead of wiping it. How help works under the hood To keep things lightweight and modular, the help command doesn’t rely on a hardcoded dictionary. Instead, it dynamically parses an optional comment block placed right at the beginning of each command line inside /bin . Simple, effective, and completely decentralized. What’s next? With the fundamental CLI utilities and stream handling out of the way, I am shifting focus toward system architecture and usability: Memory & Storage Integration: Setting up proper management for SPI flash memories and mapping out the memory structure of the system. Developer Experience (DX): Building core Python modules to make writing custom apps for PicoOS as straightforward and clean as possible. Refactoring & Expansion: Polishing and simplifying the existing codebase while adding a few more handy utilities. Text Editing: Writing a lightweight, built-in text editor (a mini-clone of nano or vi) to modify files directly on the hardware. Community request! I feel like the most critical commands are now up and running, but a shell can always grow. What essential CLI utility or fun tool are you missing? If there is a specific command you’d love to see running natively on a Raspberry Pi Pico 2, drop it in the comments below! Until next time!"}, {"post_id": 4166, "ts": "2026-06-07T11:47:22Z", "hours": 3.5311, "text": "PicoOS Devlog #1 : Build the Shell Foundation Welcome to this very first devlog! After setting up the project description, it’s time to div into the actual code. Lately, I’ve been focusing on implementing the core shell environment. The goal is to build a familiar CLI experience by rewriting essential Unix/Linux commands from scratch, keeping them lightweight and stripped of bloat Anatomy of a Command In this OS, every command lives as a file or folder inside the /bin directory, with the exception of cd , which has to be built directly into the shell to modify the current working directory. Here is the standard structure for a basic command (e.g., hello ): def hello(args: list) -> int: print(\"Hello World\") return 0 Naming convention: The main function name must perfectly match the script’s filename. Arguments: Just like in standard C programs on Unix/Linux, args[0] always hold the name of the program itself, followed by the actual arguments. What’s Already Working I have successfully implemented a solid batch of core utilities: ls : Lists directory contents. Supported flags: -l (long format) and -a (show hidden files). cd : Changes the current working directory. mkdir : Creates one or multiple directories. touch : Creates one or multiple empty files. rm : Removes files or directories. Supported flag: -r (recursive). mv : Renames or moves files/directories. cp : Copies files/directories. Supported flag: -r (recursive). picofetch : A custom, lightweight system information tool (think neofetch / fastfetch) custom-tailored for PicoOS. What’s Next? The shell is alive, but there is still plenty of low-level work to do. My immediate milestones are: Expanding the toolbet: Implement the cat command along with a few other handy utilities. I/O Streams: Add basic shell redirection mechanisms, specifically output redirection ( > ) and piping ( | ). Hardware Storage: Write drivers to interface with and manage external SPI flash memories. The Endgame As a reminder, the final objective of this project is to build a functional mini-computer powered by a Raspberry Pi Pico 2. I’ll be handling networking, driving a graphical display purely over UART, and the ultimate test of fire: making DOOM run on it. Stay tuned for the next updates!"}, {"post_id": 3521, "ts": "2026-06-06T14:31:25Z", "hours": 0.93, "text": "🚀 Project: PicoOS (Retro CLI for RP2350) For this Stardance marathon, I’m building a minimalist, retro-styled operating system running entirely on the new Raspberry Pi Pico 2 (RP2350) using MicroPython! The goal is to blend the nostalgic command-line simplicity of MS-DOS with the modular design and philosophy of Unix/Linux. Everything is designed to be as close to the KISS (Keep It Simple, Stupid) and suckless principles as possible. What I’m shipping: A custom, fast interactive CLI shell over serial (USB/UART). A modular file system structure where commands are isolated scripts (like a real /bin directory). Direct low-level hardware poking (GPIO, PWM, I2C) right from the prompt. No bloated abstractions, just clean and simple code. Can’t wait to log hours on this and see how far I can push this little dual-core chip. Let’s build! 💻🔥"}]...
|
Title: micro_os by @wilrakov | Stardance
Devlogs: Title: micro_os by @wilrakov | Stardance
Devlogs:
🚀 Project: PicoOS (Retro CLI for RP2350) For this Stardance marathon, I’m building a minimalist, retro-styled operating system running entirely on the new Raspberry Pi Pico 2 (RP2350) using MicroPython! The goal is to blend the nostalgic command-line simplicity of MS-DOS with the modular design and philosophy of Unix/Linux. Everything is designed to be as close to the KISS (Keep It Simple, Stupid) and suckless principles as possible. What I’m shipping: A custom, fast interactive CLI shell over serial (USB/UART). A modular file system structure where commands are isolated scripts (like a real /bin directory). Direct low-level hardware poking (GPIO, PWM, I2C) right from the prompt. No bloated abstractions, just clean and simple code. Can’t wait to log hours on this and see how far I can push this little dual-core chip. Let’s build! 💻🔥
PicoOS Devlog #1 : Build the Shell Foundation Welcome to this very first devlog! After setting up the project description, it’s time to div into the actual code. Lately, I’ve been focusing on implementing the core shell environment. The goal is to build a familiar CLI experience by rewriting essential Unix/Linux commands from scratch, keeping them lightweight and stripped of bloat Anatomy of a Command In this OS, every command lives as a file or folder inside the /bin directory, with the exception of cd , which has to be built directly into the shell to modify the current working directory. Here is the standard structure for a basic command (e.g., hello ): def hello(args: list) -> int: print("Hello World") return 0 Naming convention: The main function name must perfectly match the script’s filename. Arguments: Just like in standard C programs on Unix/Linux, args[0] always hold the name of the program itself, followed by the actual arguments. What’s Already Working I have successfully implemented a solid batch of core utilities: ls : Lists directory contents. Supported flags: -l (long format) and -a (show hidden files). cd : Changes the current working directory. mkdir : Creates one or multiple directories. touch : Creates one or multiple empty files. rm : Removes files or directories. Supported flag: -r (recursive). mv : Renames or moves files/directories. cp : Copies files/directories. Supported flag: -r (recursive). picofetch : A custom, lightweight system information tool (think neofetch / fastfetch) custom-tailored for PicoOS. What’s Next? The shell is alive, but there is still plenty of low-level work to do. My immediate milestones are: Expanding the toolbet: Implement the cat command along with a few other handy utilities. I/O Streams: Add basic shell redirection mechanisms, specifically output redirection ( > ) and piping ( | ). Hardware Storage: Write drivers to interface with and manage external SPI flash memories. The Endgame As a reminder, the final objective of this project is to build a functional mini-computer powered by a Raspberry Pi Pico 2. I’ll be handling networking, driving a graphical display purely over UART, and the ultimate test of fire: making DOOM run on it. Stay tuned for the next updates!
PicoOS Devlog #2: Rounding Up Essential Commands Welcome to the second devlog! I’ve spent the last two days expanding the shell’s toolkit to make the environment much more usable. I am happy to announce that the core lineup of indispensable Unix utilities and I/O features is now complete! New Features & Commands Added echo : Prints text to the terminal—essential for verifying variables, scripting, and testing streams. clear : Clears the terminal screen (super satisfying when working over UART!). cat : Outputs the content of a file directly to the terminal. less : A lightweight pager to view content page by page. It dynamically handles input either directly from a specified file or piped on the fly from another command using the shell pipeline ( | ). help : Displays the description and usage of available commands. Stream Redirections are Live! I have successfully implemented basic I/O redirection operators into the shell parser: > : Redirects a command’s standard output to a file, overwriting its existing content. >> : Redirects standard output to a file, but appends the data to the end of the file instead of wiping it. How help works under the hood To keep things lightweight and modular, the help command doesn’t rely on a hardcoded dictionary. Instead, it dynamically parses an optional comment block placed right at the beginning of each command line inside /bin . Simple, effective, and completely decentralized. What’s next? With the fundamental CLI utilities and stream handling out of the way, I am shifting focus toward system architecture and usability: Memory & Storage Integration: Setting up proper management for SPI flash memories and mapping out the memory structure of the system. Developer Experience (DX): Building core Python modules to make writing custom apps for PicoOS as straightforward and clean as possible. Refactoring & Expansion: Polishing and simplifying the existing codebase while adding a few more handy utilities. Text Editing: Writing a lightweight, built-in text editor (a mini-clone of nano or vi) to modify files directly on the hardware. Community request! I feel like the most critical commands are now up and running, but a shell can always grow. What essential CLI utility or fun tool are you missing? If there is a specific command you’d love to see running natively on a Raspberry Pi Pico 2, drop it in the comments below! Until next time!
Storage unlocked! Added SD card memory support for PicoOS today. The craziest part? It took me barely 20 minutes. The implementation was surprisingly straightforward, and the OS now effortlessly handles multiple SD cards simultaneously without any conflicts. Next on the roadmap: building a library to make custom command development easier, and adding a “Clippy”-style assistant right inside the terminal.
Devlog PicoOS #3: Colors, SDK, and an Alternative C Kernel What is New Application Library (SDK) To stop rewriting core system code for every new feature, PicoOS now features a minimalist SDK. This application library standardizes how programs interface with the OS for rendering and input handling, making the codebase modular. ANSI Color Support PicoOS now supports standard ANSI color escape sequences. This brings color to the terminal interface without bloating the system, allowing for better visual hierarchy and cleaner error reporting. Technical Friction: Refactoring the ls Command Integrating older, hardcoded features into the new standardized SDK proved to be a real headache. The biggest friction happened while adapting the ls command to the new library. Originally, the file listing system was deeply intertwined with the main loop and bypassed any formal API. Forcing it to fit into the new application structure broke the output formatting and data piping. It took a lot of tedious refactoring to abstract the file system calls into the SDK so that ls could run as a standard, isolated application while maintaining its output format. Future Roadmap Text Editor: poe The next native tool will be poe (PicoOS Editor). This minimalist text editor will run directly on top of the SDK, allowing basic file editing on the go. Parallel Track: A C Version The MicroPython version is not going anywhere and will remain active. However, as a C developer who loves low-level programming, a parallel version of PicoOS written entirely in C will start soon. This alternative kernel will run closer to the metal, offering absolute memory control, optimal performance on the RP2350, and a pure bare-metal experience.
Prepare to the first ship So I created the github repo, and I made a small test with wokwi simulator but it doesn´t work very well, I have to find a better way to run my OS on the Internet.
🚀 Major Pivot: From PicoOS to micro_os I’m officially moving away from MicroPython for my OS development. While it was a great way to prototype, it’s time to get closer to the metal. Say hello to micro_os — a complete, lightweight, and graphical operating system built from scratch. To kick things off, I have just initialized the project entirely in C using the ESP-IDF framework. The goal is to build a fast, minimalist, and efficient system, focusing on the ESP32 first, with plans to port it to the Raspberry Pi Pico later on. Time to write some real firmware. Stay tuned for updates! 💻🛠️
A functional multitasking system!!! I coded the micro_os base, including FreeRTOS and LVGL to handle multitasking and provide a nice display. Everything went smoothly at first, adding LVGL and esp-idf to good tools for using a screen. The beginning of the problems Once the LVGL task was able to display text, I thought everything was ready to start the window manager and desktop for this OS. But… in the end, I had synchronization issues since the tasks run in parallel. Fortunately, I found the problem fairly quickly and was able to fix it. So, in the end, the base works without any problems. What’s already there For now, there’s almost nothing, just a status bar and 3 virtual workspaces with custom themes for the windows, etc. You can also switch between light and dark themes. What I’m going to do now I’m going to continue working on the basic display by dynamically showing and hiding the status bar. Next, I’d like to add a small dock like on macOS. Finally, I’d like to make the status bar dynamic so that it displays the name of the application in focus and also allows me to add and remove icons on the fly. Thanks for reading, wilrak0v, btw
Abandoning LVGL After extensive testing aimed at achieving a smooth user experience, I unfortunately didn’t succeed. I believe the main issue stems from the fact that LVGL relies on significant abstraction layers designed to simplify and optimize UI creation. However, it isn’t optimized for a full-fledged graphical OS capable of handling video games. So, I decided to change my approach. WilUI After much thought, I decided to create my own graphics library: WilUI (yes, I’m a megalomaniac 😂). It uses double buffering in PSRAM (the ESP32’s external RAM, ranging from a few MBs to more, depending on the configuration). It then renders the screen using one or two internal RAM buffers; each of these buffers holds 48 lines of the display. Thanks to this, I managed to jump from under 10 fps to around 26 fps. I achieve this speed using full refreshes, so in theory, the actual performance should be smoother; I won’t be doing a full refresh every time, but rather partial refreshes on the areas that have changed. The library isn’t really fully underway yet—I’ve mostly handled the framebuffer management so far, while the UI components and other features still need to be built… But I wanted to say I’d created a UI library anyway 😅 The new TODO list dirty rects basic UI components text rendering basic window manager (SOWM) -> desktops + status bar + simple windows wilra0v, btw
Ships:
🚀 Shipped PicoOS! A minimalist, retro-styled OS for the Raspberry Pi Pico 2 (RP2350) written in MicroPython. Key elements: Combines MS-DOS simplicity with Unix-like control (CLI). True KISS/Suckless architecture: New commands are just modular scripts added to /bin . Implements custom piping ( | ) and redirections ( > , >> ) by elegantly overriding native print() and input() in RAM. 👉 Test it online with the Wokwi simulator! (Note: The simulator is a bit slow due to the RP2350 emulation, but it runs blazing fast on real hardware!)...
|
1793314443.5000603
|
1793400843.5000603
|
|
9836
|
Untitled project by @maneth | Stardance
|
maneth
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @maneth | Stardance
|
1793231415.8995855
|
1793836215.8995855
|
|
9837
|
boomboomboom by @Sonlele | Stardance
|
Sonlele
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: boomboomboom by @Sonlele | Stardance
|
1793447640.102505
|
1794052440.102505
|
|
9838
|
MinecraftIDE by @Leon | Stardance
|
Leon
|
0
|
3.88
|
0
|
[]
|
[{"post_id": 26899, "ts": "202 [{"post_id": 26899, "ts": "2026-07-11T23:01:43Z", "hours": 2.3319, "text": "Exportinggggg so, thanks to chat, i now know how to make a working export command….and it only took like 2h to code myself…we are now able to export the print blocks to acctual python files…that can be runned on the users device (not ingame) andd ig the pic just shows the most important line…where it gets saved lol"}, {"post_id": 12444, "ts": "2026-06-20T09:39:30Z", "hours": 1.5481, "text": "SOOOOO we got a block and that block has an interface next up make an export command/block idc make it run? more python stuff eventually some hackatime :)"}]...
|
Title: MinecraftIDE by @Leon | Stardance
Devlogs: Title: MinecraftIDE by @Leon | Stardance
Devlogs:
SOOOOO we got a block and that block has an interface next up make an export command/block idc make it run? more python stuff eventually some hackatime :)
Exportinggggg so, thanks to chat, i now know how to make a working export command….and it only took like 2h to code myself…we are now able to export the print blocks to acctual python files…that can be runned on the users device (not ingame) andd ig the pic just shows the most important line…where it gets saved lol...
|
1793458383.493466
|
1794063183.493466
|
|
9839
|
My first slack bot! by @sjsjabahaaj | Stardance
|
sjsjabahaaj
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @sjsjabahaaj | Stard Title: My first slack bot! by @sjsjabahaaj | Stardance...
|
1792774447.5975747
|
1793379247.5975747
|
|
9840
|
Guessing Game by @black-shadow | Stardance
|
black-shadow
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Guessing Game by @black-shadow | Stardance
|
1793159750.3014498
|
1793764550.3014498
|
|
9841
|
[Miniaturised] Custom Server Rack by @qb | Stardan [Miniaturised] Custom Server Rack by @qb | Stardance...
|
qb
|
0
|
9.91
|
0
|
[]
|
[{"post_id": 65144, "ts": "202 [{"post_id": 65144, "ts": "2026-09-10T02:40:31Z", "hours": 0.25, "text": "added dram slots to the motherboard"}, {"post_id": 23415, "ts": "2026-07-06T11:11:38Z", "hours": 1.8344, "text": "qubixal memory technologies (qxmt) prints its first 3x downscaled DDR5 ECC RDIMM at 32GB capacity using 32Gb modules after some time thinking about it, i decided at this scale it was better to take the two piece locking mechanism design of a typical dimm slot to one piece (no reference intended). this was because of: easier printing, 2. easier to produce consistently 3. easier designing and it works! after about ~5 prototypes (i think?) the dram slot works. now i think the only thing left is to create the CPU latching mechanism. image: a rough diagram showing flaws (oh yeah first design also bent because of unstable base because the ram stick would push the unevenly extruded latching arms out)"}, {"post_id": 20465, "ts": "2026-07-02T01:52:17Z", "hours": 2.8836, "text": "notdev log #2 basically finished every major hardware component. worked on: fan exhaust system + mountable radiator adjusted sff->pci splitter board dimensions to fit added PSU adapter/expansion boards (-> 8pin pwr/24pin mobo) next step is to finalise DRAM attachment system on the motherboard."}, {"post_id": 11792, "ts": "2026-06-19T05:58:14Z", "hours": 4.9411, "text": "DRAM prices so bad that I’m building a server rack (in fusion) The goal is to build a full 4U server rack, scale it down and 3D print it. Then, print a full shelf of racks. Keep going and you get infinite compute. What I’ve done: Fully modelled GPU (design adapted from 5090/RTX Pro 6000), M.2 SSD, SFF and Network Adapter Cards, Power Supply Partially modelled Dual-CPU EATX Motherboard. Every part has been modelled by hand to reference materials. As the end result will be scaled down, many parts have been widened to accomodate that. Thank you for your support!"}]...
|
Title: [Miniaturised] Custom Server Rack by @qb | Title: [Miniaturised] Custom Server Rack by @qb | Stardance
Devlogs:
DRAM prices so bad that I’m building a server rack (in fusion) The goal is to build a full 4U server rack, scale it down and 3D print it. Then, print a full shelf of racks. Keep going and you get infinite compute. What I’ve done: Fully modelled GPU (design adapted from 5090/RTX Pro 6000), M.2 SSD, SFF and Network Adapter Cards, Power Supply Partially modelled Dual-CPU EATX Motherboard. Every part has been modelled by hand to reference materials. As the end result will be scaled down, many parts have been widened to accomodate that. Thank you for your support!
notdev log #2 basically finished every major hardware component. worked on: fan exhaust system + mountable radiator adjusted sff->pci splitter board dimensions to fit added PSU adapter/expansion boards (-> 8pin pwr/24pin mobo) next step is to finalise DRAM attachment system on the motherboard.
qubixal memory technologies (qxmt) prints its first 3x downscaled DDR5 ECC RDIMM at 32GB capacity using 32Gb modules after some time thinking about it, i decided at this scale it was better to take the two piece locking mechanism design of a typical dimm slot to one piece (no reference intended). this was because of: easier printing, 2. easier to produce consistently 3. easier designing and it works! after about ~5 prototypes (i think?) the dram slot works. now i think the only thing left is to create the CPU latching mechanism. image: a rough diagram showing flaws (oh yeah first design also bent because of unstable base because the ram stick would push the unevenly extruded latching arms out)
added dram slots to the motherboard...
|
1793422345.6462824
|
1794027145.6462824
|
|
9842
|
Peak Notes by @JohnAvery | Stardance
|
JohnAvery
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Peak Notes by @JohnAvery | Stardance
|
1792788815.3294985
|
1793393615.3294985
|
|
9843
|
A robotic arm by @Eatg | Stardance
|
Eatg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: A robotic arm by @Eatg | Stardance
|
1793231619.9714513
|
1793836419.9714513
|
|
9844
|
Untitled project by @Otoko | Stardance
|
Otoko
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @Otoko | Stardance
|
1793285251.2860556
|
1793890051.2860556
|
|
9845
|
My awesome macropad! by @bradleycolesperkins | Sta My awesome macropad! by @bradleycolesperkins | Stardance...
|
bradleycolesperkins
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @bradleycolesperkin Title: My awesome macropad! by @bradleycolesperkins | Stardance...
|
1793296510.0715888
|
1793901310.0715888
|
|
9846
|
My second macropad by @Gui | Stardance
|
Gui
|
0
|
9.02
|
0
|
[]
|
[{"post_id": 5234, "ts": "2026 [{"post_id": 5234, "ts": "2026-06-08T22:55:24Z", "hours": 0.945, "text": "Case is only mising the key holes but i can´t do it,it is hard im going to try again tomorow. maybe going to ask for soe help to . Timelapse( https://lapse.hackclub.com/timelapse/yhl0o4XrVmhZ )"}, {"post_id": 4477, "ts": "2026-06-07T20:07:31Z", "hours": 1.7039, "text": "i cant do the top case its not matching .im going to try to do it again tomorow timelapse( https://lapse.hackclub.com/timelapse/arwQ13iwsEbZ )"}, {"post_id": 4326, "ts": "2026-06-07T16:24:02Z", "hours": 2.6333, "text": "Just finished routing my pcb its berter now and also added all my 3d models to the components timelapse( https://lapse.hackclub.com/timelapse/Ode37PBzkRd7 )"}, {"post_id": 3907, "ts": "2026-06-07T00:43:03Z", "hours": 1.3278, "text": "routed the pcb but im not happy about it im going to watch some tutorials so its done by tomorow timelapse( https://lapse.hackclub.com/timelapse/cIRu_05Ip4OI )"}, {"post_id": 3716, "ts": "2026-06-06T19:25:12Z", "hours": 1.7964, "text": "making the pcb day1 I started by making the schematic. It was easy because I’ve done it in kicad before, and it’s looking great. Next, I’m doing the layout. timelapse( https://lapse.hackclub.com/timelapse/YsISPAZRD4t3 )"}, {"post_id": 3627, "ts": "2026-06-06T17:16:44Z", "hours": 0.6181, "text": "Just finished taking some mesurments from my first macropad . And also noted the bad parts about the last one ( you can see the time lapse in the link ( https://lapse.hackclub.com/timelapse/xRdUMDgxJqpD )"}]...
|
Title: My second macropad by @Gui | Stardance
Dev Title: My second macropad by @Gui | Stardance
Devlogs:
Just finished taking some mesurments from my first macropad . And also noted the bad parts about the last one ( you can see the time lapse in the link ( https://lapse.hackclub.com/timelapse/xRdUMDgxJqpD )
making the pcb day1 I started by making the schematic. It was easy because I’ve done it in kicad before, and it’s looking great. Next, I’m doing the layout. timelapse( https://lapse.hackclub.com/timelapse/YsISPAZRD4t3 )
routed the pcb but im not happy about it im going to watch some tutorials so its done by tomorow timelapse( https://lapse.hackclub.com/timelapse/cIRu_05Ip4OI )
Just finished routing my pcb its berter now and also added all my 3d models to the components timelapse( https://lapse.hackclub.com/timelapse/Ode37PBzkRd7 )
i cant do the top case its not matching .im going to try to do it again tomorow timelapse( https://lapse.hackclub.com/timelapse/arwQ13iwsEbZ )
Case is only mising the key holes but i can´t do it,it is hard im going to try again tomorow. maybe going to ask for soe help to . Timelapse( https://lapse.hackclub.com/timelapse/yhl0o4XrVmhZ )...
|
1793353741.0139542
|
1793958541.0139542
|
|
9847
|
Batman by @bathmeshbathmesh5 | Stardance
|
bathmeshbathmesh5
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Batman by @bathmeshbathmesh5 | Stardance
|
1793249761.5440433
|
1793854561.5440433
|
|
9848
|
pingrs by @sivaprakashkrp | Stardance
|
sivaprakashkrp
|
1
|
5.0
|
21
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-15T08:21:20Z", "hours": 5.0, "multiplier": 4.16, "payout": 21, "blessing": "neutral", "text": "I made a ping utility written in Rust. It provides coloured output with statistics about the packets sent and received. I first tried to use ICMP packets but it seems Rust requires elevated privileges for it. So I turned to UDP packets. But UDP packets had problems from the server side. So I checked for other cross-platform implementations of ping in Rust and found ping-rs crate. So I used it to send and receive ping packets. Around it, I wrote the core logic of the application. Then I formatted the output and gave it colours. pingrs also provides configurability for TTL, timeout and number of packets to send.", "repo": "https://github.com/sivaprakashkrp/pingrs", "demo": "https://github.com/sivaprakashkrp/pingrs/releases/latest"}]...
|
[{"post_id": 9119, "ts": "2026 [{"post_id": 9119, "ts": "2026-06-15T08:12:30Z", "hours": 2.0706, "text": "After trying to create an ICMP socket, a UDP socket, I decided it was time to try other crates that offered cross platform ICMP sockets. One such crate was ping-rs . I included it in the project to send ping requests and receive the replies. Then I wrote the logic for calculating the no. of packets that were sent, received and lost. Calculated the maximum, minimum and average RTT for the entire ping command. Then formatted the output and added colour to it. Wrote the README.md file. Published the application to cargo . You can try it out by cargo install pingrs . Created a GitHub release and ready to ship!!"}, {"post_id": 9080, "ts": "2026-06-15T05:27:43Z", "hours": 1.2558, "text": "Tried to implement UDP Sockets for Pinging the server with a Echo Request. By tracking the time needed for the response, I can find RTT. But issues in using UDP sockets from the server side. Also a problem arises when IPv6 is used instead of IPv4. So, back to square 1. Searching for other possible options."}, {"post_id": 6886, "ts": "2026-06-11T15:25:57Z", "hours": 1.7669, "text": "Created a Basic working of the ping command in Rust. Started with writing my own ICMP socket with the socket2 crate, but the implementation was primarily for Linux and didn’t work on Windows. For a more cross-platform option, I chose to use crates that could provide the functionality. One such crate was pinger . Used it to create the basic implementation that is shown in the picture."}]...
|
Title: pingrs by @sivaprakashkrp | Stardance
Devl Title: pingrs by @sivaprakashkrp | Stardance
Devlogs:
Created a Basic working of the ping command in Rust. Started with writing my own ICMP socket with the socket2 crate, but the implementation was primarily for Linux and didn’t work on Windows. For a more cross-platform option, I chose to use crates that could provide the functionality. One such crate was pinger . Used it to create the basic implementation that is shown in the picture.
Tried to implement UDP Sockets for Pinging the server with a Echo Request. By tracking the time needed for the response, I can find RTT. But issues in using UDP sockets from the server side. Also a problem arises when IPv6 is used instead of IPv4. So, back to square 1. Searching for other possible options.
After trying to create an ICMP socket, a UDP socket, I decided it was time to try other crates that offered cross platform ICMP sockets. One such crate was ping-rs . I included it in the project to send ping requests and receive the replies. Then I wrote the logic for calculating the no. of packets that were sent, received and lost. Calculated the maximum, minimum and average RTT for the entire ping command. Then formatted the output and added colour to it. Wrote the README.md file. Published the application to cargo . You can try it out by cargo install pingrs . Created a GitHub release and ready to ship!!
Ships:
I made a ping utility written in Rust. It provides coloured output with statistics about the packets sent and received. I first tried to use ICMP packets but it seems Rust requires elevated privileges for it. So I turned to UDP packets. But UDP packets had problems from the server side. So I checked for other cross-platform implementations of ping in Rust and found ping-rs crate. So I used it to send and receive ping packets. Around it, I wrote the core logic of the application. Then I formatted the output and gave it colours. pingrs also provides configurability for TTL, timeout and number of packets to send....
|
1793447730.2516572
|
1793534130.2516572
|
|
9849
|
Untitled by @StuartL | Stardance
|
StuartL
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @StuartL | Stardance
|
1792778062.0896022
|
1793382862.0896022
|
|
9850
|
Cadpad by @Alexx | Stardance
|
Alexx
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-10T20:33:42Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Finished the Cadpad! had to debug the code to get it working properly, and it works amazingly.", "repo": "https://github.com/xuealex2010-blip/hackpad-alex", "demo": ""}]...
|
[{"post_id": 78411, "ts": "202 [{"post_id": 78411, "ts": "2026-10-10T18:16:17Z", "hours": 3.7167, "text": "Built and created the Cadpad! After waiting for what felt like way too long for everything to arrive, I got everything and built the design. Soldering was a bit tricky, but I got it all done."}, {"post_id": 56798, "ts": "2026-08-28T18:30:00Z", "hours": 1.0333, "text": "QMK code finally compiled. Hopefully when I get to flashing it will work. I spent a lot of time sorting through the compiling errors that I was being given, many of which did not make sense, but seemed to resolve themselves when other issues were fixed. After a few hours, I was able to get the code set up for the encoders and special tap dance features compiled, and hopefully functional."}, {"post_id": 56227, "ts": "2026-08-27T22:00:10Z", "hours": 1.6878, "text": "QMK troubles: I began creating the code for the cadpad and hit my first issue when the output was a .hex file rather than the .uf2 needed, I figured out that this was due to the controller or bootloader not being supported by uf2. I tried to create a new one to set my own configuration. However, when I tried to compile it, I got a bunch of errors that I still haven’t solved (File errors such as missing keyboard name). I have also read much of the documentation to figure out how to implement tap dance, and encoders to make the most use out of the cadpad. While I am not done, progress is moving."}, {"post_id": 54800, "ts": "2026-08-25T22:38:14Z", "hours": 0.85, "text": "Starting QMK code, I have never used QMK before, and I was really confused when the guide to set it up was seemingly not working, turns out it just takes a long time. I’m still not sure exactly what I am doing, but I hope that trial and error and maybe a few tutorials will get me there in the end."}, {"post_id": 53897, "ts": "2026-08-24T16:27:39Z", "hours": 2.3206, "text": "Updating 3D models for the Cadpad, added a cool decal on the top, and fixed some errors that I had with the PCB, and collisions between the case. I had some trouble with KiCad exports causing some errors, but they ended up being non-critical. Also made sure that the PCB is very versatile, implementing a dual SMD and THT footprint so that if I want to learn how to solder some SMD components, I will have a great way to practice and get another cadpad! (Makes a great gift)"}, {"post_id": 53478, "ts": "2026-08-24T01:35:24Z", "hours": 3.35, "text": "Refining the 3D Models, I made a few revisions to the PCB earlier to ensure it fits the switches nicely, which required me to update the 3d models, I also took the time to refine them and get close to a final candidate. I also think that a great use for the rotary encoder for cad will be to implement it for arrow key navigation. Since its a dual layer numpad / macropad, using the knob for text navigation gives the Cadpad even more features!"}, {"post_id": 51968, "ts": "2026-08-21T23:17:23Z", "hours": 2.95, "text": "Learned a bit into KiCad footprint editing, my plan is to make a footprint that supports 2 major keyswitch types, Choc and MX style. The hope for this is to be able to not have the 5 PCBs in a typical MOQ to go to waste. So far it looks good, I had some trouble with the initial Choc footprint not lining up, as well as clearance under the SEEED XIAO, but a few tweaks were able to get me into CAD to see how the switches fit."}, {"post_id": 51362, "ts": "2026-08-20T23:51:51Z", "hours": 2.8833, "text": "Initial Planning: My first devblog, I am experimenting with ways to make the PCB more reliable, since I dont want the other 4 from the set of 5 to go to waste! I am not sure if this will eventually turn out into something usable, but willing to try."}]...
|
Title: Cadpad by @Alexx | Stardance
Devlogs:
Init Title: Cadpad by @Alexx | Stardance
Devlogs:
Initial Planning: My first devblog, I am experimenting with ways to make the PCB more reliable, since I dont want the other 4 from the set of 5 to go to waste! I am not sure if this will eventually turn out into something usable, but willing to try.
Learned a bit into KiCad footprint editing, my plan is to make a footprint that supports 2 major keyswitch types, Choc and MX style. The hope for this is to be able to not have the 5 PCBs in a typical MOQ to go to waste. So far it looks good, I had some trouble with the initial Choc footprint not lining up, as well as clearance under the SEEED XIAO, but a few tweaks were able to get me into CAD to see how the switches fit.
Refining the 3D Models, I made a few revisions to the PCB earlier to ensure it fits the switches nicely, which required me to update the 3d models, I also took the time to refine them and get close to a final candidate. I also think that a great use for the rotary encoder for cad will be to implement it for arrow key navigation. Since its a dual layer numpad / macropad, using the knob for text navigation gives the Cadpad even more features!
Updating 3D models for the Cadpad, added a cool decal on the top, and fixed some errors that I had with the PCB, and collisions between the case. I had some trouble with KiCad exports causing some errors, but they ended up being non-critical. Also made sure that the PCB is very versatile, implementing a dual SMD and THT footprint so that if I want to learn how to solder some SMD components, I will have a great way to practice and get another cadpad! (Makes a great gift)
Starting QMK code, I have never used QMK before, and I was really confused when the guide to set it up was seemingly not working, turns out it just takes a long time. I’m still not sure exactly what I am doing, but I hope that trial and error and maybe a few tutorials will get me there in the end.
QMK troubles: I began creating the code for the cadpad and hit my first issue when the output was a .hex file rather than the .uf2 needed, I figured out that this was due to the controller or bootloader not being supported by uf2. I tried to create a new one to set my own configuration. However, when I tried to compile it, I got a bunch of errors that I still haven’t solved (File errors such as missing keyboard name). I have also read much of the documentation to figure out how to implement tap dance, and encoders to make the most use out of the cadpad. While I am not done, progress is moving.
QMK code finally compiled. Hopefully when I get to flashing it will work. I spent a lot of time sorting through the compiling errors that I was being given, many of which did not make sense, but seemed to resolve themselves when other issues were fixed. After a few hours, I was able to get the code set up for the encoders and special tap dance features compiled, and hopefully functional.
Built and created the Cadpad! After waiting for what felt like way too long for everything to arrive, I got everything and built the design. Soldering was a bit tricky, but I got it all done.
Ships:
Finished the Cadpad! had to debug the code to get it working properly, and it works amazingly....
|
1793339507.8219001
|
1793425907.8219001
|