|
18952
|
Starslack by @valentine | Stardance
|
valentine
|
1
|
2.91
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T05:01:20Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple Slack app that shows random NWS alerts, flips coins, and shows random bunnies upon request.", "repo": "https://github.com/valbuildr/starslack", "demo": "https://hackclub.enterprise.slack.com/archives/C0BARAFQ9U5"}]...
|
[{"post_id": 9763, "ts": "2026 [{"post_id": 9763, "ts": "2026-06-16T06:11:49Z", "hours": 0.9069, "text": "I’ve added a help command to Starslack, showing all available commands and what they do. Starslack also now has a channel on the Hack Club Slack."}, {"post_id": 9715, "ts": "2026-06-16T04:13:28Z", "hours": 1.0219, "text": "Learning more about how Slack bots work as someone who’s worked on a Discord bot or few has been really interesting. Today I learned how to use blocks, buttons, modals and more. Making improvements to the random NWS alert command utilizing them makes me much more proud of it. (I also added a random bunny image command 🐇)"}, {"post_id": 9064, "ts": "2026-06-15T04:13:21Z", "hours": 0.9411, "text": "Figuring out what exactly to add to a project when I’m just learning about the tools is quite hard. It took me longer than I like to admit to come up with the seemingly random feature of just providing a random NWS alert."}]...
|
Title: Starslack by @valentine | Stardance
Devlog Title: Starslack by @valentine | Stardance
Devlogs:
Figuring out what exactly to add to a project when I’m just learning about the tools is quite hard. It took me longer than I like to admit to come up with the seemingly random feature of just providing a random NWS alert.
Learning more about how Slack bots work as someone who’s worked on a Discord bot or few has been really interesting. Today I learned how to use blocks, buttons, modals and more. Making improvements to the random NWS alert command utilizing them makes me much more proud of it. (I also added a random bunny image command 🐇)
I’ve added a help command to Starslack, showing all available commands and what they do. Starslack also now has a channel on the Hack Club Slack.
Ships:
I made a simple Slack app that shows random NWS alerts, flips coins, and shows random bunnies upon request....
|
1792972531.4270349
|
1793058931.4270349
|
|
15624
|
My awesome macropad! by @Rudraa | Stardance
|
Rudraa
|
1
|
9.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-17T03:40:59Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a 12 key macro pad with an 0.91 OLED display . the challenges i mostly faces was in the CAD softwere i have to made this model 4 times after i get corection and same goes for the PCB design IG I have changed my PCB design for 3-4 times also but this weas really funn i learned a lot !! now i have skills in CAD and PCB designes Now what this macro pad actually does? the first is its really looking cool with 12 keys and a small OLED display the top 9 keyes and bottom 2 left keyes are for layer 0 and when we press th bottom right key th macro pad shifted to the Layer 1 so i have 22 Keys indirectly and 1 Model key . This is main features of his and its minimilistic and when the shipment arrives i am going to hand pain the cherry blossomo tree on the Key board front penal that makes it way coool And i have used th AI for undertsnding and solving erroress in PCB and CAD models (In those mostly used You tube but still used the AI also as a tutor to guild me)and in the code i have also used AI . Thats itt its really cool , minimilistic , highly featured CherryPad. Looking fowerd to see that shipp Lets Goooo …", "repo": "https://github.com/Rudraa-25/cherryblossom-pad", "demo": ""}]...
|
[{"post_id": 9759, "ts": "2026 [{"post_id": 9759, "ts": "2026-06-16T06:02:04Z", "hours": 5.2725, "text": "Just complete my Macropad CAD designn Looking forward to write its Firmwere ASAP ,……. Letss Goo also if you found any mistackes or problrms in this Pls. LMK 😄😅"}, {"post_id": 7497, "ts": "2026-06-12T14:37:47Z", "hours": 2.0078, "text": "Routingss are completedd Letss Goo!!"}, {"post_id": 7290, "ts": "2026-06-12T04:47:23Z", "hours": 1.7939, "text": "Doing PCB Routing for my Macropad"}]...
|
Title: My awesome macropad! by @Rudraa | Stardance Title: My awesome macropad! by @Rudraa | Stardance
Devlogs:
Doing PCB Routing for my Macropad
Routingss are completedd Letss Goo!!
Just complete my Macropad CAD designn Looking forward to write its Firmwere ASAP ,……. Letss Goo also if you found any mistackes or problrms in this Pls. LMK 😄😅
Ships:
I made a 12 key macro pad with an 0.91 OLED display . the challenges i mostly faces was in the CAD softwere i have to made this model 4 times after i get corection and same goes for the PCB design IG I have changed my PCB design for 3-4 times also but this weas really funn i learned a lot !! now i have skills in CAD and PCB designes Now what this macro pad actually does? the first is its really looking cool with 12 keys and a small OLED display the top 9 keyes and bottom 2 left keyes are for layer 0 and when we press th bottom right key th macro pad shifted to the Layer 1 so i have 22 Keys indirectly and 1 Model key . This is main features of his and its minimilistic and when the shipment arrives i am going to hand pain the cherry blossomo tree on the Key board front penal that makes it way coool And i have used th AI for undertsnding and solving erroress in PCB and CAD models (In those mostly used You tube but still used the AI also as a tutor to guild me)and in the code i have also used AI . Thats itt its really cool , minimilistic , highly featured CherryPad. Looking fowerd to see that shipp Lets Goooo …...
|
1792969006.21008
|
1793055406.21008
|
|
3922
|
cosnap by @youngzheimer | Stardance
|
youngzheimer
|
0
|
9.55
|
0
|
[]
|
[{"post_id": 9749, "ts": "2026 [{"post_id": 9749, "ts": "2026-06-16T05:26:32Z", "hours": 4.7889, "text": "many things login&signup page design fixed session logic a bit many thing with event"}, {"post_id": 4755, "ts": "2026-06-08T06:29:59Z", "hours": 2.2228, "text": "made signup & login & session w/ JWT and RTR"}, {"post_id": 821, "ts": "2026-06-02T14:36:52Z", "hours": 1.7575, "text": "making form from json schema"}, {"post_id": 594, "ts": "2026-06-02T02:45:58Z", "hours": 0.7789, "text": "example DB values for testing"}]...
|
Title: cosnap by @youngzheimer | Stardance
Devlog Title: cosnap by @youngzheimer | Stardance
Devlogs:
example DB values for testing
making form from json schema
made signup & login & session w/ JWT and RTR
many things login&signup page design fixed session logic a bit many thing with event...
|
1792803281.214417
|
1793408081.214417
|
|
19662
|
Calculator by @smjp | Stardance
|
smjp
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-25T06:54:08Z", "hours": 0.0, "multiplier": 1.25, "payout": 0, "blessing": "neutral", "text": "I made a calculator project! Its very simple and one of the basic things you make while learning javascript but the biggest thing i learnt at that time was DOM. Right now, I am working on a really big project, this project was 2 weeks ago!", "repo": "https://github.com/Spirit62/Calculator", "demo": "https://spirit62.github.io/Calculator/"}]...
|
[{"post_id": 9745, "ts": "2026 [{"post_id": 9745, "ts": "2026-06-16T05:16:15Z", "hours": 0.4072, "text": "I built a sleek, dark-themed calculator web application featuring a modern minimalist button grid and real-time computation logic after practicing more of my JavaScript fundamentals. Currently, the most challenging part was managing the calculation state, updating the UI display dynamically with each button click, and ensuring operators stringed together correctly in the background, especially since I’m still quite new to web development. However, now it looks really sharp with its smooth rounded buttons and vibrant orange accent colors, and even if it’s a straightforward project, I hope you guys do give it a good spin at least once and maybe suggest some improvements!"}]...
|
Title: Calculator by @smjp | Stardance
Devlogs:
I Title: Calculator by @smjp | Stardance
Devlogs:
I built a sleek, dark-themed calculator web application featuring a modern minimalist button grid and real-time computation logic after practicing more of my JavaScript fundamentals. Currently, the most challenging part was managing the calculation state, updating the UI display dynamically with each button click, and ensuring operators stringed together correctly in the background, especially since I’m still quite new to web development. However, now it looks really sharp with its smooth rounded buttons and vibrant orange accent colors, and even if it’s a straightforward project, I hope you guys do give it a good spin at least once and maybe suggest some improvements!
Ships:
I made a calculator project! Its very simple and one of the basic things you make while learning javascript but the biggest thing i learnt at that time was DOM. Right now, I am working on a really big project, this project was 2 weeks ago!...
|
1792997800.05183
|
1793084200.05183
|
|
7330
|
My first slack bot! by @Rivaan | Stardance
|
Rivaan
|
1
|
6.34
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-07T08:17:08Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built SlackyBOT , an open-source AI-powered Slack assistant using Node.js, Slack Bolt, and Google Gemini AI. The bot supports multiple features including: Gemini AI chat ( /hbsc-gemini ) Weather reports ( /hbsc-weather ) Calculator commands Memes, jokes, and fun facts Coin flips Help and utility commands The most challenging part was integrating multiple APIs and debugging Slack permissions, payload handling, and external service responses. I also learned how to work with geocoding APIs since weather services require coordinates instead of city names. I’m most proud of successfully deploying the bot on Hack Club Nest and making it available for public testing through a live Slack workspace. How to Test Click Try Project . Join the demo Slack workspace. Open the #slackybot-demo-stardance channel. Run: /hbsc-help /hbsc-gemini explain recursion /hbsc-weather london /hbsc-meme The project includes a public GitHub repository, documentation, website, and a live deployment on NEST that remains online 24/7 for testing.", "repo": "https://github.com/Abhiudaymaurya/Slack-Bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BQZDSTC4S"}]...
|
[{"post_id": 9741, "ts": "2026 [{"post_id": 9741, "ts": "2026-06-16T05:09:17Z", "hours": 1.3353, "text": "Final Update Upgraded the Slack bot according to the reviewer’s comments. Deleted the AI capabilities from the bot, and edited the README accordingly for the updated version of the project. Some additional minor changes have been done in the code as well."}, {"post_id": 4064, "ts": "2026-06-07T07:45:17Z", "hours": 1.9183, "text": "🤖 SlackyBOT — Project Complete After several iterations, SlackyBOT is now fully functional, deployed, and available for public testing. SlackyBOT is an open-source Slack assistant built with Node.js, Slack Bolt, and Google Gemini API. The bot combines AI assistance, weather reports, utility tools, calculators, and entertainment features directly inside Slack. ✅ Implemented Features /hbsc-help /hbsc-ping /hbsc-sum /hbsc-minus /hbsc-multiply /hbsc-divide /hbsc-joke /hbsc-funfact /hbsc-meme /hbsc-coinflip /hbsc-weather <city> /hbsc-gemini <question> 🛠 What I Built Google Gemini AI integration Real-time weather reports with geocoding Calculator utilities Meme, joke, and fun fact commands Slash command handling with Slack Bolt Public demo workspace Project website and documentation Deployment on Hack Club Nest 📚 What I Learned This project taught me much more than Slack bot development. Building backend applications with Node.js Working with multiple external APIs Debugging production issues Environment variable management Slack permissions and app configuration Error handling and API validation Deploying and maintaining a live service One of the most interesting challenges was the weather system. Since weather APIs typically require coordinates rather than city names, I implemented geocoding to convert user input into usable location data before fetching forecasts. 🌐 Live Demo & Testing A public demo workspace is available for testing SlackyBOT. Demo Website https://abhiudaymaurya.github.io/Slack-Bot/ How to Test Open the demo website. Click Join Demo Workspace . Join the Slack workspace using your Slack account. Open the #slackybot-demo-stardance channel. Try the available slash commands. SlackyBOT is deployed on Hack Club Nest and remains online for public testing. The project includes: Public GitHub repository Documentation and setup instructions Demo website Public Slack workspace for testing 🎯 Final Result What started as a simple experiment with Slack slash commands evolved into a complete AI-powered Slack assistant with multiple integrations, public deployment, and real users able to test it. Building SlackyBOT gave me valuable experience with APIs, backend development, debugging, deployment, and designing software that people can interact with directly inside Slack. 🚀 Ready for review and public testing."}, {"post_id": 3378, "ts": "2026-06-06T08:39:59Z", "hours": 1.6344, "text": "🤖 SlackyBOT Progress Update Today was a big milestone for SlackyBOT. What started as a simple Slack bot now supports calculator commands, fun commands, weather lookups, and Google Gemini AI. ✅ Features Completed /hbsc-help /hbsc-ping /hbsc-sum /hbsc-minus /hbsc-multiply /hbsc-divide /hbsc-joke /hbsc-funfact /hbsc-meme /hbsc-coinflip /hbsc-weather <city> /hbsc-gemini <question> 🛠 What I Learned Building slash commands with Slack Bolt Working with external APIs Managing environment variables and permissions Debugging API responses and payload issues Using geocoding APIs for weather lookups Integrating Google Gemini AI into Slack 🌤 Biggest Challenge The weather command was more challenging than I expected. Most weather APIs require latitude and longitude instead of a city name, so I added geocoding to convert user input into coordinates before requesting weather data. 🚀 Current Progress Gemini AI integration complete Weather command complete Fun commands complete Calculator commands complete Documentation complete Demo workspace available Public website available 🎯 Next Step Deploy SlackyBOT on Hack Club Nest so it can stay online 24/7 and be tested without running it locally. This project has been a great way to learn more about APIs, backend development, debugging, and building tools that people can use directly inside Slack."}, {"post_id": 2654, "ts": "2026-06-05T10:06:58Z", "hours": 0.7667, "text": "🤖 Gemini AI Integration Complete I just integrated Google Gemini AI into SlackyBOT. Now users can ask questions right from Slack. Get answers generated by AI. It was tougher than I thought to get this feature working. I faced issues with API configuration, accessing models, Slack permissions and a few bugs in my code.. After checking logs and documentation I got it working. ✅ Available Commands /hbsc-help /hbsc-ping /hbsc-joke /hbsc-sum /hbsc-gemini <question> 🎬 Gemini AI Demo 🛠 What I Learned Handling commands with Slack Bolt Integrating Google Gemini API Managing environment variables Debugging. Handling errors Configuring Slack. App settings 🎯 Next Steps I plan to deploy SlackyBOT on Hack Club Nest. This way it can stay online all the time. Be accessible, without needing to run locally. Credits Gemini Documentation Slack Documentation StarDance Beginner Guide"}, {"post_id": 2574, "ts": "2026-06-05T04:43:23Z", "hours": 0.5281, "text": "🤖 First Step in Building SlackyBOT Today I started building my own Slack bot and learned how Slack apps and slash commands work. After setting up Slack Bolt and reading through the documentation, I got my first commands working: /hbsc-ping /hbsc-help /hbsc-joke The joke command fetches jokes from an external API and sends them directly to Slack. ✅ What I Built Created the Slack app Set up Slack Bolt Added slash command handling Implemented a ping command Implemented a help command Implemented a joke command using an external API 🛠 What I Learned How Slack slash commands work How to process user commands in the backend Slack Bolt fundamentals Making API requests from a Slack bot 🎯 Next Steps Add calculator commands Integrate Gemini AI Add weather commands Deploy the bot for testing A small step, but SlackyBOT is finally taking shape. 🚀"}]...
|
Title: My first slack bot! by @Rivaan | Stardance
Title: My first slack bot! by @Rivaan | Stardance
Devlogs:
🤖 First Step in Building SlackyBOT Today I started building my own Slack bot and learned how Slack apps and slash commands work. After setting up Slack Bolt and reading through the documentation, I got my first commands working: /hbsc-ping /hbsc-help /hbsc-joke The joke command fetches jokes from an external API and sends them directly to Slack. ✅ What I Built Created the Slack app Set up Slack Bolt Added slash command handling Implemented a ping command Implemented a help command Implemented a joke command using an external API 🛠 What I Learned How Slack slash commands work How to process user commands in the backend Slack Bolt fundamentals Making API requests from a Slack bot 🎯 Next Steps Add calculator commands Integrate Gemini AI Add weather commands Deploy the bot for testing A small step, but SlackyBOT is finally taking shape. 🚀
🤖 Gemini AI Integration Complete I just integrated Google Gemini AI into SlackyBOT. Now users can ask questions right from Slack. Get answers generated by AI. It was tougher than I thought to get this feature working. I faced issues with API configuration, accessing models, Slack permissions and a few bugs in my code.. After checking logs and documentation I got it working. ✅ Available Commands /hbsc-help /hbsc-ping /hbsc-joke /hbsc-sum /hbsc-gemini <question> 🎬 Gemini AI Demo 🛠 What I Learned Handling commands with Slack Bolt Integrating Google Gemini API Managing environment variables Debugging. Handling errors Configuring Slack. App settings 🎯 Next Steps I plan to deploy SlackyBOT on Hack Club Nest. This way it can stay online all the time. Be accessible, without needing to run locally. Credits Gemini Documentation Slack Documentation StarDance Beginner Guide
🤖 SlackyBOT Progress Update Today was a big milestone for SlackyBOT. What started as a simple Slack bot now supports calculator commands, fun commands, weather lookups, and Google Gemini AI. ✅ Features Completed /hbsc-help /hbsc-ping /hbsc-sum /hbsc-minus /hbsc-multiply /hbsc-divide /hbsc-joke /hbsc-funfact /hbsc-meme /hbsc-coinflip /hbsc-weather <city> /hbsc-gemini <question> 🛠 What I Learned Building slash commands with Slack Bolt Working with external APIs Managing environment variables and permissions Debugging API responses and payload issues Using geocoding APIs for weather lookups Integrating Google Gemini AI into Slack 🌤 Biggest Challenge The weather command was more challenging than I expected. Most weather APIs require latitude and longitude instead of a city name, so I added geocoding to convert user input into coordinates before requesting weather data. 🚀 Current Progress Gemini AI integration complete Weather command complete Fun commands complete Calculator commands complete Documentation complete Demo workspace available Public website available 🎯 Next Step Deploy SlackyBOT on Hack Club Nest so it can stay online 24/7 and be tested without running it locally. This project has been a great way to learn more about APIs, backend development, debugging, and building tools that people can use directly inside Slack.
🤖 SlackyBOT — Project Complete After several iterations, SlackyBOT is now fully functional, deployed, and available for public testing. SlackyBOT is an open-source Slack assistant built with Node.js, Slack Bolt, and Google Gemini API. The bot combines AI assistance, weather reports, utility tools, calculators, and entertainment features directly inside Slack. ✅ Implemented Features /hbsc-help /hbsc-ping /hbsc-sum /hbsc-minus /hbsc-multiply /hbsc-divide /hbsc-joke /hbsc-funfact /hbsc-meme /hbsc-coinflip /hbsc-weather <city> /hbsc-gemini <question> 🛠 What I Built Google Gemini AI integration Real-time weather reports with geocoding Calculator utilities Meme, joke, and fun fact commands Slash command handling with Slack Bolt Public demo workspace Project website and documentation Deployment on Hack Club Nest 📚 What I Learned This project taught me much more than Slack bot development. Building backend applications with Node.js Working with multiple external APIs Debugging production issues Environment variable management Slack permissions and app configuration Error handling and API validation Deploying and maintaining a live service One of the most interesting challenges was the weather system. Since weather APIs typically require coordinates rather than city names, I implemented geocoding to convert user input into usable location data before fetching forecasts. 🌐 Live Demo & Testing A public demo workspace is available for testing SlackyBOT. Demo Website https://abhiudaymaurya.github.io/Slack-Bot/ How to Test Open the demo website. Click Join Demo Workspace . Join the Slack workspace using your Slack account. Open the #slackybot-demo-stardance channel. Try the available slash commands. SlackyBOT is deployed on Hack Club Nest and remains online for public testing. The project includes: Public GitHub repository Documentation and setup instructions Demo website Public Slack workspace for testing 🎯 Final Result What started as a simple experiment with Slack slash commands evolved into a complete AI-powered Slack assistant with multiple integrations, public deployment, and real users able to test it. Building SlackyBOT gave me valuable experience with APIs, backend development, debugging, deployment, and designing software that people can interact with directly inside Slack. 🚀 Ready for review and public testing.
Final Update Upgraded the Slack bot according to the reviewer’s comments. Deleted the AI capabilities from the bot, and edited the README accordingly for the updated version of the project. Some additional minor changes have been done in the code as well.
Ships:
I built SlackyBOT , an open-source AI-powered Slack assistant using Node.js, Slack Bolt, and Google Gemini AI. The bot supports multiple features including: Gemini AI chat ( /hbsc-gemini ) Weather reports ( /hbsc-weather ) Calculator commands Memes, jokes, and fun facts Coin flips Help and utility commands The most challenging part was integrating multiple APIs and debugging Slack permissions, payload handling, and external service responses. I also learned how to work with geocoding APIs since weather services require coordinates instead of city names. I’m most proud of successfully deploying the bot on Hack Club Nest and making it available for public testing through a live Slack workspace. How to Test Click Try Project . Join the demo Slack workspace. Open the #slackybot-demo-stardance channel. Run: /hbsc-help /hbsc-gemini explain recursion /hbsc-weather london /hbsc-meme The project includes a public GitHub repository, documentation, website, and a live deployment on NEST that remains online 24/7 for testing....
|
1792979432.6429424
|
1793065832.6429424
|
|
13901
|
Smart Earth/Sky Monitor by @Diego | Stardance
|
Diego
|
0
|
3.87
|
0
|
[]
|
[{"post_id": 9738, "ts": "2026 [{"post_id": 9738, "ts": "2026-06-16T05:07:20Z", "hours": 0.8217, "text": "Today I spent a lot of time reorganizing things. I took my anomaly_detection.py file, and removed it from the scheduler. This was because the scheduler.py file ran this and the ml_models.py time every hour on the hour. So instead I added the anomaly_detection.py file to the ml_models.py, so now it runs that, and then the scheduler runs the models file, which then runs the anomaly detection file, so its all in one complete loop: every hour: scheduler -> ml models -> anomaly detection Because of this change I was able to add the anomaly detection (Isolation Forest algorithm) as a feature for all the models I was training: the random forest alg, neural network, and linear regression model."}, {"post_id": 7323, "ts": "2026-06-12T06:18:24Z", "hours": 1.8372, "text": "Wow well today was a lot of work. Today I added some more models to my ml_models.py file, but more importantly I changed the logs on it. Then I serialized the models to the disk. After that I redid the QuickChecks.R file because I realized I was struggling to be able to view each dataset to see what data I was collecting and how I was doing. Then I saved the model performance metrics and was able to view them. A lot of busy work today."}, {"post_id": 5423, "ts": "2026-06-09T05:54:01Z", "hours": 1.2083, "text": "Today I worked on adding a Random Forest Classifier to my list of prediction models being run by this python script to test if I can predict if a earthquake will be over or under 5.0 magnitude."}]...
|
Title: Smart Earth/Sky Monitor by @Diego | Stardan Title: Smart Earth/Sky Monitor by @Diego | Stardance
Devlogs:
Today I worked on adding a Random Forest Classifier to my list of prediction models being run by this python script to test if I can predict if a earthquake will be over or under 5.0 magnitude.
Wow well today was a lot of work. Today I added some more models to my ml_models.py file, but more importantly I changed the logs on it. Then I serialized the models to the disk. After that I redid the QuickChecks.R file because I realized I was struggling to be able to view each dataset to see what data I was collecting and how I was doing. Then I saved the model performance metrics and was able to view them. A lot of busy work today.
Today I spent a lot of time reorganizing things. I took my anomaly_detection.py file, and removed it from the scheduler. This was because the scheduler.py file ran this and the ml_models.py time every hour on the hour. So instead I added the anomaly_detection.py file to the ml_models.py, so now it runs that, and then the scheduler runs the models file, which then runs the anomaly detection file, so its all in one complete loop: every hour: scheduler -> ml models -> anomaly detection Because of this change I was able to add the anomaly detection (Isolation Forest algorithm) as a feature for all the models I was training: the random forest alg, neural network, and linear regression model....
|
1792727675.787469
|
1793332475.787469
|
|
5752
|
MarketSim-AI by @Diego | Stardance
|
Diego
|
0
|
3.13
|
0
|
[]
|
[{"post_id": 9736, "ts": "2026 [{"post_id": 9736, "ts": "2026-06-16T05:03:46Z", "hours": 0.43, "text": "day whatever Building the Market Simulation Clock Today I implemented two core pieces of the MarketSim AI simulation engine: step() and get_history() . The biggest challenge in this project is preventing future data leakage. The trading agent must only see information that would have been available on the current simulated date. To support this, I created a trading calendar system based on historical SPY market data. Instead of manually adding one day at a time (which would break on weekends and holidays), the simulator follows actual market trading days. The new step() method advances the simulation exactly one trading day forward by moving through this calendar. I also implemented get_history() , which acts as a security layer between the agent and the raw market data. When historical data is requested, the method filters the dataset to include only dates up to the current simulation date before returning the requested lookback window. This ensures the agent can never accidentally access future information. Example: history = env . get_history ( \" AAPL \" , lookback_days = 30 ) returns only the previous 30 trading days that existed at that point in time. Along the way I added unit tests to verify: Environment creation Trading-day advancement with step() Historical data retrieval Prevention of future-date access Current project status: ✅ Data download pipeline ✅ Data cleaning pipeline ✅ DataLoader ✅ MarketEnvironment ✅ Trading calendar system ✅ step() simulation advancement ✅ get_history() future-leakage protection ✅ 7 passing tests The simulator can now move through history one trading day at a time while enforcing realistic information constraints—the foundation needed for future trading agents."}, {"post_id": 7325, "ts": "2026-06-12T06:25:15Z", "hours": 0.8553, "text": "Today I worked on various things. I worked on the data loader python file. Ensuring that all the tickers were clean, and processed and then loaded. Then I worked on the market environment python file. This is arguably the most important file because I need to make sure that no future data can be seen by it. After that, I created tests for both the data loader, and the market environment to make sure I am writing production quality code."}, {"post_id": 5981, "ts": "2026-06-10T01:08:06Z", "hours": 0.8575, "text": "Today I spent the majority of my time loading my data. This means downloading the raw data from Yahoo Finance. Then I realized it came in a format I didn’t want. So as you can see below, I spent some time cleaning it up."}, {"post_id": 5424, "ts": "2026-06-09T05:55:58Z", "hours": 0.9831, "text": "Today I spent a lot of time working on organizing all my files and getting the correct architecture structure set up. Very boring indeed."}]...
|
Title: MarketSim-AI by @Diego | Stardance
Devlogs Title: MarketSim-AI by @Diego | Stardance
Devlogs:
Today I spent a lot of time working on organizing all my files and getting the correct architecture structure set up. Very boring indeed.
Today I spent the majority of my time loading my data. This means downloading the raw data from Yahoo Finance. Then I realized it came in a format I didn’t want. So as you can see below, I spent some time cleaning it up.
Today I worked on various things. I worked on the data loader python file. Ensuring that all the tickers were clean, and processed and then loaded. Then I worked on the market environment python file. This is arguably the most important file because I need to make sure that no future data can be seen by it. After that, I created tests for both the data loader, and the market environment to make sure I am writing production quality code.
day whatever Building the Market Simulation Clock Today I implemented two core pieces of the MarketSim AI simulation engine: step() and get_history() . The biggest challenge in this project is preventing future data leakage. The trading agent must only see information that would have been available on the current simulated date. To support this, I created a trading calendar system based on historical SPY market data. Instead of manually adding one day at a time (which would break on weekends and holidays), the simulator follows actual market trading days. The new step() method advances the simulation exactly one trading day forward by moving through this calendar. I also implemented get_history() , which acts as a security layer between the agent and the raw market data. When historical data is requested, the method filters the dataset to include only dates up to the current simulation date before returning the requested lookback window. This ensures the agent can never accidentally access future information. Example: history = env . get_history ( " AAPL " , lookback_days = 30 ) returns only the previous 30 trading days that existed at that point in time. Along the way I added unit tests to verify: Environment creation Trading-day advancement with step() Historical data retrieval Prevention of future-date access Current project status: ✅ Data download pipeline ✅ Data cleaning pipeline ✅ DataLoader ✅ MarketEnvironment ✅ Trading calendar system ✅ step() simulation advancement ✅ get_history() future-leakage protection ✅ 7 passing tests The simulator can now move through history one trading day at a time while enforcing realistic information constraints—the foundation needed for future trading agents....
|
1792742122.1877778
|
1793346922.1877778
|
|
17029
|
Pronoun Palace Music Player by @xanderath | Starda Pronoun Palace Music Player by @xanderath | Stardance...
|
xanderath
|
1
|
3.0
|
20
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T05:02:13Z", "hours": 3.0, "multiplier": 5.8, "payout": 20, "blessing": "neutral", "text": "As this was one of the first mods made for this game, I had to learn how the game works and how to make my mod load.", "repo": "https://github.com/Emarald64/music_player", "demo": "https://youtu.be/Y2NHza-pziE"}]...
|
[{"post_id": 9729, "ts": "2026 [{"post_id": 9729, "ts": "2026-06-16T04:50:45Z", "hours": 0.4364, "text": "added proper sprites for the cassette"}, {"post_id": 8417, "ts": "2026-06-14T00:03:20Z", "hours": 0.5031, "text": "Added animations to buttons and sound effects for clicks and the cassette flip"}, {"post_id": 8320, "ts": "2026-06-13T20:42:24Z", "hours": 2.4183, "text": "added title screen button, cassette player sprite, and music playing logic. Also made the regular songs play on side A and the the shadow songs on side B"}]...
|
Title: Pronoun Palace Music Player by @xanderath | Title: Pronoun Palace Music Player by @xanderath | Stardance
Devlogs:
added title screen button, cassette player sprite, and music playing logic. Also made the regular songs play on side A and the the shadow songs on side B
Added animations to buttons and sound effects for clicks and the cassette flip
added proper sprites for the cassette
Ships:
As this was one of the first mods made for this game, I had to learn how the game works and how to make my mod load....
|
1792983343.1571708
|
1793069743.1571708
|
|
19610
|
AI debate by @suryanshmishra_e | Stardance
|
suryanshmishra_e
|
0
|
0.41
|
0
|
[]
|
[{"post_id": 9724, "ts": "2026 [{"post_id": 9724, "ts": "2026-06-16T04:38:43Z", "hours": 0.4147, "text": "I am working on making my portfolio where i ca showcase all my work,, Currently in progress"}]...
|
Title: AI debate by @suryanshmishra_e | Stardance
Title: AI debate by @suryanshmishra_e | Stardance
Devlogs:
I am working on making my portfolio where i ca showcase all my work,, Currently in progress...
|
1792774428.5276592
|
1793379228.5276592
|
|
19119
|
BrawlBoard by @Maskaphobia | Stardance
|
Maskaphobia
|
0
|
1.88
|
0
|
[]
|
[{"post_id": 9721, "ts": "2026 [{"post_id": 9721, "ts": "2026-06-16T04:27:49Z", "hours": 0.7286, "text": "Updated the UI + added a potential API"}, {"post_id": 9184, "ts": "2026-06-15T12:38:43Z", "hours": 1.1547, "text": "First Devlog: Those who play Brawl Stars, feel free to give me your comments :) If you are an experienced player like me, you may feel a point where Brawl Stars lacks some interactiveness. Therefore, I created a vision where the Battlecard feature in the game links to a separate website, sparking a community where aesthetics and personality may triumph over the usual gaming. Progress: Created the skeleton of the website Next step: Improve card form/UI"}]...
|
Title: BrawlBoard by @Maskaphobia | Stardance
Dev Title: BrawlBoard by @Maskaphobia | Stardance
Devlogs:
First Devlog: Those who play Brawl Stars, feel free to give me your comments :) If you are an experienced player like me, you may feel a point where Brawl Stars lacks some interactiveness. Therefore, I created a vision where the Battlecard feature in the game links to a separate website, sparking a community where aesthetics and personality may triumph over the usual gaming. Progress: Created the skeleton of the website Next step: Improve card form/UI
Updated the UI + added a potential API...
|
1792608835.6318843
|
1793213635.6318843
|
|
7758
|
the rude slack bot by @shivank | Stardance
|
shivank
|
1
|
16.44
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-05T10:13:26Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Slack, but which can respond to you. You can make your good mood into something different. It’s response. Can be anywhere from funny to annoying. Good luck.", "repo": "https://github.com/ShivankVibes/rude-slack-bot-tempilate", "demo": "https://hackclub.enterprise.slack.com/archives/D0B8KPXM3HP"}]...
|
[{"post_id": 9720, "ts": "2026 [{"post_id": 9720, "ts": "2026-06-16T04:23:58Z", "hours": 15.4383, "text": "Added fall backs in case of the Gemini reply failing and added Easter eggs"}, {"post_id": 2657, "ts": "2026-06-05T10:12:20Z", "hours": 0.3508, "text": "a rude slack bot, how is the poster?"}, {"post_id": 2649, "ts": "2026-06-05T09:45:01Z", "hours": 0.9972, "text": "the “kindest” slack bot on earth"}]...
|
Title: the rude slack bot by @shivank | Stardance
Title: the rude slack bot by @shivank | Stardance
Devlogs:
the “kindest” slack bot on earth
a rude slack bot, how is the poster?
Added fall backs in case of the Gemini reply failing and added Easter eggs
Ships:
I made a Slack, but which can respond to you. You can make your good mood into something different. It’s response. Can be anywhere from funny to annoying. Good luck....
|
1792975802.6669016
|
1793062202.6669016
|
|
506
|
Animorphs Book 1 VN by @AJ | Stardance
|
AJ
|
0
|
0.42
|
0
|
[]
|
[{"post_id": 97, "ts": "2026-0 [{"post_id": 97, "ts": "2026-05-31T18:25:17Z", "hours": 0.4225, "text": "Voices for the main characters in the story. I had sound bites from my last game, but created a new voice for Jake, as I thought none of the ones I made already fit him well. I’m happy with how they sound so far!"}]...
|
Title: Animorphs Book 1 VN by @AJ | Stardance
Dev Title: Animorphs Book 1 VN by @AJ | Stardance
Devlogs:
Voices for the main characters in the story. I had sound bites from my last game, but created a new voice for Jake, as I thought none of the ones I made already fit him well. I’m happy with how they sound so far!...
|
1792550846.589516
|
1793155646.589516
|
|
14785
|
ManhwaOS by @ElliotsLittleWave | Stardance
|
ElliotsLittleWave
|
1
|
11.0
|
79
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T05:18:46Z", "hours": 11.0, "multiplier": 7.24, "payout": 79, "blessing": "neutral", "text": "i made a manhwaOS for all novel and manhwa users to use and save timee. Currently its at the beta stage so most of the actual TIME SAVERS are being added on webOS2 since if i add it rn i maaayyy just have no more ideas for WEBOS2 The most challenging was the design. I actually tried drawing hahahhaah to no avail :( welp atleast it looks okay now since i added leaves and godrays", "repo": "https://github.com/Maxwell7779/ManhwaOS", "demo": "https://manhwa-os.vercel.app/"}]...
|
[{"post_id": 9680, "ts": "2026 [{"post_id": 9680, "ts": "2026-06-16T02:56:09Z", "hours": 0.3944, "text": "LAST LAST DEVLOG#idk THANK YOU FOR EVERYTHINGG this is my first ever project and im so happy and proud that it was shipped HERE IN STARDAANCEEE~!! BYE BYEEE"}, {"post_id": 9133, "ts": "2026-06-15T09:00:10Z", "hours": 0.4122, "text": "LAST DEVLOG #8 FINISHED LAST GOAL AND WILL SHIP added it where when you drag a window over another it prioritzes the window youre dragging and obscues the other windooww will be pushing then submitting BYE YALL"}, {"post_id": 9116, "ts": "2026-06-15T08:04:23Z", "hours": 1.7992, "text": "Devlog#7 ADDED FALLING LEAVES AND GODRAYYSSS!!! i thought what would make it look better? ITS LEAAAVESSS however the main challenge was making it look the same on mobile. I WAS GENUINELY STUCK FOR AN HOUR on making the god rays on mobile not stick to the top while making it look the same on desktop and found : isMobile - i added these to change stuff on mobile aka the responsiveness and all while keeping the desktop UI the same as before!! next devlog ill be making the obscurity of windows change when overlapping to enhance readibility and user-friendliness BYEEE"}, {"post_id": 8775, "ts": "2026-06-14T16:12:42Z", "hours": 2.9244, "text": "DEVLOG#6 possibly last devlog now IMPROVED APP AESTHETIC. Andd YOU CAN NOW DRAG ON MOBILE also improved mobile responsiveness for my mobile viewers to rate highlyy. ALSO finally made it look good, and work across all zoom sizes both mobile and pc YEHEYY hope yall rate this highlyy bye byee"}, {"post_id": 8145, "ts": "2026-06-13T16:14:19Z", "hours": 1.8044, "text": "DEVLOG #5 ADDED A VISITOR COUNTER!! sooo what did i do? i ADVERTISED IT ON REDITT AND DC BTWW i did this and took 2 hours just to leave a good impression on you viewers so plsss rate it highly hehehe THANKSS!! BTW i use supabase for the database and getting the VISITOR COUNT it took me so long its so tricky with the sql editor and stuff BUT I DID ITT"}, {"post_id": 7536, "ts": "2026-06-12T16:11:42Z", "hours": 1.8386, "text": "DEVLOG#4 WHATS NEW!! NEW BACKGROUND search bar seperated for the text not to bleed on mobile better mobile responsiveness change the fonts to MANGA MASTER for that added subtle details into this OS since its a manhwaOS GOAL NEXT DEVLOG add a last feature where when cursor is hovered to the left it opens setting then right you can change the wallpaper ALRIGHT BYE YALL!! NOTE: there was this bad gateway problem so i couldnt update thats why theres a pretty drastic change cuz i was stuck in this computer basically uhh ever since 10 hours ago lol"}, {"post_id": 7418, "ts": "2026-06-12T11:01:33Z", "hours": 0.7914, "text": "DEVLOG #3 BABYY!! YOU CAN SEARCH FOR ANY MANHWA ONLINE!! UPDATE: I SPENT LEGIT 30 mins on LAW cuz it turns out i cant have manhwa on this website because of copyright issues. SO instead i linked it to my manhwa page and my website became a sort of middle man also i feel bad that i didnt accomplish my main goal i added a search bar to open the apps ANDDD ANY MANHWA ONLINEE!! also fixed the issue where the apps open on the same places"}, {"post_id": 7335, "ts": "2026-06-12T07:21:13Z", "hours": 0.6242, "text": "sadly i lost my other file and now i have to redo it which i can but sadly i did commit in time in GIT but had to clone it so my time spent coding went back to 20 minutes"}, {"post_id": 7305, "ts": "2026-06-12T05:24:33Z", "hours": 0.7842, "text": "Im currently making a WebOS to read Manhwas on and i thought itd be possible to read from webtoon adn others inside my webpage? working on it currently"}]...
|
Title: ManhwaOS by @ElliotsLittleWave | Stardance
Title: ManhwaOS by @ElliotsLittleWave | Stardance
Devlogs:
Im currently making a WebOS to read Manhwas on and i thought itd be possible to read from webtoon adn others inside my webpage? working on it currently
sadly i lost my other file and now i have to redo it which i can but sadly i did commit in time in GIT but had to clone it so my time spent coding went back to 20 minutes
DEVLOG #3 BABYY!! YOU CAN SEARCH FOR ANY MANHWA ONLINE!! UPDATE: I SPENT LEGIT 30 mins on LAW cuz it turns out i cant have manhwa on this website because of copyright issues. SO instead i linked it to my manhwa page and my website became a sort of middle man also i feel bad that i didnt accomplish my main goal i added a search bar to open the apps ANDDD ANY MANHWA ONLINEE!! also fixed the issue where the apps open on the same places
DEVLOG#4 WHATS NEW!! NEW BACKGROUND search bar seperated for the text not to bleed on mobile better mobile responsiveness change the fonts to MANGA MASTER for that added subtle details into this OS since its a manhwaOS GOAL NEXT DEVLOG add a last feature where when cursor is hovered to the left it opens setting then right you can change the wallpaper ALRIGHT BYE YALL!! NOTE: there was this bad gateway problem so i couldnt update thats why theres a pretty drastic change cuz i was stuck in this computer basically uhh ever since 10 hours ago lol
DEVLOG #5 ADDED A VISITOR COUNTER!! sooo what did i do? i ADVERTISED IT ON REDITT AND DC BTWW i did this and took 2 hours just to leave a good impression on you viewers so plsss rate it highly hehehe THANKSS!! BTW i use supabase for the database and getting the VISITOR COUNT it took me so long its so tricky with the sql editor and stuff BUT I DID ITT
DEVLOG#6 possibly last devlog now IMPROVED APP AESTHETIC. Andd YOU CAN NOW DRAG ON MOBILE also improved mobile responsiveness for my mobile viewers to rate highlyy. ALSO finally made it look good, and work across all zoom sizes both mobile and pc YEHEYY hope yall rate this highlyy bye byee
Devlog#7 ADDED FALLING LEAVES AND GODRAYYSSS!!! i thought what would make it look better? ITS LEAAAVESSS however the main challenge was making it look the same on mobile. I WAS GENUINELY STUCK FOR AN HOUR on making the god rays on mobile not stick to the top while making it look the same on desktop and found : isMobile - i added these to change stuff on mobile aka the responsiveness and all while keeping the desktop UI the same as before!! next devlog ill be making the obscurity of windows change when overlapping to enhance readibility and user-friendliness BYEEE
LAST DEVLOG #8 FINISHED LAST GOAL AND WILL SHIP added it where when you drag a window over another it prioritzes the window youre dragging and obscues the other windooww will be pushing then submitting BYE YALL
LAST LAST DEVLOG#idk THANK YOU FOR EVERYTHINGG this is my first ever project and im so happy and proud that it was shipped HERE IN STARDAANCEEE~!! BYE BYEEE
Ships:
i made a manhwaOS for all novel and manhwa users to use and save timee. Currently its at the beta stage so most of the actual TIME SAVERS are being added on webOS2 since if i add it rn i maaayyy just have no more ideas for WEBOS2 The most challenging was the design. I actually tried drawing hahahhaah to no avail :( welp atleast it looks okay now since i added leaves and godrays...
|
1792986459.4437723
|
1793072859.4437723
|
|
7135
|
adhdpen by @shoux2 | Stardance
|
shoux2
|
0
|
2.13
|
0
|
[]
|
[{"post_id": 9676, "ts": "2026 [{"post_id": 9676, "ts": "2026-06-16T02:45:27Z", "hours": 2.1264, "text": "Research and development 1"}]...
|
Title: adhdpen by @shoux2 | Stardance
Devlogs:
Re Title: adhdpen by @shoux2 | Stardance
Devlogs:
Research and development 1...
|
1792651933.9070473
|
1793256733.9070473
|
|
8522
|
SideLine - Match Recorder by @Osmosis | Stardance
|
Osmosis
|
0
|
9.6
|
0
|
[]
|
[{"post_id": 9675, "ts": "2026 [{"post_id": 9675, "ts": "2026-06-16T02:42:47Z", "hours": 0.4956, "text": "The pivot — drone → courtside gimbal (and a lesson) Here’s where the project hit its biggest wall, and I want to log it honestly because the recovery taught me more than any milestone. I was about to spec a drone. Then I actually researched drone law in Qatar and found out it’s one of the strictest regimes in the world: every single flight needs a QCAA permit (owning a drone gives you no right to fly it), and there’s a privacy law (Penal Code Art. 333) against filming people without consent, penalties up to two years. For a system whose whole job is filming school matches full of players and spectators, that’s not a paperwork hurdle, it’s a wall. My original picture a drone autonomously filming matches was effectively dead. The lesson, written down so I don’t forget it: research the constraints of the real world before you fall in love with a plan. I’d validated the software to machine precision, but I almost skipped checking whether the deployment was even legal. Check the boring stuff first. So I swapped the drone for a 3-DOF gimbal on a rail: a motorised camera mount (pan / tilt / roll) that slides along a track, parked courtside. No permit. Same filming-consent terms my existing fixed cameras already navigate. And it runs every match, not the one-off a permitted drone flight would’ve been. It’s more deployable than the drone ever was. A gimbal is also a categorically real difference from just pointing a camera, for one optical reason that isn’t arguable: a fixed camera can only ever crop the pixels it already has, but a gimbal physically moves the lens real parallax, a real push-in that changes perspective, footage that simply doesn’t exist in a static feed. The human directs the intent (“orbit that player,” “push in”) and the system, which understands the scene, executes the move. That’s the thing a fixed camera can’t do, and it survived the pivot completely intact. M9 — the gimbal’s brain (software) Stardance just opened a hardware track, but this milestone was deliberately software: adapt the system to the gimbal before the parts arrive, so the maths is proven when the hardware lands. The beautiful part: because I’d kept the architecture cleanly separated for nine milestones, the drone→gimbal pivot touched exactly one layer. The gesture engine, the scene tracking, the intent commands, the flight-path engine, the live bridge all unchanged. The only new code is a converter that takes an ideal 3D camera pose and works out what the gimbal can physically do with it: pan/tilt/roll angles to aim, plus a position along the rail. And it stays honest, which is the whole point. A gimbal at a fixed pivot can rotate perfectly but can’t translate so a true orbit (circling a subject) is impossible without the camera leaving its rail. The converter proves this with numbers instead of faking it: a follow shot aims with 0.00° error and zero positional gap (the rig does it cleanly), while an attempted orbit still aims perfectly but reports a 9.05-unit gap, flagged out-of-reach on every frame the system refuses to pretend it can do something the hardware can’t. Honest problems that will probably come up: this is geometry on a perfect simulator. The real gimbal will have motor speed limits, inertia, and backlash, it won’t snap to an angle instantly. That’s the hardware phase’s problem, and I’m not pretending the clean sim is the real rig. Up next: the glove parts are shipping. When they land, the build goes physical. breadboard, sensors, solder. Then the gimbal it is"}, {"post_id": 4838, "ts": "2026-06-08T11:14:50Z", "hours": 1.9914, "text": "Hi I’m Aarav Sharma and I want to direct a drone with my hands, not just piloting but actual direction. Introducing AirLine: direct a drone with your hands, don’t pilot it. Most gesture drones map your hand to a flight stick (tilt to bank, raise to climb) — you become the joystick. AirLine instead reads cinematic intent (“follow that player,” “orbit the subject”) and figures out the flight itself, because it understands the scene. It’s a branch off my capstone SideLine (an AI sports-analytics system that already tracks “the player with the ball”), reusing its vision core untouched. Software first, glove I build myself next, drone last. Devlog: M1: AirLine runs SideLine’s tracker through a clean seam, vision core untouched. ~19 FPS. M2: Lock onto one subject. Found track IDs fragment — 293/540 frames “lost.” Quantified the re-ID problem on footage, not a $400 drone. M3: Virtual camera follows like an operated shot, drifts to wide when the target’s lost. First time it looked real. M4: Webcam gestures (MediaPipe) — but it conflicts with my vision stack. Setup stopped instead of breaking it. Best decision of the day. M5: Quarantined gestures in their own environment. First real-hand numbers: mostly 10/10 after fixing bugs unit tests missed. M6: Two-process live system — my hand directs the shot in real time. ~297ms latency, only 35ms of it transport. M7: First 3D camera move: orbit on a tiltable plane, proven by geometric invariants to machine precision (~4e-16). M8: Added push-in, pull-out, dolly. Full shot vocabulary done. 146 tests, vision core never touched. Next: hardware actually building the gesture glove by hand and integrating a drone"}, {"post_id": 4178, "ts": "2026-06-07T12:19:57Z", "hours": 7.1161, "text": "Hi I’m Aarav Sharma, I started this before Stardance, so this first devlog covers everything built so far (about 6 hours of work) in one go. Sideline is an AI system that films a school football or basketball match from a single fixed camera and turns that one recording into three different things: tactical analytics for coaches, event highlight reels for the school socials, and a personal highlight clip for every player, not just the goal-scorers. It runs entirely on a local laptop with no subscriptions, which matters because the commercial equivalents (Veo, Pixellot) cost hundreds up front plus monthly fees, putting them out of reach for a normal school. The computer vision (both football and basketball). The core is one shared pipeline that detects players and the ball, tracks them across the match, works out which team each player is on, and maps the camera view onto real court coordinates so distances and positions actually mean something in metres. Getting each piece trustworthy was the bulk of the time, and a lot of it was fighting genuinely hard problems. The basketball ball tracker kept locking onto players’ heads (round, ball-sized, and constantly held right next to the ball during a shot), and I had to prove that no shape or size rule could ever separate them before fixing it with a small appearance classifier I trained on a few thousand hand-sorted image crops (head rejection went from hopeless to 98.5%). Team detection on similar kits kept collapsing into one cluster until I switched to appearance embeddings, which also caught a possession stat that was confidently pointing at the wrong team entirely. The three deliverables. Coach analytics come out as a one-page report plus an annotated tactical video (heatmaps, distance covered, possession, formation, territory), with every number honestly labelled as either validated or derived. Event highlights are auto-detected and ranked so the best moments float to the top instead of flooding whoever is editing. Player highlights are built to be inclusive by construction: every player who steps on the court gets footage, using their on-ball moments where they have them, which is the part no commercial product bothers with and the part a school actually cares about. The app. All of that is wrapped in a working local web app, “Sideline, Match Studio”, with a dark cinematic interface a non-technical teacher can run start to finish: upload a match, click the four court corners on a freeze-frame, pick which deliverables they want, and download the results. The backend is a FastAPI server that runs the heavy AI as background jobs (a full match takes around 3 hours, so it processes while you walk away and can survive a restart), and it wraps my existing pipeline scripts rather than rewriting them. The whole thing is tested end to end with 62 passing checks, and I have already stress-tested it on a full 47-minute match to see what breaks at real scale. Next stop is real deployment at my school, which is the one thing I cannot fully validate until I have footage from our own courts and teams."}]...
|
Title: SideLine - Match Recorder by @Osmosis | Sta Title: SideLine - Match Recorder by @Osmosis | Stardance
Devlogs:
Hi I’m Aarav Sharma, I started this before Stardance, so this first devlog covers everything built so far (about 6 hours of work) in one go. Sideline is an AI system that films a school football or basketball match from a single fixed camera and turns that one recording into three different things: tactical analytics for coaches, event highlight reels for the school socials, and a personal highlight clip for every player, not just the goal-scorers. It runs entirely on a local laptop with no subscriptions, which matters because the commercial equivalents (Veo, Pixellot) cost hundreds up front plus monthly fees, putting them out of reach for a normal school. The computer vision (both football and basketball). The core is one shared pipeline that detects players and the ball, tracks them across the match, works out which team each player is on, and maps the camera view onto real court coordinates so distances and positions actually mean something in metres. Getting each piece trustworthy was the bulk of the time, and a lot of it was fighting genuinely hard problems. The basketball ball tracker kept locking onto players’ heads (round, ball-sized, and constantly held right next to the ball during a shot), and I had to prove that no shape or size rule could ever separate them before fixing it with a small appearance classifier I trained on a few thousand hand-sorted image crops (head rejection went from hopeless to 98.5%). Team detection on similar kits kept collapsing into one cluster until I switched to appearance embeddings, which also caught a possession stat that was confidently pointing at the wrong team entirely. The three deliverables. Coach analytics come out as a one-page report plus an annotated tactical video (heatmaps, distance covered, possession, formation, territory), with every number honestly labelled as either validated or derived. Event highlights are auto-detected and ranked so the best moments float to the top instead of flooding whoever is editing. Player highlights are built to be inclusive by construction: every player who steps on the court gets footage, using their on-ball moments where they have them, which is the part no commercial product bothers with and the part a school actually cares about. The app. All of that is wrapped in a working local web app, “Sideline, Match Studio”, with a dark cinematic interface a non-technical teacher can run start to finish: upload a match, click the four court corners on a freeze-frame, pick which deliverables they want, and download the results. The backend is a FastAPI server that runs the heavy AI as background jobs (a full match takes around 3 hours, so it processes while you walk away and can survive a restart), and it wraps my existing pipeline scripts rather than rewriting them. The whole thing is tested end to end with 62 passing checks, and I have already stress-tested it on a full 47-minute match to see what breaks at real scale. Next stop is real deployment at my school, which is the one thing I cannot fully validate until I have footage from our own courts and teams.
Hi I’m Aarav Sharma and I want to direct a drone with my hands, not just piloting but actual direction. Introducing AirLine: direct a drone with your hands, don’t pilot it. Most gesture drones map your hand to a flight stick (tilt to bank, raise to climb) — you become the joystick. AirLine instead reads cinematic intent (“follow that player,” “orbit the subject”) and figures out the flight itself, because it understands the scene. It’s a branch off my capstone SideLine (an AI sports-analytics system that already tracks “the player with the ball”), reusing its vision core untouched. Software first, glove I build myself next, drone last. Devlog: M1: AirLine runs SideLine’s tracker through a clean seam, vision core untouched. ~19 FPS. M2: Lock onto one subject. Found track IDs fragment — 293/540 frames “lost.” Quantified the re-ID problem on footage, not a $400 drone. M3: Virtual camera follows like an operated shot, drifts to wide when the target’s lost. First time it looked real. M4: Webcam gestures (MediaPipe) — but it conflicts with my vision stack. Setup stopped instead of breaking it. Best decision of the day. M5: Quarantined gestures in their own environment. First real-hand numbers: mostly 10/10 after fixing bugs unit tests missed. M6: Two-process live system — my hand directs the shot in real time. ~297ms latency, only 35ms of it transport. M7: First 3D camera move: orbit on a tiltable plane, proven by geometric invariants to machine precision (~4e-16). M8: Added push-in, pull-out, dolly. Full shot vocabulary done. 146 tests, vision core never touched. Next: hardware actually building the gesture glove by hand and integrating a drone
The pivot — drone → courtside gimbal (and a lesson) Here’s where the project hit its biggest wall, and I want to log it honestly because the recovery taught me more than any milestone. I was about to spec a drone. Then I actually researched drone law in Qatar and found out it’s one of the strictest regimes in the world: every single flight needs a QCAA permit (owning a drone gives you no right to fly it), and there’s a privacy law (Penal Code Art. 333) against filming people without consent, penalties up to two years. For a system whose whole job is filming school matches full of players and spectators, that’s not a paperwork hurdle, it’s a wall. My original picture a drone autonomously filming matches was effectively dead. The lesson, written down so I don’t forget it: research the constraints of the real world before you fall in love with a plan. I’d validated the software to machine precision, but I almost skipped checking whether the deployment was even legal. Check the boring stuff first. So I swapped the drone for a 3-DOF gimbal on a rail: a motorised camera mount (pan / tilt / roll) that slides along a track, parked courtside. No permit. Same filming-consent terms my existing fixed cameras already navigate. And it runs every match, not the one-off a permitted drone flight would’ve been. It’s more deployable than the drone ever was. A gimbal is also a categorically real difference from just pointing a camera, for one optical reason that isn’t arguable: a fixed camera can only ever crop the pixels it already has, but a gimbal physically moves the lens real parallax, a real push-in that changes perspective, footage that simply doesn’t exist in a static feed. The human directs the intent (“orbit that player,” “push in”) and the system, which understands the scene, executes the move. That’s the thing a fixed camera can’t do, and it survived the pivot completely intact. M9 — the gimbal’s brain (software) Stardance just opened a hardware track, but this milestone was deliberately software: adapt the system to the gimbal before the parts arrive, so the maths is proven when the hardware lands. The beautiful part: because I’d kept the architecture cleanly separated for nine milestones, the drone→gimbal pivot touched exactly one layer. The gesture engine, the scene tracking, the intent commands, the flight-path engine, the live bridge all unchanged. The only new code is a converter that takes an ideal 3D camera pose and works out what the gimbal can physically do with it: pan/tilt/roll angles to aim, plus a position along the rail. And it stays honest, which is the whole point. A gimbal at a fixed pivot can rotate perfectly but can’t translate so a true orbit (circling a subject) is impossible without the camera leaving its rail. The converter proves this with numbers instead of faking it: a follow shot aims with 0.00° error and zero positional gap (the rig does it cleanly), while an attempted orbit still aims perfectly but reports a 9.05-unit gap, flagged out-of-reach on every frame the system refuses to pretend it can do something the hardware can’t. Honest problems that will probably come up: this is geometry on a perfect simulator. The real gimbal will have motor speed limits, inertia, and backlash, it won’t snap to an angle instantly. That’s the hardware phase’s problem, and I’m not pretending the clean sim is the real rig. Up next: the glove parts are shipping. When they land, the build goes physical. breadboard, sensors, solder. Then the gimbal it is...
|
1792594557.4440548
|
1793199357.4440548
|
|
19385
|
Doodle Cam by @adam_wu0630 | Stardance
|
adam_wu0630
|
0
|
1.11
|
0
|
[]
|
[{"post_id": 9673, "ts": "2026 [{"post_id": 9673, "ts": "2026-06-16T02:39:12Z", "hours": 1.1119, "text": "Here you go: Doodle Cam-Devlog #1 So Doodle Cam is a camera I’m building on a Raspberry Pi that takes a photo and turns it into a cool art style, kind of like a filter but on a real camera. There’s no printing, you just plug it into your computer with a USB cable to get the pictures off. Right now I’m writing all the code in Python on my laptop first before I put it on the Pi. At first I wanted to make it look like a kid’s crayon drawing. I tried doing it with just OpenCV code, then I tried using AI with the Replicate API. The AI looked the best, but I figured out it can’t run on a Raspberry Pi because it’s way too slow, and it also costs money for every picture. So I switched to doing everything offline with OpenCV instead. I changed the first preset to a black-and-white pencil sketch since OpenCV is actually really good at that, and I’ve been tweaking it a bunch, removing the background, smoothing the photo, adding dark outlines so the face shows up, and adding shading so it looks more like a real drawing. Next I want to get the code running on the actual Raspberry Pi with the camera. After that I’ll add a little screen so you can see the sketch right after you take the photo. Then I’ll set it up so the Pi shows up like a USB drive when you plug it in, add a button to take pictures and switch presets, and make more styles like cartoon and watercolor."}]...
|
Title: Doodle Cam by @adam_wu0630 | Stardance
Dev Title: Doodle Cam by @adam_wu0630 | Stardance
Devlogs:
Here you go: Doodle Cam-Devlog #1 So Doodle Cam is a camera I’m building on a Raspberry Pi that takes a photo and turns it into a cool art style, kind of like a filter but on a real camera. There’s no printing, you just plug it into your computer with a USB cable to get the pictures off. Right now I’m writing all the code in Python on my laptop first before I put it on the Pi. At first I wanted to make it look like a kid’s crayon drawing. I tried doing it with just OpenCV code, then I tried using AI with the Replicate API. The AI looked the best, but I figured out it can’t run on a Raspberry Pi because it’s way too slow, and it also costs money for every picture. So I switched to doing everything offline with OpenCV instead. I changed the first preset to a black-and-white pencil sketch since OpenCV is actually really good at that, and I’ve been tweaking it a bunch, removing the background, smoothing the photo, adding dark outlines so the face shows up, and adding shading so it looks more like a real drawing. Next I want to get the code running on the actual Raspberry Pi with the camera. After that I’ll add a little screen so you can see the sketch right after you take the photo. Then I’ll set it up so the Pi shows up like a USB drive when you plug it in, add a button to take pictures and switch presets, and make more styles like cartoon and watercolor....
|
1792525766.3128202
|
1793130566.3128202
|
|
19551
|
Background hacker by @EthanCubes | Stardance
|
EthanCubes
|
0
|
0.71
|
0
|
[]
|
[{"post_id": 9668, "ts": "2026 [{"post_id": 9668, "ts": "2026-06-16T02:30:39Z", "hours": 0.7067, "text": "I spent 40 minutes to get a “hello world” console output. I created a Chrome Extension that literally only outputs Hello World and installed it on Chrome. Not much progress in my work to create an extension that can change any background, but at least I can get the extension to run something. how did this take me 40 minutes bro. (look at the console output, you can find hello world there)"}]...
|
Title: Background hacker by @EthanCubes | Stardanc Title: Background hacker by @EthanCubes | Stardance
Devlogs:
I spent 40 minutes to get a “hello world” console output. I created a Chrome Extension that literally only outputs Hello World and installed it on Chrome. Not much progress in my work to create an extension that can change any background, but at least I can get the extension to run something. how did this take me 40 minutes bro. (look at the console output, you can find hello world there)...
|
1792630111.6795557
|
1793234911.6795557
|
|
17009
|
Monster fighting rpg by @NerdySpaceDragon | Starda Monster fighting rpg by @NerdySpaceDragon | Stardance...
|
NerdySpaceDragon
|
0
|
0.74
|
0
|
[]
|
[{"post_id": 9661, "ts": "2026 [{"post_id": 9661, "ts": "2026-06-16T02:13:06Z", "hours": 0.7383, "text": "Dev Log #1 I’ve stated to work on an RPG style video game based off of my high school experience. I am currently working on setting up the player character. I have added most of the animations now. I will need to add the code to make the player actually be able to move. After working on finishing up the player, I will work on figuring out the battle mechanics. P.S. I am currently using free assets off of itch.io, they will be replaced with my own art later down the line though"}]...
|
Title: Monster fighting rpg by @NerdySpaceDragon | Title: Monster fighting rpg by @NerdySpaceDragon | Stardance
Devlogs:
Dev Log #1 I’ve stated to work on an RPG style video game based off of my high school experience. I am currently working on setting up the player character. I have added most of the animations now. I will need to add the code to make the player actually be able to move. After working on finishing up the player, I will work on figuring out the battle mechanics. P.S. I am currently using free assets off of itch.io, they will be replaced with my own art later down the line though...
|
1792759872.2204335
|
1793364672.2204335
|
|
3010
|
Some weird Wii project by @Lunk | Stardance
|
Lunk
|
0
|
3.34
|
0
|
[]
|
[{"post_id": 9655, "ts": "2026 [{"post_id": 9655, "ts": "2026-06-16T02:00:27Z", "hours": 2.3992, "text": "The bottom plate is done but I still need to work on getting the two halves to work."}, {"post_id": 8377, "ts": "2026-06-13T22:38:18Z", "hours": 0.9408, "text": "I’ve seen some Wii slim projects before, but I want to build my own in a way that’s easy to customize. I also want it to be the slimmest yet! So far, I started designing the base plate and did a test print to make sure the posts weren’t… screwed, and they’re not!"}]...
|
Title: Some weird Wii project by @Lunk | Stardance Title: Some weird Wii project by @Lunk | Stardance
Devlogs:
I’ve seen some Wii slim projects before, but I want to build my own in a way that’s easy to customize. I also want it to be the slimmest yet! So far, I started designing the base plate and did a test print to make sure the posts weren’t… screwed, and they’re not!
The bottom plate is done but I still need to work on getting the two halves to work....
|
1792633849.077712
|
1793238649.077712
|
|
17101
|
Cube Root by @samatua1221 | Stardance
|
samatua1221
|
0
|
4.24
|
0
|
[]
|
[{"post_id": 9650, "ts": "2026 [{"post_id": 9650, "ts": "2026-06-16T01:50:51Z", "hours": 1.1394, "text": "Majority of today was spent working on the actual schematics of the project since I was able to finish up working on finding all of the materials. It did take me awhile to find the right software to actually make the schematic before I just gave up and went back to KiCad on my Chromebook (which took a while to download in itself). But aside from that, not too much more progress today aside from the basics of the schematic done."}, {"post_id": 8430, "ts": "2026-06-14T00:48:32Z", "hours": 1.0567, "text": "Spent a whole lot more time hammering down what’s going to be the materials for my project and working that up into a pretty clean BOM. Now, I’ll be moving on to the actual piecing together of everything, making the schematic through online circuit diagram editor to make sure everything works properly."}, {"post_id": 8375, "ts": "2026-06-13T22:35:32Z", "hours": 1.1667, "text": "More of today was spent working on gathering all of my materials again, making sure that I was able to have some type of ground to start working. I did have to spend quite a bit of time trying to again look for the right power source, but was finally able to find one that was available to get locally. I also spent a good amount of time finding the sensors that I’d want to use, deciding on using both orientation with a 3-axis IMU as well as using sound with one of the Arduino type microphone sensors to be able to make some LED movements reliant on the audio environment as well. The cube will probably be about 10cmx10cm, since the LED screens are about 8mm^2, so the rest of the room will just be a custom 3D printed case to hold all of the electronics inside as well as the LED lights themselves. Right now, the biggest thing I’m trying to decide between is how I’ll wire all of the pieces together, and I think it’ll be some form of using 18/24 AWG wire to link them all with the power source located outside of the cube since the bank would be way to big to fit inside the cube itself."}, {"post_id": 7942, "ts": "2026-06-13T07:53:55Z", "hours": 0.8783, "text": "Today, I spent most of my time researching the different parts, trying to figure out if this would be a feasible project to work on. I don’t have too much experience with LED strips, but I have enough experience with coding IMUs that I think I could figure out how to connect the two relatively easily. I also spent some time trying to work on the way I would power the cube (since every battery pack for the amount of power I’d need seems to be out of stock), but aside from that the first day went pretty well."}]...
|
Title: Cube Root by @samatua1221 | Stardance
Devl Title: Cube Root by @samatua1221 | Stardance
Devlogs:
Today, I spent most of my time researching the different parts, trying to figure out if this would be a feasible project to work on. I don’t have too much experience with LED strips, but I have enough experience with coding IMUs that I think I could figure out how to connect the two relatively easily. I also spent some time trying to work on the way I would power the cube (since every battery pack for the amount of power I’d need seems to be out of stock), but aside from that the first day went pretty well.
More of today was spent working on gathering all of my materials again, making sure that I was able to have some type of ground to start working. I did have to spend quite a bit of time trying to again look for the right power source, but was finally able to find one that was available to get locally. I also spent a good amount of time finding the sensors that I’d want to use, deciding on using both orientation with a 3-axis IMU as well as using sound with one of the Arduino type microphone sensors to be able to make some LED movements reliant on the audio environment as well. The cube will probably be about 10cmx10cm, since the LED screens are about 8mm^2, so the rest of the room will just be a custom 3D printed case to hold all of the electronics inside as well as the LED lights themselves. Right now, the biggest thing I’m trying to decide between is how I’ll wire all of the pieces together, and I think it’ll be some form of using 18/24 AWG wire to link them all with the power source located outside of the cube since the bank would be way to big to fit inside the cube itself.
Spent a whole lot more time hammering down what’s going to be the materials for my project and working that up into a pretty clean BOM. Now, I’ll be moving on to the actual piecing together of everything, making the schematic through online circuit diagram editor to make sure everything works properly.
Majority of today was spent working on the actual schematics of the project since I was able to finish up working on finding all of the materials. It did take me awhile to find the right software to actually make the schematic before I just gave up and went back to KiCad on my Chromebook (which took a while to download in itself). But aside from that, not too much more progress today aside from the basics of the schematic done....
|
1792568882.0541885
|
1793173682.0541885
|
|
17392
|
AeroStrike by @aamir_pa2009 | Stardance
|
aamir_pa2009
|
1
|
1.99
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-12T19:49:23Z", "hours": 0.0, "multiplier": 4.97, "payout": 2, "blessing": "neutral", "text": "I made a plane fighter game where you sink enemy NPC cruisers. What was challenging was learning how to integrate all the files into one file to make it run more smoothly and how to host the game. I plan on adding chat to the game and a multiplayer.", "repo": "https://github.com/AamirKPathan/AeroStrike", "demo": "https://aamir-pa2009.itch.io/aerostrike"}]...
|
[{"post_id": 9646, "ts": "2026 [{"post_id": 9646, "ts": "2026-06-16T01:44:06Z", "hours": 0.2581, "text": "Changelog - AeroStrike All notable changes to this project will be documented in this file. [1.2.0] - 2026-06-15 Added Scoring System : Implemented a comprehensive scoring system. +500 points for destroying enemy jets. +2000 points for sinking the enemy cruiser. +100 bonus points for every flare burst conserved at the end of a mission. HUD Updates : Added a real-time score display to the top-left HUD. End Screens : Victory and Game Over screens now display the final score. Disorientation Mechanics : Player : Rapid high-G turns (7 direction changes) now cause a 5-second stall and fire lockout with a “DISORIENTED” HUD warning. Missiles : Incoming missiles can now be disoriented by 4 sharp evasion turns when in close proximity, causing them to lose their lock. Changed Enemy Missile Visuals : Enemy missiles (from both jets and the cruiser) now match the geometry of friendly missiles but are colored red ( 0xff3333 ) for clear identification. Combat Balance : Enemy jets and the cruiser now have a 10-second cooldown between homing missile launches. Friendly carrier defense missiles now deal 0 damage but continue to track and explode on targets for visual atmosphere. Camera System : Refined the follow-camera to be closer and more dynamic, improving visibility and the sense of speed. Enemy AI : Fixed a bug where enemy aircraft were stationary; they now correctly patrol and engage in dogfights. Fixed Enemy Jet Orientation : Corrected the nose orientation of enemy jets so they face forward during flight. Spawn Logic : Adjusted enemy spawn distances and visibility for better engagement flow. Carrier Defense : Restored the carrier’s missile launch logic after it was temporarily removed. [1.1.0] - 2026-06-15 Added Flare System : Added a flare limit of 10 bursts per sortie. HUD Counter : Added a “FLARES” counter to the status panel. Refill Logic : Landing on the carrier now fully replenishes flares along with health and missiles. Fixed Enemy Missile Geometry : Updated enemy projectiles to use proper 3D missile models instead of simple spheres."}, {"post_id": 8821, "ts": "2026-06-14T17:41:00Z", "hours": 1.7283, "text": "Devlog – Major Update to AeroStrike Hey everyone! I just pushed a big update to AeroStrike, and I wanted to share what’s new, what I fixed, and what I learned while improving the project. ✨ What’s New • New Enemy Jets + AI I added simple enemy fighters that chase the player, turn toward you, and fire homing missiles. This helped me learn more about vector math, direction interpolation, and basic pursuit behavior. • Homing Missiles Enemy missiles now track the player smoothly instead of flying straight. They steer using direction lerping and have a warning indicator when they get close. • Flares (Countermeasures) You can now deploy flares to distract incoming missiles. Missiles will retarget flares if they get close enough. • Carrier HP + Bomb Damage The enemy cruiser now has a proper health system. Bombs deal damage, and the cruiser sinks when its HP reaches zero. • Radar System I added a 2D radar that shows: Enemy jets The enemy cruiser This taught me how to convert world coordinates into UI positions. • Landing + Rearming You can land on the carrier to repair and restock bombs. This added a fun gameplay loop and made the mission feel more complete. 🎮 Controls Fixes The Up/Down pitch controls were broken before — they now work properly. Pitching feels smoother and more responsive. 🎨 CSS Overhaul I completely reworked the UI styling: Cleaner HUD Minimal, modern look Consistent color theme Better spacing and readability Subtle glow effects for a “fighter jet” feel This makes the game look more polished and easier to read during gameplay."}, {"post_id": 7648, "ts": "2026-06-12T19:46:44Z", "hours": 0.3775, "text": "Finally Finished my First Game, One Large Leap For Me."}]...
|
Title: AeroStrike by @aamir_pa2009 | Stardance
De Title: AeroStrike by @aamir_pa2009 | Stardance
Devlogs:
Finally Finished my First Game, One Large Leap For Me.
Devlog – Major Update to AeroStrike Hey everyone! I just pushed a big update to AeroStrike, and I wanted to share what’s new, what I fixed, and what I learned while improving the project. ✨ What’s New • New Enemy Jets + AI I added simple enemy fighters that chase the player, turn toward you, and fire homing missiles. This helped me learn more about vector math, direction interpolation, and basic pursuit behavior. • Homing Missiles Enemy missiles now track the player smoothly instead of flying straight. They steer using direction lerping and have a warning indicator when they get close. • Flares (Countermeasures) You can now deploy flares to distract incoming missiles. Missiles will retarget flares if they get close enough. • Carrier HP + Bomb Damage The enemy cruiser now has a proper health system. Bombs deal damage, and the cruiser sinks when its HP reaches zero. • Radar System I added a 2D radar that shows: Enemy jets The enemy cruiser This taught me how to convert world coordinates into UI positions. • Landing + Rearming You can land on the carrier to repair and restock bombs. This added a fun gameplay loop and made the mission feel more complete. 🎮 Controls Fixes The Up/Down pitch controls were broken before — they now work properly. Pitching feels smoother and more responsive. 🎨 CSS Overhaul I completely reworked the UI styling: Cleaner HUD Minimal, modern look Consistent color theme Better spacing and readability Subtle glow effects for a “fighter jet” feel This makes the game look more polished and easier to read during gameplay.
Changelog - AeroStrike All notable changes to this project will be documented in this file. [1.2.0] - 2026-06-15 Added Scoring System : Implemented a comprehensive scoring system. +500 points for destroying enemy jets. +2000 points for sinking the enemy cruiser. +100 bonus points for every flare burst conserved at the end of a mission. HUD Updates : Added a real-time score display to the top-left HUD. End Screens : Victory and Game Over screens now display the final score. Disorientation Mechanics : Player : Rapid high-G turns (7 direction changes) now cause a 5-second stall and fire lockout with a “DISORIENTED” HUD warning. Missiles : Incoming missiles can now be disoriented by 4 sharp evasion turns when in close proximity, causing them to lose their lock. Changed Enemy Missile Visuals : Enemy missiles (from both jets and the cruiser) now match the geometry of friendly missiles but are colored red ( 0xff3333 ) for clear identification. Combat Balance : Enemy jets and the cruiser now have a 10-second cooldown between homing missile launches. Friendly carrier defense missiles now deal 0 damage but continue to track and explode on targets for visual atmosphere. Camera System : Refined the follow-camera to be closer and more dynamic, improving visibility and the sense of speed. Enemy AI : Fixed a bug where enemy aircraft were stationary; they now correctly patrol and engage in dogfights. Fixed Enemy Jet Orientation : Corrected the nose orientation of enemy jets so they face forward during flight. Spawn Logic : Adjusted enemy spawn distances and visibility for better engagement flow. Carrier Defense : Restored the carrier’s missile launch logic after it was temporarily removed. [1.1.0] - 2026-06-15 Added Flare System : Added a flare limit of 10 bursts per sortie. HUD Counter : Added a “FLARES” counter to the status panel. Refill Logic : Landing on the carrier now fully replenishes flares along with health and missiles. Fixed Enemy Missile Geometry : Updated enemy projectiles to use proper 3D missile models instead of simple spheres.
Ships:
I made a plane fighter game where you sink enemy NPC cruisers. What was challenging was learning how to integrate all the files into one file to make it run more smoothly and how to host the game. I plan on adding chat to the game and a multiplayer....
|
1792976196.8914902
|
1793062596.8914902
|
|
9685
|
M.2 rp2040 breakout board by @peiqia0 | Stardance
|
peiqia0
|
0
|
0.74
|
0
|
[]
|
[{"post_id": 9643, "ts": "2026 [{"post_id": 9643, "ts": "2026-06-16T01:40:55Z", "hours": 0.7442, "text": "m.2 Breakout board firmware"}]...
|
Title: M.2 rp2040 breakout board by @peiqia0 | Sta Title: M.2 rp2040 breakout board by @peiqia0 | Stardance
Devlogs:
m.2 Breakout board firmware...
|
1792640986.2339623
|
1793245786.2339623
|
|
19320
|
My awesome macropad! by @zak_books1 | Stardance
|
zak_books1
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T01:33:22Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A custom four-key macro pad built with KiCad, QMK firmware, and a 3D-printed case for fast, reliable controls.", "repo": "https://github.com/zakbooks1/TuffPad", "demo": ""}]...
|
[{"post_id": 9637, "ts": "2026 [{"post_id": 9637, "ts": "2026-06-16T01:25:30Z", "hours": 2.835, "text": "finaly done lets go"}, {"post_id": 9429, "ts": "2026-06-15T19:50:00Z", "hours": 0.5417, "text": "about to 3d model the case for it"}]...
|
Title: My awesome macropad! by @zak_books1 | Stard Title: My awesome macropad! by @zak_books1 | Stardance
Devlogs:
about to 3d model the case for it
finaly done lets go
Ships:
A custom four-key macro pad built with KiCad, QMK firmware, and a 3D-printed case for fast, reliable controls....
|
1792979540.6697826
|
1793065940.6697826
|
|
2194
|
personal liquid cooling device by @flyingfish | St personal liquid cooling device by @flyingfish | Stardance...
|
flyingfish
|
0
|
4.41
|
0
|
[]
|
[{"post_id": 9632, "ts": "2026 [{"post_id": 9632, "ts": "2026-06-16T01:16:45Z", "hours": 4.4144, "text": "this is the case for the thing it has a water bottle and battery then i will use a semiconductor cooler with a radiating fan. the water bottle and battery go inside the backpack and the fan goes outside the backpack so there is a cover that can snap on incase of rain"}]...
|
Title: personal liquid cooling device by @flyingfi Title: personal liquid cooling device by @flyingfish | Stardance
Devlogs:
this is the case for the thing it has a water bottle and battery then i will use a semiconductor cooler with a radiating fan. the water bottle and battery go inside the backpack and the fan goes outside the backpack so there is a cover that can snap on incase of rain...
|
1792731101.574722
|
1793335901.574722
|
|
13718
|
Agentic Trading by @guy | Stardance
|
guy
|
0
|
4.2
|
0
|
[]
|
[{"post_id": 9631, "ts": "2026 [{"post_id": 9631, "ts": "2026-06-16T01:14:21Z", "hours": 1.1956, "text": "I made a button to call an endpoint that gets all the data from the database, formats it into the format the charts candles like, and graphs it surprisingly quickly"}, {"post_id": 6947, "ts": "2026-06-11T17:29:44Z", "hours": 1.9381, "text": "I made a small web GUI and made a sqlite database thing to use yahoo finance api to get historical data and put it into a database by their stock ticker. I tried to use a library but it ended up being depreciated so I had to switch"}, {"post_id": 5290, "ts": "2026-06-09T00:42:21Z", "hours": 1.0617, "text": "So this is an idea I’ve had for a while, but I want to revisit this. Gemma 4 12b can run on my 12gb 1080 ti and still have some context which is great. I made a basic harness to let me make custom tools for the AI. Right now, it’s just a fake weather one, but it is pretty modular."}]...
|
Title: Agentic Trading by @guy | Stardance
Devlog Title: Agentic Trading by @guy | Stardance
Devlogs:
So this is an idea I’ve had for a while, but I want to revisit this. Gemma 4 12b can run on my 12gb 1080 ti and still have some context which is great. I made a basic harness to let me make custom tools for the AI. Right now, it’s just a fake weather one, but it is pretty modular.
I made a small web GUI and made a sqlite database thing to use yahoo finance api to get historical data and put it into a database by their stock ticker. I tried to use a library but it ended up being depreciated so I had to switch
I made a button to call an endpoint that gets all the data from the database, formats it into the format the charts candles like, and graphs it surprisingly quickly...
|
1792691535.8936288
|
1793296335.8936288
|
|
6580
|
card video game by @flyingfish | Stardance
|
flyingfish
|
0
|
32.22
|
0
|
[]
|
[{"post_id": 9627, "ts": "2026 [{"post_id": 9627, "ts": "2026-06-16T01:05:29Z", "hours": 8.2886, "text": "i added a bot that can play against you. it really is just a random number generator but it works. i also made the plus 2 cards and skip cards work along with fixing a bug where reverse cards cant be played on the sides of the board(unity takes a long time to load and i didnt get a new screen shot so i just put the old one in mb)"}, {"post_id": 6603, "ts": "2026-06-11T02:30:51Z", "hours": 9.5603, "text": "i fix the bug where it would crash if you place any card on the side and i made the reverse card work. reverse cards switch the card above and below and it also switches sides"}, {"post_id": 5376, "ts": "2026-06-09T03:49:52Z", "hours": 5.0986, "text": "i just spent 3 hours making it so you cant place a card on another card and i added some logic so you can only place cards next to cards of the same color or number"}, {"post_id": 4461, "ts": "2026-06-07T19:46:11Z", "hours": 9.2722, "text": "i forgot to post any dev logs but so far i have made a grid that you can put cards on but there is no logic so its mostly visual rn"}]...
|
Title: card video game by @flyingfish | Stardance
Title: card video game by @flyingfish | Stardance
Devlogs:
i forgot to post any dev logs but so far i have made a grid that you can put cards on but there is no logic so its mostly visual rn
i just spent 3 hours making it so you cant place a card on another card and i added some logic so you can only place cards next to cards of the same color or number
i fix the bug where it would crash if you place any card on the side and i made the reverse card work. reverse cards switch the card above and below and it also switches sides
i added a bot that can play against you. it really is just a random number generator but it works. i also made the plus 2 cards and skip cards work along with fixing a bug where reverse cards cant be played on the sides of the board(unity takes a long time to load and i didnt get a new screen shot so i just put the old one in mb)...
|
1792597939.59096
|
1793202739.59096
|
|
479
|
Game by @Llamamed6 | Stardance
|
Llamamed6
|
1
|
4.77
|
1
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-01T18:47:20Z", "hours": 2.0, "multiplier": 1.64, "payout": 1, "blessing": "neutral", "text": "I added two thing on this I made a mini keyboard that explode when you click a button and I made geometry dash wave. For Geometry Dash the controls are space is up and once you let go of space your character moves down and R is for restart. For the key board you move your curser to each letter then click and it will show up and once you click explode keyboard the key board will disappear and return after five seconds.", "repo": "https://github.com/dwightcrozier-molina-gif/my_python", "demo": "https://mypython--dwightcrozier-m.replit.app"}]...
|
[{"post_id": 9626, "ts": "2026 [{"post_id": 9626, "ts": "2026-06-16T01:03:58Z", "hours": 2.7703, "text": "I am working on a game similar to geometry dash and I have made the wave gamemode."}, {"post_id": 374, "ts": "2026-06-01T18:38:38Z", "hours": 1.6872, "text": "I am working like a game similar to geometry dash"}]...
|
Title: Game by @Llamamed6 | Stardance
Devlogs:
I Title: Game by @Llamamed6 | Stardance
Devlogs:
I am working like a game similar to geometry dash
I am working on a game similar to geometry dash and I have made the wave gamemode.
Ships:
I added two thing on this I made a mini keyboard that explode when you click a button and I made geometry dash wave. For Geometry Dash the controls are space is up and once you let go of space your character moves down and R is for restart. For the key board you move your curser to each letter then click and it will show up and once you click explode keyboard the key board will disappear and return after five seconds....
|
1792997460.4041362
|
1793083860.4041362
|
|
19281
|
RhythmCremental by @OrangePainting | Stardance
|
OrangePainting
|
0
|
1.52
|
0
|
[]
|
[{"post_id": 9622, "ts": "2026 [{"post_id": 9622, "ts": "2026-06-16T00:50:57Z", "hours": 1.5153, "text": "This is a game I am working on that combines both rhythm and incremental genres to make something that remains fun over time. Currently, I am reworking my core mechanic as it doesn’t feel as fun as I want it. I’m experimenting with a match 3 mechanic to hopefully get some fun gameplay!"}]...
|
Title: RhythmCremental by @OrangePainting | Starda Title: RhythmCremental by @OrangePainting | Stardance
Devlogs:
This is a game I am working on that combines both rhythm and incremental genres to make something that remains fun over time. Currently, I am reworking my core mechanic as it doesn’t feel as fun as I want it. I’m experimenting with a match 3 mechanic to hopefully get some fun gameplay!...
|
1792615943.5751686
|
1793220743.5751686
|
|
10329
|
Forever Ledger - A Database of Names by @Codificat Forever Ledger - A Database of Names by @Codification | Stardance...
|
Codification
|
0
|
8.74
|
0
|
[]
|
[{"post_id": 9620, "ts": "2026 [{"post_id": 9620, "ts": "2026-06-16T00:47:43Z", "hours": 1.1781, "text": "I suspect that this will be the final devlog before shipping. Forever Ledger is nearly complete. In this update, I added a navbar on the bottom, with various information such as privacy policy, terms and conditions, and contact. This is all necessary for handling payments in my country. I finished integrating stripe into the website, and also made a button where you can witness/upvote profiles."}, {"post_id": 4812, "ts": "2026-06-08T10:00:23Z", "hours": 1.0119, "text": "Added an entry details page + Custom comments filtered for profanity that anybody can use regardless of tier. HTTP is a very useful tool, I strongly look forward to using it in the future."}, {"post_id": 4615, "ts": "2026-06-08T00:06:47Z", "hours": 3.1767, "text": "Well it was difficult, but I made a perfectly scaling mobile build of the website, that works on all screen sizes along with ultra wide monitors. Some more features such as better country flags, improved profanity filtering, and system detection for light/dark theme were added too! Using http requests, I also added a live viewer count."}, {"post_id": 3897, "ts": "2026-06-07T00:14:34Z", "hours": 3.3783, "text": "The first major update to my website. Everything in the screenshot was made in the last 7 days, but here is what I made yesterday: Added a live feed + Signup options for the ledger. The feed is automatically updated immediately across all devices."}]...
|
Title: Forever Ledger - A Database of Names by @Co Title: Forever Ledger - A Database of Names by @Codification | Stardance
Devlogs:
The first major update to my website. Everything in the screenshot was made in the last 7 days, but here is what I made yesterday: Added a live feed + Signup options for the ledger. The feed is automatically updated immediately across all devices.
Well it was difficult, but I made a perfectly scaling mobile build of the website, that works on all screen sizes along with ultra wide monitors. Some more features such as better country flags, improved profanity filtering, and system detection for light/dark theme were added too! Using http requests, I also added a live viewer count.
Added an entry details page + Custom comments filtered for profanity that anybody can use regardless of tier. HTTP is a very useful tool, I strongly look forward to using it in the future.
I suspect that this will be the final devlog before shipping. Forever Ledger is nearly complete. In this update, I added a navbar on the bottom, with various information such as privacy policy, terms and conditions, and contact. This is all necessary for handling payments in my country. I finished integrating stripe into the website, and also made a button where you can witness/upvote profiles....
|
1792792277.4779713
|
1793397077.4779713
|
|
13631
|
wire snipping game by @aalex | Stardance
|
aalex
|
1
|
4.0
|
18
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-18T19:07:55Z", "hours": 4.0, "multiplier": 5.0, "payout": 18, "blessing": "neutral", "text": "I made a bomb defusal game featuring snipable wires, a customed designed spraying mechanism, and a case to go around the ardunio which doubles as a holder for the beeper. this project made me get comfortable with modeling around real objects, and writing ardunio code. check out the video of the project in action and let me know and please send any suggestions or feedback. thank you!", "repo": "https://github.com/icelolcream4-beep/bombdefusal", "demo": ""}]...
|
[{"post_id": 9618, "ts": "2026 [{"post_id": 9618, "ts": "2026-06-16T00:44:31Z", "hours": 0.8683, "text": "the core of the project is done! using the updated code and a hot glued support below the main servo holder the project just needs a case to hide the electronics."}, {"post_id": 8445, "ts": "2026-06-14T01:23:37Z", "hours": 1.7161, "text": "just finished the mount for the spray bottle/servo aswell as polishing the code."}, {"post_id": 5323, "ts": "2026-06-09T01:51:42Z", "hours": 1.0922, "text": "i just finished finished a rough draft of detecting when wires are disconnected."}]...
|
Title: wire snipping game by @aalex | Stardance
D Title: wire snipping game by @aalex | Stardance
Devlogs:
i just finished finished a rough draft of detecting when wires are disconnected.
just finished the mount for the spray bottle/servo aswell as polishing the code.
the core of the project is done! using the updated code and a hot glued support below the main servo holder the project just needs a case to hide the electronics.
Ships:
I made a bomb defusal game featuring snipable wires, a customed designed spraying mechanism, and a case to go around the ardunio which doubles as a holder for the beeper. this project made me get comfortable with modeling around real objects, and writing ardunio code. check out the video of the project in action and let me know and please send any suggestions or feedback. thank you!...
|
1792997697.756236
|
1793084097.756236
|
|
13425
|
My very own WebOS by @mohan | Stardance
|
mohan
|
0
|
0.68
|
0
|
[]
|
[{"post_id": 9616, "ts": "2026 [{"post_id": 9616, "ts": "2026-06-16T00:43:35Z", "hours": 0.6811, "text": "I mainly focused on the about section, where I have links to some socials as well as a short bio and some projects I’ve worked on."}]...
|
Title: My very own WebOS by @mohan | Stardance
De Title: My very own WebOS by @mohan | Stardance
Devlogs:
I mainly focused on the about section, where I have links to some socials as well as a short bio and some projects I’ve worked on....
|
1792633696.2351546
|
1793238496.2351546
|
|
17766
|
Mobile Alias Deck by @Oren | Stardance
|
Oren
|
0
|
8.18
|
0
|
[]
|
[{"post_id": 9615, "ts": "2026 [{"post_id": 9615, "ts": "2026-06-16T00:43:00Z", "hours": 8.1803, "text": "So I first started by scanning all of the cards so when the full app is eventually done it will have data to work with. I know most people would usually make the app and then get the data, and I agree that it is more logical but I wanted to challenge myself with this first. Initially I tried using the Gemini API to scan the cards of the physical deck and put the data into a file/database, which worked fine and gave good results but I struggled with the rate limits it offers. I also tried using both Qwen and Gemma as a local LLMs to avoid said rate limits but they gave not so good results while also being quite slow on their outputs at least using LM Studio, and for 400 cards speed is really important. I tried promting in both English and Hebrew but both gave non perfect results and were equally as slow (the video is at 4x speed):"}]...
|
Title: Mobile Alias Deck by @Oren | Stardance
Dev Title: Mobile Alias Deck by @Oren | Stardance
Devlogs:
So I first started by scanning all of the cards so when the full app is eventually done it will have data to work with. I know most people would usually make the app and then get the data, and I agree that it is more logical but I wanted to challenge myself with this first. Initially I tried using the Gemini API to scan the cards of the physical deck and put the data into a file/database, which worked fine and gave good results but I struggled with the rate limits it offers. I also tried using both Qwen and Gemma as a local LLMs to avoid said rate limits but they gave not so good results while also being quite slow on their outputs at least using LM Studio, and for 400 cards speed is really important. I tried promting in both English and Hebrew but both gave non perfect results and were equally as slow (the video is at 4x speed):...
|
1792752554.8148437
|
1793357354.8148437
|
|
42
|
PIXORPHEUS by @Gabin | Stardance
|
Gabin
|
0
|
0.0
|
0
|
[]
|
[{"post_id": 961, "ts": "2026- [{"post_id": 961, "ts": "2026-06-02T18:52:24Z", "hours": 0.0, "text": "Added a full help channel ticket system to pixorpheus, the bot I’m building for my YSWS program. The bot now automatically creates support tickets when someone posts in the help channel, notifies the support team in a private channel, and lets helpers resolve tickets with a button. Started by reading through the nephthys source code (Hack Club’s open-source support bot) to understand how help channel bots work architecturally. Studied the ticket lifecycle, macro system, and database schema, then designed my own simplified version in JavaScript using Bolt.js, instead of using python like nephtys. Set up a PostgreSQL database on Neon, wrote the schema, and connected it to the bot. Migrated hosting from Nest to Railway for proper always-on deployment with automatic GitHub deploys. Ran into a few interesting issues along the way: Socket Mode vs HTTP mode : Railway doesn’t support WebSocket-based Socket Mode, so I switched to standard HTTP and configured the Slack Event Subscriptions and Interactivity URLs accordingly 502 errors : Railway was routing traffic to the wrong port; fixed by explicitly setting PORT=3000 Duplicate events : Slack sometimes sends the same event twice, causing duplicate ticket inserts; handled with a ON CONFLICT DO NOTHING in the DB Also added 11 slash commands (/pixl-ping, /pixl-stats, /pixl-roll, etc.) and a permission system so only helpers or support team members can resolve tickets. Tools used Claude & GitHub Copilot for looking up Bolt.js API docs and debugging error messages (~8 min total on Hackatime), mostly used to quickly read through unfamiliar error logs and API references rather than writing code What’s next !! Fix remaining edge cases where some messages don’t trigger ticket creation Add stale ticket auto-close Add a /pixl-ticket command to manually create tickets"}, {"post_id": 251, "ts": "2026-06-01T12:57:38Z", "hours": 0.0, "text": "I followed the guide and added the first command for my SLACK bot. for the moment it has only /pixl-joke /pixl-help /pixl-catfact and I will add more later. I only spent 20m on hackatime but spent like 1h trying to understand the different terminal I had to go through to setup nest, git push etc. I had a problem and first asked people why my bot wasn’t loading on nest server but after asking claude, I found out it was because the file with working directory was on /root and not /home.pixorpheus !"}]...
|
Title: PIXORPHEUS by @Gabin | Stardance
Devlogs:
Title: PIXORPHEUS by @Gabin | Stardance
Devlogs:
I followed the guide and added the first command for my SLACK bot. for the moment it has only /pixl-joke /pixl-help /pixl-catfact and I will add more later. I only spent 20m on hackatime but spent like 1h trying to understand the different terminal I had to go through to setup nest, git push etc. I had a problem and first asked people why my bot wasn’t loading on nest server but after asking claude, I found out it was because the file with working directory was on /root and not /home.pixorpheus !
Added a full help channel ticket system to pixorpheus, the bot I’m building for my YSWS program. The bot now automatically creates support tickets when someone posts in the help channel, notifies the support team in a private channel, and lets helpers resolve tickets with a button. Started by reading through the nephthys source code (Hack Club’s open-source support bot) to understand how help channel bots work architecturally. Studied the ticket lifecycle, macro system, and database schema, then designed my own simplified version in JavaScript using Bolt.js, instead of using python like nephtys. Set up a PostgreSQL database on Neon, wrote the schema, and connected it to the bot. Migrated hosting from Nest to Railway for proper always-on deployment with automatic GitHub deploys. Ran into a few interesting issues along the way: Socket Mode vs HTTP mode : Railway doesn’t support WebSocket-based Socket Mode, so I switched to standard HTTP and configured the Slack Event Subscriptions and Interactivity URLs accordingly 502 errors : Railway was routing traffic to the wrong port; fixed by explicitly setting PORT=3000 Duplicate events : Slack sometimes sends the same event twice, causing duplicate ticket inserts; handled with a ON CONFLICT DO NOTHING in the DB Also added 11 slash commands (/pixl-ping, /pixl-stats, /pixl-roll, etc.) and a permission system so only helpers or support team members can resolve tickets. Tools used Claude & GitHub Copilot for looking up Bolt.js API docs and debugging error messages (~8 min total on Hackatime), mostly used to quickly read through unfamiliar error logs and API references rather than writing code What’s next !! Fix remaining edge cases where some messages don’t trigger ticket creation Add stale ticket auto-close Add a /pixl-ticket command to manually create tickets...
|
1792947192.8807058
|
1793811192.8807058
|
|
11743
|
Simple 2-Tone Hackpad by @james2009329 | Stardance
|
james2009329
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T00:40:14Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "The 2 main special features of this hackpad is how the lid is slid in place and then screwed, and how it is on a 10 degree angle. I wanted to make the lid slide-in-place, so the front would be a single uniform piece of 3D printed plastic, which i thought would be more comfortable. The angle is for better ergonomics (and it matches my current keyboard angle). Using a new software (KiCAD) was challenging, as it took a lot to get used to. I’m happy with how everything came out. I’ve attached a ss of a section view of the case. You can see the lip and the chamfer that helps it slide in.", "repo": "https://github.com/james2009329/Simple-Hackpad", "demo": ""}]...
|
[{"post_id": 9609, "ts": "2026 [{"post_id": 9609, "ts": "2026-06-16T00:27:49Z", "hours": 0.3503, "text": "Just finished up the documentation for the hackpad!"}, {"post_id": 6299, "ts": "2026-06-10T16:26:13Z", "hours": 2.4817, "text": "Just about finished the CAD for my hackpad! My idea for it is for the entire lid to be slid in place like a shelf. Heres a picture of the assembly and a section view!"}]...
|
Title: Simple 2-Tone Hackpad by @james2009329 | St Title: Simple 2-Tone Hackpad by @james2009329 | Stardance
Devlogs:
Just about finished the CAD for my hackpad! My idea for it is for the entire lid to be slid in place like a shelf. Heres a picture of the assembly and a section view!
Just finished up the documentation for the hackpad!
Ships:
The 2 main special features of this hackpad is how the lid is slid in place and then screwed, and how it is on a 10 degree angle. I wanted to make the lid slide-in-place, so the front would be a single uniform piece of 3D printed plastic, which i thought would be more comfortable. The angle is for better ergonomics (and it matches my current keyboard angle). Using a new software (KiCAD) was challenging, as it took a lot to get used to. I’m happy with how everything came out. I’ve attached a ss of a section view of the case. You can see the lip and the chamfer that helps it slide in....
|
1792986594.4881
|
1793072994.4881
|
|
19514
|
Treacherous Trucking by @redwoodsteve | Stardance
|
redwoodsteve
|
0
|
0.78
|
0
|
[]
|
[{"post_id": 9604, "ts": "2026 [{"post_id": 9604, "ts": "2026-06-16T00:17:40Z", "hours": 0.7814, "text": "Made a simple car controller script, with brakes and throttle. Keyboard and controller support using the new Input System! The new system is super fun in Unity, because you can easily add whatever silly controls you want with the click of a few buttons. (also, i know everything looks kinda… meh… but i will have my sister make some nice art for the game!)"}]...
|
Title: Treacherous Trucking by @redwoodsteve | Sta Title: Treacherous Trucking by @redwoodsteve | Stardance
Devlogs:
Made a simple car controller script, with brakes and throttle. Keyboard and controller support using the new Input System! The new system is super fun in Unity, because you can easily add whatever silly controls you want with the click of a few buttons. (also, i know everything looks kinda… meh… but i will have my sister make some nice art for the game!)...
|
1792666097.6970904
|
1793270897.6970904
|
|
19506
|
HackingNotes by @Ashu-cipher | Stardance
|
Ashu-cipher
|
2
|
16.0
|
75
|
[{"ship_num": 1, "hours": 10.0, [{"ship_num": 1, "hours": 10.0, "multiplier": 3.46, "payout": 35, "blessing": "neutral", "text": "I am making wiki for CyberSecurity enthusiast, this will help them in learning, finding vulnerability, growing. This project will grow with me, my knowledge. You can use it as reference or as a wiki, whichever way you want to use. I hope you find it useful. There is too much to add, i will update these things time to time. currently on hold", "repo": "https://github.com/Ashu-Cipher/HackingNotes", "demo": "https://ashu-cipher.github.io/HackingNotes/", "ts": "2026-07-02T17:10:27Z"}, {"ship_num": 2, "hours": 5.0, "multiplier": 7.9, "payout": 40, "blessing": "neutral", "text": "I am making wiki for CyberSecurity enthusiast, this will help them in learning, finding vulnerability, growing. This project will grow with me, my knowledge. You can use it as reference or as a wiki, whichever way you want to use. I hope you find it useful. There is too much to add, i will update these things time to time. currently on hold", "repo": "https://github.com/Ashu-Cipher/HackingNotes", "demo": "https://ashu-cipher.github.io/HackingNotes/", "ts": "2026-06-16T00:12:08Z"}]...
|
[{"post_id": 9596, "ts": "2026 [{"post_id": 9596, "ts": "2026-06-16T00:06:41Z", "hours": 10.0, "text": "I’m Making Notes for those who’re interested in CyberSecurity. This project will grow with me, hope you find it useful."}, {"post_id": 10961, "ts": "2026-06-17T23:38:27Z", "hours": 1.0, "text": "Completed transmission media and switching, next is The osi model"}, {"post_id": 11202, "ts": "2026-06-18T10:23:58Z", "hours": 0.0, "text": "completed OSI model, next is TCP/IP model"}, {"post_id": 20909, "ts": "2026-07-02T17:05:33Z", "hours": 2.0, "text": "completed TCP/IP model, maybe not available on page, ig deployment error"}, {"post_id": 24777, "ts": "2026-07-08T15:55:16Z", "hours": 1.0, "text": "okay, so i have decided to continue this project after a break and Physical Layer is done, currently working on Data Link Layer, Data Link Layer is fairly long enough so it would take some more time, after that let’s see what can i do, feel free to criticise, i’m up for Constructive criticism"}]...
|
Title: HackingNotes by @Ashu-cipher | Stardance
D Title: HackingNotes by @Ashu-cipher | Stardance
Devlogs:
okay, so i have decided to continue this project after a break and Physical Layer is done, currently working on Data Link Layer, Data Link Layer is fairly long enough so it would take some more time, after that let’s see what can i do, feel free to criticise, i’m up for Constructive criticism
completed TCP/IP model, maybe not available on page, ig deployment error
completed OSI model, next is TCP/IP model
Completed transmission media and switching, next is The osi model
I’m Making Notes for those who’re interested in CyberSecurity. This project will grow with me, hope you find it useful.
Ships:
I am making wiki for CyberSecurity enthusiast, this will help them in learning, finding vulnerability, growing. This project will grow with me, my knowledge. You can use it as reference or as a wiki, whichever way you want to use. I hope you find it useful. There is too much to add, i will update these things time to time. currently on hold
I am making wiki for CyberSecurity enthusiast, this will help them in learning, finding vulnerability, growing. This project will grow with me, my knowledge. You can use it as reference or as a wiki, whichever way you want to use. I hope you find it useful. There is too much to add, i will update these things time to time. currently on hold...
|
1792878814.588628
|
1793742814.588628
|
|
13556
|
Self Watering Flower Pot by @Chrissy | Stardance
|
Chrissy
|
0
|
4.2
|
0
|
[]
|
[{"post_id": 9585, "ts": "2026 [{"post_id": 9585, "ts": "2026-06-15T23:29:20Z", "hours": 2.1864, "text": "Moving on to the next stage of my self watering flower pot: CAD! I made a modular system that lets you change sizes of parts. Each of the three parts you see here connects under the central part ( the pot holder ) using basic “keys”. These make it so that any of the parts can change size without having to reprint everything, and so that it can be printed on a smaller printer. The reason the peripheral parts are so far away, is because the pot will be quite large. I’m using 3d printed pins at the moment to hold the custom PCB in, but when I tried it, my first version had bad tolerances, and my second version, while fitting, the pins broke easily and didn’t hold it very well. I also worked on code. I have done quite a bit for code. When powered, the board hosts its own wifi. If you join it and go to its IP address, you can see a website that IS the UI for the board, with controls and data and stuff. You can also give it your wifi and connect to the board without leaving the comfort of your network. Finally, (while I forgot to track time for this,) I finally soldered the pump on. It works, but the board consistently browns out 8/10 times when I try to run it. I ordered a better power supply to try to fix it. I knew I should’ve added those capacitors!"}, {"post_id": 5271, "ts": "2026-06-08T23:54:15Z", "hours": 2.0139, "text": "Testing the soil moisture sensor for the first time. I started the project before I joined stardance; this project is a self watering flower pot, I am using an ESP 32 module to power it. Today, I got my capacitive soil sensor from Amazon, and it seems to work. I tested it using the website I had the ESP host. Rather than putting a screen on, I’m having it host a wifi network, then you can go to it’s IP adress, and you can see the UI. When I wrapped the sensor in a moist towel, the output dropped from 3500 or so, to 2650 or so. This is promising. When I get my MOSFETs, I will solder one on, and test out the motor! Then, it’s a bit of SolidWorks to make a housing and we’re good!"}]...
|
Title: Self Watering Flower Pot by @Chrissy | Star Title: Self Watering Flower Pot by @Chrissy | Stardance
Devlogs:
Testing the soil moisture sensor for the first time. I started the project before I joined stardance; this project is a self watering flower pot, I am using an ESP 32 module to power it. Today, I got my capacitive soil sensor from Amazon, and it seems to work. I tested it using the website I had the ESP host. Rather than putting a screen on, I’m having it host a wifi network, then you can go to it’s IP adress, and you can see the UI. When I wrapped the sensor in a moist towel, the output dropped from 3500 or so, to 2650 or so. This is promising. When I get my MOSFETs, I will solder one on, and test out the motor! Then, it’s a bit of SolidWorks to make a housing and we’re good!
Moving on to the next stage of my self watering flower pot: CAD! I made a modular system that lets you change sizes of parts. Each of the three parts you see here connects under the central part ( the pot holder ) using basic “keys”. These make it so that any of the parts can change size without having to reprint everything, and so that it can be printed on a smaller printer. The reason the peripheral parts are so far away, is because the pot will be quite large. I’m using 3d printed pins at the moment to hold the custom PCB in, but when I tried it, my first version had bad tolerances, and my second version, while fitting, the pins broke easily and didn’t hold it very well. I also worked on code. I have done quite a bit for code. When powered, the board hosts its own wifi. If you join it and go to its IP address, you can see a website that IS the UI for the board, with controls and data and stuff. You can also give it your wifi and connect to the board without leaving the comfort of your network. Finally, (while I forgot to track time for this,) I finally soldered the pump on. It works, but the board consistently browns out 8/10 times when I try to run it. I ordered a better power supply to try to fix it. I knew I should’ve added those capacitors!...
|
1792731235.1267645
|
1793336035.1267645
|
|
17542
|
Lane Assignment Display by @Chrissy | Stardance
|
Chrissy
|
0
|
3.17
|
0
|
[]
|
[{"post_id": 9583, "ts": "2026 [{"post_id": 9583, "ts": "2026-06-15T23:23:37Z", "hours": 3.1669, "text": "I’m working on a small display that sits on your dashboard and uses public data + your GPS info to tell you what each lane is. Next up: cleaning up code, accepting lane data, accepting GPS data, and thinking about hardware (I love hardware)"}]...
|
Title: Lane Assignment Display by @Chrissy | Stard Title: Lane Assignment Display by @Chrissy | Stardance
Devlogs:
I’m working on a small display that sits on your dashboard and uses public data + your GPS info to tell you what each lane is. Next up: cleaning up code, accepting lane data, accepting GPS data, and thinking about hardware (I love hardware)...
|
1792756198.0206597
|
1793360998.0206597
|
|
16857
|
KiwiCubed by @Kiwian | Stardance
|
Kiwian
|
0
|
10.88
|
0
|
[]
|
[{"post_id": 9580, "ts": "2026 [{"post_id": 9580, "ts": "2026-06-15T23:18:58Z", "hours": 7.7656, "text": "Thread safety and OpenGL Threads are a huge part of KiwiCubed. When running an integrated server, you are already running 5 central threads at once (render/tick/network for the client, and tick/network for the server). And getting these threads to work together is rarely simple. After I had first finished getting the server to send over player join packets, and getting player models to parse and render correctly, I figured I’d be done. However, whenever the client would try to render a new player, I’d get a weird OpenGL error saying that no vertex array object was bound. This was weird, because I have a simple abstraction layer over OpenGL, that currently is very aggressive with making sure that no errors like this occur, forsaking a small amount of performance (because OpenGL is not what I want to spend my time debugging when implementing features). Because of this, it should have been basically impossible for the program to ever be in an invalid OpenGL state. After adding some logs to see the exact ID of every vertex array object generated, saw that the ID for the player was always 0, and finally realized the problem. When the client received a packet informing it of a new entity, the NetworkHandler would call a callback registered by a different part of the program. This callback would immediately spawn and setup the full entity. Crucially, for entities with EntityRenderableComponent ‘s, this included generating OpenGL buffers and uploading data to them. The thing is, LiteNetLib (the networking library I use) doesn’t run on the main thread. It uses some worker thread(s?) so it can send and receive packets asynchronously. This meant that, all entity setup code from network-received entities would be run on a background thread. If you don’t know, OpenGL is very thread aware, and only lets you do operations from the thread where the OpenGL context is generated. You can manually set up a “shared context”, but the shared context actually doesn’t support specifically vertex array object creation, which makes it useless for my purposes anyways. Basically, what would happen, is that the NetworkHandler would receive the entity and set it up on that thread, and then OpenGL would SILENTLY fail the several operations involved in setting up an entity. Moral of the story: I hate threading. And also why does OpenGL not give errors for trying to use it from the wrong thread? wtf (I used lazy initialization to fix it. Kind of a band-aid fix but it was the best I could think of at the time)"}, {"post_id": 7295, "ts": "2026-06-12T05:00:09Z", "hours": 3.1147, "text": "Finally fixed a client-side rendering issue I introduced while trying to implement multiplayer. See, for normal entities, their positions are only updated roughly every 3 frames (1 tick w/ 20tps & 60fps). Because of this, the render thread actually keeps track of each entity’s current and last position, and then interpolates between those positions based on how far through the current tick is when rendering. This is the same method I used for determining the camera position for the player. However, there is an issue with this method. It’s very hard to get the tick thread to run on an exact 50ms interval because of OS-level limitations. Because of this, based on how the render/tick threads are aligned, the render thread may find that the value used for seeing how far along the current tick is (usually 0.0-1.0) is actually 1.0+. When this happens, it causes visible stuttering and jittering with entity positions. Now, this issue doesn’t really affect entities, as there is a simple solution, which is to simply keep a slightly larger buffer of entity positions. Then, instead of using the current/last tick positions to interpolate, it uses the 2/3 last positions in the buffer, allowing the tick thread some wiggle room. Of course, this doesn’t work for the player, which needs to update visually as quickly as possible. And I finally made the connection that this method I was planning to use on other entities wouldn’t work on the player. So I’ve finally changed the engine to query player input and apply player physics every frame, separate from all other entities, and I’ve refactored the physics system to be able to handle being called at differing rates (20tps vs 60fps);"}]...
|
Title: KiwiCubed by @Kiwian | Stardance
Devlogs:
Title: KiwiCubed by @Kiwian | Stardance
Devlogs:
Finally fixed a client-side rendering issue I introduced while trying to implement multiplayer. See, for normal entities, their positions are only updated roughly every 3 frames (1 tick w/ 20tps & 60fps). Because of this, the render thread actually keeps track of each entity’s current and last position, and then interpolates between those positions based on how far through the current tick is when rendering. This is the same method I used for determining the camera position for the player. However, there is an issue with this method. It’s very hard to get the tick thread to run on an exact 50ms interval because of OS-level limitations. Because of this, based on how the render/tick threads are aligned, the render thread may find that the value used for seeing how far along the current tick is (usually 0.0-1.0) is actually 1.0+. When this happens, it causes visible stuttering and jittering with entity positions. Now, this issue doesn’t really affect entities, as there is a simple solution, which is to simply keep a slightly larger buffer of entity positions. Then, instead of using the current/last tick positions to interpolate, it uses the 2/3 last positions in the buffer, allowing the tick thread some wiggle room. Of course, this doesn’t work for the player, which needs to update visually as quickly as possible. And I finally made the connection that this method I was planning to use on other entities wouldn’t work on the player. So I’ve finally changed the engine to query player input and apply player physics every frame, separate from all other entities, and I’ve refactored the physics system to be able to handle being called at differing rates (20tps vs 60fps);
Thread safety and OpenGL Threads are a huge part of KiwiCubed. When running an integrated server, you are already running 5 central threads at once (render/tick/network for the client, and tick/network for the server). And getting these threads to work together is rarely simple. After I had first finished getting the server to send over player join packets, and getting player models to parse and render correctly, I figured I’d be done. However, whenever the client would try to render a new player, I’d get a weird OpenGL error saying that no vertex array object was bound. This was weird, because I have a simple abstraction layer over OpenGL, that currently is very aggressive with making sure that no errors like this occur, forsaking a small amount of performance (because OpenGL is not what I want to spend my time debugging when implementing features). Because of this, it should have been basically impossible for the program to ever be in an invalid OpenGL state. After adding some logs to see the exact ID of every vertex array object generated, saw that the ID for the player was always 0, and finally realized the problem. When the client received a packet informing it of a new entity, the NetworkHandler would call a callback registered by a different part of the program. This callback would immediately spawn and setup the full entity. Crucially, for entities with EntityRenderableComponent ‘s, this included generating OpenGL buffers and uploading data to them. The thing is, LiteNetLib (the networking library I use) doesn’t run on the main thread. It uses some worker thread(s?) so it can send and receive packets asynchronously. This meant that, all entity setup code from network-received entities would be run on a background thread. If you don’t know, OpenGL is very thread aware, and only lets you do operations from the thread where the OpenGL context is generated. You can manually set up a “shared context”, but the shared context actually doesn’t support specifically vertex array object creation, which makes it useless for my purposes anyways. Basically, what would happen, is that the NetworkHandler would receive the entity and set it up on that thread, and then OpenGL would SILENTLY fail the several operations involved in setting up an entity. Moral of the story: I hate threading. And also why does OpenGL not give errors for trying to use it from the wrong thread? wtf (I used lazy initialization to fix it. Kind of a band-aid fix but it was the best I could think of at the time)...
|
1792659287.447789
|
1793264087.447789
|
|
18185
|
Noesis by @Anaximandrus | Stardance
|
Anaximandrus
|
0
|
4.34
|
0
|
[]
|
[{"post_id": 9578, "ts": "2026 [{"post_id": 9578, "ts": "2026-06-15T23:14:08Z", "hours": 4.3444, "text": "Devlog #1: Kicking off the project. I started off with the idea of having all L.L.M.s work inside it’s specific folder and writing down memories saved themselves. Yeah, that’s a bad idea. They’re stochastic. They hallucinate. Unreliable. So I changed my plan: instead of having them write down misinformation, why not “interrogate” their terminals myself and let the actual machine do some of the work? Using FTS5 and SQLite along with a bunch of .md files, Noesis will allow for cross-L.L.M.s collaboration and a much bigger memory. Not much has been implemented so far tho… but it’s just the beginning! 🐱 P.S.: inspired by Claudian ( https://github.com/YishenTu/claudian )"}]...
|
Title: Noesis by @Anaximandrus | Stardance
Devlog Title: Noesis by @Anaximandrus | Stardance
Devlogs:
Devlog #1: Kicking off the project. I started off with the idea of having all L.L.M.s work inside it’s specific folder and writing down memories saved themselves. Yeah, that’s a bad idea. They’re stochastic. They hallucinate. Unreliable. So I changed my plan: instead of having them write down misinformation, why not “interrogate” their terminals myself and let the actual machine do some of the work? Using FTS5 and SQLite along with a bunch of .md files, Noesis will allow for cross-L.L.M.s collaboration and a much bigger memory. Not much has been implemented so far tho… but it’s just the beginning! 🐱 P.S.: inspired by Claudian ( https://github.com/YishenTu/claudian )...
|
1792673557.014417
|
1793278357.014417
|
|
15747
|
SAT Math Tutoring Help Extension by @charliem | St SAT Math Tutoring Help Extension by @charliem | Stardance...
|
charliem
|
1
|
0.0
|
9
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T14:55:07Z", "hours": 0.0, "multiplier": 8.58, "payout": 9, "blessing": "neutral", "text": "Note: even thoughit says it only took 1h i moved around folders and really took closer to 5h, look at screenshot. What I made I built the Math SAT Browser Extension Tutor (with cursor), a lightweight in-browser assistant that provides real-time AI-driven guidance on any SAT practice site. By running models entirely locally, the tool allows students to scan an infinite number of math problems without encountering subscription barriers or API rate limits. Also provides a cool plant that grows with you as you study to encourage staying focused. After study session khan academy links to topics scanned will be provided for further help. What was challenging LaTeX Corruption: Local models frequently produced “glued” prose or broken LaTeX syntax which required extensive regex-based repair modules to normalize text and equation formatting. What we’re proud of User Engagement: The integration of session-based tracking and “plant health” focus mechanics provides a tangible and gamified incentive for students to stay on task. Performance: By utilizing local Ollama models with a multi-stage extraction and cleanup process, we achieved a high-speed tutoring experience that functions locally without heavy reliance on external API latency. How to test the project To test the extension, you will need to clone the repository from the GitHub link. Local Setup: Since the extension runs locally, ensure you have Ollama installed and the qwen2.5vl:7b and qwen2.5:7b models pulled. Then navigate to any SAT practice site of your choice, open the extension sidebar, and use the scan feature on a math problem to initiate the AI tutoring session.", "repo": "https://github.com/Cm30V/satmathextension", "demo": "https://github.com/Cm30V/satmathextension/releases/tag/zip%2Fcrx"}]...
|
[{"post_id": 9574, "ts": "2026 [{"post_id": 9574, "ts": "2026-06-15T23:03:24Z", "hours": 0.0, "text": "Added cleaning up of AI output to handle corrupt REGEX. Scraped Khan Academy’s website so after you finish your study session the AI gives you links to topics you needed help on"}]...
|
Title: SAT Math Tutoring Help Extension by @charli Title: SAT Math Tutoring Help Extension by @charliem | Stardance
Devlogs:
Added cleaning up of AI output to handle corrupt REGEX. Scraped Khan Academy’s website so after you finish your study session the AI gives you links to topics you needed help on
Ships:
Note: even thoughit says it only took 1h i moved around folders and really took closer to 5h, look at screenshot. What I made I built the Math SAT Browser Extension Tutor (with cursor), a lightweight in-browser assistant that provides real-time AI-driven guidance on any SAT practice site. By running models entirely locally, the tool allows students to scan an infinite number of math problems without encountering subscription barriers or API rate limits. Also provides a cool plant that grows with you as you study to encourage staying focused. After study session khan academy links to topics scanned will be provided for further help. What was challenging LaTeX Corruption: Local models frequently produced “glued” prose or broken LaTeX syntax which required extensive regex-based repair modules to normalize text and equation formatting. What we’re proud of User Engagement: The integration of session-based tracking and “plant health” focus mechanics provides a tangible and gamified incentive for students to stay on task. Performance: By utilizing local Ollama models with a multi-stage extraction and cleanup process, we achieved a high-speed tutoring experience that functions locally without heavy reliance on external API latency. How to test the project To test the extension, you will need to clone the repository from the GitHub link. Local Setup: Since the extension runs locally, ensure you have Ollama installed and the qwen2.5vl:7b and qwen2.5:7b models pulled. Then navigate to any SAT practice site of your choice, open the extension sidebar, and use the scan feature on a math problem to initiate the AI tutoring session....
|
1792972447.0854275
|
1793058847.0854275
|
|
4125
|
PHANTOM_LEGION by @PhantomPilot4729 | Stardance
|
PhantomPilot4729
|
1
|
12.92
|
54
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-04T04:32:14Z", "hours": 8.0, "multiplier": 7.76, "payout": 54, "blessing": "neutral", "text": "So, I made a program that is largely for data mining for specific things on the internet. Uses OSINT tools such as Maltego, as well as internet archives. Best way to launch it is osint-agent gui, if it doesn’t want to work all the time.", "repo": "https://github.com/PhantomPilot4729/PHANTOM_LEIGON", "demo": "https://github.com/PhantomPilot4729/PHANTOM_LEGION/releases/tag/MK1.0.0-DEMO"}]...
|
[{"post_id": 9573, "ts": "2026 [{"post_id": 9573, "ts": "2026-06-15T23:01:17Z", "hours": 4.9203, "text": "So, Currently doing some research on the next stages for the PHANTOM_LEGION project. Specifically, improving the quality of the ship, migrating to C# or CSS or C++ for more optimized performance per-device, as well as considering using TOR to search the web to help maximize privacy. In addition, R&D has begun for a man-portable unit that can gather real-time info on devices around the user."}, {"post_id": 1883, "ts": "2026-06-04T03:15:19Z", "hours": 3.4153, "text": "Upped the ESP32 Firmware, patched holes. Now passes all github tests, seems to be working flawlessly. Here’s the current scuffed UI"}, {"post_id": 1187, "ts": "2026-06-03T01:23:40Z", "hours": 3.2028, "text": "Largely been working on making the portable version, involved a crap ton of python and trying to figure out how to use the arduino proprietary C"}, {"post_id": 644, "ts": "2026-06-02T05:00:13Z", "hours": 0.8869, "text": "Patching holes, trying to add ESP32 server hosting, so I can access this from anywhere in the world. driving me crazy though how it’s not working properly."}]...
|
Title: PHANTOM_LEGION by @PhantomPilot4729 | Stard Title: PHANTOM_LEGION by @PhantomPilot4729 | Stardance
Devlogs:
Patching holes, trying to add ESP32 server hosting, so I can access this from anywhere in the world. driving me crazy though how it’s not working properly.
Largely been working on making the portable version, involved a crap ton of python and trying to figure out how to use the arduino proprietary C
Upped the ESP32 Firmware, patched holes. Now passes all github tests, seems to be working flawlessly. Here’s the current scuffed UI
So, Currently doing some research on the next stages for the PHANTOM_LEGION project. Specifically, improving the quality of the ship, migrating to C# or CSS or C++ for more optimized performance per-device, as well as considering using TOR to search the web to help maximize privacy. In addition, R&D has begun for a man-portable unit that can gather real-time info on devices around the user.
Ships:
So, I made a program that is largely for data mining for specific things on the internet. Uses OSINT tools such as Maltego, as well as internet archives. Best way to launch it is osint-agent gui, if it doesn’t want to work all the time....
|
1792983173.207227
|
1793069573.207227
|
|
6665
|
Spotify Screen by @Matthew | Stardance
|
Matthew
|
1
|
12.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T03:49:20Z", "hours": 12.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Spotify player for my desk. It is kind of similar to the Spotify Car Thing, but a lot less advanced. I had many UI challenges, because this was my first lvgl project. I also had challenges of refreshing the authentication, it kept returning an HTML 400 error no matter what I did, but I eventually got it fixed. You do have to own an Arduino GIGA R1 and a Display Shield to go with it to test it, but I included a video of what it can do.", "repo": "https://github.com/matthew0112/spotifyScreen", "demo": ""}]...
|
[{"post_id": 9569, "ts": "2026 [{"post_id": 9569, "ts": "2026-06-15T22:53:07Z", "hours": 0.5494, "text": "I added documentation to get ready for shipping"}, {"post_id": 9536, "ts": "2026-06-15T22:15:29Z", "hours": 0.9539, "text": "I added Time Labels, made the progress somewhat smoother, and made it display all of the artists. It has gotten a lot simpler to add things, because It’s just small tweaks to the strong base I already have."}, {"post_id": 9415, "ts": "2026-06-15T19:28:57Z", "hours": 1.1864, "text": "I was able to add the repeat and shuffle buttons to my ui. They change color when active. Now I want to add the little text to say how much time is left"}, {"post_id": 9055, "ts": "2026-06-15T03:40:14Z", "hours": 4.7778, "text": "I got a UI working. I decided the album image was a little bit to complicated for me right now, so I have playback controls, seeking, and the title. I want to add the repeat and shuffle buttons"}, {"post_id": 7875, "ts": "2026-06-13T04:16:50Z", "hours": 1.7183, "text": "I got a basic lvgl ui working, the buttons work, however there is no seeking or getting what song is playing yet"}, {"post_id": 2548, "ts": "2026-06-05T02:52:10Z", "hours": 0.5444, "text": "I got a Connecting UI, when connecting to WiFi. I also rotated the screen to landscape. I’m currently exploring switching to lvgl for improved ui"}, {"post_id": 1890, "ts": "2026-06-04T03:27:08Z", "hours": 1.4294, "text": "I got a basic, temporary UI to test out the on click to pause"}, {"post_id": 1670, "ts": "2026-06-03T20:13:30Z", "hours": 0.3778, "text": "I got the Wifi Working"}]...
|
Title: Spotify Screen by @Matthew | Stardance
Dev Title: Spotify Screen by @Matthew | Stardance
Devlogs:
I got the Wifi Working
I got a basic, temporary UI to test out the on click to pause
I got a Connecting UI, when connecting to WiFi. I also rotated the screen to landscape. I’m currently exploring switching to lvgl for improved ui
I got a basic lvgl ui working, the buttons work, however there is no seeking or getting what song is playing yet
I got a UI working. I decided the album image was a little bit to complicated for me right now, so I have playback controls, seeking, and the title. I want to add the repeat and shuffle buttons
I was able to add the repeat and shuffle buttons to my ui. They change color when active. Now I want to add the little text to say how much time is left
I added Time Labels, made the progress somewhat smoother, and made it display all of the artists. It has gotten a lot simpler to add things, because It’s just small tweaks to the strong base I already have.
I added documentation to get ready for shipping
Ships:
I made a Spotify player for my desk. It is kind of similar to the Spotify Car Thing, but a lot less advanced. I had many UI challenges, because this was my first lvgl project. I also had challenges of refreshing the authentication, it kept returning an HTML 400 error no matter what I did, but I eventually got it fixed. You do have to own an Arduino GIGA R1 and a Display Shield to go with it to test it, but I included a video of what it can do....
|
1792975928.250991
|
1793062328.250991
|
|
3379
|
Catch the parcel by @srijayan | Stardance
|
srijayan
|
0
|
0.89
|
0
|
[]
|
[{"post_id": 9557, "ts": "2026 [{"post_id": 9557, "ts": "2026-06-15T22:40:58Z", "hours": 0.8922, "text": "Here’s what I’m working on: I’m building a game called “Catch the parcel” and I took inspiration from a game i used to play on my granny’s nokia when i was little (I don’t exactly know what it was called, but I will replicate the idea behind that game). Here’s how the game works: The setting is a blue background, with green ground, and there is a cart on the ground which can be moved in the x direction, there are parcels falling from the sky, at the beginning they are falling slow but as the time progresses, the rate of parcels falling down would increase. The goal of this game is to collect as many parcels, while making sure no more than 3 parcels fall on the ground. As of now, I just planned one difficulty level, after completing that I would build multiple speed levels, and then later leaderboards and stuff. That’s basically what I’ve figured out till now, I will start building the project now. I have attached a picture/sketch of how it will look like. (Please dont mind my drawing)"}]...
|
Title: Catch the parcel by @srijayan | Stardance
Title: Catch the parcel by @srijayan | Stardance
Devlogs:
Here’s what I’m working on: I’m building a game called “Catch the parcel” and I took inspiration from a game i used to play on my granny’s nokia when i was little (I don’t exactly know what it was called, but I will replicate the idea behind that game). Here’s how the game works: The setting is a blue background, with green ground, and there is a cart on the ground which can be moved in the x direction, there are parcels falling from the sky, at the beginning they are falling slow but as the time progresses, the rate of parcels falling down would increase. The goal of this game is to collect as many parcels, while making sure no more than 3 parcels fall on the ground. As of now, I just planned one difficulty level, after completing that I would build multiple speed levels, and then later leaderboards and stuff. That’s basically what I’ve figured out till now, I will start building the project now. I have attached a picture/sketch of how it will look like. (Please dont mind my drawing)...
|
1792529699.5005796
|
1793134499.5005796
|
|
10063
|
Slack Bot by @Lunixx | Stardance
|
Lunixx
|
1
|
3.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-15T22:34:29Z", "hours": 3.0, "multiplier": 1.75, "payout": 3, "blessing": "neutral", "text": "I made a slack bot :D learned a lot about VS code and slack. I’m proud that I didn’t give up even when I wanted to. this has so far been an amazing learning opportunity to get more verse with programming and creating projects. :D", "repo": "https://github.com/jasonweng3141592-pixel/slack_bot", "demo": "https://app.slack.com/client/E09V59WQY1E/C0BCDTMAHNV"}]...
|
[{"post_id": 9544, "ts": "2026 [{"post_id": 9544, "ts": "2026-06-15T22:27:57Z", "hours": 1.1458, "text": "finally have it running 24/7 :D after restarting."}, {"post_id": 6871, "ts": "2026-06-11T14:58:47Z", "hours": 2.1953, "text": "got the bot to work now I just have to run it on nest :D"}]...
|
Title: Slack Bot by @Lunixx | Stardance
Devlogs:
Title: Slack Bot by @Lunixx | Stardance
Devlogs:
got the bot to work now I just have to run it on nest :D
finally have it running 24/7 :D after restarting.
Ships:
I made a slack bot :D learned a lot about VS code and slack. I’m proud that I didn’t give up even when I wanted to. this has so far been an amazing learning opportunity to get more verse with programming and creating projects. :D...
|
1792961437.9240096
|
1793047837.9240096
|
|
19413
|
Perry. by @urged-st | Stardance
|
urged-st
|
1
|
1.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-15T22:27:58Z", "hours": 1.0, "multiplier": 2.48, "payout": 3, "blessing": "neutral", "text": "I made a site that shows a short story of “perry the period blood” It is not intended as educational or informative mainly just a light spin on a topic rarely talked about.", "repo": "https://github.com/urged-st/perry", "demo": "https://perrytheperiodblood.vercel.app"}]...
|
[{"post_id": 9542, "ts": "2026 [{"post_id": 9542, "ts": "2026-06-15T22:24:54Z", "hours": 1.0739, "text": "1hr challenge to make perry the period blood This is a small site that has a short story of perry the period blood It is based off an inside joke with my friends I challenged myself to build it in an hour I guess it worked, now i can do something useful!"}]...
|
Title: Perry. by @urged-st | Stardance
Devlogs:
1 Title: Perry. by @urged-st | Stardance
Devlogs:
1hr challenge to make perry the period blood This is a small site that has a short story of perry the period blood It is based off an inside joke with my friends I challenged myself to build it in an hour I guess it worked, now i can do something useful!
Ships:
I made a site that shows a short story of “perry the period blood” It is not intended as educational or informative mainly just a light spin on a topic rarely talked about....
|
1792878753.3268752
|
1793742753.3268752
|
|
4971
|
ARTEMIS - Laser shooting game by @Kika | Stardance
|
Kika
|
0
|
0.68
|
0
|
[]
|
[{"post_id": 954, "ts": "2026- [{"post_id": 954, "ts": "2026-06-02T18:38:52Z", "hours": 0.6792, "text": "I decided to do a mid scope project as my debut in hackclub, i got an idea and here it is, the Artemis - coming from the Greek goddess of hunting. Today i spent about 2 hours getting the idea planned and time tracking to work (it still doesnt work on hardware) so tomorrow i will just use lapse and journal the stuff properly in hopes of my time being counted as i was told on slack."}]...
|
Title: ARTEMIS - Laser shooting game by @Kika | St Title: ARTEMIS - Laser shooting game by @Kika | Stardance
Devlogs:
I decided to do a mid scope project as my debut in hackclub, i got an idea and here it is, the Artemis - coming from the Greek goddess of hunting. Today i spent about 2 hours getting the idea planned and time tracking to work (it still doesnt work on hardware) so tomorrow i will just use lapse and journal the stuff properly in hopes of my time being counted as i was told on slack....
|
1792702205.020076
|
1793307005.020076
|
|
19373
|
3D Print Shredddder by @Right_Bright | Stardance
|
Right_Bright
|
0
|
2.31
|
0
|
[]
|
[{"post_id": 9535, "ts": "2026 [{"post_id": 9535, "ts": "2026-06-15T22:11:28Z", "hours": 2.31, "text": "I finished a very rough version of the housing for the planer to sit in & TRIED to print it… instead the filament roll got stuck and it stopped extruding :( Fortunately, it printed just enough for me to check out some of how my measurements played out & moved on to create V2! (calipers for the win, but I really wish I had a 3D scanner for this T-T [I also tried using a picture of the planer, but I just could not get a good head-on picture :( ]) For V2 I cut down the top a lot because I only need the feeding chute coming out. I also added some more support on the bottom for the planer, and added a bottom; changed the feeding chute to have a slope at the bottom to hopefully help feed prints into the blade; and realized the print orientation should be rotated so that the back lays flat on the print bed as this removes almost all supports (with some design tweaks). Oh, I also learned the very basics I needed to get some renders of the prints using Blender which was cool! Next up: Test the shredding (what do the shredded pieces look like, do concurrent passes make them smaller, at what point does it stop, how loud is it, how fast is it, etc…) Look into next steps to modify this idea to shred larger parts"}]...
|
Title: 3D Print Shredddder by @Right_Bright | Star Title: 3D Print Shredddder by @Right_Bright | Stardance
Devlogs:
I finished a very rough version of the housing for the planer to sit in & TRIED to print it… instead the filament roll got stuck and it stopped extruding :( Fortunately, it printed just enough for me to check out some of how my measurements played out & moved on to create V2! (calipers for the win, but I really wish I had a 3D scanner for this T-T [I also tried using a picture of the planer, but I just could not get a good head-on picture :( ]) For V2 I cut down the top a lot because I only need the feeding chute coming out. I also added some more support on the bottom for the planer, and added a bottom; changed the feeding chute to have a slope at the bottom to hopefully help feed prints into the blade; and realized the print orientation should be rotated so that the back lays flat on the print bed as this removes almost all supports (with some design tweaks). Oh, I also learned the very basics I needed to get some renders of the prints using Blender which was cool! Next up: Test the shredding (what do the shredded pieces look like, do concurrent passes make them smaller, at what point does it stop, how loud is it, how fast is it, etc…) Look into next steps to modify this idea to shred larger parts...
|
1792756623.2103882
|
1793361423.2103882
|
|
14914
|
Magic Mirror by @spakshots | Stardance
|
spakshots
|
0
|
1.07
|
0
|
[]
|
[{"post_id": 9532, "ts": "2026 [{"post_id": 9532, "ts": "2026-06-15T22:07:44Z", "hours": 0.4261, "text": "02 | Devlog Here is my MagicMirror. Personal profiles are live, the Obsidian vault is linked, and the mirror knows who’s in front of it. what I did: built out personal profiles with custom profile photos and rounded borders profile switching is fully automatic and activated via facial recognition after 20 seconds of no face detected, the mirror drops back to lock mode if the PIR also hasn’t triggered in those 20 seconds, it goes full sleep linked the mirror to my local Obsidian vault by parsing the daily markdown file daily objectives from my notes now show up live on the display how the profile switch works: the moment it picks up your face, your personal modules load in once you walk away, the 20 second timer starts. if there is no face and no motion then the mirror sleeps it’s a two-layer falloff that keeps the mirror from staying lit for no reason so that I can sleep at night Obsidian integration: I’m pulling from my daily notes vault by reading and parsing the markdown file directly on the pi. whatever objectives I’ve written for the day show up on the mirror automatically through my private github repository current stats: profiles: 2 (Brady + Camren) profile trigger: face recognition, automatic lock timeout: 20 seconds after last face detected sleep trigger: no PIR + no face for 20 seconds Obsidian source: local daily notes vault (syncing with github), parsed from markdown what’s next: implementing the SR-04 ultrasonic sensor soldering the modules CADing housing for the mirror modules"}, {"post_id": 6497, "ts": "2026-06-10T22:20:42Z", "hours": 0.6481, "text": "01 | Devlog Here is my MagicMirror. I successfully cloned the magicmirror repo to my raspberry pi, and now my phone’s apple calendar is finally showing up on the display. I plan to later implement facial recognition and integration into my obsidian vault. what I did: cloned the magicmirror repo and installed it on my pi configured the calendar to pull from my personal apple calendar time and weather displayed got facial recognition working on my logitech usb camera current stats: Pi model: 4B with 4GB ram Webcam: Logitech Pro Stream Webcam mirror UI: 120 fps facial recognition frames: 15 fps CV scalar: 1 I decided to go with a CV scalar of 1 to improve the model’s scanning at longer distances since the pi held up under the heavier processing. what’s next: I plan to add personal profiles based on the facial recognition model each profile will have their personalized calendar and sports teams’ schedule displayed then I’ll be adding a SR-501 InfraRed sensor and a SR-04 Ultrasonic sensor to wake up the mirror from sleep mode"}]...
|
Title: Magic Mirror by @spakshots | Stardance
Dev Title: Magic Mirror by @spakshots | Stardance
Devlogs:
01 | Devlog Here is my MagicMirror. I successfully cloned the magicmirror repo to my raspberry pi, and now my phone’s apple calendar is finally showing up on the display. I plan to later implement facial recognition and integration into my obsidian vault. what I did: cloned the magicmirror repo and installed it on my pi configured the calendar to pull from my personal apple calendar time and weather displayed got facial recognition working on my logitech usb camera current stats: Pi model: 4B with 4GB ram Webcam: Logitech Pro Stream Webcam mirror UI: 120 fps facial recognition frames: 15 fps CV scalar: 1 I decided to go with a CV scalar of 1 to improve the model’s scanning at longer distances since the pi held up under the heavier processing. what’s next: I plan to add personal profiles based on the facial recognition model each profile will have their personalized calendar and sports teams’ schedule displayed then I’ll be adding a SR-501 InfraRed sensor and a SR-04 Ultrasonic sensor to wake up the mirror from sleep mode
02 | Devlog Here is my MagicMirror. Personal profiles are live, the Obsidian vault is linked, and the mirror knows who’s in front of it. what I did: built out personal profiles with custom profile photos and rounded borders profile switching is fully automatic and activated via facial recognition after 20 seconds of no face detected, the mirror drops back to lock mode if the PIR also hasn’t triggered in those 20 seconds, it goes full sleep linked the mirror to my local Obsidian vault by parsing the daily markdown file daily objectives from my notes now show up live on the display how the profile switch works: the moment it picks up your face, your personal modules load in once you walk away, the 20 second timer starts. if there is no face and no motion then the mirror sleeps it’s a two-layer falloff that keeps the mirror from staying lit for no reason so that I can sleep at night Obsidian integration: I’m pulling from my daily notes vault by reading and parsing the markdown file directly on the pi. whatever objectives I’ve written for the day show up on the mirror automatically through my private github repository current stats: profiles: 2 (Brady + Camren) profile trigger: face recognition, automatic lock timeout: 20 seconds after last face detected sleep trigger: no PIR + no face for 20 seconds Obsidian source: local daily notes vault (syncing with github), parsed from markdown what’s next: implementing the SR-04 ultrasonic sensor soldering the modules CADing housing for the mirror modules...
|
1792511693.0775466
|
1793116493.0775466
|
|
1074
|
My awesome macropad! by @lillylike123 | Stardance
|
lillylike123
|
0
|
0.72
|
0
|
[]
|
[{"post_id": 9513, "ts": "2026 [{"post_id": 9513, "ts": "2026-06-15T21:39:27Z", "hours": 0.7186, "text": "Worked on the schematic of my first-ever Hackpad (yippee!!!). I am super happy I was able to get the hang of KiCad and its different editors. I hope this Hackpad won’t be my last, and I will make more macro pads for the future!!!"}]...
|
Title: My awesome macropad! by @lillylike123 | Sta Title: My awesome macropad! by @lillylike123 | Stardance
Devlogs:
Worked on the schematic of my first-ever Hackpad (yippee!!!). I am super happy I was able to get the hang of KiCad and its different editors. I hope this Hackpad won’t be my last, and I will make more macro pads for the future!!!...
|
1792572508.261356
|
1793177308.261356
|